:root{--surface:#fff;--surface-soft:#f1f3ec;--border:#dce1d4;--ink:#283124;--secondary:#65735b;--quiet:#79866e;--field:#fff;--danger:#a9402c}
html[data-theme=dark]{--bg:#000000;--paper:#101010;--text:#f2f2f2;--muted:#b5b5b5;--line:#303030;--surface:#101010;--surface-soft:#181818;--border:#303030;--ink:#f2f2f2;--secondary:#c4c4c4;--quiet:#a3a3a3;--field:#0a0a0a;--danger:#ffa48a;background:var(--bg);color:var(--ink)}
body{font-size:16px}.nav-item,.new-project,.recent-item{font-size:15px;padding-top:14px;padding-bottom:14px}.side-section{font-size:11px}.sidebar-empty,.local-note{font-size:13px}.local-note small,.sidebar-footer,.sidebar-footer small{font-size:12px}.sidebar-footer{padding:14px 2px}.brand{font-size:23px}.sidebar{padding-top:24px}.new-project{margin-top:25px}.main-nav{margin-top:15px}.sidebar-bottom{margin-top:15px}.count{font-size:13px}.breadcrumb{font-size:14px}.engine-status{font-size:13px}.hero-copy{font-size:17px;line-height:1.8;color:var(--secondary)}.eyebrow{font-size:11px;color:var(--quiet)}.prompt-card textarea{font-size:17px;color:var(--ink)}.subtle-button,.model-caption{font-size:13px;color:var(--secondary)}.primary-button,.secondary-button{font-size:14px;padding:12px 17px;min-height:43px}.prompt-help,.prompt-help button{font-size:12px;color:var(--secondary)}.section-heading h2{font-size:17px}.section-heading>span{font-size:13px;color:var(--quiet)}.idea-title{font-size:16px}.idea-desc{font-size:14px;color:var(--secondary)}.idea-link{font-size:13px;color:var(--secondary)}.idea-card{min-height:230px}.bottom-strip p{font-size:14px;color:var(--secondary)}.bottom-strip strong{color:var(--ink)}.home-footer,.home-footer>span:last-child{font-size:11px;color:var(--quiet)}.muted{font-size:15px;color:var(--secondary)}.project-card h3{font-size:19px}.project-card p{font-size:14px}.project-card-footer,.project-card-footer button{font-size:12px}.panel-header>span:first-child{font-size:14px}.mini-tag{font-size:10px}.message-role{font-size:14px}.message-role time{font-size:12px}.message-body{font-size:16px;line-height:1.8;color:var(--secondary)}.message-actions button{font-size:13px;padding:8px 11px}.followup-form textarea{font-size:16px;min-height:80px;background:transparent;color:var(--ink)}.followup-form>div>span{font-size:11px;color:var(--quiet)}.generation-status{font-size:14px;line-height:1.6}.output-tab{font-size:13px;padding:0 10px}.output-tab>span:last-child:not(:first-child){font-size:11px}.preview-address,.output-footer{font-size:11px}.preview-badge{font-size:10px}.file-tree{width:175px}.file-tree button{font-size:13px;padding:11px 10px}.code-heading{font-size:13px}.code-content pre{font-size:14px}.checks-panel h3{font-size:19px}.check-row strong{font-size:15px}.check-row p,.checks-note{font-size:14px}.field-help{font-size:13px;line-height:1.8;color:var(--secondary)}.settings-dialog label:not(.checkbox-label){font-size:15px}.settings-dialog select{font-size:16px}.checkbox-label{font-size:14px;color:var(--secondary)}.checkbox-label small{font-size:13px}.dialog-note p{font-size:14px;color:var(--secondary)}.how-step h3{font-size:17px}.how-step p{font-size:15px;color:var(--secondary)}.empty-state h3{font-size:20px;color:var(--ink)}.empty-state p{font-size:15px;color:var(--secondary)}.toast{font-size:15px}.attachment{font-size:12px}.prompt-card,.idea-card,.project-card,.conversation-panel,.output-panel,.settings-dialog,.how-dialog{background:var(--surface);border-color:var(--border)}.secondary-button,.followup-form,.output-footer{background:var(--surface);border-color:var(--border);color:var(--secondary)}.message.user .message-body,.dialog-note,.generation-status,.preview-panel,.preview-address,.file-tree,.code-content{background:var(--surface-soft);border-color:var(--border)}.preview-address,.output-tab,.code-heading,.file-tree button,.output-footer,.breadcrumb,.icon-button{color:var(--secondary)}.breadcrumb strong{color:var(--ink)}.bottom-strip{border-color:var(--border)}.icon-button:hover,.secondary-button:hover{background:var(--surface-soft);color:var(--ink)}.code-content pre{color:var(--ink)}.output-tab.selected{color:var(--ink)}.file-tree button.active{background:var(--border);color:var(--ink)}.preview-content iframe{color-scheme:light}.message.error .message-body{background:#f9ece5;color:#a24731}.dialog-heading h2{color:var(--ink)}.dialog-note{margin-top:22px}.home-view{padding-bottom:20px}.workspace-columns{grid-template-columns:minmax(360px,.9fr) minmax(370px,1.1fr)}
.auth-view{padding:65px 25px;display:flex;justify-content:center}.auth-card{width:100%;max-width:510px;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:35px}.auth-card h1{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:20px 0}.auth-card form{display:flex;flex-direction:column;gap:10px}.auth-card label{font-size:15px;margin-top:9px;color:var(--ink)}.auth-card input:not([type=checkbox]),.admin-card input,.invite-result input{width:100%;min-width:0;padding:12px 13px;border:1px solid var(--border);border-radius:7px;background:var(--field);color:var(--ink);font-size:16px}.auth-card .primary-button{margin-top:15px;width:100%}.auth-card .checkbox-label{font-size:13px;line-height:1.7;align-items:flex-start}.auth-card .checkbox-label input{flex-shrink:0;margin-top:4px}.form-error{font-size:14px;color:var(--danger);line-height:1.7}.auth-card #passwordHint{font-size:12px;color:var(--quiet)}.admin-view{padding:42px;max-width:1500px;margin:auto}.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:24px 0}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px}.stat-card strong{display:block;font-size:28px;margin:9px 0;color:var(--ink)}.stat-card span{font-size:14px;color:var(--secondary)}.stat-card small{display:block;font-size:12px;color:var(--quiet);line-height:1.7}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:25px;margin-bottom:23px;min-width:0}.admin-card h2{font-size:21px;font-weight:550;margin:0 0 18px}.admin-card label{display:block;font-size:14px;margin:13px 0 9px}.admin-card input{margin-bottom:5px}.admin-card .primary-button{margin-top:10px}.admin-card .field-help{font-size:13px}.table-wrap{width:100%;overflow:auto}.admin-table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}.admin-table th{font-size:12px;letter-spacing:.3px;color:var(--quiet);font-weight:600;padding:13px 10px;white-space:nowrap}.admin-table td{border-top:1px solid var(--border);padding:14px 10px;color:var(--secondary);line-height:1.7;vertical-align:top}.admin-table td:first-child{color:var(--ink)}.admin-table input[type=number]{width:85px;padding:7px;font-size:14px;display:block}.admin-table button{font-size:12px;padding:7px 10px;min-height:34px;margin:3px}.table-actions{min-width:160px}.admin-warning{background:#fff0d6;color:#876021;border:1px solid #ead6af;padding:15px 20px;border-radius:9px;font-size:15px;line-height:1.8}.admin-warning.error{background:#fbece8;color:#a64c35}.invite-result{margin-top:20px}.invite-result input{font-size:13px}.invite-result .secondary-button{margin-top:7px}.wide-dialog{width:min(1000px,calc(100vw - 32px))}.file-picker{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.file-picker button{font-size:13px}.admin-code{font:14px/1.8 Consolas,monospace;color:var(--ink);background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;padding:18px;max-height:400px;overflow:auto}.admin-messages{white-space:pre-wrap;color:var(--secondary);font-size:15px;line-height:1.8;overflow-wrap:anywhere}.admin-messages article{padding:16px 0;border-top:1px solid var(--border)}.admin-messages strong{display:block;color:var(--ink);margin-bottom:7px}.usage-pill{font-size:12px;color:var(--quiet)}
html[data-theme=dark] .idea-icon{filter:saturate(.7) brightness(.85)}html[data-theme=dark] .home-view textarea::placeholder,html[data-theme=dark] .followup-form textarea::placeholder{color:#a3a3a3}html[data-theme=dark] .engine-status{border-color:var(--border);color:var(--secondary)}html[data-theme=dark] .brand-mark{color:white}html[data-theme=dark] .message.error .message-body{background:#472e27;color:#ffc1aa}html[data-theme=dark] .settings-dialog select{background:var(--field);color:var(--ink);border-color:var(--border)}html[data-theme=dark] .admin-warning{background:#433920;color:#edcf8a;border-color:#67542e}html[data-theme=dark] .admin-warning.error{background:#442b25;color:#ffc0a8}html[data-theme=dark] .message-actions button{background:var(--surface-soft);border-color:var(--border);color:var(--secondary)}html[data-theme=dark] .local-note{background:transparent}
@media(min-width:1500px){.hero-copy{font-size:18px}.idea-desc{font-size:15px}.idea-title{font-size:17px}}
@media(max-width:1150px){.workspace-columns{grid-template-columns:minmax(300px,.9fr) minmax(320px,1.1fr)}.admin-view{padding:30px 22px}.admin-stats{grid-template-columns:1fr 1fr}.output-tab{font-size:12px;padding:0 7px}}
@media(max-width:1000px){.workspace-columns{grid-template-columns:1fr;height:auto}.conversation-panel{height:600px}.output-panel{height:600px}.admin-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column}.hero-copy{font-size:16px}.idea-desc{font-size:14px}.idea-title{font-size:16px}.prompt-tools .model-caption{font-size:12px}.prompt-toolbar .primary-button{font-size:13px}}
@media(max-width:650px){.topbar{padding:0 14px}.breadcrumb{font-size:12px}.engine-status{font-size:11px}.hero-copy{font-size:16px}.prompt-card textarea{font-size:16px}.prompt-help,.prompt-help button{font-size:12px}.section-heading h2{font-size:16px}.section-heading>span{font-size:13px}.idea-card{padding:17px 12px;min-height:245px}.idea-title{font-size:15px}.idea-desc{font-size:13px}.idea-link{font-size:12px}.bottom-strip p{font-size:13px}.home-footer,.home-footer>span:last-child{font-size:11px}.prompt-tools .model-caption{display:none}.tool-divider{display:none}.prompt-tools .subtle-button span:last-child{display:inline}.subtle-button{font-size:12px}.prompt-toolbar .primary-button{font-size:12px;padding:10px}.auth-view{padding:30px 14px}.auth-card{padding:25px}.auth-card h1{font-size:28px}.admin-view{padding:30px 15px}.admin-stats{gap:10px}.stat-card{padding:15px}.stat-card strong{font-size:23px}.stat-card span{font-size:12px}.admin-card{padding:18px}.file-tree{width:135px}.file-tree button{font-size:12px}.code-content pre{font-size:13px}.output-tab{font-size:12px;padding:0 7px}.output-tab svg{width:13px;height:13px}.preview-address{font-size:10px}.preview-badge{display:none}.workspace-heading h1{font-size:21px}.dialog-actions button{font-size:14px}.followup-form>div>span{font-size:10px}}
.sidebar{overflow-y:auto}.recent-projects{flex:1 0 100px;min-height:100px}.sidebar-bottom{flex-shrink:0}.sidebarAccount{overflow-wrap:anywhere}
html[data-theme=dark] .mini-tag{background:var(--surface-soft);color:var(--secondary)}
@media(max-height:850px){.sidebar .local-note{display:none}.sidebar .sidebar-footer{display:none}.side-section{padding-top:20px}.sidebar-bottom .nav-item{padding-top:10px;padding-bottom:10px}}

/* Neutral black dark theme: no olive or green tint in surfaces and text. */
html[data-theme=dark] .sidebar{background:#000000;color:#c4c4c4;border-right:1px solid #242424}
html[data-theme=dark] .nav-item,html[data-theme=dark] .recent-item{color:#bdbdbd}
html[data-theme=dark] .nav-item:hover,html[data-theme=dark] .nav-item.active,html[data-theme=dark] .recent-item:hover,html[data-theme=dark] .recent-item.current{background:#181818;color:#fff}
html[data-theme=dark] .new-project{background:#f5f5f5;color:#171717}
html[data-theme=dark] .new-project kbd,html[data-theme=dark] .count,html[data-theme=dark] .side-section,html[data-theme=dark] .sidebar-empty,html[data-theme=dark] .recent-item svg,html[data-theme=dark] .local-note svg,html[data-theme=dark] .local-note small,html[data-theme=dark] .sidebar-footer small,html[data-theme=dark] .tiny-version{color:#a3a3a3}
html[data-theme=dark] .avatar{background:#262626;color:#e5e5e5}
html[data-theme=dark] .brand-sub,html[data-theme=dark] .beta{color:#bdbdbd}
html[data-theme=dark] .idea-icon{background:#222;color:#c4c4c4;filter:none}
html[data-theme=dark] .card-number,html[data-theme=dark] .strip-tag,html[data-theme=dark] .footer-cross,html[data-theme=dark] .stacked-symbol,html[data-theme=dark] .window-dots,html[data-theme=dark] .message-role time,html[data-theme=dark] .project-card p,html[data-theme=dark] .project-card-footer,html[data-theme=dark] .project-card-footer button{color:#a3a3a3}
html[data-theme=dark] .panel-header,html[data-theme=dark] .output-toolbar,html[data-theme=dark] .code-heading,html[data-theme=dark] .check-row,html[data-theme=dark] .how-step{border-color:#303030}
html[data-theme=dark] .toast{background:#242424;color:#f5f5f5}
html[data-theme=dark] .attachment{border-color:#3a3a3a;color:#c4c4c4}
html[data-theme=dark] .attachment button,html[data-theme=dark] .settings-link,html[data-theme=dark] .check-row svg{color:#b5b5b5}
html[data-theme=dark] .status-dot,html[data-theme=dark] .engine-status.connected .status-dot,html[data-theme=dark] .connection-dot.connected,html[data-theme=dark] .output-footer .status-dot{background:#b5b5b5}
html[data-theme=dark] .spinner{border-color:#3a3a3a;border-top-color:var(--accent)}
.model-picker{display:inline-flex;align-items:center;gap:6px;color:var(--secondary)}.model-picker svg{width:16px;height:16px}.model-picker select,.followup-modelbar select{font:600 14px 'Studio Sans',Arial,sans-serif;min-height:38px;background:var(--surface-soft);color:var(--ink);border:1px solid var(--border);border-radius:7px;padding:7px 26px 7px 10px;cursor:pointer;max-width:100%}.model-note{font-size:13px;line-height:1.7;color:var(--secondary);margin:12px 0 0}.followup-form>.followup-modelbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px}.followup-modelbar label{font-size:13px;color:var(--secondary)}.followup-form>.model-note{font-size:12px;margin:3px 0 11px}.followup-form textarea{min-height:65px}.model-picker select:disabled,.followup-modelbar select:disabled{opacity:.6;cursor:wait}
@media(max-width:800px){.prompt-toolbar{flex-wrap:wrap}.prompt-tools{flex-wrap:wrap}.model-picker select{font-size:13px}.prompt-toolbar>.primary-button{margin-left:auto}}
@media(max-width:650px){.prompt-tools{width:100%;justify-content:space-between}.model-picker{display:inline-flex}.model-note{font-size:12px}.followup-modelbar label{font-size:12px}.followup-modelbar select{font-size:13px}.followup-form>div:not(.followup-modelbar)>span{max-width:160px;line-height:1.5}}
