html,body,#root{margin:0;min-height:100%}body{font-family:Noto Sans SC,Microsoft YaHei,Segoe UI,sans-serif}:root{--ui-canvas: #f6f7fa;--ui-surface: #ffffff;--ui-hover: #eef1f7;--ui-text: #252a36;--ui-muted: #6b7282;--ui-subtle: #737c8b;--ui-border: #e6e9f0;--ui-border-strong: #bdc6d5;--ui-accent: #5266cc;--ui-accent-solid: #5266cc;--ui-accent-tint: #eef1fc;--ui-accent-border: #a6b3e4;--ui-purple: #6951a5;--ui-purple-solid: #6951a5;--ui-purple-tint: #f0ecf8;--ui-purple-border: #c3b5d7;--ui-success: #26754a;--ui-success-solid: #26754a;--ui-success-tint: #eaf6ed;--ui-success-border: #a8d6b8;--ui-warning: #8c5b16;--ui-warning-solid: #98601c;--ui-warning-tint: #fff4de;--ui-warning-border: #e4c48a;--ui-danger: #ae4149;--ui-danger-solid: #ae4149;--ui-danger-tint: #fbecee;--ui-danger-border: #e7b6bd;--ui-on-solid: #ffffff;--ui-focus: #5266cc;--ui-overlay: rgb(21 27 39 / 38%);--ui-shadow: rgb(21 27 39 / 12%);--ui-popover-shadow: 0 8px 24px var(--ui-shadow);--ui-media-canvas: #15171c;--ui-media-text: #ffffff;--ui-chart-video: #5266cc;--ui-chart-analysis: #7991cf;--ui-chart-model: #aaafd3;--ui-chart-grid: #e6e9f0;--ui-placeholder-green: #e5e8db;--ui-placeholder-warm: #ede0ca;--ui-placeholder-red: #edddd9;color:var(--ui-text);background:var(--ui-canvas)}:root[data-theme=dark]{--ui-canvas: #10151e;--ui-surface: #1b2330;--ui-hover: #273246;--ui-text: #edf2fa;--ui-muted: #b3bfd2;--ui-subtle: #a3b1c7;--ui-border: #46546a;--ui-border-strong: #64758e;--ui-accent: #a2bcff;--ui-accent-solid: #425bb7;--ui-accent-tint: #263350;--ui-accent-border: #657daf;--ui-purple: #c9b4fb;--ui-purple-solid: #67509f;--ui-purple-tint: #332a47;--ui-purple-border: #806caa;--ui-success: #94dcb0;--ui-success-solid: #246544;--ui-success-tint: #1e392c;--ui-success-border: #43775b;--ui-warning: #f2ca88;--ui-warning-solid: #89561b;--ui-warning-tint: #392f20;--ui-warning-border: #8a7246;--ui-danger: #f7a5ad;--ui-danger-solid: #a33d49;--ui-danger-tint: #422b34;--ui-danger-border: #9c5964;--ui-focus: #a2bcff;--ui-overlay: rgb(3 6 12 / 66%);--ui-shadow: rgb(0 0 0 / 32%);--ui-chart-video: #a2bcff;--ui-chart-analysis: #8bc9d8;--ui-chart-model: #c9b4fb;--ui-chart-grid: #46546a;--ui-placeholder-green: #303b31;--ui-placeholder-warm: #403626;--ui-placeholder-red: #402d34}body{color:var(--ui-text);background:var(--ui-canvas)}input,select,textarea{color-scheme:inherit}::placeholder{color:var(--ui-subtle);opacity:1}body,.admin-shell,.admin-sidebar,.admin-topbar,.figma-global-nav,.studio-account-bar,.account-menu,.profile-panel,.profile-card,.confirm-dialog{transition:background-color .18s ease,border-color .18s ease,color .18s ease}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root[data-theme=dark]{--theme-accent: var(--ui-accent);--theme-accent-border: var(--ui-accent-border);--theme-accent-tint: var(--ui-accent-tint);--theme-border: var(--ui-border);--theme-canvas: var(--ui-canvas);--theme-danger: var(--ui-danger);--theme-danger-border: var(--ui-danger-border);--theme-danger-solid: var(--ui-danger-solid);--theme-danger-tint: var(--ui-danger-tint);--theme-focus: var(--ui-focus);--theme-hover: var(--ui-hover);--theme-media-canvas: var(--ui-media-canvas);--theme-muted: var(--ui-muted);--theme-overlay: var(--ui-overlay);--theme-purple: var(--ui-purple);--theme-purple-border: var(--ui-purple-border);--theme-purple-tint: var(--ui-purple-tint);--theme-shadow: var(--ui-shadow);--theme-success: var(--ui-success);--theme-success-border: var(--ui-success-border);--theme-success-solid: var(--ui-success-solid);--theme-success-tint: var(--ui-success-tint);--theme-surface: var(--ui-surface);--theme-text: var(--ui-text);--theme-warning: var(--ui-warning);--theme-warning-border: var(--ui-warning-border);--theme-warning-solid: var(--ui-warning-solid);--theme-warning-tint: var(--ui-warning-tint);--theme-purple-solid: var(--ui-purple-solid);--theme-accent-solid: var(--ui-accent-solid)}.confirm-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-items:center;padding:24px;background:var(--ui-overlay)}.confirm-dialog{box-sizing:border-box;width:min(500px,100%);padding:32px;border-radius:16px;background:var(--theme-surface, #fff);color:var(--theme-text, #28232e);box-shadow:0 20px 70px var(--ui-shadow)}.confirm-dialog h2{margin:0;font-size:22px;font-weight:600;line-height:1.4}.confirm-dialog p{margin:16px 0 28px;font-size:15px;line-height:1.65;color:var(--theme-muted, #746d7c)}.confirm-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px}.confirm-dialog-actions button{min-height:44px;padding:10px 20px;border-radius:8px;font:inherit;font-size:14px;cursor:pointer}.confirm-dialog-discard{border:1px solid var(--theme-border, #dfdae5);color:var(--theme-text, #514959);background:var(--theme-surface, #fff)}.confirm-dialog-continue{border:1px solid var(--theme-purple-border, #6951a5);color:var(--ui-on-solid, #fff);background:var(--theme-purple-solid, #6951a5)}.confirm-dialog-actions button:focus-visible{outline:3px solid var(--theme-focus, #b9a4e1);outline-offset:3px}@media(max-width:480px){.confirm-dialog{padding:24px}}[data-account-variant]{--account-accent: var(--ui-purple);--account-tint: var(--ui-purple-tint);--account-solid: var(--ui-purple-solid)}[data-account-variant=admin]{--account-accent: var(--ui-accent);--account-tint: var(--ui-accent-tint);--account-solid: var(--ui-accent-solid)}.account-trigger,.account-button,.account-icon-button,.account-theme-choice{font:inherit;cursor:pointer}.account-trigger{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:2px;border:0;border-radius:24px;color:var(--ui-text);background:transparent;text-align:left}.account-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--account-tint, var(--ui-purple-tint));color:var(--account-accent, var(--ui-purple));overflow:hidden;font-size:16px;font-weight:600}.account-avatar img{width:100%;height:100%;object-fit:cover}.account-trigger-meta{display:grid;gap:2px;max-width:170px}.account-trigger-meta strong{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-trigger-meta small{color:var(--ui-muted);font-size:12px}.account-menu{position:fixed;box-sizing:border-box;z-index:1005;width:min(372px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-text);box-shadow:var(--ui-popover-shadow);animation:account-enter .18s ease-out}.account-menu-identity{display:grid;gap:10px;overflow-wrap:anywhere}.account-menu-identity>strong{font-size:20px;font-weight:500}.account-menu-identity>span,.account-menu-label{color:var(--ui-muted);font-size:14px}.account-role-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px}.account-role{background:var(--account-tint, var(--ui-purple-tint));color:var(--account-accent, var(--ui-purple));padding:4px 9px;border-radius:6px;font-weight:500}.account-menu hr,.profile-panel hr{border:0;border-top:1px solid var(--ui-border);width:100%;margin:4px 0}.account-button{min-height:44px;padding:9px 16px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-text);text-align:center;font-size:14px;transition:background-color .18s,border-color .18s}.account-button:hover:not(:disabled),.account-icon-button:hover,.account-theme-choice:hover{background:var(--ui-hover)}.account-button-primary{background:var(--account-solid, var(--ui-accent-solid));border-color:transparent;color:var(--ui-on-solid)}.account-button-primary:hover:not(:disabled){background:var(--account-solid, var(--ui-accent-solid));filter:brightness(1.08)}.account-button:disabled{cursor:not-allowed;opacity:.55}.account-theme-choice{display:flex;align-items:center;gap:12px;padding:12px;border:0;border-radius:8px;background:var(--ui-surface);color:var(--ui-text);text-align:left;font-size:16px}.account-theme-choice[aria-checked=true]{color:var(--account-accent);background:var(--account-tint);font-weight:500}.account-icon-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;padding:0;border:0;border-radius:8px;color:var(--ui-muted);background:transparent;font-size:24px;line-height:1}.account-trigger:focus-visible,.account-button:focus-visible,.account-icon-button:focus-visible,.account-theme-choice:focus-visible,.profile-panel input:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}.profile-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1010;display:grid;align-items:start;justify-items:center;overflow-y:auto;padding:48px 24px;background:var(--ui-overlay);animation:account-enter .18s ease-out}.profile-panel{box-sizing:border-box;width:min(1120px,100%);padding:32px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-canvas);color:var(--ui-text);font:15px/1.5 Noto Sans SC,Microsoft YaHei,Segoe UI,sans-serif}.profile-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.profile-heading h1{font-size:28px;line-height:1.4;font-weight:500;margin:0 0 8px}.profile-heading p{margin:0;color:var(--ui-muted)}.profile-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:24px;align-items:start}.profile-card{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:14px;margin:0;padding:24px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface)}.profile-card h2{font-size:18px;font-weight:500;margin:0 0 2px}.profile-avatar{width:80px;height:80px;font-size:28px}.profile-card input:not([type=file]){box-sizing:border-box;width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface);color:var(--ui-text);font:inherit}.profile-card input[readonly]{background:var(--ui-canvas)}.profile-card label,.profile-help{font-size:13px;color:var(--ui-muted);margin:0}.profile-actions{display:flex;flex-wrap:wrap;gap:12px}.profile-error{border-radius:8px;padding:12px;color:var(--ui-danger);background:var(--ui-danger-tint)}.profile-error p{margin:0 0 8px}.account-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.studio-toast-stack{position:fixed;z-index:12000;top:max(16px,env(safe-area-inset-top));left:50%;transform:translate(-50%);width:min(560px,calc(100vw - 32px));display:flex;flex-direction:column;gap:10px;pointer-events:none}.studio-toast{pointer-events:auto;display:grid;grid-template-columns:24px minmax(0,1fr) 40px;gap:12px;align-items:start;padding:12px 12px 12px 16px;border:1px solid var(--ui-border);border-radius:10px;color:var(--ui-text);background:var(--ui-surface);box-shadow:var(--ui-popover-shadow);font:14px/1.6 Noto Sans SC,Microsoft YaHei,sans-serif;animation:account-enter .18s ease-out}.studio-toast p{margin:8px 0;overflow-wrap:anywhere}.studio-toast-symbol{color:var(--ui-accent);font-size:22px;line-height:40px;text-align:center}.studio-toast-error,.studio-toast-warning{background:var(--ui-warning-tint);border-color:var(--ui-warning-border)}.studio-toast-error .studio-toast-symbol,.studio-toast-warning .studio-toast-symbol{color:var(--ui-warning)}@keyframes account-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.profile-grid{grid-template-columns:1fr}.profile-modal-backdrop{padding:16px}.profile-panel,.profile-card{padding:20px}.account-trigger-meta{display:none}}@media(prefers-reduced-motion:reduce){.account-menu,.profile-modal-backdrop,.studio-toast{animation:none}.account-button,.account-theme-choice{transition:none}}
