:root{color:#e8eaf0;background:#090c14;font-family:PingFang SC,Helvetica Neue,Microsoft YaHei,Inter,ui-sans-serif,system-ui,sans-serif;font-synthesis:none;text-rendering:geometricPrecision;--bg: #090c14;--card: #111520;--card-2: #151a27;--hover: rgba(255, 255, 255, .04);--line: rgba(255, 255, 255, .08);--line-hi: rgba(124, 58, 237, .35);--accent: #7c3aed;--accent-light: #a78bfa;--accent-dim: rgba(124, 58, 237, .18);--cyan: #06b6d4;--cyan-dim: rgba(6, 182, 212, .18);--text: #e8eaf0;--muted: #7a8499;--faint: #3d4559;--danger: #f87171;--ok: #4ade80;--brand-grad: linear-gradient(135deg, #7c3aed, #06b6d4);--accent-grad: linear-gradient(135deg, #7c3aed, #5b21b6);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,textarea{color:var(--text);background:#ffffff0d;border:1px solid var(--line);border-radius:var(--radius-md);outline:none}input:focus,textarea:focus{border-color:var(--line-hi);box-shadow:0 0 0 3px #7c3aed29}textarea{resize:vertical;line-height:1.5}.loadingScreen{min-height:100vh;display:grid;place-items:center;color:var(--accent-light);background:var(--bg)}.authPage{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) 480px;background:var(--bg)}.authHero{position:relative;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:72px 80px;border-right:1px solid var(--line);overflow:hidden}.authHero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:48px 48px;opacity:.42}.authHero>*{position:relative}.logoLockup,.railHeader{display:flex;align-items:center;gap:10px}.logoMark,.brandSpark,.botAvatar{display:grid;place-items:center;color:#fff;background:var(--brand-grad);box-shadow:0 0 32px #7c3aed33}.logoMark{width:30px;height:30px;border-radius:8px;font-size:14px;font-weight:800}.logoLockup strong,.railHeader strong{color:#fff;font-size:20px;font-weight:800}.logoLockup span,.railHeader span{padding:2px 6px;border-radius:4px;color:var(--accent-light);background:var(--accent-dim);font-size:10px;font-weight:800;text-transform:uppercase}.authHero h1{margin:54px 0 18px;color:#fff;font-size:clamp(42px,6vw,72px);line-height:1.12;letter-spacing:0}.authHero h1:first-line{color:var(--text)}.authHero p{max-width:460px;margin:0;color:var(--muted);font-size:16px;line-height:1.8}.authPreviewGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:520px;margin-top:48px}.authPreviewGrid div{aspect-ratio:1 / 1;border:1px solid var(--line);border-radius:var(--radius-md);background:repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent 10px),var(--accent-dim)}.authPreviewGrid div:nth-child(2){background:repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent 10px),var(--cyan-dim)}.authPreviewGrid div:nth-child(3){background:repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent 10px),#ec489929}.authPanel{display:flex;align-items:center;padding:56px}.authCard{width:100%}.authTitle{display:flex;align-items:center;gap:14px;margin-bottom:24px}.brandSpark{width:38px;height:38px;border-radius:var(--radius-md)}.authTitle h2{margin:0;color:#fff;font-size:24px;letter-spacing:0}.authTitle p{margin:4px 0 0;color:var(--muted);font-size:13px}.authForm{display:grid;gap:16px}label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:700}.authForm input{height:43px;padding:0 14px}.primaryButton,.secondaryButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:var(--radius-md);font-weight:800}.primaryButton{border:0;color:#fff;background:var(--accent-grad)}.secondaryButton{color:var(--muted);background:var(--card);border:1px solid var(--line)}.errorText,.alert{padding:10px 12px;color:#fecaca;background:#f871711f;border:1px solid rgba(248,113,113,.32);border-radius:var(--radius-md);font-size:13px}.alert{margin:12px 24px 0}.studioApp{position:relative;min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr) 330px;background:var(--bg);color:var(--text);overflow:hidden}.leftRail,.rightRail{height:100vh;min-height:0;display:flex;flex-direction:column;background:var(--card);z-index:20}.leftRail{border-right:1px solid var(--line)}.rightRail{border-left:1px solid var(--line)}.railHeader{height:59px;flex-shrink:0;padding:14px 16px;border-bottom:1px solid var(--line)}.railHeader .logoMark{width:22px;height:22px;border-radius:5px;font-size:10px}.railHeader strong{font-size:14px}.newSessionButton{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:12px 12px 0;padding:10px 14px;color:#fff;background:var(--accent-grad);border:0;border-radius:var(--radius-md);font-size:13px;font-weight:800}.railSection{padding:14px 10px 4px}.railEyebrow,.miniLabel{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.railEyebrow{padding:0 6px 7px}.sessionItem{width:100%;display:grid;gap:3px;padding:10px 12px;margin-bottom:3px;text-align:left;background:transparent;border:0;border-radius:var(--radius-md)}.sessionItem.active,.sessionItem:hover{background:var(--accent-dim)}.sessionItem strong{min-width:0;overflow:hidden;color:var(--text);font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.sessionItem.active strong{color:var(--accent-light)}.sessionItem span{color:var(--muted);font-size:10px}.summaryCard{margin:12px 10px 10px;padding:12px 14px;background:#ffffff08;border:1px solid var(--line);border-radius:var(--radius-md)}.summaryTitle{display:flex;align-items:center;gap:6px;margin-bottom:8px;color:var(--text);font-size:11px;font-weight:800}.summaryCard dl{display:grid;gap:8px;margin:0}.summaryCard div{min-width:0}.summaryCard dt{color:var(--muted);font-size:10px}.summaryCard dd{min-width:0;overflow:hidden;margin:2px 0 0;color:var(--text);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.userFooter{display:flex;align-items:center;gap:9px;margin-top:auto;padding:11px 12px;border-top:1px solid var(--line)}.avatar{width:28px;height:28px;display:grid;flex-shrink:0;place-items:center;color:#fff;background:var(--brand-grad);border-radius:50%;font-size:12px;font-weight:800}.userFooter div:nth-child(2){min-width:0;flex:1}.userFooter strong,.userFooter span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.userFooter strong{color:var(--text);font-size:12px}.userFooter span{margin-top:2px;color:var(--muted);font-size:10px}.userFooter button,.mobileClose,.ghostIconButton{display:grid;place-items:center;color:var(--muted);background:transparent;border:0}.conversationPane{min-width:0;height:100vh;min-height:0;display:flex;flex-direction:column}.conversationHeader{min-height:59px;display:flex;align-items:center;gap:16px;flex-shrink:0;padding:12px 24px;border-bottom:1px solid var(--line)}.conversationHeader>div:first-child{min-width:0;flex:1}.conversationHeader h1{overflow:hidden;margin:0;color:#fff;font-size:15px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.conversationHeader p{overflow:hidden;margin:3px 0 0;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.headerActions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.versionPill,.okPill,.busyPill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:10px;font-weight:800}.versionPill{color:var(--accent-light);background:var(--accent-dim)}.okPill{color:var(--ok);background:#22c55e1a}.busyPill{color:var(--accent-light);background:var(--accent-dim)}.messageScroller{min-height:0;flex:1;overflow:auto;display:flex;flex-direction:column;gap:16px;padding:20px 24px}.messageRow{display:flex;align-items:flex-start;gap:11px}.messageRow.user{flex-direction:row-reverse}.botAvatar{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);font-size:13px;font-weight:800}.messageBubble,.assistantContent{max-width:min(640px,82%);min-width:0}.messageRow.user .messageBubble{max-width:min(620px,72%);color:var(--accent-light);background:var(--accent-dim);border:1px solid var(--line-hi);border-radius:var(--radius-lg) 4px var(--radius-lg) var(--radius-lg)}.messageRow.assistant>.messageBubble{background:var(--card);border:1px solid var(--line);border-radius:4px var(--radius-lg) var(--radius-lg) var(--radius-lg)}.messageBubble{padding:11px 15px;font-size:14px;line-height:1.65}.messageBubble p{margin:0;white-space:pre-line}.fileChips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.fileChips span{padding:2px 7px;color:var(--cyan);background:var(--cyan-dim);border-radius:var(--radius-sm);font-size:10px;font-weight:800}.draftCard,.generatingCard,.resultCard{background:var(--card);border:1px solid var(--line-hi);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 0 32px #7c3aed26}.draftHeader{display:flex;align-items:center;gap:12px;padding:14px 20px;background:linear-gradient(135deg,#7c3aed26,#06b6d414);border-bottom:1px solid var(--line)}.draftHeader>div:nth-child(2){min-width:0;flex:1}.draftHeader strong,.draftHeader span{display:block}.draftHeader strong{color:#fff;font-size:14px}.draftHeader span{margin-top:2px;color:var(--muted);font-size:11px}.draftTimer{text-align:right}.draftTimer b{display:inline-flex;align-items:center;gap:5px;margin-top:3px;color:var(--accent-light);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:17px}.draftProgress{height:2px;background:var(--line);overflow:hidden}.draftProgress:before{content:"";display:block;width:78%;height:100%;background:var(--brand-grad)}.draftBody{display:flex;flex-direction:column;gap:18px;padding:18px 20px}.draftSpecGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}.draftSpecGrid div{min-width:0;padding:10px 12px;background:#ffffff0a;border:1px solid var(--line);border-radius:var(--radius-md)}.draftSpecGrid span{display:block;color:var(--muted);font-size:10px;font-weight:800}.draftSpecGrid strong{display:block;overflow:hidden;margin-top:4px;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.assetUnderstandList{display:grid;gap:7px;margin-top:8px}.assetUnderstandList>div{display:flex;gap:10px;align-items:flex-start;padding:9px;background:#ffffff0a;border-radius:var(--radius-md)}.assetUnderstandList svg{color:var(--accent-light);flex-shrink:0;margin-top:2px}.assetUnderstandList strong,.assetUnderstandList span{display:block}.assetUnderstandList strong{color:var(--text);font-size:12px}.assetUnderstandList span{margin-top:2px;color:var(--muted);font-size:11px;line-height:1.5}.draftBullets{display:grid;gap:6px;margin:8px 0 0;padding:0;list-style:none}.draftBullets li{display:flex;gap:8px;color:var(--text);font-size:13px;line-height:1.6}.draftBullets li:before{content:"•";color:var(--accent-light);flex-shrink:0}.copyBox{display:grid;gap:5px;margin-top:8px;padding:10px 13px;background:#ffffff0a;border-radius:var(--radius-md)}.copyBox span{color:var(--text);font-size:13px}.draftHint{padding:10px 13px;color:var(--accent-light);background:var(--accent-dim);border:1px solid var(--line-hi);border-radius:var(--radius-md);font-size:12px;line-height:1.6}.draftActions{display:flex;gap:10px;padding:0 20px 18px}.draftActions .primaryButton{flex:1}.qaCard{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:var(--radius-md);font-size:12px}.qaCard.pass{color:var(--ok);background:#22c55e14;border:1px solid rgba(34,197,94,.24)}.qaCard.warn{color:#fbbf24;background:#f59e0b14;border:1px solid rgba(245,158,11,.24)}.generatingCard{width:min(520px,100%);display:grid;gap:14px;justify-items:center;padding:24px;text-align:center;border-color:var(--line);box-shadow:none}.generatingIcon{width:56px;height:56px;display:grid;place-items:center;color:#fff;background:var(--brand-grad);border-radius:14px;animation:spin 2s linear infinite;box-shadow:0 0 32px #7c3aed33}.generatingCard strong,.generatingCard span{display:block}.generatingCard strong{color:var(--text);font-size:14px}.generatingCard span{margin-top:4px;color:var(--muted);font-size:11px}.progressTrack{width:100%;max-width:280px;height:3px;background:var(--line);border-radius:2px;overflow:hidden}.progressTrack div{height:100%;background:var(--brand-grad);border-radius:2px;animation:progress 2s ease-in-out forwards}.resultDeck{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;width:min(720px,100%)}.resultCard{margin:0;border-color:var(--line-hi)}.resultCard img{display:block;width:100%;aspect-ratio:3 / 4;object-fit:cover;background:var(--accent-dim)}.resultCard figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}.resultCard strong,.resultCard span{display:block}.resultCard strong{color:var(--text);font-size:13px}.resultCard span{margin-top:2px;color:var(--muted);font-size:11px}.resultActions{display:inline-flex;gap:6px}.resultActions a,.resultActions button{width:30px;height:30px;display:grid;place-items:center;color:var(--accent-light);background:var(--accent-dim);border:1px solid var(--line-hi);border-radius:var(--radius-sm)}.emptyMessage,.emptyRailState{padding:14px;color:var(--muted);background:#ffffff08;border:1px dashed var(--line);border-radius:var(--radius-md);font-size:12px;line-height:1.6}.composerBar{flex-shrink:0;padding:12px 24px 16px;background:#ffffff05;border-top:1px solid var(--line)}.specMiniBar{width:100%;display:flex;align-items:center;gap:10px;margin-bottom:10px;padding:9px 12px;color:var(--muted);background:var(--card);border:1px solid var(--line-hi);border-radius:var(--radius-md);text-align:left}.specMiniBar span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.specMiniBar strong{color:var(--accent-light);font-size:12px}.pendingFiles{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding:8px;background:var(--card);border:1px solid var(--line-hi);border-radius:var(--radius-md);overflow-x:auto}.pendingFiles figure{display:flex;align-items:center;gap:8px;flex-shrink:0;margin:0}.pendingFiles img{width:36px;height:36px;object-fit:cover;border-radius:var(--radius-sm)}.pendingFiles figcaption{max-width:150px;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.composerControls{display:flex;gap:10px;align-items:center;margin-bottom:10px}.uploadButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 13px;color:var(--muted);background:var(--card);border:1px dashed var(--line);border-radius:var(--radius-md);font-size:12px;font-weight:700}.countControl{display:inline-flex;grid-template-columns:none;align-items:center;gap:8px;margin-left:auto}.countControl input{width:72px;height:38px;padding:0 10px}.textComposer{display:flex;gap:10px;align-items:flex-end}.textComposer textarea{min-height:50px;max-height:130px;flex:1;padding:12px 15px;background:var(--card);font-size:13px}.sendButton{width:48px;height:48px;display:grid;flex-shrink:0;place-items:center;color:#fff;background:var(--accent-grad);border:0;border-radius:var(--radius-lg)}.quickPromptRow{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.quickPromptRow button{padding:5px 11px;color:var(--muted);background:var(--card);border:1px solid var(--line);border-radius:999px;font-size:11px}.revisionDock{display:flex;gap:8px;align-items:flex-end;margin-top:10px}.revisionDock textarea{min-height:48px;flex:1;padding:10px 12px;background:var(--card);font-size:12px}.revisionDock button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:0 12px;color:var(--accent-light);background:var(--accent-dim);border:1px solid var(--line-hi);border-radius:var(--radius-md);font-size:12px;font-weight:800}.rightRailHeader{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:14px 16px;border-bottom:1px solid var(--line)}.rightRailHeader.compact{padding:0 0 10px;border-bottom:0}.rightRailHeader div{min-width:0;flex:1}.rightRailHeader strong,.rightRailHeader span{display:block}.rightRailHeader strong{color:#fff;font-size:14px}.rightRailHeader span{margin-top:3px;color:var(--muted);font-size:10px}.mediumTabs{display:flex;gap:6px;margin:12px 12px 0;padding:4px;background:#ffffff0a;border:1px solid var(--line);border-radius:var(--radius-md)}.mediumTabs button{flex:1;min-height:34px;color:var(--muted);background:transparent;border:0;border-radius:var(--radius-sm);font-size:12px;font-weight:800}.mediumTabs button.active{color:var(--accent-light);background:var(--accent-dim)}.techNote{margin:10px 12px 0;padding:9px 11px;color:var(--muted);background:#ffffff09;border:1px solid var(--line);border-radius:var(--radius-md);font-size:11px;line-height:1.55}.specList{min-height:0;overflow:auto;display:grid;gap:9px;padding:12px}.specCategory{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.specCategoryHeader{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:0 12px;color:var(--text);background:#ffffff06;border:0}.specCategoryHeader span{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800}.specCategoryHeader span:last-child{color:var(--accent-light);font-size:10px}.specItems{display:grid;border-top:1px solid var(--line)}.specItem{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;color:var(--text);background:var(--card);border:0;border-bottom:1px solid rgba(255,255,255,.05);text-align:left}.specItem:last-child{border-bottom:0}.specItem:hover,.specItem.selected{background:var(--accent-dim)}.specItem>div:first-child{min-width:0;flex:1}.specItem strong,.specItem span,.specItem b,.specItem em{display:block}.specItem strong{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.specItem span{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.45}.specMetrics{min-width:92px;text-align:right}.specMetrics b{color:var(--accent-light);font-size:11px}.specMetrics em{margin-top:3px;color:var(--cyan);font-size:10px;font-style:normal}.specReminder{display:grid;gap:5px;margin:0 12px 12px;padding:11px 12px;color:#d4c090;background:#f59e0b14;border:1px solid rgba(245,158,11,.22);border-radius:var(--radius-md)}.specReminder.print{color:#c4b5fd;background:#7c3aed1a;border-color:var(--line-hi)}.specReminder strong{color:inherit;font-size:12px}.specReminder span{color:currentColor;font-size:10px;line-height:1.55}.versionPanel{padding:0 12px 12px;border-top:1px solid var(--line)}.versionList{display:grid;gap:8px;max-height:240px;overflow:auto}.versionItem{display:flex;align-items:center;gap:10px;padding:8px;color:var(--text);background:#ffffff06;border:1px solid var(--line);border-radius:var(--radius-md);text-align:left}.versionThumb{width:42px;height:42px;flex-shrink:0;overflow:hidden;border-radius:var(--radius-sm);background:var(--accent-dim)}.versionThumb img{width:100%;height:100%;object-fit:cover}.versionItem strong,.versionItem span{display:block}.versionItem strong{font-size:12px}.versionItem span{margin-top:2px;color:var(--muted);font-size:10px}.debugDetails{margin:0 12px 12px;border:1px solid var(--line);border-radius:var(--radius-md)}.debugDetails summary{padding:10px 12px;color:var(--muted);font-size:12px;font-weight:800}.debugDetails pre{max-height:260px;overflow:auto;margin:0;padding:10px 12px;color:var(--muted);border-top:1px solid var(--line);font-size:11px;line-height:1.55;white-space:pre-wrap}.mobileRailButton,.mobileClose,.mobileScrim{display:none}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progress{0%{width:0%}to{width:88%}}@media(max-width:1180px){.studioApp{grid-template-columns:1fr}.leftRail,.rightRail{position:fixed;top:0;bottom:0;width:min(86vw,340px);transform:translate(-110%);transition:transform .2s ease}.rightRail{right:0;transform:translate(110%)}.leftRail.open,.rightRail.open{transform:translate(0)}.mobileRailButton{position:fixed;top:12px;z-index:15;width:38px;height:38px;display:grid;place-items:center;color:var(--text);background:var(--card);border:1px solid var(--line);border-radius:var(--radius-md)}.mobileRailButton.left{left:12px}.mobileRailButton.right{right:12px}.mobileClose{display:grid;margin-left:auto}.mobileScrim{position:fixed;inset:0;z-index:10;display:block;background:#0000008c;border:0}.conversationHeader{padding:12px 58px}}@media(max-width:720px){.authPage{grid-template-columns:1fr}.authHero{min-height:46vh;padding:42px 22px 28px;border-right:0;border-bottom:1px solid var(--line)}.authHero h1{margin-top:36px}.authPanel{padding:28px 22px}.conversationHeader{align-items:flex-start;flex-direction:column;padding:12px 58px 10px}.headerActions{display:none}.messageScroller{padding:16px 12px}.messageBubble,.assistantContent,.messageRow.user .messageBubble{max-width:calc(100vw - 70px)}.composerBar{padding:10px 12px 12px}.draftHeader{align-items:flex-start}.draftTimer{display:none}.draftSpecGrid,.resultDeck{grid-template-columns:1fr}.composerControls,.revisionDock{align-items:stretch;flex-direction:column}.countControl{margin-left:0}.countControl input,.uploadButton{width:100%}.quickPromptRow{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.quickPromptRow button{flex-shrink:0}}
