:root{color-scheme:dark;--ink: #fafafa;--ink-soft: rgba(250, 250, 250, .78);--muted: #cfcfcf;--deep: #000000;--deep-mid: #08060f;--paper: #05040a;--surface: #120c1c;--panel: rgba(8, 6, 16, .72);--accent: #7630f7;--accent-bright: #a22cfc;--accent-hover: #8b3dff;--accent-soft: rgba(118, 48, 247, .16);--accent-glow: rgba(118, 48, 247, .42);--teal: #c44bff;--teal-glow: rgba(196, 75, 255, .35);--line: rgba(250, 250, 250, .12);--font-display: "Plus Jakarta Sans", "Noto Sans SC", sans-serif;--font-body: "Noto Sans SC", "Plus Jakarta Sans", "PingFang SC", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-pill: 96px;--shadow-sm: 0 4px 16px rgba(118, 48, 247, .28);--shadow-md: 0 10px 36px rgba(162, 44, 252, .42);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .15s;--dur-mid: .28s;--dur-enter: .45s;--danger: #f07167;--warn: #e0b86a;--ok: #86efac;--text: var(--ink);--bg: var(--paper);--sfb-chrome: #161022;--sfb-panel: #120c1c;--sfb-code-bg: #0c0814;--code-fg: #e8edf7;--code-gutter-fg: #8b8499;--code-gutter-bg: #161022;--code-chrome: #1a1428;--tok-com: #8b8499;--tok-kw: #c4b5fd;--tok-str: #f0abfc;--tok-num: #fbbf24;--tok-type: #a5b4fc;--tok-prop: #e9d5ff}html[data-theme=light]{color-scheme:light;--ink: #1c1230;--ink-soft: rgba(28, 18, 48, .72);--muted: #6b5f7a;--deep: #f3eef8;--deep-mid: #ebe4f4;--paper: #f7f3fb;--surface: #ffffff;--panel: rgba(255, 255, 255, .86);--accent: #6b21e8;--accent-bright: #7c3aed;--accent-hover: #5b16d4;--accent-soft: rgba(107, 33, 232, .1);--accent-glow: rgba(107, 33, 232, .2);--teal: #9333ea;--teal-glow: rgba(147, 51, 234, .2);--danger: #c2453b;--warn: #9a6b1f;--ok: #15803d;--line: rgba(28, 18, 48, .16);--shadow-sm: 0 1px 3px rgba(28, 18, 48, .06), 0 4px 16px rgba(107, 33, 232, .1);--shadow-md: 0 1px 3px rgba(28, 18, 48, .06), 0 12px 32px rgba(107, 33, 232, .14);--sfb-chrome: #efe8f6;--sfb-panel: #ffffff;--sfb-code-bg: #f4eef9;--code-fg: #2a1848;--code-gutter-fg: #8b7a9e;--code-gutter-bg: #efe8f6;--code-chrome: #e8dff2;--tok-com: #8b7a9e;--tok-kw: #6b21e8;--tok-str: #a21caf;--tok-num: #b45309;--tok-type: #4338ca;--tok-prop: #7c3aed}:root{--nav-width: 220px;--nav-collapsed: 64px;--toolbar-h: 60px;--page-pad-x: 1.25rem;--page-pad-y: 1rem;--section-gap: 1rem;--stack-gap: .75rem;font-family:var(--font-body);line-height:1.5;color:var(--ink);background:radial-gradient(ellipse 70% 45% at 0% 0%,var(--accent-glow),transparent),radial-gradient(ellipse 50% 40% at 100% 0%,var(--teal-glow),transparent),var(--paper)}*,*:before,*:after{box-sizing:border-box}html{margin:0;padding:0;width:100%;height:100%;height:100dvh;overflow:hidden}body{margin:0;padding:0;width:100%;height:100%;height:100dvh;overflow:hidden;position:relative}#root{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;height:100dvh;overflow:hidden}a{color:var(--accent)}code{font-size:.9em;padding:.1em .35em;border-radius:4px;background:var(--accent-soft)}.shell{max-width:42rem;margin:0 auto;padding:2.5rem 1.5rem 3rem}.shell.wide{max-width:56rem}.shell.narrow{max-width:24rem}.auth-page{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem 1rem 1.25rem;overflow-x:hidden;overflow-y:auto;background:radial-gradient(ellipse 60% 45% at 12% 0%,var(--accent-glow),transparent 60%),radial-gradient(ellipse 50% 40% at 92% 8%,var(--teal-glow),transparent 55%)}.beian-footer{display:flex;justify-content:center;align-items:center;flex-shrink:0;padding:.5rem .75rem}.beian-footer a{font-size:.72rem;letter-spacing:.03em;color:var(--ink-soft);text-decoration:none}.beian-footer a:hover{color:var(--ink);text-decoration:underline}.beian-footer--auth{margin-top:auto;padding-bottom:.25rem}.beian-footer--hub{border-top:1px solid var(--line);background:#080610a6;padding:.55rem 1rem}.beian-footer--nav{width:100%;flex:0 0 auto;padding:.35rem 0 0;justify-content:flex-start}.beian-footer--nav a{font-size:.65rem;opacity:.85}.hub-footer-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.35rem 1rem;flex-shrink:0;padding:.55rem 1rem;border-top:1px solid var(--line);background:var(--surface)}.hub-contact-link{font-size:.72rem;letter-spacing:.03em;text-decoration:none}.hub-contact-link:hover{color:var(--ink);text-decoration:underline}.auth-card{width:100%;max-width:24rem;padding:2rem 1.75rem;background:var(--panel);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-md),inset 0 1px #ffffff14;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:billing-rise var(--dur-enter) var(--ease-out) both}.auth-card .brand{animation:billing-rise var(--dur-enter) var(--ease-out) 40ms both}.auth-card h1{animation:billing-rise var(--dur-enter) var(--ease-out) 80ms both}.auth-card .lede{animation:billing-rise var(--dur-enter) var(--ease-out) .12s both}.auth-card .form,.auth-card form{animation:billing-rise var(--dur-enter) var(--ease-out) .16s both}.auth-card .muted{animation:billing-rise var(--dur-enter) var(--ease-out) .22s both}.auth-card input:focus,.auth-card textarea:focus,.auth-card select:focus,.auth-card button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-card input,.auth-card textarea,.auth-card select{font-size:16px}.auth-captcha-row{display:flex;gap:.5rem;align-items:stretch}.auth-captcha-row input{flex:1;min-width:0}.auth-captcha-row>button{flex-shrink:0;white-space:nowrap}.auth-captcha-img-btn{padding:0;line-height:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--surface)}.auth-card--wide{max-width:44rem}.auth-split{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.auth-split-main{min-width:0}.auth-split-pane{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-left:2rem;margin-left:2rem;border-left:1px solid var(--line)}.wechat-login-section{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center}.wechat-scan-title{margin:0;font-size:.9rem;font-weight:600}.wechat-qr{line-height:0}.wechat-qr img{display:block;padding:6px;border-radius:var(--radius-md);background:#fff}.wechat-qr-countdown{margin:.4rem 0 0;line-height:1.4;font-variant-numeric:tabular-nums}.wechat-scan-hint{margin:0}.wechat-mock-btn,.wechat-qr-refresh{width:12.5rem;padding:.65rem 1rem;border:1px dashed color-mix(in srgb,var(--accent) 45%,transparent);border-radius:var(--radius-md);background:transparent;color:var(--ink);font-size:.85rem;cursor:pointer}.wechat-mock-btn:hover,.wechat-qr-refresh:hover{border-color:var(--accent)}@media (max-width: 800px){.auth-card--wide{max-width:24rem}.auth-split{grid-template-columns:1fr}.auth-split-pane{display:none}}.auth-captcha-img-btn img{display:block;width:140px;height:48px}.brand{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 .35rem;font-size:1.5rem;font-weight:700;letter-spacing:.02em;color:var(--ink);font-family:var(--font-display)}.brand:before,.brand-link:before{content:"K";display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:50%;font-size:.72rem;font-weight:800;letter-spacing:0;color:#fafafa;background:linear-gradient(80deg,#a22cfc,#7630f7 70%);box-shadow:0 0 0 1px #a22cfc73,0 0 16px #7630f780;flex-shrink:0}.brand-link{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:1.15rem;line-height:1.3;letter-spacing:.02em}h1{margin:0 0 .5rem;font-size:1.35rem;font-weight:600}h2{margin:0 0 .75rem;font-size:1.05rem;font-weight:600}h3{margin:0 0 .5rem;font-size:.95rem;font-weight:600}.lede{margin:0 0 var(--section-gap);color:var(--muted)}.muted{margin:0;color:var(--muted)}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.form{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1.25rem}.form.inline{flex-direction:row;flex-wrap:wrap}.form label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.stack-form{display:flex;flex-direction:column;gap:.85rem}.stack-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--muted)}.stack-form textarea{width:100%;resize:vertical;border-radius:var(--radius-sm)}.stack-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}@media (max-width: 720px){.stack-form-row{grid-template-columns:1fr}}input,textarea,button,select{font:inherit}input,textarea,select{padding:.55rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:color-mix(in srgb,var(--accent) 45%,transparent)}button{padding:.6rem 1.2rem;border:none;border-radius:var(--radius-pill);background:linear-gradient(80deg,var(--accent-bright) 0%,var(--accent) 60%);color:#fafafa;cursor:pointer;font-weight:600;box-shadow:inset 0 1px 2px #ffffff1f,var(--shadow-sm)}button:hover:not(:disabled){background:linear-gradient(80deg,color-mix(in srgb,var(--accent-bright) 82%,#fff) 0%,var(--accent-hover) 40%)}button:disabled{opacity:.55;cursor:not-allowed}button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}button.ghost:hover:not(:disabled){background:var(--accent-soft);border-color:#a22cfc73;color:var(--ink)}button.danger{background:transparent;color:var(--danger);border:1px solid rgba(240,113,103,.45)}button.danger:hover:not(:disabled){background:#f071671f}.error{color:var(--danger);margin:.5rem 0}.form-error{margin:.5rem 0;padding:.55rem .75rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);font-size:.9rem;line-height:1.45}.health{margin:0;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);font-size:.8rem;overflow:auto;max-height:28rem}.row-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.row-actions.wrap{margin-top:1rem}.badge{display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:999px;border:1px solid var(--line);font-size:.8rem;background:var(--surface);color:var(--muted);white-space:nowrap}.badge.ok{border-color:#05966959;color:var(--ok);background:#05966914}.panel{margin-bottom:1.5rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm)}.panel h2{margin-bottom:.85rem}.meta{margin:.25rem 0 0;font-size:.85rem;color:var(--muted)}.warn-banner{margin:.5rem 0;padding:.55rem .75rem;border-radius:8px;background:color-mix(in srgb,var(--warn) 14%,transparent);border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);color:var(--warn);font-size:.9rem;line-height:1.45}.warn-banner .linkish{margin-left:.35rem;background:none;border:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}.warn-inline{color:var(--warn)}.warn-panel{border-color:#b4530959;background:#b453090f}.ai-provider-select{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin-bottom:1rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper)}.ai-provider-lead{flex:1 0 100%;margin:0;font-size:.85rem}.ai-provider-field{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted);min-width:7rem}.ai-provider-field-label{line-height:1.2;white-space:nowrap}.ai-provider-select select{font:inherit;padding:.3rem .45rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);max-width:min(28rem,100%)}.ai-provider-select.compact{margin:0;padding:0;border:none;background:transparent;gap:.45rem .65rem;flex-wrap:wrap;align-items:center;justify-content:flex-end}.ai-provider-select.compact .ai-provider-field{flex-direction:row;align-items:center;gap:.35rem;flex:0 0 auto;min-width:max-content;font-size:.75rem}.ai-provider-select.compact .ai-provider-field-label{flex-shrink:0;color:var(--muted);font-weight:500}.ai-provider-select.compact select{box-sizing:content-box;width:auto;min-width:11rem;max-width:none;padding:.28rem 1.6rem .28rem .4rem;font-size:.78rem;line-height:1.2}.ai-provider-error{margin:0;font-size:.75rem}.ai-provider-select label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted);min-width:7rem}.stream-draft{margin:.5rem 0;max-height:10rem;overflow:auto;font-size:.8rem;white-space:pre-wrap;word-break:break-word;padding:.55rem .7rem;border-radius:var(--radius-sm);background:var(--accent-soft);border:1px dashed color-mix(in srgb,var(--accent) 25%,transparent)}.app-shell{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:stretch;width:auto;height:auto;overflow:hidden;background:var(--paper)}.side-nav{z-index:40;display:flex;flex-direction:column;width:var(--nav-width);height:100%;flex-shrink:0;background:linear-gradient(180deg,#160e24,#0c0814);border-right:1px solid var(--line);box-shadow:var(--shadow-sm);transition:width var(--dur-mid) var(--ease-out)}html[data-theme=light] .side-nav{background:linear-gradient(180deg,var(--surface) 0%,var(--deep-mid) 100%)}.app-shell.nav-collapsed .side-nav{width:var(--nav-collapsed);overflow-x:hidden}.side-nav-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;height:var(--toolbar-h);min-height:var(--toolbar-h);padding:0 .85rem;flex-shrink:0}.app-shell.nav-collapsed .side-nav-header{flex-direction:column;align-items:center;justify-content:flex-start;gap:.35rem;height:auto;min-height:unset;padding:.75rem .4rem .4rem}.side-nav-brand{overflow-x:clip;overflow-y:visible;white-space:nowrap;line-height:1.3}.app-shell.nav-collapsed .side-nav-brand{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;font-size:1rem;line-height:1;overflow:hidden}.app-shell.nav-collapsed .side-nav-brand .brand-text{display:none}.app-shell.nav-collapsed .side-nav-brand{gap:0}.nav-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);border:1px solid transparent;line-height:1;font-size:1.1rem}.nav-icon-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.app-shell.nav-collapsed .nav-collapse-btn{width:2.25rem;height:2.25rem;color:var(--accent);font-size:1.25rem;font-weight:600}.side-nav-new{margin:0 .85rem 1rem;width:calc(100% - 1.7rem)}.app-shell.nav-collapsed .side-nav-new{display:inline-flex;align-items:center;justify-content:center;align-self:center;margin:0 auto .85rem;width:2.25rem;height:2.25rem;min-width:2.25rem;padding:0;font-size:1.25rem;font-weight:600;line-height:1;border-radius:var(--radius-sm)}.app-shell.nav-collapsed .side-nav-new .nav-new-label{display:none}.side-nav-section{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 .5rem}.side-nav-section-head{display:flex;align-items:center;justify-content:space-between;padding:.35rem .5rem;font-size:.75rem;font-weight:600;color:var(--muted);text-transform:none}.app-shell.nav-collapsed .side-nav-section-head,.app-shell.nav-collapsed .side-nav-section-label{display:none}.side-nav-list{list-style:none;margin:0;padding:0;overflow-x:hidden;overflow-y:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.side-nav-list.archived{flex:0 1 auto;max-height:30%}.side-nav-row{display:flex;align-items:center;gap:.15rem;min-width:0}.side-nav-row .side-nav-item{flex:1;min-width:0;margin-bottom:.2rem}.side-nav-delete{flex-shrink:0;width:1.55rem;height:1.55rem;margin-bottom:.2rem;border:none;border-radius:8px;background:transparent;color:var(--muted);font-size:1.05rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.side-nav-row:hover .side-nav-delete,.side-nav-row:focus-within .side-nav-delete{opacity:1}.side-nav-delete:hover{background:#dc26261a;color:#dc2626}.side-nav-item{display:block;padding:.55rem .65rem;margin-bottom:.2rem;border-radius:var(--radius-sm);text-decoration:none;color:var(--ink);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.side-nav-item:hover{background:var(--paper);color:var(--ink)}.side-nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.app-shell.nav-collapsed .side-nav-item{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;margin:0 auto .35rem;padding:0;font-size:.85rem;font-weight:600}.side-nav-archive-toggle{display:inline-flex;align-items:center;width:auto;height:auto;padding:.2rem .4rem;font-size:.75rem;font-weight:600;color:var(--muted)}.side-nav-logout{padding:.35rem .55rem;font-size:.8rem}.side-nav-empty{padding:.75rem .5rem;font-size:.8rem;color:var(--muted)}.app-shell.nav-collapsed .side-nav-empty{display:none}.side-nav-footer{flex-shrink:0;padding:.7rem .75rem .8rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.55rem}.side-nav-user-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;justify-content:flex-end;gap:.5rem;min-width:0}.side-nav-links-row{display:flex;align-items:center;gap:.35rem;min-width:0}.side-nav-links-row--stack{flex-direction:column;align-items:stretch;gap:.15rem}.side-nav-links-row .side-nav-item{margin-bottom:0}.side-nav-footer .beian-footer--nav{margin-top:.1rem}.side-nav-footer .side-nav-logout,.side-nav-footer>.nav-icon-btn,.side-nav-user-row .nav-icon-btn{align-self:center;margin:0;padding:.25rem .5rem;font-size:.75rem;line-height:1.2;min-height:1.75rem}.user-avatar{width:2rem;height:2rem;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0;position:relative}.user-avatar-dot{position:absolute;top:-2px;right:-2px;width:.55rem;height:.55rem;border-radius:50%;background:#e24b4b;border:2px solid var(--surface)}.user-meta{min-width:0}.user-meta .user-name{margin:0;font-size:.85rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-meta .user-email{margin:.1rem 0 0;font-size:.7rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell.nav-collapsed .user-meta,.app-shell.nav-collapsed .side-nav-logout-label,.app-shell.nav-collapsed .user-credits--sidebar,.app-shell.nav-collapsed .side-nav-links-row:not(.side-nav-links-row--stack){display:none}.app-shell.nav-collapsed .side-nav-footer{align-items:center;gap:.5rem}.app-shell.nav-collapsed .side-nav-user-row{display:flex;flex-direction:column;align-items:center;gap:.4rem}.app-shell.nav-collapsed .side-nav-links-row--stack{width:100%;align-items:center}.app-shell.nav-collapsed .side-nav-links-row--stack .side-nav-item{width:2.25rem;height:2.25rem;margin:0;padding:0;display:flex;align-items:center;justify-content:center}.app-main{flex:1;min-width:0;width:auto;max-width:100%;height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column}.nav-backdrop,.nav-mobile-toggle{display:none}.home-workspace{flex:1;min-height:0;padding:1.5rem var(--page-pad-x) 2rem;max-width:1100px;width:100%;margin:0 auto;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.home-top{display:flex;align-items:center;gap:.65rem;margin-bottom:var(--stack-gap)}.home-top h1{margin:0;font-size:1.75rem}.home-hero{margin-bottom:var(--section-gap)}.home-hero .lede{margin-bottom:0}.office-back-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2.25rem;height:2.25rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-size:1.1rem;line-height:1;text-decoration:none;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.office-back-btn:hover{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent)}.office-back-btn:active{transform:translateY(1px)}.office-back-btn:focus-visible,.nav-collapse-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.office-back-link{color:var(--muted);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}.office-back-link:hover{color:var(--accent);text-decoration:underline;text-underline-offset:.2em}.brief-summary{margin-top:.85rem;padding:.75rem .9rem;border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--paper);font-size:.9rem}.brief-summary p{margin:0 0 .25rem}.brief-summary p:last-child{margin-bottom:0}.home-create-row{display:flex;gap:.6rem;align-items:stretch;flex-wrap:wrap;margin-bottom:var(--section-gap)}.home-create-row input,.home-create-row select{flex:1 1 16rem;min-width:0}.home-create-row button{flex-shrink:0}.home-project-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.home-project-card{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);animation:billing-rise var(--dur-enter) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 60ms)}.home-project-card:nth-child(1){--i: 0}.home-project-card:nth-child(2){--i: 1}.home-project-card:nth-child(3){--i: 2}.home-project-card:nth-child(4){--i: 3}.home-project-card:nth-child(5){--i: 4}.home-project-card:nth-child(6){--i: 5}.home-project-card:nth-child(7){--i: 6}.home-project-card:nth-child(8){--i: 7}.home-project-card:hover{box-shadow:var(--shadow-md);border-color:#7630f740;transform:translateY(-2px)}.home-project-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;min-width:0}.home-project-cover{position:relative;display:flex;align-items:flex-end;height:72px;padding:.5rem .8rem}.home-project-cover.cover-c1{background:linear-gradient(135deg,#7630f7,#a22cfc)}.home-project-cover.cover-c2{background:linear-gradient(135deg,#a22cfc,#c44bff)}.home-project-cover.cover-c3{background:linear-gradient(135deg,#4c1d95,#7630f7)}.home-project-cover.cover-c4{background:linear-gradient(135deg,#1a1428,#4c3d66)}.home-project-cover-glyph{padding:.12rem .5rem;border:1px solid rgba(255,255,255,.6);border-radius:4px;color:#ffffffeb;font-size:.62rem;font-weight:700;letter-spacing:.14em}.home-project-body{display:flex;flex-direction:column;gap:.45rem;padding:.85rem .9rem .55rem;min-width:0}.home-project-body h3{margin:0;font-size:.98rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;transition:color var(--dur-fast) var(--ease-out)}.home-project-card:hover .home-project-body h3{color:var(--accent)}.home-project-meta{display:flex;flex-wrap:wrap;gap:.35rem}.home-project-badge{padding:.1rem .55rem;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--paper);color:var(--muted);font-size:.72rem;white-space:nowrap}.home-project-badge.ok{border-color:#05966959;background:#05966914;color:var(--ok)}button.home-project-del{margin:.35rem .9rem .8rem;padding:.35rem .75rem;font-size:.8rem;align-self:flex-start}.office-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.85rem}.office-panel-head h2{margin:0}.office-preview-theme-switch{display:inline-flex;gap:.2rem;padding:.2rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md)}.office-preview-theme-switch button{padding:.25rem .7rem;border:none;border-radius:calc(var(--radius-md) - 2px);background:transparent;box-shadow:none;color:var(--muted);font-size:.8rem;font-weight:500;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.office-preview-theme-switch button:hover:not(:disabled):not(.is-active){color:var(--ink)}.office-preview-theme-switch button.is-active{background:var(--surface);color:var(--accent);font-weight:600;box-shadow:var(--shadow-sm)}.office-preview-main{display:flex;align-items:center;gap:.75rem}.office-preview-main .slide-preview--main{flex:1;min-width:0}button.office-preview-nav{flex-shrink:0;width:2.25rem;height:2.25rem;padding:0;border-radius:50%;background:var(--surface);border:1px solid var(--line);color:var(--ink);box-shadow:none;font-size:1.35rem;line-height:1;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}button.office-preview-nav:hover:not(:disabled){background:var(--accent-soft);border-color:#a22cfc73;color:var(--accent)}.office-preview-meta{margin:.5rem 0 .75rem;font-size:.82rem}.office-preview-strip{display:flex;gap:.6rem;overflow-x:auto;padding:.35rem .15rem .55rem}.slide-preview{position:relative;container-type:inline-size;border:0;padding:0;background:none;box-shadow:none;text-align:left}.slide-preview--main{width:100%;aspect-ratio:16 / 9}.slide-preview--thumb{flex:0 0 auto;width:104px;cursor:pointer;border-radius:7px;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.slide-preview--thumb:hover{transform:translateY(-1px)}.slide-preview--thumb.is-active{box-shadow:0 0 0 2px var(--accent)}.slide-preview-canvas{position:relative;display:flex;width:100%;height:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:6px;background:var(--sld-bg);color:var(--sld-body);box-shadow:inset 0 0 0 1px #0000001f}.slide-preview--main .slide-preview-canvas{aspect-ratio:auto;border-radius:10px}.slide-preview-inner{display:flex;flex-direction:column;width:100%;height:100%;padding:5cqw;min-width:0;overflow:hidden}.slide-preview-inner--center{align-items:center;justify-content:center;text-align:center;gap:1.6cqw}.slide-preview-inner--section{justify-content:center;border-left:1.4cqw solid var(--sld-accent);padding-left:5cqw;gap:1.2cqw}.slide-preview-rule{width:8cqw;height:.6cqw;border-radius:999px;background:var(--sld-accent)}.slide-preview-title{margin:0 0 1.6cqw;color:var(--sld-title);font-size:5.4cqw;font-weight:700;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.slide-preview-title--xl{font-size:7.4cqw;margin-bottom:1cqw}.slide-preview-inner--center .slide-preview-title,.slide-preview-inner--center .slide-preview-title--xl{margin-bottom:0}.slide-preview-sub{margin:0;color:var(--sld-muted);font-size:3.1cqw;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.slide-preview-quote{margin:0;color:var(--sld-title);font-size:4.6cqw;font-style:italic;line-height:1.45}.slide-preview-quote:before{content:"“";color:var(--sld-accent)}.slide-preview-quote:after{content:"”";color:var(--sld-accent)}.slide-preview-cols{display:grid;grid-template-columns:1fr 1fr;gap:4cqw;flex:1;min-height:0}.slide-preview-bullets{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:1.4cqw}.slide-preview-bullets li{position:relative;padding-left:3cqw;color:var(--sld-body);font-size:3.1cqw;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.slide-preview-bullets li:before{content:"";position:absolute;left:0;top:.55em;width:1.1cqw;height:1.1cqw;border-radius:50%;background:var(--sld-accent)}.slide-preview-inner--center .slide-preview-bullets{align-items:flex-start;text-align:left}.slide-preview-thumb-index{position:absolute;right:.25rem;bottom:.2rem;padding:0 .3rem;border-radius:4px;background:#00000080;color:#fff;font-size:.62rem;line-height:1.4;pointer-events:none}.office-rewrite-bar{display:flex;gap:.6rem;align-items:stretch;flex-wrap:wrap;margin-top:.85rem}.office-rewrite-bar input{flex:1 1 16rem;min-width:0}.office-rewrite-bar button{flex-shrink:0}.office-rewrite-note{margin:.45rem 0 0;font-size:.78rem}@media (max-width: 720px){button.office-preview-nav{width:2rem;height:2rem;font-size:1.15rem}.slide-preview--thumb{width:88px}}.office-doc-preview{margin-top:1rem;padding:1rem 1.15rem;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 5%,transparent);max-height:26rem;overflow-y:auto}.office-doc-preview h3{margin:0 0 .3rem;text-align:center}.office-doc-meta{margin:0 0 .8rem;font-size:.82rem;text-align:center}.office-doc-section h4{margin:.8rem 0 .3rem;font-size:.95rem}.office-doc-section p{margin:.25rem 0;line-height:1.7;font-size:.9rem}mark.office-doc-placeholder{background:color-mix(in srgb,var(--warn, #ffab00) 22%,transparent);color:inherit;border-radius:3px;padding:0 .15rem}.office-doc-note{margin:.8rem 0 0;font-size:.78rem}.publish-market{margin-top:.75rem}button.publish-market-trigger{border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent)}button.publish-market-trigger:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}button.publish-market-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.publish-market-msg{margin:.5rem 0 0;font-size:.85rem}.publish-market-msg.is-ok{color:var(--ok)}.publish-market-msg.is-error{color:var(--danger)}.publish-market .account-card{max-width:32rem;margin-top:.75rem}.home-create{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:1.25rem 1.35rem;box-shadow:var(--shadow-sm);margin-bottom:var(--section-gap);transition:box-shadow var(--dur-fast) var(--ease-out)}.home-create:focus-within{box-shadow:var(--shadow-md)}.home-create textarea{width:100%;min-height:6rem;resize:vertical;border-radius:var(--radius-md);margin-bottom:.85rem}.home-create-kind{display:inline-flex;gap:.25rem;padding:.25rem;margin-bottom:.85rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md)}.home-create-kind button{border:none;background:transparent;padding:.35rem .9rem;border-radius:calc(var(--radius-md) - 2px);font-size:.85rem;color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.home-create-kind button:hover:not(:disabled){color:var(--text)}.home-create-kind button.active{background:var(--surface);color:var(--text);font-weight:600;box-shadow:var(--shadow-sm)}.home-create-kind button:disabled{cursor:not-allowed;opacity:.6}.home-create-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.home-create-hint{margin:0;font-size:.8rem;color:var(--muted)}.rag-create-input{display:block;width:100%;margin-bottom:.85rem}.project-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.project-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);animation:billing-rise var(--dur-enter) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 60ms)}.project-card:nth-child(1){--i: 0}.project-card:nth-child(2){--i: 1}.project-card:nth-child(3){--i: 2}.project-card:nth-child(4){--i: 3}.project-card:nth-child(5){--i: 4}.project-card:nth-child(6){--i: 5}.project-card:nth-child(7){--i: 6}.project-card:nth-child(8){--i: 7}.project-card:hover{box-shadow:var(--shadow-md);border-color:#7630f740;transform:translateY(-2px)}.project-card-cover{height:88px;background:linear-gradient(135deg,#7630f7,#a22cfc)}.project-card-cover.c1{background:linear-gradient(135deg,#7630f7,#a22cfc)}.project-card-cover.c2{background:linear-gradient(135deg,#a22cfc,#c44bff)}.project-card-cover.c3{background:linear-gradient(135deg,#4c1d95,#7630f7)}.project-card-cover.c4{background:linear-gradient(135deg,#1a1428,#4c3d66)}.project-card-body{padding:.9rem 1rem 1rem;flex:1;display:flex;flex-direction:column;gap:.5rem}.project-card-body .project-name{font-weight:600;text-decoration:none;color:var(--ink);font-size:1rem}.project-card-body .project-name:hover{color:var(--accent)}.project-card-actions{display:flex;gap:.4rem;margin-top:auto;padding-top:.35rem}.project-card-actions button{padding:.35rem .65rem;font-size:.8rem}.project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.project-row{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.project-name{font-weight:600;text-decoration:none;color:var(--ink)}.project-name:hover{color:var(--accent)}.workspace{flex:1;display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.top-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:var(--toolbar-h);min-height:var(--toolbar-h);max-height:var(--toolbar-h);padding:0 var(--page-pad-x);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);flex-shrink:0;flex-wrap:nowrap;overflow-x:clip;overflow-y:visible}.top-toolbar-left{display:flex;align-items:center;gap:.65rem;min-width:0;flex:1 1 auto;flex-wrap:nowrap;min-height:2rem}.toolbar-crumb{display:flex;align-items:center;gap:.4rem;min-width:0}.toolbar-crumb-sep{color:var(--muted);opacity:.55;font-size:.8rem;flex-shrink:0;-webkit-user-select:none;user-select:none}.top-toolbar-left h1,.toolbar-crumb h1{margin:0;font-size:1.05rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(32rem,42vw)}.top-toolbar-right{display:flex;align-items:center;gap:.45rem;flex-wrap:nowrap;flex-shrink:0}.top-toolbar-right>button,.top-toolbar-right .toolbar-more-trigger{white-space:nowrap}.toolbar-link{font-size:.85rem;line-height:1.3;color:var(--muted);text-decoration:none;flex-shrink:0;transition:color var(--dur-fast) var(--ease-out)}.toolbar-link:hover{color:var(--accent)}.toolbar-primary{padding:.5rem 1.05rem;box-shadow:0 1px #7630f72e}.preview-panel-toggles{display:inline-flex;align-items:stretch;padding:.15rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);gap:.15rem}.preview-panel-toggles button{padding:.35rem .7rem;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:.8rem;font-weight:500;line-height:1.2;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.preview-panel-toggles button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.preview-panel-toggles button.is-on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.preview-panel-toggles button.is-on:hover:not(:disabled){background:var(--surface);color:var(--accent)}.preview-panel-toggles button:disabled{opacity:.7;cursor:default}.toolbar-more{position:relative}.toolbar-more-trigger{list-style:none;display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .75rem;border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500;font-size:.9rem}.toolbar-more-trigger::-webkit-details-marker{display:none}.toolbar-more-trigger:after{content:"";width:.35rem;height:.35rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.1rem) rotate(45deg);opacity:.7}.toolbar-more[open]>.toolbar-more-trigger{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.toolbar-more-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:40;min-width:10.5rem;padding:.35rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:.1rem}.toolbar-more-item{display:block;width:100%;text-align:left;padding:.5rem .7rem;border:none;border-radius:6px;background:transparent;color:var(--ink);font-weight:450;font-size:.875rem;cursor:pointer}.toolbar-more-item:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.toolbar-more-item:disabled{opacity:.45;cursor:not-allowed}.toolbar-more-sep{margin:.25rem .35rem;border:none;border-top:1px solid var(--line)}.gen-progress{height:3px;background:var(--paper);overflow:hidden;flex-shrink:0}.gen-progress-bar{height:100%;width:40%;background:linear-gradient(90deg,var(--accent),var(--accent-bright),var(--teal));box-shadow:0 0 12px var(--accent-glow);animation:gen-slide 1.2s ease-in-out infinite}@keyframes gen-slide{0%{transform:translate(-100%)}to{transform:translate(280%)}}.gen-progress-label{padding:.35rem var(--page-pad-x);font-size:.8rem;color:var(--muted);background:var(--accent-soft);border-bottom:1px solid var(--line);flex-shrink:0}.stages{display:flex;flex-wrap:wrap;gap:.4rem;row-gap:.35rem;list-style:none;margin:0;padding:.75rem var(--page-pad-x) .85rem;background:var(--paper);border-bottom:1px solid var(--line);flex-shrink:0}.stages li{padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);font-size:.75rem;color:var(--muted);background:var(--surface)}.stages li.current{border-color:transparent;background:var(--accent);color:#fafafa;font-weight:600}.stages li.done{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.guide-layout{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);min-width:0;min-height:0;overflow:hidden}.guide-layout--generating{grid-template-columns:minmax(0,1fr) minmax(260px,340px)}.guide-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;padding:1rem var(--page-pad-x) var(--page-pad-y)}.guide-theater{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--sfb-chrome);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);padding:.75rem}.guide-theater .sfb{flex:1;min-height:0}.guide-theater .sfb-body{flex:1;max-height:none;min-height:0}.guide-theater-aside-note{margin:0 0 .75rem;font-size:.8rem;line-height:1.4;padding:.5rem .65rem;border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,var(--paper));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line))}.guide-aside{border-left:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto;padding:1rem var(--page-pad-x) var(--page-pad-y);scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.chat-pane{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.chat-pane-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.65rem 1rem;border-bottom:1px solid var(--line);font-weight:600;font-size:.95rem;flex-shrink:0;background:var(--surface);min-height:3.1rem}.chat-pane-title{display:flex;align-items:center;gap:.55rem;flex-shrink:0;min-width:0}.chat-pane-title-mark{width:.5rem;height:.5rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.chat-stage-chip{font-size:.72rem;font-weight:500;padding:.15rem .55rem;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.chat-pane-head .ai-provider-select{margin:0;padding:0;border:none;background:transparent;font-weight:400}.chat-pane-head-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.5rem .65rem;font-weight:400;min-width:0;flex:1}@media (max-width: 1100px){.chat-pane-head{flex-direction:column;align-items:stretch}.chat-pane-head-actions{justify-content:flex-start}.ai-provider-select.compact{flex-wrap:wrap}}.credits-badge{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.credits-badge-chip{display:inline-flex;align-items:center;gap:.35rem;margin:0;padding:.2rem .55rem;border:1px solid var(--line);border-radius:999px;background:var(--bg);font:inherit;font-size:.78rem;font-weight:500;font-variant-numeric:tabular-nums;cursor:pointer;color:inherit}.credits-badge-triple{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.45rem .65rem}.billing-tab-scroller{margin:0 -.15rem .15rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.billing-tab-row{display:flex;flex-wrap:nowrap;gap:.4rem;width:max-content;min-width:100%;padding:.1rem .15rem .35rem;margin-bottom:.35rem}.billing-tab{flex:0 0 auto;min-width:4.25rem;margin:0;padding:.5rem .85rem;border:1px solid var(--line);border-radius:var(--radius-pill);background:transparent;font:inherit;font-size:.82rem;line-height:1.2;white-space:nowrap;cursor:pointer;color:var(--muted);transition:border-color .15s ease,background .15s ease,color .15s ease}.billing-tab.is-active{border-color:var(--accent);color:var(--accent);font-weight:600;background:color-mix(in srgb,var(--accent) 10%,transparent)}.billing-tab:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.billing-tab:disabled{opacity:.55;cursor:not-allowed}.user-credits{margin:0;display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}.user-credits-link{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.2rem .25rem;margin:0;padding:0;border:none;border-radius:0;background:transparent!important;color:inherit;font:inherit;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.4;cursor:pointer;text-align:left;text-decoration:none;box-shadow:none}.user-credits-link:hover:not(:disabled){background:transparent!important;color:inherit}.user-credits-pair{display:inline-flex;align-items:center;gap:.25rem}.user-credits-item{white-space:nowrap;color:var(--ink);font-weight:500}.user-credits-sep{color:var(--muted);opacity:.7}.user-credits-link:hover .user-credits-item{color:var(--accent)}.user-credits-recharge,button.apikey-export-trigger,button.hub-mobile-trigger{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .8rem;font-size:14px;line-height:1.4;box-sizing:border-box}.user-credits-recharge{flex-shrink:0;margin:0;border:1px solid var(--line);border-radius:4px;background:transparent!important;color:var(--muted);font:inherit;font-size:14px;font-weight:500;line-height:1.4;cursor:pointer;white-space:nowrap;box-shadow:none}.user-credits-recharge:hover:not(:disabled){background:transparent!important;color:var(--accent);border-color:var(--accent)}.user-credits--sidebar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;margin-top:.25rem;padding:.4rem .55rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);font-size:.75rem;box-sizing:border-box;transition:border-color var(--dur-fast) var(--ease-out)}.user-credits--sidebar:hover{border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.user-credits--sidebar .user-credits-link{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.25rem .45rem;min-width:0}.user-credits--sidebar .user-credits-pair{display:inline-flex}.user-credits--sidebar .user-credits-recharge{align-self:center;border-radius:6px}.user-credits--sidebar .user-credits-recharge:hover:not(:disabled){background:var(--accent-soft)!important;border-color:var(--accent);color:var(--accent)}.hub-wallet-balances{margin:0}.credits-badge-chip:hover{border-color:var(--accent)}.credits-badge-label{color:var(--muted);font-weight:400}.credits-badge-value{color:var(--accent)}.credits-badge.is-low .credits-badge-value{color:var(--warn)}.credits-badge-recharge{font-size:.72rem;color:var(--accent);text-decoration:none;margin-left:.15rem;background:none;border:none;padding:0;cursor:pointer;font-family:inherit}.credits-badge-recharge:hover{text-decoration:underline}.credits-badge-hint{font-size:.7rem;font-weight:400;color:var(--muted);white-space:nowrap}.credits-badge.is-low .credits-badge-hint{color:var(--warn)}@media (max-width: 720px){.credits-badge-hint{display:none}}.chat-pane-body{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.chat-pane-body::-webkit-scrollbar,.guide-aside::-webkit-scrollbar,.patch-messages::-webkit-scrollbar,.side-nav-list::-webkit-scrollbar{width:6px}.chat-pane-body::-webkit-scrollbar-thumb,.guide-aside::-webkit-scrollbar-thumb,.patch-messages::-webkit-scrollbar-thumb,.side-nav-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink) 12%,transparent);border-radius:999px}.chat-pane-body::-webkit-scrollbar-track,.guide-aside::-webkit-scrollbar-track,.patch-messages::-webkit-scrollbar-track{background:transparent}.messages{display:flex;flex-direction:column;gap:1rem;padding:1.15rem var(--page-pad-x) 1.25rem;min-height:100%}.chat-row{display:flex;align-items:flex-end;gap:.65rem;max-width:100%}.chat-row-assistant{justify-content:flex-start;padding-right:2.5rem}.chat-row-user{justify-content:flex-end;padding-left:2.5rem}.chat-block{display:flex;flex-direction:column;gap:.65rem}.chat-milestone{display:flex;align-items:center;gap:.55rem;margin:.35rem 0 .15rem}.chat-milestone-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--ink) 22%,transparent),transparent)}.chat-milestone-tag{flex-shrink:0;padding:.2rem .7rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;color:var(--accent);background:var(--accent-soft);border:1px solid rgba(118,48,247,.18);white-space:nowrap}.chat-milestone-action{flex-shrink:0;padding:.15rem .55rem;font-size:.7rem;font-weight:500;color:var(--muted);background:transparent;border:1px solid transparent;border-radius:999px}.chat-milestone-action:hover:not(:disabled){color:var(--accent);background:var(--accent-soft);border-color:transparent}.chat-row-system{justify-content:center;padding:0}.chat-avatar{width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;flex-shrink:0}.chat-avatar-ai{background:linear-gradient(135deg,var(--accent),var(--accent-bright));color:#fafafa}.chat-avatar-user{background:var(--accent-soft);color:var(--ink)}.chat-bubble{max-width:min(34rem,100%);padding:.75rem .95rem .85rem;border-radius:16px;font-size:.9rem;line-height:1.55;box-shadow:var(--shadow-sm)}.chat-bubble.is-ai{background:color-mix(in srgb,var(--paper) 45%,var(--surface));border:1px solid var(--line);border-bottom-left-radius:6px}.chat-bubble.is-user{background:linear-gradient(80deg,var(--accent-bright) 0%,var(--accent) 40%);color:#fafafa;border-bottom-right-radius:6px}.chat-bubble-meta{display:flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;margin-bottom:.3rem;opacity:.72}.chat-bubble.is-ai .chat-bubble-meta{color:var(--muted);opacity:1}.chat-bubble.is-user .chat-bubble-meta{color:#ffffffd9}.chat-stream-text{white-space:pre-wrap;margin:0}.chat-bubble p{margin:0;white-space:pre-wrap;word-break:break-word}.chat-system-note{margin:0;max-width:min(28rem,88%);padding:0;color:var(--muted);font-size:.75rem;text-align:center;line-height:1.45;opacity:.85}.msg{padding:.75rem .9rem;border-radius:14px;max-width:min(36rem,92%);font-size:.9rem;line-height:1.55}.msg p{margin:.3rem 0 0;white-space:pre-wrap;word-break:break-word}.msg-meta{display:block;font-size:.7rem;font-weight:500;color:var(--muted)}.msg-user{align-self:flex-end;background:var(--accent);color:#fafafa;border-bottom-right-radius:6px}.msg-user .msg-meta{color:#ffffffbf}.msg-assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:6px}.msg-system{align-self:center;background:color-mix(in srgb,var(--ink) 4%,transparent);border:none;color:var(--muted);font-size:.85rem}.chat-dock{flex-shrink:0;padding:.75rem var(--page-pad-x) .9rem;border-top:1px solid var(--line);background:var(--surface)}.chat-input-bar{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;padding:.55rem 0 .55rem .75rem;border:1px solid var(--line);border-radius:16px;background:var(--surface);margin-bottom:.5rem;transition:border-color .15s ease,box-shadow .15s ease;overflow:hidden}.chat-input-bar:focus-within{border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--surface)}.chat-input-bar textarea{display:block;width:100%;min-width:0;min-height:3.4rem;max-height:16rem;margin:0;padding:.35rem .35rem .15rem 0;border:none;background:transparent;resize:none;overflow-x:hidden;overflow-y:auto;line-height:1.5;box-shadow:none;field-sizing:content;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.chat-input-bar textarea::-webkit-scrollbar{width:5px}.chat-input-bar textarea::-webkit-scrollbar-track{background:transparent}.chat-input-bar textarea::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink) 12%,transparent);border-radius:999px}.chat-input-bar textarea::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ink) 20%,transparent)}.chat-input-bar textarea:focus{outline:none;border:none;box-shadow:none}.chat-input-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:0 .65rem 0 0}.chat-input-tools{display:flex;align-items:center;gap:.4rem;min-width:0}.chat-suggest{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));background:var(--accent-soft);color:var(--accent-bright);font-size:.78rem;font-weight:600;line-height:1;padding:.42rem .7rem;border-radius:999px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.chat-suggest:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,var(--surface));border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.chat-suggest:disabled{opacity:.55;cursor:not-allowed}.chat-suggest.is-loading{opacity:1;cursor:wait}.chat-stage-commit{display:flex;justify-content:flex-end;padding:.35rem .15rem 0}.chat-commit{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));background:var(--surface);color:var(--text);font-size:.82rem;font-weight:600;line-height:1.2;padding:.5rem .85rem;border-radius:10px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.chat-commit:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 65%,var(--line));background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.chat-commit.is-ready{background:var(--accent);border-color:var(--accent);color:#fff}.chat-commit.is-ready:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 88%,#000);border-color:color-mix(in srgb,var(--accent) 88%,#000);color:#fff}.chat-commit:disabled{opacity:.45;cursor:not-allowed}.chat-suggest-spinner{width:.85rem;height:.85rem;border-width:2px;border-color:color-mix(in srgb,var(--accent) 22%,transparent);border-top-color:var(--accent-bright)}.chat-send{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;width:4.75rem;min-width:4.75rem;height:2.35rem;border-radius:999px;padding:0;font-size:.9rem;font-weight:600;letter-spacing:.02em}.chat-send.is-loading,.chat-send.is-loading:disabled{opacity:1;cursor:wait;background:var(--accent);color:#fafafa}.chat-send-spinner{width:1.05rem;height:1.05rem;border-width:2.5px;border-color:#ffffff59;border-top-color:#fafafa}.chat-typing-badge{display:inline-flex;align-items:center;gap:.35rem;margin-left:.2rem;font-weight:500;color:var(--muted)}.chat-typing-spinner{width:.75rem;height:.75rem;border-width:2px}.chat-stream-loading{margin-top:.15rem}.chat-stream-loading .ui-loading-label{font-size:.9rem}.chat-advanced{margin:0 0 .55rem;font-size:.8rem;color:var(--muted)}.chat-advanced summary{cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:.4rem}.chat-advanced textarea{width:100%;min-height:5rem;font-size:.8rem}.chat-dock-actions .row-actions{margin-bottom:.5rem}.build-stepper{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0 0 .35rem;padding:0;gap:.35rem 0;width:auto;max-width:100%}.build-step{position:relative;display:flex;align-items:center;flex:0 0 auto;width:auto}.build-step-connector{flex:0 0 auto;width:.75rem;height:2px;margin:0 .2rem;background:var(--line)}.build-step.is-done .build-step-connector,.build-step.is-current .build-step-connector{background:color-mix(in srgb,var(--accent) 55%,var(--line))}.build-step-btn{display:inline-flex;align-items:center;gap:.4rem;width:auto;margin:0;padding:.4rem .75rem .4rem .45rem;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:.8rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.build-step-index{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.35rem;height:1.35rem;border-radius:999px;background:color-mix(in srgb,var(--muted) 18%,transparent);color:inherit;font-size:.72rem;font-weight:700}.build-step-label{flex:0 1 auto;line-height:1.25}.build-step.is-done .build-step-btn{border-color:transparent;background:var(--accent-soft);color:var(--accent)}.build-step.is-current .build-step-btn{border-color:transparent;background:var(--accent);color:#fafafa;box-shadow:0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.build-step.is-current .build-step-index{background:#ffffff38;color:#fafafa}.build-step.is-done .build-step-index{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.build-step-btn:hover:not(:disabled){filter:brightness(.98)}.build-step.is-current .build-step-btn:hover:not(:disabled){filter:brightness(1.05)}.build-step.is-disabled .build-step-btn,.build-step-btn:disabled{opacity:.55;cursor:not-allowed;filter:none}.build-stepper-hint{margin:0 0 .45rem;font-size:.75rem}.chat-dock .gen-status{margin:.35rem 0;padding:.55rem .7rem;border-radius:var(--radius-sm);background:var(--paper);border:1px solid var(--line)}.confirm-box{display:flex;flex-direction:column;gap:var(--stack-gap)}.prd-summary-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.65rem;padding:.4rem 0;border-bottom:1px solid var(--line);font-size:.85rem}.prd-summary-row:last-child{border-bottom:none}.prd-summary-row>span:first-child{flex:0 0 auto;white-space:nowrap}.prd-summary-row>span:last-child{flex:0 1 auto;min-width:0;text-align:right;font-weight:500;color:var(--ink)}.prd-summary-row--block>span:last-child{flex:1 1 auto;text-align:left;overflow-wrap:anywhere;word-break:break-word}.prd-scenario{margin-top:var(--stack-gap)}.aside-section{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}.aside-section h3{margin:0 0 .5rem;font-size:.95rem;font-weight:600}.aside-collapsible>.aside-collapsible-summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.45rem;-webkit-user-select:none;user-select:none;margin:0 0 .5rem}.aside-collapsible>.aside-collapsible-summary::-webkit-details-marker{display:none}.aside-collapsible>.aside-collapsible-summary:before{content:"";flex-shrink:0;width:.4rem;height:.4rem;border-right:1.5px solid var(--muted, #6b7280);border-bottom:1.5px solid var(--muted, #6b7280);transform:rotate(45deg);transition:transform .15s ease;margin-top:-.15rem}.aside-collapsible:not([open])>.aside-collapsible-summary{margin-bottom:0}.aside-collapsible:not([open])>.aside-collapsible-summary:before{transform:rotate(-45deg);margin-top:0}.aside-collapsible>.aside-collapsible-summary h2,.aside-collapsible>.aside-collapsible-summary h3{margin:0;flex:1;min-width:0}.aside-collapsible.aside-section>.aside-collapsible-summary h3{font-size:.95rem;font-weight:600}.aside-list{margin:.4rem 0 0;padding-left:1.1rem;font-size:.82rem;line-height:1.45}.dev-plan-acceptance{margin:.2rem 0 0;font-size:.78rem;color:var(--accent)}.assumption-panel{margin:0 0 .75rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 88%,var(--accent))}.assumption-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.assumption-panel-hint{margin:.35rem 0 .5rem;font-size:.8rem}.assumption-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.assumption-title{margin:0 0 .2rem;font-size:.88rem;font-weight:600}.assumption-options{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.assumption-opt{font-size:.8rem;padding:.35rem .65rem;border-radius:999px;border:1px solid var(--line);background:var(--panel);cursor:pointer}.assumption-opt.is-recommended:not(.is-selected){border-style:dashed}.assumption-opt.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--panel))}.dev-plan-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.55rem}.dev-plan-item{padding:.55rem .65rem;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--panel) 92%,var(--line))}.dev-plan-item--running{border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.dev-plan-item--done{opacity:.85}.dev-plan-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;font-size:.84rem}.dev-plan-order{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:999px;background:var(--ink);color:var(--paper);font-size:.7rem;font-weight:600}.dev-plan-title{flex:1 1 auto;min-width:0;font-weight:600}.dev-plan-size{font-size:.72rem;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:.05rem .35rem}.dev-plan-status{font-size:.72rem}.dev-plan-status.status-running{color:var(--accent);font-weight:600}.dev-plan-status.status-done{color:var(--muted)}.dev-plan-status.status-failed{color:var(--danger, #b91c1c)}.dev-plan-desc{margin:.35rem 0 0;font-size:.78rem;line-height:1.4}.aside-section--files{min-height:14rem;padding:.5rem;margin:0 -.15rem;border-radius:var(--radius-sm);background:var(--sfb-chrome);border:1px solid var(--line)}.dev-plan-item.is-current{outline:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 7%,transparent);border-radius:8px}.dev-plan-item.is-clickable{cursor:pointer}.dev-plan-item.is-clickable:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}.sfb{display:flex;flex-direction:column;gap:.45rem;min-height:0}.sfb--generating{height:100%}.sfb-draft-note{margin:0;font-size:.72rem}.sfb-edit-legend{display:flex;align-items:center;gap:.35rem;margin:0;font-size:.7rem}.sfb-edit-mark{display:inline-flex;align-items:center;justify-content:center;width:.85rem;flex:0 0 auto;font-size:.68rem;line-height:1;color:transparent}.sfb-edit-mark.is-file{color:var(--teal);font-weight:700}.sfb-edit-mark.is-zone{color:color-mix(in srgb,var(--teal) 55%,var(--muted));font-weight:700}.sfb-edit-legend .sfb-edit-mark.is-file{width:auto}button.sfb-row.is-editable-file .sfb-name{color:color-mix(in srgb,var(--ink) 88%,var(--teal))}.sfb-live-item.is-newest .linkish{color:var(--accent);font-weight:600}button.sfb-row.is-live:not(.is-selected){background:color-mix(in srgb,var(--teal) 9%,transparent)}button.sfb-row.is-live:not(.is-selected):hover:not(:disabled){background:color-mix(in srgb,var(--teal) 14%,transparent)}.sfb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sfb-toolbar-title{font-size:.95rem;font-weight:600}.sfb-refresh{font-size:.75rem;padding:.2rem .45rem}.sfb-live-list{list-style:none;margin:0;padding:.35rem .45rem;max-height:7rem;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--sfb-panel);font-size:.72rem}.sfb-live-item{padding:.15rem 0;border-bottom:1px dashed color-mix(in srgb,var(--line) 70%,transparent)}.sfb-live-item:last-child{border-bottom:none}.sfb-live-item .linkish{text-align:left;word-break:break-all}.sfb-error{margin:0;font-size:.78rem}.sfb-body{display:grid;grid-template-columns:minmax(7rem,38%) minmax(0,1fr);gap:.45rem;min-height:12rem;max-height:22rem}.sfb--generating .sfb-body{max-height:none;flex:1}.sfb--compact .sfb-body{max-height:16rem}.sfb-tree{overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--sfb-panel);box-shadow:var(--shadow-sm);padding:.25rem 0}button.sfb-row{display:flex;align-items:center;gap:.3rem;width:calc(100% - .35rem);margin:.05rem .175rem;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink);font-size:.75rem;font-weight:450;padding:.28rem .4rem;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}button.sfb-row:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 7%,transparent);border-color:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}button.sfb-row:hover:not(:disabled) .sfb-icon{color:color-mix(in srgb,var(--ink) 72%,var(--muted))}button.sfb-row:focus-visible{outline:2px solid var(--accent-soft);outline-offset:0}button.sfb-row.is-selected,button.sfb-row.is-selected:hover:not(:disabled){background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-weight:600}button.sfb-row.is-selected .sfb-icon{color:var(--accent)}.sfb-icon{width:.85rem;flex:0 0 auto;color:var(--muted);font-size:.7rem;transition:color .14s ease}.sfb-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sfb-size{flex:0 0 auto;font-size:.65rem}.sfb-viewer{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid color-mix(in srgb,var(--ink) 12%,var(--line));border-radius:8px;background:var(--sfb-panel);box-shadow:var(--shadow-sm);overflow:hidden}.sfb-viewer-path{display:flex;align-items:center;justify-content:space-between;gap:.35rem;padding:.3rem .45rem;border-bottom:1px solid var(--line);font-size:.72rem;background:color-mix(in srgb,var(--sfb-chrome) 55%,var(--sfb-panel))}.sfb-viewer-path code{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sfb-viewer-actions{display:flex;flex-wrap:wrap;gap:.25rem;flex:0 0 auto}.sfb-viewer-actions button{font-size:.72rem;padding:.2rem .45rem}.sfb-patch-deny{margin:0;padding:.35rem .5rem;font-size:.72rem;border-bottom:1px solid var(--line)}.sfb-patch-form{display:flex;flex-direction:column;gap:.35rem;padding:.45rem .5rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--accent-soft) 45%,var(--paper))}.sfb-patch-form textarea{width:100%;font-size:.78rem;resize:vertical;min-height:2.5rem}.sfb-patch-actions{display:flex;justify-content:flex-end}.sfb-patch-actions button{font-size:.78rem;padding:.35rem .7rem}.sfb-patch-stream{margin:0;max-height:4.5rem;overflow:auto;font-size:.7rem;white-space:pre-wrap}.sfb-code-pane{flex:1 1 auto;min-height:0}.sfb-edit-hint{margin:0;padding:.3rem .5rem;font-size:.7rem;border-bottom:1px solid var(--line)}.sfb-dirty-mark{color:var(--accent);font-weight:700}.code-pane{display:flex;flex-direction:column;min-height:0;flex:1 1 auto;background:linear-gradient(180deg,var(--code-chrome) 0%,var(--sfb-code-bg) 48%);color:var(--code-fg)}.code-pane-chrome{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0;padding:.28rem .55rem;border-bottom:1px solid color-mix(in srgb,var(--ink) 8%,transparent);background:linear-gradient(180deg,var(--code-chrome),var(--sfb-chrome));font-size:.68rem}.code-pane-lang{display:inline-flex;align-items:center;padding:.12rem .42rem;border-radius:4px;background:color-mix(in srgb,var(--accent) 22%,var(--surface));color:var(--accent);font-family:var(--font-mono);font-size:.62rem;font-weight:600;letter-spacing:.04em}.code-pane-meta{display:inline-flex;align-items:center;gap:.3rem;min-width:0;color:var(--muted);font-family:var(--font-mono)}.code-pane-dot{opacity:.55}.code-pane-path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12rem;color:color-mix(in srgb,var(--ink) 55%,var(--muted))}.code-pane-scroll{flex:1 1 auto;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.code-pane-inner{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;min-width:max-content;width:100%}.code-pane-gutter,.code-pane-highlight,.code-pane-input{margin:0;padding:.65rem .75rem;font-family:var(--font-mono);font-size:.72rem;font-weight:400;line-height:1.55;letter-spacing:.01em;-moz-tab-size:2;tab-size:2;white-space:pre;border:none;box-shadow:none}.code-pane-gutter{position:sticky;left:0;z-index:1;padding-right:.65rem;padding-left:.55rem;text-align:right;-webkit-user-select:none;user-select:none;color:var(--code-gutter-fg);background:linear-gradient(90deg,var(--code-gutter-bg),color-mix(in srgb,var(--code-gutter-bg) 88%,transparent));border-right:1px solid color-mix(in srgb,var(--ink) 8%,transparent);box-shadow:4px 0 12px color-mix(in srgb,var(--deep) 55%,transparent)}.code-pane-main{position:relative;min-width:0}.code-pane-highlight{color:var(--code-fg);background:transparent;pointer-events:none}.code-pane-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;resize:none;overflow:hidden;color:transparent;caret-color:var(--ink);background:transparent;-webkit-text-fill-color:transparent}.code-pane-input::selection{background:color-mix(in srgb,var(--accent) 28%,transparent);color:transparent;-webkit-text-fill-color:transparent}.code-pane-input:focus{outline:none}.code-pane.is-editable:focus-within{box-shadow:inset 0 0 0 2px var(--accent-soft)}.code-pane-input:disabled{cursor:wait}.tok-com{color:var(--tok-com);font-style:italic}.tok-kw{color:var(--tok-kw);font-weight:500}.tok-str{color:var(--tok-str)}.tok-num{color:var(--tok-num)}.tok-type{color:var(--tok-type)}.tok-prop{color:var(--tok-prop)}.sfb-viewer-empty{margin:auto;padding:1rem;text-align:center}.preview-mount-pill{font-size:.75rem;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--line);background:var(--paper);white-space:nowrap}.preview-ready-chip{font-size:.78rem;padding:.25rem .65rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--teal) 40%,var(--line));background:color-mix(in srgb,var(--teal) 12%,var(--paper));color:var(--ink);cursor:pointer;white-space:nowrap}.preview-source-empty-hint{margin:0 0 .5rem;font-size:.8rem}.preview-view-toggle{display:inline-flex;gap:.25rem;align-items:center}.preview-source-pane{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;padding:.5rem .65rem .65rem;overflow:hidden;background:transparent}.preview-docs-pane{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;padding:.5rem .65rem .65rem;overflow:hidden}.docs-panel{flex:1;min-height:0;display:grid;grid-template-columns:minmax(7.5rem,26%) minmax(0,1fr);gap:.65rem}.docs-panel-side{display:flex;flex-direction:column;gap:.35rem;min-height:0;overflow-y:auto}.docs-panel-item{text-align:left;border:1px solid var(--border, var(--line));border-radius:8px;background:transparent;padding:.4rem .55rem;font-size:.82rem;cursor:pointer}.docs-panel-item.is-active{border-color:var(--accent);font-weight:600}.docs-panel-download{margin-top:.4rem;font-size:.82rem}.docs-panel-body{min-height:0;overflow-y:auto;border:1px solid var(--border, var(--line));border-radius:8px;padding:.65rem .9rem}.docs-markdown{font-size:.85rem;line-height:1.7}.docs-markdown table{border-collapse:collapse;margin:.6rem 0;font-size:.8rem}.docs-markdown th,.docs-markdown td{border:1px solid var(--border, var(--line));padding:.25rem .55rem;text-align:left}.docs-markdown pre{overflow-x:auto}.docs-mermaid{margin:.6rem 0;overflow-x:auto}.docs-mermaid svg{max-width:100%}.preview-source-pane .sfb{flex:1;min-height:0}.preview-source-pane .sfb-body{flex:1;max-height:none;min-height:0;grid-template-columns:minmax(8rem,34%) minmax(0,1fr)}.prd-footnote{margin-top:var(--section-gap)}.prd-json-details{margin-top:var(--stack-gap)}.prd-json-details summary{cursor:pointer;font-size:.85rem;color:var(--muted);margin-bottom:.5rem}.prd-json-details .health{max-height:16rem}.workspace.preview-workspace{background:var(--paper)}.preview-layout{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);min-height:0;overflow:hidden}.preview-layout--triple{grid-template-columns:minmax(0,1.15fr) minmax(200px,.52fr) minmax(0,1.55fr)}.preview-slot{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border-right:1px solid var(--line);background:var(--paper);transition:background var(--dur-mid) var(--ease-out)}.preview-slot:last-child{border-right:none}.preview-slot--source{background:var(--sfb-chrome)}.preview-slot--chat{background:var(--surface)}.preview-slot-bar{display:flex;align-items:center;gap:.35rem;flex-shrink:0;padding:.35rem .55rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 88%,var(--paper))}.preview-slot-title{font-size:.78rem;font-weight:600}.preview-slot-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.preview-chat-placeholder{margin:auto;padding:1.25rem;text-align:center;font-size:.85rem}.preview-main{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden;padding:.5rem .65rem .65rem;gap:var(--stack-gap)}.preview-status-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;flex-shrink:0;padding:8px 4px 12px}.preview-status-bar .muted{margin:0;font-size:.85rem}.preview-hint{margin:0;font-size:.8rem;color:var(--muted)}.preview-chrome-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.preview-pick-toggle{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .55rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:.78rem;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.preview-pick-toggle input{margin:0;accent-color:var(--accent)}.preview-pick-toggle.is-on{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent);font-weight:600}.preview-pick-hint{font-size:.72rem;white-space:nowrap}.preview-device.is-picking{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent);border-radius:12px}.patch-element-contexts{flex-shrink:0;max-height:30%;overflow-x:hidden;overflow-y:auto;margin:0;padding:.45rem .55rem;border:none;border-top:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-bottom:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:0;background:color-mix(in srgb,var(--accent) 6%,var(--paper));scrollbar-width:thin}.patch-element-contexts-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.75rem;font-weight:600;margin-bottom:.35rem}.patch-element-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.patch-element-list li{display:flex;align-items:center;justify-content:space-between;gap:.35rem;font-size:.72rem}.patch-element-list code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.preview-seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}.preview-nav button{min-width:3.25rem}.preview-seg button{border:0;background:transparent;padding:6px 10px;font-size:.8rem;cursor:pointer;color:var(--muted)}.preview-seg button+button{border-left:1px solid var(--line)}.preview-seg button.active{background:var(--paper);color:var(--ink);font-weight:600}.preview-seg button:disabled{opacity:.5;cursor:not-allowed}.preview-canvas{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(118,48,247,.04),transparent),var(--deep-mid);border-radius:var(--radius-md);border:1px solid var(--line);overflow:hidden;padding:var(--page-pad-y)}.preview-device{height:100%;max-height:100%;background:#111;border-radius:28px;padding:10px;box-shadow:var(--shadow-md),0 20px 40px #00000073;flex-shrink:1;min-height:0}.preview-device[data-device=mobile]{width:auto;aspect-ratio:390 / 780;max-width:min(390px,100%)}.preview-device[data-device=tablet]{width:auto;aspect-ratio:768 / 1024;max-width:min(768px,100%);border-radius:20px;padding:12px}.preview-device[data-device=desktop]{width:100%;height:100%;max-width:100%;aspect-ratio:auto;border-radius:12px;padding:0;background:transparent;box-shadow:none}.preview-device[data-device=desktop] .preview-frame-wrap{border-radius:8px;border:1px solid var(--line)}.preview-phone{height:100%;max-height:100%;width:auto;aspect-ratio:390 / 780;max-width:min(390px,100%);background:#111;border-radius:28px;padding:10px;box-shadow:var(--shadow-md),0 20px 40px #00000073;flex-shrink:1;min-height:0}.preview-frame-wrap{width:100%;height:100%;border-radius:20px;overflow:hidden;background:var(--surface)}.preview-frame{display:block;width:100%;height:100%;border:0}.preview-log{width:min(520px,100%);max-height:70%;overflow:hidden}.preview-log-body{margin:0;max-height:16rem;overflow:auto;font-size:.75rem;line-height:1.4;white-space:pre-wrap;word-break:break-all;background:var(--paper);padding:.75rem;border-radius:var(--radius-sm)}.patch-sidebar{display:flex;flex-direction:column;min-height:0;height:100%;border-left:none;background:transparent;overflow:hidden}.patch-sidebar-head{padding:.85rem var(--page-pad-x) .5rem;flex-shrink:0;max-height:42%;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin}.patch-sidebar-title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.patch-sidebar-head h2{margin:0;font-size:1rem}.patch-hint{font-size:.8rem;margin:0 0 .5rem}.patch-messages{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:.5rem var(--page-pad-x);display:flex;flex-direction:column;gap:var(--stack-gap);scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.patch-composer{flex-shrink:0;padding:.7rem var(--page-pad-x) .85rem;border-top:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 72%,transparent),var(--surface) 40%)}.patch-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.patch-suggest-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.28rem .65rem;font-size:.72rem;font-weight:500;line-height:1.2;border-radius:999px;border:1px solid transparent;background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--muted);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .12s ease}.patch-suggest-chip:hover:not(:disabled){background:var(--accent-soft);border-color:#7630f733;color:var(--accent);transform:translateY(-1px)}.patch-suggest-chip:disabled{opacity:.45;cursor:not-allowed}.chip{padding:.3rem .65rem;font-size:.75rem;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer}.chip:hover:not(:disabled){background:var(--accent-soft);border-color:transparent;color:var(--accent)}.chip:disabled{opacity:.5;cursor:not-allowed}.patch-composer-bar{margin-bottom:0}.patch-composer .patch-send{width:auto;min-width:4.75rem;padding:0 1.15rem}.patch-progress{margin-top:.55rem;font-size:.8rem;color:var(--muted)}.shell.preview-shell{max-width:none;padding:0}@media (max-width: 960px){.side-nav{position:fixed;left:0;top:0;bottom:0;height:auto;transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-md)}.app-shell.nav-open .side-nav{transform:translate(0)}.app-shell.nav-collapsed .side-nav{width:var(--nav-width)}.app-shell.nav-collapsed .side-nav-brand{display:inline-flex;width:auto;height:auto;font-size:inherit;overflow-x:clip}.app-shell.nav-collapsed .side-nav-brand .brand-text,.app-shell.nav-collapsed .side-nav-new .nav-new-label,.app-shell.nav-collapsed .side-nav-section-label,.app-shell.nav-collapsed .side-nav-empty,.app-shell.nav-collapsed .user-meta,.app-shell.nav-collapsed .side-nav-logout-label{display:initial}.app-shell.nav-collapsed .user-credits--sidebar,.app-shell.nav-collapsed .side-nav-section-head{display:flex}.app-shell.nav-collapsed .side-nav-footer{display:flex;flex-direction:column;align-items:stretch;gap:.55rem}.app-shell.nav-collapsed .side-nav-user-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem}.app-shell.nav-collapsed .side-nav-links-row--stack{align-items:stretch}.app-shell.nav-collapsed .side-nav-links-row--stack .side-nav-item,.app-shell.nav-collapsed .side-nav-links-row .side-nav-item{width:auto;height:auto;margin:0;padding:.45rem .55rem;display:block;font-size:.9rem}.app-shell.nav-collapsed .side-nav-header{flex-direction:row;padding:1rem .85rem .75rem}.app-shell.nav-collapsed .side-nav-new{display:inline-flex;margin:0 .85rem 1rem;width:calc(100% - 1.7rem);height:auto;min-width:0;font-size:inherit;padding:.55rem .95rem}.app-shell.nav-collapsed .side-nav-item{display:block;width:auto;height:auto;margin-bottom:.2rem;padding:.55rem .65rem;font-size:.9rem;text-align:left}.nav-collapse-btn{display:none}.nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:30;border:none;padding:0;cursor:pointer}.nav-backdrop:hover:not(:disabled){background:#0000008c}.nav-mobile-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;margin-right:.25rem;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line);color:var(--ink)}.office-back-btn{width:2.5rem;height:2.5rem}.home-workspace{padding:1.25rem var(--page-pad-x) 2rem}.guide-layout{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(0,40vh);overflow:hidden}.guide-aside{border-left:none;border-top:1px solid var(--line);max-height:40vh}.top-toolbar{flex-wrap:wrap;height:auto;min-height:var(--toolbar-h);padding:.65rem var(--page-pad-x)}.preview-layout,.preview-layout--triple{grid-template-columns:1fr;grid-template-rows:minmax(0,34vh) minmax(220px,32vh) minmax(0,1fr);overflow:hidden}.preview-slot{border-right:none;border-bottom:1px solid var(--line)}.preview-slot:last-child{border-bottom:none}.preview-canvas{overflow:hidden}}.billing-recharge{padding:1.25rem 1.5rem 2.75rem;max-width:44rem}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.ui-spinner{display:inline-block;width:1.35rem;height:1.35rem;border:2.5px solid rgba(118,48,247,.18);border-top-color:var(--accent);border-radius:50%;animation:ui-spin .7s linear infinite;flex-shrink:0}.ui-loading-page{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;min-height:12rem;padding:2.5rem 1.5rem;width:100%}.ui-loading-inline{display:inline-flex;align-items:center;gap:.55rem}.ui-loading-inline .ui-spinner{width:1.1rem;height:1.1rem}.ui-loading-label{margin:0;color:var(--muted);font-size:.92rem}.ui-skeleton-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:1rem;margin-top:.5rem}.ui-skeleton-card{height:9.5rem;border-radius:var(--radius-md);border:1px solid var(--line);background:linear-gradient(90deg,#ffffff0a,#7630f714,#ffffff0a 90%);background-size:200% 100%;animation:ui-skeleton-shimmer 1.35s ease-in-out infinite}.preview-phase-loading{margin-bottom:.75rem}.modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.25rem}.modal-backdrop{position:absolute;border-radius:0;top:0;right:0;bottom:0;left:0;border:none;padding:0;margin:0;background:#0000009e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer}.modal-backdrop:hover:not(:disabled){background:#0000009e}.modal-backdrop:disabled{cursor:default}.modal-panel{position:relative;z-index:1;width:min(100%,32rem);max-height:min(90vh,44rem);display:flex;flex-direction:column;border-radius:var(--radius-md);background:var(--surface);box-shadow:0 24px 64px #00000080;border:1px solid var(--line);outline:none;animation:billing-rise .35s ease both}.modal-panel-billing{width:min(100%,52rem);max-height:min(92vh,52rem)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem .75rem;border-bottom:1px solid var(--line);flex-shrink:0}.modal-title{margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.modal-close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--muted);font-size:1.35rem;line-height:1;cursor:pointer}.modal-close:hover:not(:disabled){background:var(--accent-soft);color:var(--ink)}.modal-close:disabled{opacity:.4;cursor:default}.modal-body{padding:1rem 1.15rem 1.25rem;overflow:auto;min-height:0}.billing-in-modal{margin-top:0;gap:.85rem}.billing-in-modal .billing-balance-card{margin-top:0;padding:.85rem 1rem}.billing-in-modal .billing-balance-value{font-size:1.45rem}.billing-in-modal .billing-section-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem}.billing-in-modal .billing-section-head h3{margin:0;font-size:.95rem;font-weight:650}.billing-in-modal .billing-section-head p{margin:0;font-size:.8rem}.billing-custom-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;padding:.75rem .95rem;border:1.5px dashed var(--line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 80%,transparent);transition:border-color .15s ease,background .15s ease}.billing-custom-row.is-active{border-style:solid;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.billing-custom-copy{display:flex;flex-direction:column;gap:.15rem;min-width:0}.billing-custom-copy strong{font-size:.92rem}.billing-custom-copy .muted{font-size:.78rem}.billing-custom-controls{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.billing-custom-input{width:7.5rem;margin:0;padding:.45rem .6rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--deep-mid, var(--surface));color:var(--ink);font:inherit;font-variant-numeric:tabular-nums}.billing-custom-input:focus{outline:none;border-color:var(--accent)}.billing-custom-unit{font-size:.85rem;color:var(--muted)}.billing-custom-price{min-width:4.5rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--ink)}.billing-pay-panel{display:flex;flex-direction:column;align-items:center;gap:.65rem;min-height:8rem}.billing-recharge-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(15.5rem,17.5rem);gap:1rem 1.15rem;align-items:start}.billing-recharge-main{display:flex;flex-direction:column;gap:.75rem;min-width:0}.billing-pay-card{position:sticky;top:0;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1rem 1.1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:linear-gradient(165deg,color-mix(in srgb,#07c160 10%,transparent),transparent 42%),var(--surface);box-shadow:var(--shadow-sm);animation:billing-rise .35s ease both}.billing-pay-card-head{display:flex;align-items:center;gap:.65rem}.billing-wechat-badge{display:inline-flex;align-items:center;justify-content:center;width:2.15rem;height:2.15rem;border-radius:999px;background:#07c160;color:#fff;flex-shrink:0}.billing-wechat-icon{display:block}.billing-pay-card-title{display:flex;flex-direction:column;gap:.12rem;min-width:0}.billing-pay-card-title strong{font-size:.98rem;color:var(--ink)}.billing-pay-card-title span{font-size:.78rem;color:var(--muted);line-height:1.35}.billing-pay-card-summary{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem .75rem;margin:0;padding:.55rem .65rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--ink) 4%,transparent);font-size:.85rem;color:var(--ink)}.billing-pay-card-summary em{font-style:normal;font-weight:700;font-size:1.15rem;font-variant-numeric:tabular-nums;color:var(--accent)}.billing-pay-card-body{display:flex;flex-direction:column;align-items:center;gap:.55rem;min-height:14rem;justify-content:center}.billing-qr-frame{display:flex;flex-direction:column;align-items:center;gap:.55rem;width:100%;text-align:center}.billing-wechat-tip{margin:0;font-size:.86rem;font-weight:600;color:#07c160}.billing-qr-loading{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:1.25rem 1rem}.billing-qr-pending-label{margin:0;font-size:.9rem;font-weight:600;color:var(--ink)}.billing-qr-hint{margin:.25rem 0 0;font-size:.85rem;text-align:center}.billing-qr-error{display:flex;flex-direction:column;align-items:center;gap:.55rem;width:100%}.studio-gen-error-block{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.modal-panel-confirm{width:min(100%,24rem)}.modal-panel-apikey{width:min(100%,34rem)}.apikey-export-trigger.side-nav-apikey{justify-content:flex-start;margin:0;min-height:1.9rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink);font-size:.8rem;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.apikey-export-trigger.side-nav-apikey:hover:not(:disabled){background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent)}.apikey-export-trigger.side-nav-apikey:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.apikey-export{display:grid;gap:.9rem}.apikey-lead{margin:0;color:var(--ink);line-height:1.55}.apikey-warn{margin:0;padding:.65rem .75rem;border-radius:var(--radius-sm);background:var(--accent-soft, rgba(37, 99, 235, .08));color:var(--ink);line-height:1.5;font-size:.9rem}.apikey-meta{display:grid;grid-template-columns:auto 1fr;gap:.35rem .85rem;margin:0;font-size:.9rem}.apikey-meta dt{margin:0;color:var(--muted)}.apikey-meta dd{margin:0;min-width:0;word-break:break-all}.apikey-meta code,.apikey-value{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem}.apikey-verify,.apikey-revealed{display:grid;gap:.75rem}.apikey-field{display:grid;gap:.35rem;margin:0;font-size:.88rem}.apikey-field>span{color:var(--muted)}.apikey-captcha-row,.apikey-sms-row,.apikey-copy-row{display:flex;align-items:center;gap:.5rem;min-width:0}.apikey-captcha-row input,.apikey-sms-row input{flex:1;min-width:0}.apikey-captcha-img{flex-shrink:0;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);cursor:pointer;line-height:0}.apikey-captcha-img img{display:block;height:2.25rem;width:auto}.apikey-copy-row .apikey-value{flex:1;min-width:0;padding:.55rem .65rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);word-break:break-all}.apikey-actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.apikey-example{display:grid;gap:.4rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper)}.apikey-example-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.85rem;color:var(--muted)}.apikey-example-code{margin:0;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;line-height:1.5;white-space:pre-wrap;word-break:break-all;color:var(--ink)}.confirm-dialog-message{margin:0 0 1.15rem;color:var(--ink);line-height:1.55}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.billing-recharge-header h1{margin:.25rem 0 .35rem;font-size:clamp(1.55rem,2.4vw,1.85rem);letter-spacing:-.02em}.billing-recharge-lead{margin:0}.billing-balance-card{margin-top:1.15rem;padding:1.15rem 1.25rem;border-radius:var(--radius-md);border:1px solid var(--line);background:linear-gradient(135deg,rgba(118,48,247,.1),transparent 55%),linear-gradient(180deg,var(--surface),var(--deep-mid));box-shadow:var(--shadow-sm);animation:billing-rise .45s ease both}.billing-balance-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.55rem 1rem}.billing-balance-label{font-size:.85rem;color:var(--muted)}.billing-balance-value{font-size:clamp(1.75rem,3vw,2.15rem);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--ink)}.billing-balance-note{margin:.45rem 0 0;font-size:.85rem;color:var(--muted)}.billing-recharge-panel{margin-top:1.35rem;display:flex;flex-direction:column;gap:1rem}.billing-section-head h2{margin:0;font-size:1.05rem;font-weight:650}.billing-section-head p{margin:.25rem 0 0;font-size:.88rem}.billing-tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;align-items:stretch}.billing-pack{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-height:8.25rem;height:100%;padding:1rem .95rem .95rem;border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease;animation:billing-rise .5s ease both}.billing-pack:hover:not(:disabled){background:var(--surface);border-color:#7630f759;transform:translateY(-2px);box-shadow:var(--shadow-md)}.billing-pack.is-active:hover:not(:disabled){background:linear-gradient(180deg,rgba(118,48,247,.08),transparent 70%),var(--surface)}.billing-pack:disabled{opacity:.65;cursor:not-allowed}.billing-pack.is-active{border-color:var(--accent);background:linear-gradient(180deg,rgba(118,48,247,.08),transparent 70%),var(--surface);box-shadow:0 0 0 1px var(--accent),var(--shadow-sm)}.billing-pack-badge{position:absolute;top:0;right:.75rem;transform:translateY(-50%);padding:.12rem .45rem;border-radius:999px;background:var(--accent);color:#fafafa;font-size:.68rem;font-weight:600;letter-spacing:.02em}.billing-pack-badge.is-tasting{background:color-mix(in srgb,var(--ink) 12%,var(--surface));color:var(--muted);border:1px solid var(--line)}.billing-pack-credits{display:flex;align-items:baseline;gap:.3rem;color:var(--ink)}.billing-pack-credits em{font-style:normal;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;line-height:1.15}.billing-pack-credits span{font-size:.82rem;color:var(--muted)}.billing-pack-price{display:flex;align-items:baseline;gap:.1rem;margin-top:.15rem;font-size:1.45rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ink)}.billing-pack.is-active .billing-pack-price{color:var(--accent)}.billing-pack-currency{font-size:.85rem;font-weight:650}.billing-pack-hint{margin-top:auto;font-size:.78rem;color:var(--muted)}.billing-checkout-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.85rem 1rem;margin-top:.25rem;padding:.95rem 1.05rem;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);animation:billing-rise .55s ease both}.billing-checkout-summary{display:flex;flex-direction:column;gap:.15rem;min-width:0}.billing-checkout-summary strong{font-size:1.02rem;font-variant-numeric:tabular-nums}.billing-pay-btn{min-width:8.5rem}.billing-error{margin:0}.billing-qr-block,.billing-paid-block{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem 1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);text-align:center;animation:billing-rise .4s ease both}.billing-qr-copy h3{margin:0 0 .25rem;font-size:1.05rem}.billing-qr-copy p{margin:0}.billing-qr-amount{color:var(--accent);font-variant-numeric:tabular-nums}.billing-qr-img{width:200px;height:200px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;padding:.55rem;box-sizing:content-box}.billing-paid-block .ok-text{color:var(--ok);font-weight:650;margin:0;font-size:1.05rem}.billing-paid-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem 1rem}.ghost-link{color:var(--muted);font-size:.9rem}.muted.small{font-size:.8rem}@keyframes billing-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.billing-in-modal .billing-tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width: 720px){.billing-recharge{padding:1rem 1rem 2.25rem}.billing-recharge-layout{grid-template-columns:1fr}.billing-pay-card{position:static;order:-1}.billing-tier-grid{grid-template-columns:1fr}.billing-pack{min-height:0;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.35rem .75rem;padding:1rem}.billing-pack-credits{flex:1 1 auto}.billing-pack-price{margin-top:0;margin-left:auto}.billing-pack-hint{flex:1 1 100%;margin-top:0}.billing-checkout-bar{flex-direction:column;align-items:stretch}.billing-pay-btn{width:100%}}@media (max-width: 520px){.modal-panel-billing{width:min(100%,100vw - 1.5rem)}.billing-tab{min-width:3.75rem;padding:.45rem .7rem}}.hub-shell{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;width:auto;height:auto;min-height:0;overflow:hidden;background:radial-gradient(ellipse 55% 40% at 10% 0%,var(--accent-glow),transparent 70%),radial-gradient(ellipse 45% 35% at 95% 5%,var(--teal-glow),transparent 65%),var(--paper)}.hub-topbar{display:flex;align-items:center;justify-content:space-between;height:var(--toolbar-h);min-height:var(--toolbar-h);padding:0 var(--page-pad-x);background:#080610d1;backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15);border-bottom:1px solid var(--line);box-shadow:none}html[data-theme=light] .hub-topbar{background:#ffffffd1}.hub-topbar-right{display:flex;align-items:center;gap:.75rem}.hub-topbar-entry{position:relative;display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .85rem;font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--ink);text-decoration:none;white-space:nowrap;border-radius:var(--radius-pill);border:1px solid rgba(162,44,252,.55);background:linear-gradient(120deg,var(--accent-soft),rgba(196,75,255,.16) 55%,var(--accent-soft));overflow:hidden;animation:hub-topbar-glow 2.6s ease-in-out infinite;transition:transform var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.hub-topbar-entry:hover{color:var(--ink);border-color:var(--accent-bright);transform:translateY(-1px);text-decoration:none}.hub-topbar-entry:after{content:"";position:absolute;top:-30%;bottom:-30%;left:-70%;width:45%;transform:skew(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);animation:hub-topbar-shine 3.2s ease-in-out infinite;pointer-events:none}html[data-theme=light] .hub-topbar-entry:after{background:linear-gradient(90deg,transparent,rgba(124,58,237,.22),transparent)}.hub-topbar-entry-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--warn);box-shadow:0 0 6px var(--warn);animation:hub-topbar-pulse 1.6s ease-in-out infinite}@keyframes hub-topbar-glow{0%,to{box-shadow:0 0 #a22cfc00}50%{box-shadow:0 0 14px #a22cfc73}}@keyframes hub-topbar-shine{0%{left:-70%}45%,to{left:140%}}@keyframes hub-topbar-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.45);opacity:.55}}@media (max-width: 640px){.hub-topbar-entry{padding:.26rem .6rem;font-size:.75rem}}.hub-user-name{font-size:.9rem;color:var(--muted)}.hub-main{flex:1;min-height:0;overflow:auto}.hub-workspace{max-width:1040px;width:100%;margin-left:auto;margin-right:auto;padding-top:1.5rem;padding-bottom:2.5rem}.hub-hero{margin-bottom:1.75rem;animation:billing-rise var(--dur-enter) var(--ease-out) both}.hub-brand-mark{margin:0 0 .65rem;font-family:var(--font-display);font-size:clamp(2rem,5vw,2.75rem);font-weight:800;letter-spacing:-.03em;color:var(--ink);line-height:1.1}.hub-hero-title{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(1.35rem,2.5vw,1.65rem);font-weight:700;letter-spacing:-.02em}.hub-section{margin-top:1.85rem}.hub-section-head{margin-bottom:.9rem}.hub-section-kicker{margin:0 0 .2rem;font-family:var(--font-display);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.hub-section-head h2{margin:0 0 .3rem;font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.hub-section-head p{margin:0;color:var(--muted);font-size:.9rem}.hub-entries{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-top:.5rem}.hub-entries-2{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-entries-3{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-entries-4{grid-template-columns:repeat(4,minmax(0,1fr))}.hub-entry{display:flex;flex-direction:column;gap:.65rem;padding:1.5rem 1.4rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 12px 32px #00000047,inset 0 1px #ffffff0f;text-decoration:none;color:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);animation:billing-rise var(--dur-enter) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 80ms)}.hub-entry:nth-child(1){--i: 0}.hub-entry:nth-child(2){--i: 1;animation-delay:calc(var(--i) * 80ms)}.hub-entry:nth-child(3){--i: 2;animation-delay:calc(var(--i) * 80ms)}.hub-entry:hover{border-color:#a22cfc8c;box-shadow:0 12px 32px #7630f747,0 0 24px #7630f72e;transform:translateY(-2px)}.hub-entry-eyebrow{font-family:var(--font-display);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.hub-entry-game .hub-entry-eyebrow,.hub-entry-studio .hub-entry-eyebrow{color:var(--teal)}.hub-entry-rag .hub-entry-eyebrow{color:var(--accent)}.hub-entry-video .hub-entry-eyebrow{color:var(--teal)}.hub-entry h2,.hub-entry h3{margin:0;font-family:var(--font-display);font-size:1.35rem;font-weight:700}.hub-entry p{margin:0;flex:1;color:var(--muted);font-size:.92rem}.hub-entry-cta,.hub-entry .btn{align-self:flex-start;margin-top:.35rem}.hub-entry:hover .hub-entry-cta{background:var(--accent-hover)}.hub-lab-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.hub-lab-link{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.05rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:none;text-decoration:none;color:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);animation:billing-rise var(--dur-enter) var(--ease-out) both;animation-delay:calc(var(--i, 0) * 60ms)}.hub-lab-link:nth-child(1){--i: 0}.hub-lab-link:nth-child(2){--i: 1}.hub-lab-link:nth-child(3){--i: 2}.hub-lab-link:nth-child(4){--i: 3}.hub-lab-link:hover{border-color:#7630f759;box-shadow:0 8px 24px #7630f71a;transform:translateY(-1px)}.hub-lab-link strong{font-family:var(--font-display);font-size:1rem}.hub-lab-link span{color:var(--muted);font-size:.8rem;line-height:1.4}.hub-mobile-menu{position:relative}.hub-mobile-popover{position:absolute;top:calc(100% + .5rem);right:0;z-index:40;width:188px;padding:.85rem .85rem .95rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-md);text-align:center}.hub-mobile-qr{display:block;width:140px;height:140px;margin:0 auto;padding:5px;background:var(--surface);border-radius:var(--radius-sm, 8px);border:1px solid var(--line)}.hub-mobile-hint{margin:.5rem 0 .65rem;font-size:.75rem;color:var(--muted)}.hub-mobile-open{display:inline-block;font-size:.82rem;color:var(--accent);text-decoration:none}.hub-mobile-open:hover{text-decoration:underline}@media (max-width: 1200px){.hub-entries-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.hub-entries-2,.hub-entries-3,.hub-entries-4{grid-template-columns:1fr}.hub-lab-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.hub-lab-links{grid-template-columns:1fr}}.hub-entry-cta,.btn{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;margin-top:.35rem;padding:.5rem 1.15rem;border-radius:var(--radius-pill);background:linear-gradient(80deg,var(--accent-bright) 0%,var(--accent) 60%);color:#fafafa;font-size:.9rem;font-weight:600;border:none;box-shadow:inset 0 1px 2px #ffffff1f,var(--shadow-sm)}.studio-list-actions{margin-bottom:var(--section-gap)}.studio-editor{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--paper)}.studio-toolbar{position:relative;z-index:30;display:flex;align-items:center;gap:.75rem;height:var(--toolbar-h);min-height:var(--toolbar-h);padding:0 var(--page-pad-x);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.studio-title{margin:0;font-size:1.05rem;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-zoom{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--muted)}.studio-export-wrap{position:relative}.studio-export-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:20;display:flex;flex-direction:column;min-width:140px;padding:.35rem;gap:.15rem}.studio-export-item{border:none;background:transparent;text-align:left;padding:.4rem .55rem;border-radius:var(--radius-sm);cursor:pointer;font:inherit;color:var(--ink)}.studio-export-item:hover{background:var(--accent-soft);color:var(--accent)}.studio-mesh-preview{margin:.5rem;padding:.75rem;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.studio-mesh-preview-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.studio-mesh-preview h3{margin:0;font-size:.95rem}.studio-mesh-preview-name{margin:0;font-size:.8rem}.studio-mesh-preview-stage{height:200px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;display:flex;align-items:center;justify-content:center}.studio-mesh-preview-actions{display:flex;flex-wrap:wrap;gap:.5rem}.studio-gen-history-action{margin-top:.25rem;font-size:.8rem;padding:.15rem .4rem}.studio-editor-error{margin:.5rem var(--page-pad-x)}.studio-steps{display:flex;align-items:center;gap:.5rem;padding:.5rem var(--page-pad-x);border-bottom:1px solid var(--line);background:var(--surface);overflow-x:auto;flex-shrink:0}.studio-step{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .9rem;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--muted);font:inherit;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.studio-step:hover{border-color:var(--accent);color:var(--accent)}.studio-step.active,.studio-step.done .studio-step-index{background:var(--accent);border-color:var(--accent);color:#fff}.studio-step.locked{opacity:.55;cursor:not-allowed}.studio-step-index{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;border-radius:50%;border:1px solid currentColor;font-size:.72rem}.studio-step-lock{font-size:.7rem}.studio-phase-step{flex:1;min-height:0;display:grid;grid-template-columns:1fr 320px;overflow:hidden}.studio-phase-main{display:flex;flex-direction:column;min-height:0;padding:.75rem;gap:.75rem;overflow-y:auto}.studio-phase-preview{flex:1;min-height:280px;display:flex;flex-direction:column;gap:.6rem;padding:.75rem}.studio-phase-preview-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.studio-phase-preview-head h3{margin:0;font-size:.95rem}.studio-phase-source{display:flex;align-items:center;gap:.5rem;font-size:.85rem;flex-wrap:wrap}.studio-phase-source select{max-width:260px}.studio-phase-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--muted);text-align:center;padding:1rem}.studio-phase-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.studio-phase-stage img{max-width:100%;max-height:100%;object-fit:contain}.studio-phase-3d{flex:1;min-height:0;display:flex;flex-direction:column}.studio-phase-3d .studio-mesh-preview{flex:1;margin:0}.studio-mesh-loading{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:1.5rem 1rem;text-align:center}.studio-mesh-cube-scene{width:72px;height:72px;perspective:360px}.studio-mesh-cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;animation:studio-mesh-cube-spin 2.6s linear infinite}.studio-mesh-cube-face{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px solid var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent);box-shadow:inset 0 0 12px color-mix(in srgb,var(--accent) 18%,transparent)}.studio-mesh-cube-face.front{transform:translateZ(36px)}.studio-mesh-cube-face.back{transform:rotateY(180deg) translateZ(36px)}.studio-mesh-cube-face.right{transform:rotateY(90deg) translateZ(36px)}.studio-mesh-cube-face.left{transform:rotateY(-90deg) translateZ(36px)}.studio-mesh-cube-face.top{transform:rotateX(90deg) translateZ(36px)}.studio-mesh-cube-face.bottom{transform:rotateX(-90deg) translateZ(36px)}@keyframes studio-mesh-cube-spin{0%{transform:rotateX(-26deg) rotateY(0)}to{transform:rotateX(-26deg) rotateY(360deg)}}.studio-mesh-loading-title{margin:0;font-weight:600;animation:studio-breathe 1.6s ease-in-out infinite}.studio-mesh-progress{width:min(260px,78%)}.studio-mesh-loading-msg,.studio-mesh-loading-tip{margin:0;font-size:.85rem}.studio-phase-actions{display:flex;flex-wrap:wrap;gap:.5rem}.studio-gen-error-block{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.studio-seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:2px;background:var(--paper)}.studio-seg-item{border:none;background:transparent;padding:.2rem .85rem;border-radius:999px;font:inherit;font-size:.8rem;color:var(--muted);cursor:pointer}.studio-seg-item.active{background:var(--accent);color:#fff}.studio-asset-strip{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem;flex-shrink:0}.studio-asset-strip-empty{margin:0}.studio-asset-card{display:flex;flex-direction:column;gap:.25rem;width:92px;flex-shrink:0;padding:.35rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font:inherit;font-size:.75rem;color:var(--ink);cursor:pointer}.studio-asset-card img,.studio-asset-card .studio-catalog-placeholder{width:100%;height:64px;object-fit:cover;border-radius:4px}.studio-asset-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-asset-card.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.studio-canvas-locked{margin:.75rem var(--page-pad-x) 0;padding:.6rem .9rem;border:1px dashed var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);font-size:.85rem}.studio-export-batch{margin:.75rem;padding:.9rem;display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0;overflow-y:auto}.studio-export-batch-head h3{margin:0 0 .25rem;font-size:1rem}.studio-export-batch-head p{margin:0;font-size:.85rem}.studio-export-batch-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem}.studio-export-batch-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);cursor:pointer}.studio-export-batch-item.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.studio-export-batch-item img,.studio-export-batch-item .studio-catalog-placeholder{width:44px;height:44px;object-fit:cover;border-radius:4px;flex-shrink:0}.studio-export-batch-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}.studio-export-batch-phase{flex-shrink:0;font-size:.7rem;padding:.1rem .45rem;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.studio-export-batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.studio-export-batch-format{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.studio-export-batch-format-fixed{font-weight:600}@media (max-width: 900px){.studio-phase-step{grid-template-columns:1fr;overflow-y:auto}}.studio-workspace{flex:1;min-height:0;display:grid;grid-template-columns:220px 1fr 280px;gap:0}.studio-left,.studio-right{display:flex;flex-direction:column;min-height:0;background:var(--surface);border-right:1px solid var(--line)}.studio-right{border-right:none;border-left:1px solid var(--line);overflow-y:auto}.studio-library-tabs{display:flex;gap:0;border-bottom:1px solid var(--line)}.studio-library-tab{flex:1;padding:.55rem .4rem;font-size:.8rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.studio-library-tab:hover:not(:disabled){color:var(--accent);background:var(--accent-soft)}.studio-library-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.studio-library-actions{padding:.5rem .65rem 0}.studio-upload-btn{width:100%;font-size:.8rem}.studio-library-empty{grid-column:1 / -1;margin:.5rem 0 0;font-size:.78rem;line-height:1.45}.studio-cat-tabs{display:flex;flex-wrap:wrap;gap:.25rem;padding:.65rem;border-bottom:1px solid var(--line)}.studio-cat-tab{padding:.3rem .55rem;font-size:.8rem;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.studio-cat-tab:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.studio-cat-tab.active{background:var(--accent-soft);color:var(--accent);border-color:#7630f733}.studio-catalog-grid{flex:1;min-height:0;overflow:auto;padding:.65rem;display:grid;grid-template-columns:1fr 1fr;gap:.55rem;align-content:start}.studio-catalog-item{display:flex;flex-direction:column;gap:.25rem;cursor:grab;font-size:.75rem;color:var(--muted);padding:.35rem;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.studio-catalog-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000059;border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.studio-catalog-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-catalog-item img,.studio-catalog-placeholder{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--paper)}.studio-catalog-placeholder{background:linear-gradient(110deg,var(--paper) 30%,color-mix(in srgb,var(--accent) 9%,var(--paper)) 46%,var(--paper) 62%);background-size:220% 100%;animation:studio-shimmer 1.6s ease-in-out infinite}@keyframes studio-shimmer{0%{background-position:130% 0}to{background-position:-90% 0}}.studio-drop-hint{margin:0;padding:.5rem .65rem .75rem;font-size:.75rem}.studio-canvas-wrap{position:relative;min-width:0;min-height:0;background:linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),var(--deep-mid);background-size:24px 24px;overflow:hidden}.studio-canvas-empty{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.95rem}.studio-layers{margin:.65rem;padding:.75rem;max-height:40%;overflow:auto}.studio-layers h3{margin:0 0 .5rem;font-size:.9rem}.studio-layers ul{list-style:none;margin:0;padding:0}.studio-layer-item{position:relative;width:100%;text-align:left;padding:.4rem .5rem;border:none;background:transparent;border-radius:var(--radius-sm);font-size:.85rem;font-weight:400;cursor:pointer;color:var(--ink)}.studio-layer-item:hover:not(:disabled),.studio-layer-item.active{background:var(--accent-soft);color:var(--accent)}.studio-layer-item.active:before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:3px;border-radius:999px;background:var(--accent)}.studio-gen-panel{flex:1;min-height:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}.studio-gen-tabs{display:flex;flex-wrap:wrap;gap:.25rem;padding:.4rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 55%,var(--surface))}.studio-gen-tab{flex:1 1 40%;padding:.35rem .4rem;font-size:.78rem;border:none;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;transition:background .18s ease,color .18s ease}.studio-gen-tab:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.studio-gen-tab.active,.studio-gen-tab.active:hover:not(:disabled){background:var(--accent);color:#fff;font-weight:600;box-shadow:0 2px 10px var(--accent-glow)}.studio-gen-body{flex:1;min-height:0;overflow:auto;padding:.75rem;display:flex;flex-direction:column;gap:.65rem}.studio-field{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--muted)}.studio-field textarea,.studio-field select{width:100%;font:inherit;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.45rem .55rem;background:var(--surface)}.studio-field textarea:disabled,.studio-field select:disabled{opacity:.7;cursor:not-allowed}.studio-check{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;font-size:.85rem;color:var(--ink)}.studio-check input{accent-color:var(--accent)}.studio-gen-range{width:100%;accent-color:var(--accent)}.studio-gen-submit{width:100%;background:linear-gradient(135deg,var(--accent),var(--accent-bright));border-color:transparent;color:#fff;font-weight:600;transition:filter .18s ease,box-shadow .18s ease}.studio-gen-submit:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 4px 16px var(--accent-glow)}.studio-gen-submit:disabled{opacity:.55;cursor:not-allowed}.studio-gen-submit.busy{cursor:wait;animation:studio-breathe 1.6s ease-in-out infinite}@keyframes studio-breathe{0%,to{opacity:1}50%{opacity:.72}}.studio-gen-progress-block{display:flex;flex-direction:column;gap:.35rem}.studio-gen-progress-track{height:6px;border-radius:999px;background:var(--line);overflow:hidden}.studio-gen-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-bright),var(--teal));box-shadow:0 0 10px var(--accent-glow);transition:width .35s ease}.studio-gen-hint,.studio-gen-progress{margin:0;font-size:.8rem}.studio-gen-success{margin:0;font-size:.85rem;color:var(--accent)}.studio-gen-error{margin:0;font-size:.85rem}.studio-gen-history{margin-top:.25rem;padding-top:.65rem;border-top:1px solid var(--line)}.studio-gen-history h3{margin:0 0 .45rem;font-size:.85rem;font-weight:600;color:var(--ink)}.studio-gen-history ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.studio-gen-history-item{padding:.45rem .5rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.studio-gen-history-row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;font-size:.78rem}.studio-gen-history-kind{font-weight:600;color:var(--ink)}.studio-gen-history-status{color:var(--muted)}.studio-gen-history-status.running,.studio-gen-history-status.success{color:var(--accent)}.studio-gen-history-status.failed{color:var(--danger)}.studio-gen-history-time{margin-left:auto}.studio-gen-history-prompt{margin:.25rem 0 0;font-size:.8rem;color:var(--ink);word-break:break-word}.studio-gen-history-err{margin:.2rem 0 0;font-size:.75rem}.studio-gen-history-thumb{display:block;width:64px;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);margin:.35rem 0 .1rem}.studio-canvas-toolbar{position:absolute;top:.65rem;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:.2rem;padding:.25rem .35rem;border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:0 6px 18px #00000059}.studio-canvas-toolbar button{border:none;background:transparent;color:var(--ink);font-size:.78rem;padding:.25rem .55rem;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease}.studio-canvas-toolbar button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.studio-canvas-toolbar button.active{background:var(--accent);color:#fff}.studio-canvas-toolbar button:disabled{opacity:.5;cursor:not-allowed}.studio-canvas-toolbar-hint{font-size:.72rem;color:var(--muted);padding:0 .35rem;white-space:nowrap}.studio-gen-aitools{display:flex;gap:.4rem}.studio-gen-aitool{flex:1;font-size:.78rem;padding:.28rem .4rem;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);cursor:pointer;transition:border-color .18s ease,color .18s ease,background .18s ease}.studio-gen-aitool:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 45%,var(--line));color:var(--accent);background:var(--accent-soft)}.studio-gen-aitool:disabled{opacity:.55;cursor:not-allowed}.studio-gen-aimsg{margin:0;font-size:.78rem}.studio-gen-region{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;padding:.45rem .55rem;border-radius:var(--radius-sm);border:1px dashed rgba(118,48,247,.45);background:#7630f714;font-size:.78rem}.studio-gen-region-label{font-weight:600;color:var(--accent)}.studio-gen-region-clear{margin-left:auto;font-size:.75rem;padding:.15rem .5rem}.studio-switch .studio-switch-track{position:relative;flex-shrink:0;width:32px;height:18px;border-radius:999px;background:var(--line);transition:background .2s ease}.studio-switch .studio-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.studio-switch input{position:absolute;opacity:0;pointer-events:none}.studio-switch input:checked+.studio-switch-track{background:var(--accent)}.studio-switch input:checked+.studio-switch-track:after{transform:translate(14px)}.studio-switch input:focus-visible+.studio-switch-track{outline:2px solid var(--accent);outline-offset:2px}.studio-switch input:disabled+.studio-switch-track{opacity:.6}@media (max-width: 960px){.studio-workspace{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.studio-left,.studio-right{border:none;border-bottom:1px solid var(--line);max-height:220px}.studio-canvas-wrap{min-height:320px}}.admin-shell{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden;background:var(--paper);color:var(--ink)}.admin-shell .brand:before{box-shadow:0 0 0 1px #a22cfc59}.admin-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0}.admin-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.admin-tabs button{background:transparent;color:var(--ink-soft);border:1px solid var(--line);box-shadow:none;font-weight:500}.admin-tabs button:hover:not(:disabled){background:var(--accent-soft);color:var(--ink);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.admin-tabs button.active{font-weight:600;background:var(--accent-soft);border-color:var(--accent);color:var(--ink);box-shadow:none}.admin-main{flex:1;min-height:0;max-width:920px;margin:0 auto;padding:1.5rem;overflow-y:auto;width:100%}.admin-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem}.admin-cards article{background:var(--surface);border:1px solid var(--line);padding:.75rem 1rem;border-radius:var(--radius-sm);box-shadow:none}.admin-cards h3{margin:0;font-size:.85rem;font-weight:500;color:var(--muted)}.admin-metric{margin:.35rem 0 0;font-size:1.6rem;font-weight:600}.admin-section{background:var(--surface);border:1px solid var(--line);padding:1rem 1.25rem;margin-bottom:1rem;border-radius:var(--radius-sm);box-shadow:none}.admin-section h2{margin:0 0 .75rem;font-size:1.05rem}.admin-fieldset{border:1px solid var(--line);margin:0 0 .75rem;padding:.75rem}.admin-fieldset legend{padding:0 .35rem;font-size:.9rem}.admin-ai-form .ghost{margin-bottom:.75rem}.admin-probe-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0 .75rem}.admin-probe-row .ghost{margin-bottom:0}.admin-probe-last{margin:0 0 .75rem;word-break:break-word}.admin-main:has(.admin-analytics){max-width:1180px}.admin-analytics-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.admin-analytics-toolbar button{padding:.3rem .85rem;border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-radius:6px;cursor:pointer;font-size:.88rem;box-shadow:none}.admin-analytics-toolbar button:hover:not(:disabled){background:var(--accent-soft);color:var(--ink)}.admin-analytics-toolbar button.active{background:var(--accent);color:#fafafa;border-color:var(--accent)}.admin-analytics-toolbar button.active:hover:not(:disabled){background:var(--accent);color:#fafafa}.admin-analytics .recharts-cartesian-axis-tick-value{fill:var(--muted)}.admin-analytics .recharts-cartesian-axis-line,.admin-analytics .recharts-cartesian-axis-tick-line{stroke:var(--line)}.admin-analytics .recharts-legend-item-text,.admin-analytics .recharts-tooltip-wrapper{color:var(--ink)}.admin-analytics .recharts-default-tooltip{background:var(--surface)!important;border:1px solid var(--line)!important;color:var(--ink)!important}.admin-chart-subtitle{margin:-.25rem 0 .75rem;font-size:.85rem}.admin-card-hint{margin:.2rem 0 0;font-size:.78rem}.admin-ai-spend-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem}.admin-ai-spend-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:.88rem}.admin-ai-spend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.admin-ai-spend-label{font-weight:600}.admin-ai-spend-value{margin-left:auto;font-variant-numeric:tabular-nums}.rag-workspace{padding-bottom:2rem}.rag-banner-error{margin:.75rem var(--page-pad-x, 1.25rem)}.rag-hosting-panel{margin:.75rem var(--page-pad-x, 1.25rem);padding:.85rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.rag-hosting-panel p{margin:0 0 .5rem}.rag-section{margin:1.25rem var(--page-pad-x, 1.25rem);padding:1.1rem 1.2rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.rag-section h2{margin:0 0 .35rem;font-family:var(--font-display);font-size:1.15rem}.rag-upload{display:inline-flex;margin:.75rem 0 1rem;cursor:pointer}.rag-upload input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.rag-doc-list,.rag-hit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.rag-doc-row,.rag-hit{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.75rem .85rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper)}.rag-doc-row .meta,.rag-hit .meta{display:block;margin-top:.2rem;color:var(--muted);font-size:.85rem}.rag-doc-actions{display:flex;gap:.35rem;flex-shrink:0}.rag-retrieve-form{display:flex;gap:.5rem;margin:.75rem 0 1rem;flex-wrap:wrap}.rag-retrieve-form input{flex:1;min-width:200px}.rag-hit p{margin:.35rem 0 0;white-space:pre-wrap;line-height:1.5;font-size:.92rem}.rag-chat-section{display:flex;flex-direction:column;min-height:22rem}.rag-chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.65rem}.rag-chat-log{flex:1;min-height:12rem;max-height:min(52vh,28rem);overflow:auto;display:flex;flex-direction:column;gap:.75rem;padding:.35rem .15rem .75rem}.rag-chat-empty,.rag-chat-pending{margin:.5rem 0}.rag-bubble{max-width:42rem;padding:.75rem .9rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper)}.rag-bubble-user{align-self:flex-end;background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.rag-bubble-assistant{align-self:flex-start}.rag-bubble-role{margin:0 0 .35rem;font-size:.75rem;font-weight:600;color:var(--muted);letter-spacing:.04em}.rag-bubble-text{margin:0;white-space:pre-wrap;line-height:1.55;font-size:.95rem}.rag-cite{margin-top:.65rem;font-size:.85rem}.rag-cite summary{cursor:pointer;color:var(--muted)}.rag-cite .rag-hit-list{margin-top:.5rem}.rag-advanced summary{cursor:pointer;font-family:var(--font-display);font-size:1.05rem;font-weight:700}.rag-advanced[open] summary{margin-bottom:.5rem}.sample-order-modal .sample-order-notice,.sample-sku-hint{margin:0 0 .75rem;font-size:.9rem}.sample-address-form{display:grid;gap:.5rem;margin-bottom:.75rem}.sample-address-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.35rem}.sample-order-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.studio-orders-page{flex:1;min-height:0;padding:1rem 1.25rem 2rem;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.studio-orders-list{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.75rem}.studio-order-card{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;text-decoration:none;color:inherit}.studio-orders-empty{padding:1.25rem;margin-top:1rem;text-align:center}.studio-order-detail{margin-top:1rem;padding:1rem 1.1rem}.studio-order-detail h2{margin:0 0 .5rem;font-size:1rem}.studio-order-artifacts,.studio-order-timeline{margin:.35rem 0 0;padding-left:1.1rem}.studio-order-timeline li{margin-bottom:.5rem}.admin-main:has(.admin-sample),.admin-main:has(.admin-recharges){max-width:1280px}.admin-recharge-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:1rem}.admin-recharge-filters .field{display:flex;flex-direction:column;gap:.25rem;margin:0;font-size:.85rem;color:var(--muted)}.admin-recharge-filters .field input,.admin-recharge-filters .field select{min-width:8.5rem}.admin-recharge-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:1rem;align-items:start}.admin-recharge-table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.5rem}.admin-recharge-table{width:100%;border-collapse:collapse;font-size:.85rem}.admin-recharge-table th,.admin-recharge-table td{text-align:left;padding:.45rem .5rem;border-bottom:1px solid var(--line);vertical-align:top;white-space:nowrap}.admin-recharge-table th{font-weight:500;color:var(--muted)}.admin-recharge-table tbody tr{cursor:pointer}.admin-recharge-table tbody tr:hover{background:var(--accent-soft)}.admin-recharge-table tbody tr.active{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}.admin-recharge-note{max-width:10rem;overflow:hidden;text-overflow:ellipsis}.admin-recharge-dl{display:grid;grid-template-columns:5.5rem 1fr;gap:.35rem .75rem;margin:0 0 1.25rem;font-size:.9rem}.admin-recharge-dl dt{color:var(--muted);margin:0}.admin-recharge-dl dd{margin:0;word-break:break-all}.admin-recharge-grant{border-top:1px solid var(--line);padding-top:1rem}.admin-recharge-grant h3{margin:0 0 .35rem}.admin-recharge-grant .field{display:flex;flex-direction:column;gap:.25rem;margin:.5rem 0}@media (max-width: 900px){.admin-recharge-layout{grid-template-columns:1fr}}.admin-sample-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.admin-sample-toolbar h2{margin:0 auto 0 0}.admin-sample-layout{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:1rem}.admin-sample-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem;max-height:70vh;overflow:auto}.admin-sample-row{width:100%;text-align:left;display:grid;gap:.2rem;padding:.65rem .75rem;border:1px solid var(--line);background:var(--surface);cursor:pointer}.admin-sample-row.active{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.admin-sample-detail{padding:1rem 1.1rem}.admin-sample-detail .field{display:grid;gap:.25rem;margin:.65rem 0}.admin-sample-detail textarea{width:100%;resize:vertical}@media (max-width: 800px){.admin-sample-layout,.sample-address-row{grid-template-columns:1fr}}.phone-preview-panel{margin-bottom:10px;padding-bottom:10px;border-bottom:1px dashed var(--line)}.phone-preview-qr-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:8px}.phone-preview-qr{border-radius:8px;border:1px solid var(--line);background:var(--surface)}.toolbar-secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:var(--radius-sm);padding:.4rem .75rem;cursor:pointer;font:inherit}.toolbar-secondary:disabled{opacity:.5;cursor:not-allowed}.hub-entry-mission .hub-entry-eyebrow{color:var(--teal)}.hub-entry-workroom .hub-entry-eyebrow{color:var(--ink)}.hub-topbar-left{display:flex;align-items:center;gap:.5rem}.hub-topbar-sep{opacity:.4}.hub-crumb{color:inherit;text-decoration:none;font-size:.92rem}.hub-crumb:hover{text-decoration:underline}.mission-goal-preview{margin:.35rem 0 0;font-size:.88rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mission-detail .mission-section{margin:1.5rem 0;padding:1.25rem 0;border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent)}.mission-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:.75rem 0 1rem}.mission-actions-sep{width:1px;align-self:stretch;background:color-mix(in srgb,var(--ink) 14%,transparent)}.mission-file-btn{display:inline-flex;align-items:center;padding:.45rem .9rem;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-radius:8px;cursor:pointer;font:inherit;background:transparent}.mission-form{display:flex;flex-direction:column;gap:.9rem;margin:1rem 0;padding:1rem;background:color-mix(in srgb,var(--accent) 4%,transparent);border-radius:12px}.mission-field{display:flex;flex-direction:column;gap:.3rem}.mission-field input,.mission-field textarea{font:inherit;padding:.5rem .65rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);background:var(--bg)}.mission-asset-row{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:.4rem;margin-bottom:.4rem}.mission-hint{padding:.65rem .85rem;border-radius:8px;background:color-mix(in srgb,var(--teal) 12%,transparent)}.mission-warn{padding:.65rem .85rem;border-radius:8px;background:color-mix(in srgb,#c47a00 16%,transparent)}.mission-json{max-height:240px;overflow:auto;font-size:.78rem;padding:.75rem;border-radius:8px;background:color-mix(in srgb,var(--ink) 4%,transparent)}.mission-steps,.mission-runs{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.75rem}.mission-steps li,.mission-runs li{padding:.75rem .9rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.mission-links{display:flex;flex-wrap:wrap;gap:1rem;margin:.75rem 0}.mission-intake-summary{margin-top:.75rem}.mission-badge{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:999px;font-size:.8rem;font-weight:600;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);color:var(--muted);white-space:nowrap}.mission-badge--collect{color:var(--teal);border-color:color-mix(in srgb,var(--teal) 45%,transparent);background:color-mix(in srgb,var(--teal) 10%,transparent)}.mission-badge--plan{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.mission-badge--run{color:#8a5a00;border-color:color-mix(in srgb,#c47a00 45%,transparent);background:color-mix(in srgb,#c47a00 12%,transparent)}.mission-badge--done{color:#1d7a3d;border-color:color-mix(in srgb,#2ea35a 45%,transparent);background:color-mix(in srgb,#2ea35a 12%,transparent)}.mission-badge--fail,.mission-badge--warn{color:#b3261e;border-color:color-mix(in srgb,#b3261e 40%,transparent);background:color-mix(in srgb,#b3261e 10%,transparent)}.mission-callout{display:flex;align-items:flex-start;gap:.6rem;padding:.65rem .85rem;border-radius:10px;margin:.5rem 0;border:1px solid transparent}.mission-callout--info{background:color-mix(in srgb,var(--teal) 10%,transparent);border-color:color-mix(in srgb,var(--teal) 25%,transparent)}.mission-callout--warn{background:color-mix(in srgb,#c47a00 12%,transparent);border-color:color-mix(in srgb,#c47a00 30%,transparent)}.mission-callout--error{background:color-mix(in srgb,#b3261e 8%,transparent);border-color:color-mix(in srgb,#b3261e 28%,transparent)}.mission-callout-body{flex:1;min-width:0}.mission-callout-close{border:none;background:transparent;color:inherit;opacity:.6;font-size:1rem;cursor:pointer;padding:0 .2rem}.mission-callout-close:hover{opacity:1}.mission-hero-status{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.mission-stepper{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem;margin:1rem 0;border-radius:12px;background:color-mix(in srgb,var(--teal) 5%,transparent);border:1px solid color-mix(in srgb,var(--teal) 18%,transparent)}.mission-step{display:flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.9rem}.mission-step:not(:last-child):after{content:"→";margin-left:.5rem;opacity:.4}.mission-step-dot{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:50%;font-size:.78rem;border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);background:var(--surface)}.mission-step--done{color:var(--ink)}.mission-step--done .mission-step-dot{background:var(--teal);border-color:var(--teal);color:#fff}.mission-step--current{color:var(--ink);font-weight:600}.mission-step--current .mission-step-dot{border-color:var(--teal);color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent)}.mission-step--error .mission-step-dot{background:color-mix(in srgb,#b3261e 12%,transparent);border-color:#b3261e;color:#b3261e}.mission-card{margin:1rem 0;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:14px;background:var(--surface);overflow:hidden}.mission-card--collapsed{opacity:.92}.mission-card-head{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.75rem;padding:.9rem 1.1rem;border:none;background:transparent;font:inherit;text-align:left;cursor:pointer}.mission-card-head h2{margin:0;font-size:1.05rem}.mission-card-head-right{display:inline-flex;align-items:center;gap:.6rem}.mission-card-chevron{color:var(--muted)}.mission-rollback-link{font-size:.85rem;color:var(--muted);cursor:pointer}.mission-rollback-link:hover{color:var(--accent)}.mission-card-body{padding:0 1.1rem 1.1rem}.mission-updated-at{margin-top:1.5rem;font-size:.85rem}.mission-create-input{resize:vertical;min-height:3.2rem;font:inherit}.mission-create-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0 0}.mission-chip-example{border:1px dashed color-mix(in srgb,var(--ink) 25%,transparent);background:transparent;color:var(--muted);border-radius:999px;padding:.25rem .7rem;font-size:.82rem;cursor:pointer}.mission-chip-example:hover{color:var(--teal);border-color:color-mix(in srgb,var(--teal) 55%,transparent)}.mission-create-btns{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.mission-empty{border:1px dashed color-mix(in srgb,var(--ink) 20%,transparent);border-radius:14px;padding:1.5rem;background:color-mix(in srgb,var(--teal) 4%,transparent)}.mission-empty-title{font-weight:600;margin:0 0 .5rem}.mission-empty-steps{margin:0 0 1rem;padding-left:1.2rem;color:var(--muted);display:flex;flex-direction:column;gap:.3rem}.mission-card-topline{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.mission-card-time{font-size:.78rem;color:var(--muted)}.mission-delete-btn{font-size:.82rem;padding:.3rem .6rem}.mission-form-v2{display:flex;flex-direction:column;gap:.9rem;margin:1rem 0;padding:1.1rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--teal) 25%,transparent);background:color-mix(in srgb,var(--accent) 3%,transparent)}.mission-form-head h3{margin:0 0 .2rem}.mission-field-card{display:flex;flex-direction:column;gap:.35rem;padding:.8rem .9rem;border-radius:10px;background:var(--surface);border:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.mission-field-head{display:flex;align-items:center;gap:.5rem}.mission-field-label{font-weight:600;flex:1;min-width:0}.mission-mini-btn{border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);background:transparent;color:var(--muted);border-radius:6px;font-size:.78rem;padding:.15rem .55rem;cursor:pointer}.mission-mini-btn:hover:not(:disabled){color:var(--teal);border-color:color-mix(in srgb,var(--teal) 55%,transparent)}.mission-mini-btn:disabled{opacity:.5;cursor:not-allowed}.mission-field-reason summary{font-size:.8rem;color:var(--muted);cursor:pointer}.mission-field-reason p{margin:.25rem 0 0;font-size:.85rem;color:var(--muted)}.mission-original{margin:0;font-size:.82rem;color:var(--muted);padding:.4rem .6rem;border-radius:8px;background:color-mix(in srgb,var(--ink) 4%,transparent)}.mission-field-card input,.mission-field-card textarea{font:inherit;padding:.5rem .65rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);background:var(--bg)}.mission-bool{display:inline-flex;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-radius:8px;overflow:hidden;width:fit-content}.mission-bool-opt{border:none;background:var(--bg);font:inherit;padding:.4rem 1.1rem;cursor:pointer;color:var(--muted)}.mission-bool-opt--on{background:var(--teal);color:#fff}.mission-chips{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;padding:0;margin:.3rem 0 0}.mission-chips li{padding:.15rem .6rem;border-radius:999px;font-size:.82rem;background:color-mix(in srgb,var(--teal) 12%,transparent);color:var(--teal)}.mission-chips--preview li{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}.mission-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.mission-form-hint{margin:0;font-size:.8rem;color:var(--muted)}.mission-intake-summary-v2{margin-top:1rem}.mission-intake-summary-v2 h3{margin:0 0 .6rem}.mission-summary-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}.mission-summary-group{border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:10px;padding:.7rem .85rem;background:var(--surface)}.mission-summary-group h4{margin:0 0 .4rem;font-size:.85rem;color:var(--teal)}.mission-summary-content{font-size:.88rem}.mission-summary-content p{margin:.2rem 0}.mission-summary-label{color:var(--muted)}.mission-summary-text{font-weight:500}.mission-asset-table{width:100%;border-collapse:collapse;font-size:.85rem}.mission-asset-table th,.mission-asset-table td{text-align:left;padding:.25rem .4rem;border-bottom:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.mission-asset-table th{color:var(--muted);font-weight:500}.mission-rounds{margin-top:1rem}.mission-rounds-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mission-rounds-head h4{margin:0}.mission-rounds-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;color:var(--muted);cursor:pointer}.mission-round-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.4rem}.mission-round-item{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;padding:.5rem .7rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);background:var(--surface);font-size:.85rem}.mission-round-item--revoked{opacity:.7}.mission-round-index{font-weight:600}.mission-round-source{padding:.1rem .5rem;border-radius:999px;font-size:.75rem;background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--muted)}.mission-round-source--ai{background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--teal)}.mission-round-source--excel{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.mission-round-source--revoked{background:color-mix(in srgb,#b3261e 10%,transparent);color:#b3261e}.mission-round-meta{color:var(--muted);flex:1;min-width:8rem}.mission-round-actions{display:inline-flex;gap:.4rem}.mission-round-actions button{font-size:.8rem;padding:.25rem .6rem}.mission-plan-v2{margin-top:.5rem}.mission-plan-v2--dimmed{opacity:.75}.mission-plan-v2 h3{margin:.8rem 0 .6rem}.mission-plan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.6rem}.mission-plan-cell{border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:10px;padding:.6rem .8rem;background:var(--surface)}.mission-plan-cell p{margin:.2rem 0 0;font-size:.9rem}.mission-plan-cell-label{font-size:.78rem;color:var(--teal);font-weight:600}.mission-milestones{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:0;margin:.7rem 0 0}.mission-milestones li{padding:.2rem .7rem;border-radius:999px;font-size:.82rem;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent)}.mission-milestones li:not(:last-child):after{content:"→";margin-left:.4rem;color:var(--muted)}.mission-step-cards{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.7rem}.mission-step-card{border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:12px;padding:.8rem 1rem;background:var(--surface)}.mission-step-card p{margin:.3rem 0 0}.mission-step-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.mission-step-card-index{font-size:.75rem;color:var(--muted);border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);border-radius:999px;padding:.05rem .55rem}.mission-step-acceptance{font-size:.85rem}.mission-step-acceptance span{display:inline-block;margin-right:.4rem;font-size:.75rem;color:var(--muted);border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);border-radius:6px;padding:0 .4rem}.mission-step-actions-badges{display:flex;gap:.4rem;margin-top:.5rem}.mission-action-badge{font-size:.75rem;padding:.12rem .6rem;border-radius:999px}.mission-action-badge--codegen{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.mission-action-badge--imagegen{background:color-mix(in srgb,var(--teal) 12%,transparent);color:var(--teal)}.mission-run-item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.mission-run-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--muted)}.mission-run-dot--running{background:var(--accent);animation:mission-pulse 1.2s ease-in-out infinite}.mission-run-dot--succeeded{background:#2ea35a}.mission-run-dot--failed{background:#b3261e}@keyframes mission-pulse{0%,to{opacity:1}50%{opacity:.35}}.mission-run-type{font-weight:600}.mission-run-status{font-size:.82rem;color:var(--muted)}.mission-run-status--failed{color:#b3261e}.mission-run-status--succeeded{color:#1d7a3d}.modal-panel-enhance{max-width:640px}.mission-enhance-compare{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.mission-enhance-col{border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:10px;padding:.7rem .85rem}.mission-enhance-col h4{margin:0 0 .4rem;font-size:.85rem;color:var(--muted)}.mission-enhance-col p{margin:0;white-space:pre-wrap}.mission-enhance-col--new{border-color:color-mix(in srgb,var(--teal) 45%,transparent);background:color-mix(in srgb,var(--teal) 5%,transparent)}.mission-enhance-note{margin:.6rem 0 0;font-size:.82rem}.mission-rollback-details{margin:.5rem 0 0;padding-left:1.2rem;color:var(--muted);display:flex;flex-direction:column;gap:.25rem}@media (max-width: 720px){.mission-enhance-compare,.mission-summary-groups,.mission-plan-grid{grid-template-columns:1fr}}.account-page{margin:0 auto;max-width:820px;padding:1.5rem 1rem 3rem}.account-header{margin-bottom:1.5rem}.account-back{display:inline-block;margin-bottom:.75rem;font-size:.85rem;color:var(--muted);text-decoration:none}.account-back:hover{color:var(--accent)}.account-card{padding:1.5rem;margin-bottom:1.25rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.account-card.is-hidden{display:none}.account-card>h2{margin:0 0 .5rem}.account-hint{margin:0 0 1rem;font-size:.85rem;color:var(--muted)}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem}.account-field{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.account-field-wide{grid-column:1 / -1}.account-field-required .account-label:after{content:" *";color:var(--danger)}.account-label{font-size:.8rem;color:var(--muted)}.account-field input,.account-field select,.account-field textarea{width:100%}.account-field textarea{resize:vertical;min-height:4.5rem}.account-field-readonly{justify-content:flex-end}.account-readonly-value{padding:.55rem 0;font-size:.95rem;color:var(--ink)}.account-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.25rem}.account-msg{font-size:.85rem}.account-msg-ok{color:var(--ok)}.account-msg-err{color:var(--danger)}.account-type-switch{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.account-type-option{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.account-type-option:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.account-type-option.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent);box-shadow:0 0 0 1px var(--accent) inset}.account-type-option:disabled{cursor:default;opacity:.7}.account-type-title{font-size:1rem;font-weight:600;color:var(--ink)}.account-type-desc{font-size:.8rem;color:var(--muted)}.account-balances{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem}.account-balance{display:flex;flex-direction:column;gap:.2rem}.account-balance-label{font-size:.75rem;color:var(--muted)}.account-balance-value{font-size:1.25rem;font-weight:700;color:var(--ink)}.hub-account-link{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit;border-radius:var(--radius-sm);padding:.15rem .35rem}.hub-account-link:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}@media (max-width: 640px){.account-grid,.account-type-switch{grid-template-columns:1fr}}.workroom-room{max-width:920px;margin:0 auto;padding:1rem 1.25rem 2.5rem;display:flex;flex-direction:column;gap:1rem}.workroom-room-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.workroom-room-header h1{margin:.15rem 0;font-size:1.45rem}.workroom-title-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.workroom-status-badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600;border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);color:var(--muted);background:color-mix(in srgb,var(--ink) 5%,transparent);white-space:nowrap}.workroom-status--group_chat,.workroom-status--drafting{border-color:color-mix(in srgb,var(--teal) 40%,transparent);color:var(--teal);background:color-mix(in srgb,var(--teal) 10%,transparent)}.workroom-status--solution_ready{border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.workroom-status--solution_confirmed,.workroom-status--executing{border-color:color-mix(in srgb,var(--warn) 55%,transparent);color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.workroom-status--done{border-color:color-mix(in srgb,var(--teal) 45%,transparent);color:var(--teal);background:color-mix(in srgb,var(--teal) 12%,transparent)}.workroom-status--failed{border-color:color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}.workroom-topic-line{margin:.25rem 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.workroom-phases{list-style:none;display:flex;gap:.5rem;padding:0;margin:0;flex-wrap:wrap}.workroom-phases li{padding:.35rem .75rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);font-size:.85rem;color:var(--muted)}.workroom-phases li.active{border-color:var(--accent);color:var(--ink);font-weight:600}.workroom-phases li.done{opacity:.75}.workroom-phases li.done:before{content:"✓ ";color:var(--teal)}.workroom-phases li.pending{opacity:.55}.workroom-chat{display:flex;flex-direction:column;gap:.75rem;max-height:min(60dvh,560px);overflow:auto;padding:.75rem;border-radius:var(--radius-md, 12px);background:color-mix(in srgb,var(--surface) 88%,var(--accent) 4%);border:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.workroom-chat-empty{margin:.5rem 0;text-align:center;color:var(--muted);font-size:.9rem}.workroom-bubble{max-width:85%;padding:.65rem .85rem;border-radius:12px;background:var(--surface);border:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.workroom-bubble--customer{align-self:flex-end;background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.workroom-bubble--meta{border-color:color-mix(in srgb,var(--teal) 35%,transparent)}.workroom-bubble--agent{background:color-mix(in srgb,var(--teal) 5%,var(--surface))}.workroom-bubble--system{align-self:center;max-width:95%;background:transparent;border-style:dashed;font-size:.92rem}.workroom-role-tag{margin-left:.4rem;padding:.05rem .4rem;border-radius:999px;font-size:.68rem;font-weight:500;color:var(--teal);border:1px solid color-mix(in srgb,var(--teal) 40%,transparent);background:color-mix(in srgb,var(--teal) 10%,transparent);vertical-align:middle}.workroom-bubble-meta{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:.35rem;font-size:.75rem;color:var(--muted)}.workroom-msg-rollback{margin-left:auto;padding:.1rem .45rem;font-size:.7rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);background:transparent;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .15s ease}.workroom-bubble:hover .workroom-msg-rollback,.workroom-bubble:focus-within .workroom-msg-rollback,.workroom-msg-rollback:focus-visible{opacity:1}.workroom-msg-rollback:hover:not(:disabled){color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.workroom-speaker{font-weight:600;color:var(--ink)}.workroom-bubble-body{white-space:pre-wrap;line-height:1.5}.workroom-solution-card{padding:1rem;border-radius:var(--radius-md, 12px);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);background:var(--surface)}.workroom-error{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.workroom-error button{flex-shrink:0}.workroom-composer{display:block}.workroom-composer-box{display:flex;flex-direction:column;gap:.5rem;padding:.6rem;border-radius:var(--radius-md, 12px);border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);background:var(--surface)}.workroom-composer textarea{width:100%;min-height:4.5rem;resize:vertical;padding:.35rem .4rem;border:none;background:transparent;color:var(--ink);font:inherit}.workroom-composer textarea:focus{outline:none}.workroom-composer-box:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.workroom-composer-toolbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.workroom-composer-count{margin-left:auto;font-size:.75rem;color:var(--muted)}.workroom-composer-toolbar button[type=submit]{min-width:5.5rem}.workroom-composer-msg{margin:0;font-size:.82rem;color:var(--muted)}@media (max-width: 640px){.workroom-composer-toolbar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.15rem}.workroom-msg-rollback{opacity:1}}.side-nav-ws{margin-left:.35rem;font-size:.7rem;color:var(--muted)}.ws-section{margin:1.5rem 0}.ws-member-list{list-style:none;margin:0;padding:0}.ws-member-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.6rem 0;border-bottom:1px solid var(--line)}.ws-member-actions{margin-left:auto;display:flex;gap:.35rem}.ws-invite{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.ws-invite input,.ws-invite select{min-height:2.25rem;padding:.35rem .6rem;font:inherit}.side-nav-account{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.5rem;min-width:0;grid-column:1 / 3}.app-shell.nav-collapsed .side-nav-account .user-meta{display:none}.survey-checks{display:flex;flex-wrap:wrap;gap:.45rem .9rem}.survey-check{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem}.survey-card-list{display:flex;flex-direction:column;gap:.75rem}.survey-mini-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:.9rem 1rem}.survey-mini-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.survey-mini-head h3{margin:0 0 .2rem;font-size:1rem}.survey-mini-body{margin-top:.9rem}.survey-hub-banner{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem var(--page-pad-x);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-bottom:1px solid var(--line);font-size:.9rem}.survey-hub-banner-link{font-weight:600;white-space:nowrap}.modal-panel-survey{max-width:36rem}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:.65rem;flex-wrap:wrap;margin-top:1.15rem}.modal-actions .btn{align-self:auto;margin-top:0}.theme-toggle{position:fixed;z-index:40;right:max(.85rem,env(safe-area-inset-right,0px));bottom:calc(3rem + env(safe-area-inset-bottom,0px));-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;place-items:center;width:2.4rem;height:2.4rem;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:50%;padding:0;font:inherit;cursor:pointer;box-shadow:var(--shadow-sm)}.theme-toggle svg{width:1.1rem;height:1.1rem}html[data-theme=light] .beian-footer--hub{background:#ffffffb8}@media (max-width: 640px){.modal-panel-survey{max-width:100%;margin:auto 0 0;border-radius:1rem 1rem 0 0}}.fund-dist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.fund-dist li{display:grid;grid-template-columns:minmax(6rem,12rem) minmax(0,1fr) 2.5rem;align-items:center;gap:.5rem;font-size:.85rem}.fund-dist-bar{display:block;height:.5rem;background:var(--line);border-radius:99px;overflow:hidden}.fund-dist-bar>span{display:block;height:100%;background:var(--accent)}.fund-dist-n{text-align:right;color:var(--muted)}.fund-table-wrap{overflow-x:auto}.fund-table{width:100%;border-collapse:collapse;font-size:.85rem}.fund-table th,.fund-table td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--line)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hub-entry:hover,.hub-lab-link:hover,.project-card:hover{transform:none}.ui-spinner{border-top-color:var(--accent);animation:none}.ui-skeleton-card{animation:none;background:var(--paper)}}.media-studio{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:1.25rem;margin:1.25rem 0;align-items:start}.media-studio-panel{display:flex;flex-direction:column;gap:1rem;padding:1.1rem 1.15rem 1.25rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.media-studio-head h2{margin:0 0 .2rem;font-size:1.05rem}.media-studio-head p{margin:0;font-size:.85rem}.media-studio-field{display:flex;flex-direction:column;gap:.4rem}.media-studio-field-top{display:flex;justify-content:space-between;align-items:baseline;font-size:.9rem}.media-studio-count{color:var(--ink-soft);font-size:.78rem}.media-studio-field textarea{width:100%;min-height:7.5rem;resize:vertical}.media-studio-examples{display:flex;flex-direction:column;gap:.35rem}.media-studio-example{text-align:left;border:1px dashed var(--line);background:transparent;color:var(--ink-soft);border-radius:var(--radius-sm);padding:.4rem .6rem;font-size:.82rem;line-height:1.45;cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast)}.media-studio-example:hover{border-color:var(--accent);color:var(--accent-bright)}.media-studio-option{border:0;padding:0;margin:0}.media-studio-option legend{font-size:.85rem;margin-bottom:.35rem}.media-studio-option-hint{margin:.35rem 0 0;font-size:.8rem}.media-studio-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.media-studio-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:var(--radius-pill);padding:.3rem .85rem;font-size:.9rem;cursor:pointer;transition:border-color var(--dur-fast),background var(--dur-fast),color var(--dur-fast)}.media-studio-chip:hover{border-color:var(--accent)}.media-studio-chip.is-active{border-color:var(--accent);color:var(--accent-bright);background:var(--accent-soft)}.media-studio-chip.is-locked{cursor:default;color:var(--ink-soft)}.media-studio-chip.is-locked:hover{border-color:var(--line)}.media-studio-duration-custom{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem}.media-studio-duration-custom input{width:4.5rem}.media-studio-submit{display:flex;flex-direction:column;gap:.5rem;margin-top:.25rem;padding-top:.75rem;border-top:1px solid var(--line)}.media-studio-submit p{margin:0;font-size:.82rem}.media-studio-submit button{width:100%}.media-studio-results{display:flex;flex-direction:column;gap:.85rem;min-width:0}.media-studio-results h2{margin:0;font-size:1.05rem}.media-studio-player{width:100%;max-width:720px;border-radius:var(--radius-md);background:#111}.media-studio-audio-player{width:100%;max-width:720px}.media-studio-results-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;min-height:14rem;padding:1.5rem;border:1px dashed var(--line);border-radius:var(--radius-md);text-align:center}.media-studio-results-empty p{margin:0}.media-studio-results-empty>p:first-child{color:var(--ink-soft)}.media-studio-results-empty.is-busy{border-style:solid}.media-studio-history-title{margin:.5rem 0 0;font-size:1rem}.media-studio-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.media-studio-card{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.media-studio-card-main{display:flex;flex-direction:column;gap:.3rem;min-width:0}.media-studio-card-prompt{margin:0;overflow-wrap:anywhere}.media-studio-card-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:flex-start}.media-studio-status{align-self:flex-start;font-size:.75rem;padding:.1rem .55rem;border-radius:var(--radius-pill);border:1px solid var(--line);color:var(--ink-soft)}.media-studio-status--running{border-color:var(--accent);color:var(--accent-bright);background:var(--accent-soft)}.media-studio-status--success{border-color:var(--ok);color:var(--ok)}.media-studio-status--failed{border-color:var(--danger);color:var(--danger)}@media (max-width: 960px){.media-studio{grid-template-columns:1fr}}.linkish{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:0;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.linkish:hover{color:var(--accent-bright)}.row-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--stack-gap);align-items:end}.novel-detail{display:flex;flex-direction:column;gap:var(--section-gap);overflow-y:auto;scrollbar-width:thin}.novel-list-page{overflow-y:auto;scrollbar-width:thin}.novel-content{display:flex;flex-direction:column;gap:var(--section-gap)}.novel-error-banner{margin:0}.novel-stepper{list-style:none;margin:0;padding:.9rem 1.1rem;display:flex;align-items:center;gap:.5rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);overflow-x:auto}.novel-step{display:flex;align-items:center;gap:.5rem;flex:1 1 0;min-width:max-content}.novel-step-btn{display:flex;align-items:center;gap:.55rem;border:none;background:none;padding:.25rem .4rem;border-radius:var(--radius-sm);cursor:pointer;color:var(--ink-soft);font:inherit;transition:background var(--dur-fast) var(--ease-out)}.novel-step-btn:hover{background:var(--accent-soft)}.novel-step-dot{width:1.7rem;height:1.7rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:600;border:1px solid var(--line);color:var(--muted);background:var(--surface);flex:none}.novel-step.is-done .novel-step-dot{background:var(--accent);border-color:var(--accent);color:#fff}.novel-step.is-active .novel-step-dot{border-color:var(--accent);color:var(--accent-bright);box-shadow:0 0 0 3px var(--accent-soft)}.novel-step.is-active .novel-step-btn{color:var(--ink)}.novel-step-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.25}.novel-step-label{font-weight:600;font-size:.92rem;white-space:nowrap}.novel-step-hint{font-size:.75rem;color:var(--muted);white-space:nowrap}.novel-step.is-busy .novel-step-hint{color:var(--accent-bright)}.novel-step-link{flex:1 1 auto;min-width:1.2rem;height:1px;background:color-mix(in srgb,var(--accent) 35%,transparent)}.novel-step-panel{scroll-margin-top:1rem;transition:border-color var(--dur-mid) var(--ease-out)}.novel-step-panel.is-current{border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 0 1px var(--accent-soft)}.novel-step-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.75rem}.novel-step-head h2{margin:0}.novel-step-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.novel-step-tip{font-size:.85rem}.novel-empty{padding:.75rem 1rem;border:1px dashed color-mix(in srgb,var(--accent) 30%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent-soft) 40%,transparent)}.novel-inline-error{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:.5rem}.novel-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .55rem;border-radius:var(--radius-pill);border:1px solid var(--line);font-size:.75rem;color:var(--muted);background:var(--surface);white-space:nowrap}.novel-badge.is-done,.novel-badge.is-success{border-color:color-mix(in srgb,var(--ok) 45%,transparent);color:var(--ok)}.novel-badge.is-busy,.novel-badge.is-running,.novel-badge.is-queued{border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--accent-bright);background:var(--accent-soft)}.novel-badge.is-failed{border-color:color-mix(in srgb,var(--danger) 50%,transparent);color:var(--danger)}.novel-label-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%}.novel-field-actions{display:inline-flex;align-items:center;gap:.4rem}.novel-mini-btn{font-size:.8rem;padding:.2rem .6rem;border-radius:var(--radius-pill)}.novel-bible{margin-top:.9rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);display:flex;flex-direction:column;gap:.5rem}.novel-bible p{margin:0}.novel-taboo{display:flex;gap:.4rem;flex-wrap:wrap}.novel-chip{display:inline-flex;align-items:center;padding:.1rem .55rem;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:var(--accent-soft);color:var(--accent-bright);font-size:.78rem}.novel-select-hint{font-size:.78rem}.novel-char-grid{margin-top:.9rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--stack-gap)}.novel-char-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.5rem;transition:border-color var(--dur-fast) var(--ease-out)}.novel-char-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.novel-char-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.novel-char-head h3{margin:0;font-size:1.05rem}.novel-char-card p{margin:0;color:var(--ink-soft);font-size:.9rem}.novel-outline-form{margin-bottom:.5rem}.novel-outlines{list-style:none;margin:.9rem 0 0;padding:0;display:flex;flex-direction:column;gap:.6rem}.novel-outline-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:.7rem .9rem}.novel-outline-title-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.novel-outline-detail{margin:.5rem 0 0;display:flex;flex-direction:column;gap:.3rem}.novel-outline-detail>div{display:grid;grid-template-columns:3rem 1fr;gap:.5rem}.novel-outline-detail dt{color:var(--muted);font-size:.8rem}.novel-outline-detail dd{margin:0;font-size:.9rem;color:var(--ink-soft)}.novel-chapter-note{display:block;margin-bottom:.75rem;font-size:.9rem}.novel-chapter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:var(--stack-gap);margin-bottom:1rem}.novel-chapter-cell{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:.7rem .8rem;display:flex;flex-direction:column;gap:.4rem;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.novel-chapter-cell.is-ready{border-color:color-mix(in srgb,var(--ok) 35%,transparent)}.novel-chapter-cell.is-running{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.novel-chapter-cell.is-failed{border-color:color-mix(in srgb,var(--danger) 50%,transparent)}.novel-chapter-cell.is-active{box-shadow:0 0 0 2px var(--accent-soft)}.novel-chapter-cell-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.novel-chapter-no{font-weight:600;font-size:.88rem}.novel-chapter-title{margin:0;font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.novel-chapter-cell-actions{display:flex;align-items:center;gap:.5rem;margin-top:auto}.novel-reader{display:grid;grid-template-columns:200px 1fr;gap:var(--stack-gap);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:.9rem;margin-bottom:.9rem}.novel-toc{display:flex;flex-direction:column;gap:.3rem;overflow-y:auto;max-height:480px;padding-right:.4rem}.novel-toc button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:none;text-align:left;padding:.4rem .55rem;border-radius:var(--radius-sm);color:var(--ink-soft);font:inherit;font-size:.85rem;cursor:pointer}.novel-toc button:hover{background:var(--accent-soft)}.novel-toc button.active{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-soft);color:var(--ink)}.novel-empty-toc{margin:0;font-size:.85rem}.novel-body{min-width:0}.novel-reader-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.novel-reader-head h3{margin:0}.novel-reader-pager{display:flex;gap:.4rem}.novel-summary{margin:.4rem 0 .8rem;font-size:.85rem}.novel-prose{margin:0;white-space:pre-wrap;word-break:break-word;font-family:"Noto Serif SC",Songti SC,serif;font-size:1rem;line-height:1.9;color:var(--ink);-webkit-user-select:text;user-select:text}.novel-selection-bar{z-index:90;display:flex;gap:.25rem;padding:.3rem;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--surface) 92%,#000);box-shadow:var(--shadow-sm)}.novel-selection-bar button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--ink-soft);font:inherit;font-size:.85rem;padding:.25rem .65rem;border-radius:var(--radius-pill);cursor:pointer}.novel-selection-bar button:hover{background:var(--accent-soft);color:var(--accent-bright)}.novel-selection-modal{max-width:620px}.novel-selection-src{margin:0 0 .5rem;font-size:.85rem}.novel-selection-quote{margin:0 0 .75rem;padding:.6rem .8rem;border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--accent-soft);color:var(--ink-soft);font-size:.9rem;white-space:pre-wrap;word-break:break-word;max-height:140px;overflow-y:auto}.novel-selection-result{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:.6rem .8rem}.novel-selection-result p{margin:0 0 .35rem;font-size:.82rem}.novel-selection-result-body{white-space:pre-wrap;word-break:break-word;font-size:.92rem;line-height:1.8;max-height:300px;overflow-y:auto}.novel-selection-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.novel-jobs{padding-top:.6rem;padding-bottom:.6rem}.novel-jobs-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;width:100%;display:flex;align-items:center;justify-content:space-between;font:inherit;font-weight:600;color:var(--ink);cursor:pointer;padding:.25rem 0}.job-list{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}.job-list li{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.45rem .6rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font-size:.88rem}.job-kind{font-weight:600}.job-error{flex-basis:100%;margin:0}.novel-list-empty{padding:1.6rem;text-align:center;border:1px dashed color-mix(in srgb,var(--accent) 35%,transparent);border-radius:var(--radius-md)}.novel-list-empty p{margin:.25rem 0}.novel-card-cover{width:100%;height:84px;border-radius:var(--radius-sm);margin-bottom:.6rem;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;background:linear-gradient(120deg,color-mix(in srgb,var(--accent-bright) 80%,#fff) 0%,var(--accent) 55%,var(--deep-mid) 100%)}.novel-card .home-project-link h3{margin:0 0 .35rem}.novel-card-meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin:0 0 .4rem;font-size:.85rem}.novel-card-progress{display:flex;gap:.4rem;flex-wrap:wrap;margin:0 0 .4rem}.novel-progress-dot{font-size:.78rem;color:var(--ok);border:1px solid color-mix(in srgb,var(--ok) 35%,transparent);border-radius:var(--radius-pill);padding:.05rem .5rem}.novel-card-time{margin:0;font-size:.78rem}@media (max-width: 720px){.novel-stepper{padding:.7rem}.novel-step-link{min-width:.6rem}.novel-step-label{font-size:.82rem}.novel-reader{grid-template-columns:1fr}.novel-toc{flex-direction:row;flex-wrap:wrap;max-height:none;padding-right:0}.novel-chapter-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
