.upload-lab{width:100%;display:grid;gap:20px;font-family:"Source Han Sans CN","思源黑体 CN","Microsoft YaHei",sans-serif}.upload-playground{padding:20px;display:grid;gap:16px;border:1px solid #e8e8e8;border-radius:8px;background:#fff}.upload-head{display:grid;gap:2px}.upload-head h3{margin:0;font-size:14px}.upload-head span{color:#999;font-size:11px}.upload-control{width:min(100%,520px);display:grid;gap:8px}.upload-control label{color:#666;font-size:12px}.upload-live{min-height:620px;padding:32px 20px;display:grid;place-items:center;overflow-x:hidden;overflow-y:visible;border:1px dashed #d9d9d9;border-radius:6px;background:#f7f7f7}.upload-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,720px),1fr));gap:16px}.upload-variant{min-width:0;overflow:hidden;border:1px solid #e8e8e8;border-radius:8px;background:#fff}.upload-variant>header{min-height:44px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e8e8e8;font-size:12px}.upload-variant>header strong{min-width:0}.upload-variant>header span{color:#999}.upload-stage{min-height:360px;padding:28px 16px;display:grid;place-items:center;overflow:visible;background:#f7f7f7}
.u-icon{display:block;flex:0 0 auto}.lan-upload-button{box-sizing:border-box;width:106px;height:32px;padding:5px 16px;display:flex;align-items:center;justify-content:center;gap:4px;border:0;border-radius:6px;color:#fff;background:#2990ff;font-family:inherit;font-size:14px;font-weight:400;line-height:22px;cursor:pointer}.lan-upload-button span{flex:0 0 auto;white-space:nowrap}.lan-upload-button .u-icon{filter:brightness(0) invert(1)}.lan-upload-button.is-悬停,.lan-upload-button:hover:not(:disabled){background:#4ba2ff}.lan-upload-button.is-点击,.lan-upload-button:active:not(:disabled){background:#2279d6}.lan-upload-button.is-已选不可选{background:#b6d9ff;cursor:not-allowed}
.upload-picture-add{box-sizing:border-box;width:48px;height:48px;padding:0;display:grid;place-items:center;border:1px dashed #d9d9d9;border-radius:6px;color:#666;background:#fff;font:300 25px/1 inherit;cursor:pointer}.upload-picture-add.is-small{width:40px;height:40px}.upload-picture-add:hover{border-color:#2990ff;color:#2990ff}.upload-picture-field{width:465px;display:grid;gap:2px;color:#333}.upload-picture-field label{font-size:14px;line-height:22px}.upload-picture-field label b{color:#e44144}.upload-picture-row{display:flex;align-items:flex-start;gap:8px}.upload-picture-field p{margin:0;color:#999;font-size:12px;line-height:18px}.upload-thumb{position:relative;box-sizing:border-box;width:48px;height:48px;padding:3px;border-radius:4px;background:#fff;overflow:hidden}.upload-thumb>img{width:42px;height:42px;display:block;object-fit:cover;border-radius:4px}.upload-remove{position:absolute;right:1px;top:1px;width:16px;height:16px;padding:0;display:grid;place-items:center;border:0;border-radius:50%;background:#666;cursor:pointer}.upload-remove img{width:10px;height:10px;filter:brightness(0) invert(1)}.upload-square-button{box-sizing:border-box;width:32px;height:32px;padding:5px 8px;display:grid;place-items:center;border:1px dashed #d9d9d9;border-radius:4px;color:#666;background:#fff;cursor:pointer}.upload-square-button.is-滑过,.upload-square-button:hover{color:#4ba2ff;background:rgba(0,0,0,.04)}.upload-square-button.is-点击,.upload-square-button:active{color:#2279d6;background:rgba(0,0,0,.04)}.upload-square-button.is-滑过 .u-icon{filter:var(--icon-primary-filter,none)}
.upload-multi{position:relative;width:32px;min-height:32px}.upload-multi-trigger{position:relative;width:32px;height:32px;padding:0;border:0;border-radius:4px;overflow:hidden;background:#fff;cursor:pointer}.upload-multi-trigger img{width:32px;height:32px;object-fit:cover}.upload-multi-trigger span{position:absolute;inset:auto 0 0;height:16px;color:#fff;background:rgba(0,0,0,.58);font:12px/16px inherit}.upload-multi-panel{position:absolute;z-index:5;left:0;top:42px;width:208px;box-sizing:border-box;padding:8px;display:grid;grid-template-columns:repeat(5,32px);gap:8px;border-radius:4px;background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.08)}.upload-multi-panel img{width:32px;height:32px;object-fit:cover;border-radius:4px}
.upload-file{position:relative;box-sizing:border-box;width:248px;height:26px;padding:3px 7px;display:flex;align-items:center;gap:4px;border:1px dashed #d9d9d9;border-radius:4px;color:#666;background:#f7f8fa;font-size:12px;line-height:18px}.upload-file>span:not(.upload-file-actions){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file>em{flex:0 0 auto;font-style:normal}.upload-file>b{margin-left:auto;padding:0 4px;color:#2279d6;background:rgba(0,0,0,.04);font-weight:400}.upload-file-actions{height:18px;margin-left:auto;display:flex;align-items:center;gap:8px}.upload-file-actions .u-icon{color:#666}.upload-file.is-悬停 .upload-file-actions,.upload-file.is-点击 .upload-file-actions{color:#2990ff}.upload-file.is-悬停 .upload-file-actions .u-icon,.upload-file.is-点击 .upload-file-actions .u-icon{filter:var(--icon-primary-filter,none)}.upload-file-stack{position:relative;width:264px;min-height:160px;display:grid;align-content:start;gap:2px}.upload-file-panel{box-sizing:border-box;width:264px;padding:8px;display:grid;gap:4px;border-radius:4px;background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.08)}.upload-file-panel .upload-file{width:248px}.upload-file-mark{color:#ff5d67}.upload-drop{position:relative;box-sizing:border-box;width:528px;height:154px;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #d9d9d9;border-radius:6px;background:#fff}.upload-drop.with-title{margin-top:46px}.upload-drop>header{position:absolute;left:0;right:0;top:-34px;height:22px;display:flex;align-items:center;justify-content:space-between;color:#222;font-size:14px}.upload-drop>header b{color:#e44144}.upload-drop>header a{display:flex;align-items:center;gap:4px;color:#2990ff;font-size:12px}.upload-drop>.u-empty{width:80px;height:80px}.upload-drop>strong{color:#666;font-size:14px;line-height:22px;font-weight:400}.upload-drop>span{color:#999;font-size:12px;line-height:18px}.upload-drop.is-files{height:154px;padding:12px;justify-content:flex-start;overflow:hidden}.upload-drop.多个{height:154px}.upload-drop.多个展示{height:140px}.upload-files-grid{width:100%;display:grid;grid-template-columns:repeat(2,248px);gap:4px 8px}.upload-add-attachment{width:100%;height:28px;margin-top:16px;flex:0 0 auto;border:1px dashed #2990ff;border-radius:4px;color:#2990ff;background:#fff;font:14px/22px inherit}
.import-dialog{position:relative;box-sizing:border-box;width:520px;height:377px;overflow:hidden;border-radius:8px;color:#222;background:#fff;box-shadow:0 6px 8px rgba(0,0,0,.08)}.import-dialog.is-closed{opacity:.35}.import-dialog>header{box-sizing:border-box;height:57px;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ebebeb}.import-dialog>header strong{font-size:16px;line-height:24px;font-weight:700}.dialog-close{width:22px;height:22px;padding:3px;display:grid;place-items:center;border:0;border-radius:2px;background:transparent;cursor:pointer}.dialog-close:hover{background:rgba(0,0,0,.04)}.import-dialog:not(.large)>main{box-sizing:border-box;height:320px;padding:24px}.dialog-drop{height:272px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #d9d9d9;border-radius:6px}.dialog-drop .u-empty{width:80px;height:80px}.dialog-drop strong{color:#666;font-size:14px;line-height:22px;font-weight:400}.dialog-drop span{color:#999;font-size:12px;line-height:18px;text-align:center}.dialog-file-list{position:relative;box-sizing:border-box;height:273px;padding:8px;display:grid;align-content:start;gap:4px;border:1px dashed #d9d9d9;border-radius:6px;overflow:hidden}.dialog-file-list>.upload-file{width:456px}.dialog-upload-more{position:absolute;left:32px;right:32px;bottom:27px;height:28px;display:flex;align-items:center;justify-content:center;gap:4px;border:1px dashed #2990ff;border-radius:4px;color:#2990ff;background:#fff;font:14px/22px inherit}.invoice-list{padding-bottom:46px}.invoice-row{box-sizing:border-box;width:456px;min-height:59px;padding:8px;display:grid;gap:4px;border-radius:4px;background:#f7f8fa}.invoice-row>div{display:flex;align-items:center;gap:8px}.invoice-row>div>span:first-child{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333;font-size:14px;line-height:22px}.invoice-row p{margin:0;color:#666;font-size:14px;line-height:22px}
.import-dialog.large{width:708px;height:570px;box-shadow:0 6px 8px rgba(0,0,0,.08)}.import-dialog.large>main{position:absolute;inset:57px 0 52px;padding:23px 24px 13px}.import-dialog.large>footer{position:absolute;left:0;right:0;bottom:0;height:52px;box-sizing:border-box;padding:10px 24px;display:flex;align-items:center;justify-content:flex-end;gap:16px;border-top:1px solid #ebebeb;background:#fff}.import-dialog.large>footer>span{margin-right:auto;color:#999;font-size:14px;line-height:22px}.import-dialog.large>footer button,.import-result button{height:32px;padding:5px 16px;border:1px solid #d9d9d9;border-radius:4px;color:#333;background:#fff;font:14px/22px inherit}.import-dialog.large>footer .primary,.import-result button{color:#fff;border-color:#2990ff;background:#2990ff}.import-notice{box-sizing:border-box;height:38px;padding:8px 16px;display:flex;align-items:center;gap:4px;border-radius:6px;color:#1990ff;background:#e9f3ff;font-size:14px;line-height:22px}.import-notice.is-失败{color:#e44144;background:#fbe3e3}.notice-dot{width:16px;height:16px;display:grid;place-items:center;border-radius:50%;color:#fff;background:currentColor;font-size:0}.notice-dot:after{content:'i';color:#fff;font-size:11px;font-weight:700}.import-notice>button{height:24px;margin-left:auto;padding:2px 8px;border:1px solid currentColor;border-radius:12px;color:inherit;background:rgba(41,144,255,.1);font:12px/18px inherit}.large-drop{height:361px;margin-top:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #d9d9d9;border-radius:6px;background:rgba(41,144,255,.02)}.large-drop .u-empty{width:180px;height:180px}.large-drop strong{color:#999;font-size:16px;line-height:24px;font-weight:400}.problem-list{height:361px;box-sizing:border-box;margin-top:16px;padding:12px;display:grid;align-content:start;gap:8px;border:1px dashed #d9d9d9;border-radius:6px}.problem-list p{height:38px;box-sizing:border-box;margin:0;padding:8px 12px;display:flex;align-items:center;gap:4px;border-radius:6px;color:#666;background:#f7f8fa;font-size:14px;line-height:22px}.problem-list p b{width:16px;height:16px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#e44144;font-size:11px}.problem-list p.ok b{background:#5ab333}.import-result{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#999}.import-result .u-empty{width:180px;height:180px}.import-result strong{font-size:16px;line-height:24px;font-weight:400;text-align:center}.import-result a{color:#2990ff}.import-result.is-success{inset:38px 0 0}.import-result.is-success button{margin-top:16px}.existing-files{height:148px;box-sizing:border-box;margin-top:16px;padding:12px;border:1px dashed #d9d9d9;border-radius:6px}.existing-files>strong{display:block;margin-bottom:8px;font-size:14px;line-height:22px}.existing-files>strong small{color:#999;font-weight:400}.existing-files>div{display:grid;grid-template-columns:repeat(2,312px);gap:4px 12px}.existing-files .upload-file{width:312px}.large-drop.is-compact{height:205px;margin-top:8px}.large-drop.is-compact .u-empty{width:120px;height:120px}
.upload-code{min-height:46px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#d9e1ec;background:#111722}.upload-code code{min-width:0;overflow:hidden;font:11px/18px ui-monospace,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.upload-code button{height:26px;padding:0 10px;border:1px solid #4b5565;border-radius:4px;color:#d9e1ec;background:#202838;font-size:11px}
body.theme-dark .upload-playground,body.theme-dark .upload-variant{border-color:#343c48;background:#1d232d}body.theme-dark .upload-live,body.theme-dark .upload-stage{border-color:#343c48;background:#171c24}body.theme-dark .upload-control .modern-select-trigger{color:#e4e7ec;border-color:#46505e;background:#252c37}body.theme-dark .upload-control .modern-select-menu{border-color:#343c48;background:#252c37}
.upload-gallery{grid-template-columns:minmax(0,1fr)}.upload-gallery .subgroup-card-grid{grid-template-columns:minmax(0,1fr)}.import-notice>.u-icon,.problem-list .u-icon{flex:0 0 16px}.problem-list p .u-icon{width:16px;height:16px}.notice-dot{display:none}.problem-list p b{display:none}
.upload-thumb.is-compact{width:32px;height:32px;padding:0}.upload-thumb.is-compact>img{width:32px;height:32px}.upload-multi-trigger .upload-thumb{pointer-events:none}.upload-multi-panel .upload-thumb{padding:0}.upload-stage:has(>.upload-multi){min-height:220px;padding-top:20px;padding-bottom:20px}.upload-action-icon{width:18px;height:18px;padding:3px;display:grid;place-items:center;border:0;border-radius:2px;color:#666;background:transparent;cursor:pointer}.upload-action-icon:hover{color:#333;background:rgba(0,0,0,.04)}.upload-action-icon:active{color:#2279d6;background:rgba(0,0,0,.04)}.dialog-upload-more{position:absolute;left:32px;right:32px;bottom:27px;height:28px}.dialog-upload-more .upload-shared-button,.upload-drop .upload-shared-button{width:100%;height:28px!important;display:flex;align-items:center;justify-content:center;gap:4px;color:#2990ff!important;border-color:#2990ff!important;background:#fff!important}.dialog-upload-more .upload-shared-button:hover,.upload-drop .upload-shared-button:hover{color:#2990ff!important;border-color:#2990ff!important;background:#dfeeff!important}.upload-drop .upload-shared-button{margin-top:16px;flex:0 0 28px}
@media(max-width:900px){.upload-gallery{grid-template-columns:1fr}.upload-control{width:100%}.upload-stage,.upload-live{place-items:center start}.import-dialog.large{transform:scale(.82);transform-origin:left center}.upload-stage:has(.import-dialog.large){min-height:490px}}
.dialog-upload-more{padding:0;border:0;background:transparent}
.import-dialog.large>footer .upload-library-button,.import-result .upload-library-button{height:var(--button-height);padding:var(--button-py) var(--button-px);color:var(--button-text);border-color:var(--button-border);background:var(--button-bg)}.import-dialog.large>footer .upload-library-button:hover,.import-result .upload-library-button:hover{color:var(--button-text);border-color:var(--button-border);background:var(--button-bg)}.import-notice.cc-notice-action{width:100%;padding:8px 16px}.import-notice.cc-notice-action>button{flex:0 0 auto}.upload-drop.is-files.多个{overflow:visible}
.upload-shared-button .u-icon,.upload-drop>header a .u-icon{filter:brightness(0) saturate(100%) invert(51%) sepia(97%) saturate(2435%) hue-rotate(190deg) brightness(101%) contrast(101%)}.upload-action-icon[aria-label="删除"]:hover,.upload-action-icon[aria-label="删除"]:focus-visible,.upload-action-icon[aria-label="删除"]:active{color:#e44144;background:transparent;outline:0}.upload-action-icon[aria-label="删除"]:hover .u-icon,.upload-action-icon[aria-label="删除"]:focus-visible .u-icon,.upload-action-icon[aria-label="删除"]:active .u-icon{filter:brightness(0) saturate(100%) invert(38%) sepia(87%) saturate(1330%) hue-rotate(323deg) brightness(92%) contrast(95%)}.import-notice.cc-notice-action.info>button:hover,.import-notice.cc-notice-action.info>button:focus-visible{color:#1990ff;border-color:#1990ff;background:rgba(41,144,255,.1);outline:0}.import-notice.cc-notice-action.error>button:hover,.import-notice.cc-notice-action.error>button:focus-visible{color:#e44144;border-color:#e44144;background:rgba(228,65,68,.1);outline:0}.upload-multi.is-expanded{width:208px;height:162px}.upload-stage:has(>.upload-multi.is-expanded){min-height:249px}.upload-multi.is-expanded .upload-multi-panel{top:42px}
.upload-file .upload-action-icon:is([aria-label="眼睛"],[aria-label="下载"]):hover,.upload-file .upload-action-icon:is([aria-label="眼睛"],[aria-label="下载"]):focus-visible,.upload-file .upload-action-icon:is([aria-label="眼睛"],[aria-label="下载"]):active{color:#333!important;background:rgba(0,0,0,.04)!important;box-shadow:none!important;outline:0!important}.upload-file .upload-action-icon:is([aria-label="眼睛"],[aria-label="下载"]):hover .u-icon,.upload-file .upload-action-icon:is([aria-label="眼睛"],[aria-label="下载"]):focus-visible .u-icon,.upload-file .upload-action-icon:is([aria-label="眼睛"],[aria-label="下载"]):active .u-icon{filter:brightness(0) saturate(100%) invert(20%)!important}

/* Figma 2408:5088: preview carriers follow each variant's intrinsic size. */
.upload-figma-instance{display:contents}.upload-live{min-height:180px}.upload-stage{min-height:140px}.upload-multi-panel{display:none}.upload-multi.is-expanded .upload-multi-panel{display:grid}.import-dialog.is-closed{display:none}.upload-action-icon[aria-label="删除"]:hover,.upload-action-icon[aria-label="删除"]:focus-visible,.upload-action-icon[aria-label="删除"]:active{background:rgba(0,0,0,.04)}
.upload-live:has(.import-dialog:not(.large)),.upload-stage:has(.import-dialog:not(.large)){min-height:433px}.upload-live:has(.import-dialog.large),.upload-stage:has(.import-dialog.large){min-height:626px}.upload-live:has(.upload-drop),.upload-stage:has(.upload-drop){min-height:236px}.upload-live:has(.upload-file-stack),.upload-stage:has(.upload-file-stack){min-height:216px}.upload-live:has(.upload-multi.is-expanded),.upload-stage:has(.upload-multi.is-expanded){min-height:230px}
