/* Theme system for Hackathon Idea Atlas */

/* Layout safety: keep header fixed and restore a dedicated vertical content scroller. */
.main{height:100vh;min-height:0;overflow:hidden}.content{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}.sidebar{height:100vh;min-height:0}.nav{min-height:0}
.content::-webkit-scrollbar,.nav::-webkit-scrollbar{width:11px}.content::-webkit-scrollbar-track,.nav::-webkit-scrollbar-track{background:var(--bg)}.content::-webkit-scrollbar-thumb,.nav::-webkit-scrollbar-thumb{background:var(--scroll-thumb,var(--muted));border:3px solid var(--bg);border-radius:999px}.content::-webkit-scrollbar-thumb:hover,.nav::-webkit-scrollbar-thumb:hover{background:var(--accent)}

/* Toolbar */
.theme-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.toolbar-menu{position:relative}.toolbar-button{border:1px solid var(--button-border,var(--line));background:var(--button-bg,var(--panel));color:var(--button-text,var(--text));padding:8px 11px;border-radius:9px;cursor:pointer;font-weight:700;font-size:12px;display:flex;align-items:center;gap:7px;min-height:36px}.toolbar-button:hover,.toolbar-button[aria-expanded="true"]{background:var(--button-hover-bg,var(--panel-2));border-color:var(--button-active-bg,var(--accent));color:var(--button-hover-text,var(--text))}.toolbar-dropdown{position:absolute;right:0;top:calc(100% + 8px);z-index:50;min-width:205px;padding:7px;background:var(--dropdown-bg,var(--panel));border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 45px rgba(0,0,0,.28);display:none}.toolbar-menu.open .toolbar-dropdown{display:block}.toolbar-option{display:flex;align-items:center;width:100%;border:1px solid transparent;background:transparent;color:var(--dropdown-text,var(--text));padding:9px 10px;border-radius:8px;cursor:pointer;text-align:left;font-size:13px;font-weight:650}.toolbar-option:hover{background:var(--button-hover-bg,var(--panel-2));color:var(--button-hover-text,var(--text))}.toolbar-option.active{background:var(--button-active-bg,var(--accent));color:var(--button-active-text,#07101d);border-color:var(--button-active-bg,var(--accent))}.theme-swatch{width:12px;height:12px;border-radius:50%;border:1px solid currentColor;margin-right:8px;display:inline-block;flex:0 0 auto}.toolbar-label,.toolbar-label-short{display:none}

/* Sidebar navigation: main groups are never highlighted as selected. */
.group-button{color:var(--nav-text,var(--text));background:transparent!important}.group-button:hover{background:var(--nav-hover-bg,var(--panel-2))!important;color:var(--nav-hover-text,var(--text))}.group-button.active{background:transparent!important;color:var(--nav-text,var(--text))!important}

/* Idea selection uses only a 3px bottom indicator. */
.idea-link{position:relative;color:var(--nav-muted,var(--muted));background:transparent!important;border-radius:0!important;border-bottom:3px solid transparent!important;padding-bottom:7px!important}.idea-link:hover{background:transparent!important;color:var(--nav-hover-text,var(--text))}.idea-link.active{background:transparent!important;color:var(--nav-text,var(--text))!important;font-weight:750;border-bottom-color:var(--accent)!important}
.menu-toggle{color:var(--text)}
.card,.req,.team-card,.arch-node,.flow-node,.docker-note{color:var(--text)}

/* Dark */
body[data-theme="dark"]{--bg:#0b1220;--panel:#111a2b;--panel-2:#1a2941;--text:#f5f8ff;--muted:#b5c3d8;--line:#33445f;--accent:#82b1ff;--accent-2:#91ead1;--chip:#1b2b46;--scroll-thumb:#65758e;--button-bg:#18263c;--button-text:#f7faff;--button-hover-bg:#243755;--button-hover-text:#ffffff;--button-active-bg:#82b1ff;--button-active-text:#071321;--dropdown-bg:#111a2b;--dropdown-text:#f5f8ff;--nav-text:#f5f8ff;--nav-muted:#c0cbe0;--nav-hover-bg:#20324f;--nav-hover-text:#ffffff;--nav-active-bg:#82b1ff;--nav-active-text:#071321}

/* Light */
body[data-theme="light"]{--bg:#f4f6f9;--panel:#ffffff;--panel-2:#e8edf5;--text:#142033;--muted:#526176;--line:#cbd5e1;--accent:#1d4ed8;--accent-2:#047857;--chip:#e8f0ff;--scroll-thumb:#8390a4;--button-bg:#ffffff;--button-text:#142033;--button-hover-bg:#e6edfa;--button-hover-text:#102a5c;--button-active-bg:#1d4ed8;--button-active-text:#ffffff;--dropdown-bg:#ffffff;--dropdown-text:#142033;--nav-text:#172033;--nav-muted:#435168;--nav-hover-bg:#e6edf7;--nav-hover-text:#172033;--nav-active-bg:#1d4ed8;--nav-active-text:#ffffff;background:var(--bg);color:var(--text)}
body[data-theme="light"] .sidebar{background:linear-gradient(180deg,#fff,#f1f4f8)}body[data-theme="light"] .topbar{background:rgba(255,255,255,.96)}body[data-theme="light"] .hero{background:linear-gradient(135deg,#fff,#edf4ff)}body[data-theme="light"] .search-wrap input{background:#fff;color:var(--text);border-color:#bfcbd9}body[data-theme="light"] .section p,body[data-theme="light"] .req,body[data-theme="light"] .detail-list,body[data-theme="light"] .section-intro{color:#243247}body[data-theme="light"] .standout{background:linear-gradient(135deg,#e8f6f2,#eaf2ff);color:#173249;border-color:#93b8b0}body[data-theme="light"] .chip{color:#17345c}

/* Blue */
body[data-theme="blue"]{--bg:#07172b;--panel:#0c2541;--panel-2:#153d62;--text:#f4faff;--muted:#b7d2e6;--line:#2b618c;--accent:#64ccff;--accent-2:#9ee6ff;--chip:#103554;--scroll-thumb:#5e91b4;--button-bg:#103354;--button-text:#f4faff;--button-hover-bg:#194d78;--button-hover-text:#ffffff;--button-active-bg:#64ccff;--button-active-text:#042039;--dropdown-bg:#0c2541;--dropdown-text:#f4faff;--nav-text:#f4faff;--nav-muted:#c2daea;--nav-hover-bg:#17466e;--nav-hover-text:#ffffff;--nav-active-bg:#64ccff;--nav-active-text:#042039}body[data-theme="blue"] .sidebar{background:linear-gradient(180deg,#09233e,#06182b)}body[data-theme="blue"] .hero{background:linear-gradient(135deg,#0d3154,#0b223c)}

/* Green */
body[data-theme="green"]{--bg:#081813;--panel:#10271f;--panel-2:#1a4032;--text:#f3fff8;--muted:#b2d5c3;--line:#356750;--accent:#6ce7aa;--accent-2:#bdf8d8;--chip:#16382b;--scroll-thumb:#668f7b;--button-bg:#17382d;--button-text:#f3fff8;--button-hover-bg:#22513f;--button-hover-text:#ffffff;--button-active-bg:#6ce7aa;--button-active-text:#062117;--dropdown-bg:#10271f;--dropdown-text:#f3fff8;--nav-text:#f3fff8;--nav-muted:#bddbcc;--nav-hover-bg:#1c4938;--nav-hover-text:#ffffff;--nav-active-bg:#6ce7aa;--nav-active-text:#062117}body[data-theme="green"] .sidebar{background:linear-gradient(180deg,#10271f,#071813)}body[data-theme="green"] .hero{background:linear-gradient(135deg,#153d2e,#0d241c)}body[data-theme="green"] .standout{background:linear-gradient(135deg,#173d30,#17343c);border-color:#4b846d}

/* Modern */
body[data-theme="modern"]{--bg:#f7f5ff;--panel:#ffffff;--panel-2:#eee9f8;--text:#211832;--muted:#645978;--line:#d7cde7;--accent:#6d28d9;--accent-2:#be185d;--chip:#eee6ff;--scroll-thumb:#9182a9;--button-bg:#ffffff;--button-text:#251a37;--button-hover-bg:#eee7fa;--button-hover-text:#32165e;--button-active-bg:#6d28d9;--button-active-text:#ffffff;--dropdown-bg:#ffffff;--dropdown-text:#251a37;--nav-text:#251a37;--nav-muted:#574b6d;--nav-hover-bg:#eee7fa;--nav-hover-text:#2b164b;--nav-active-bg:#6d28d9;--nav-active-text:#ffffff;background:radial-gradient(circle at 80% 0,#f3e8ff 0,transparent 32%),var(--bg);color:var(--text)}body[data-theme="modern"] .sidebar{background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}body[data-theme="modern"] .topbar{background:rgba(255,255,255,.88)}body[data-theme="modern"] .hero{background:linear-gradient(135deg,#fff,#f4efff);box-shadow:0 16px 50px rgba(87,59,128,.09)}body[data-theme="modern"] .card{box-shadow:0 8px 25px rgba(64,47,87,.06)}body[data-theme="modern"] .section p,body[data-theme="modern"] .req,body[data-theme="modern"] .detail-list,body[data-theme="modern"] .section-intro{color:#352947}body[data-theme="modern"] .standout{background:linear-gradient(135deg,#f3eaff,#ffedf6);color:#38224f;border-color:#cbb2e5}body[data-theme="modern"] .chip{color:#351c61}

/* Technical */
body[data-theme="technical"]{--bg:#070b0e;--panel:#0d1418;--panel-2:#15252b;--text:#effff9;--muted:#a8c8bf;--line:#2d504b;--accent:#20e6ad;--accent-2:#70f4ff;--chip:#0d2823;--scroll-thumb:#527d73;--button-bg:#10201f;--button-text:#effff9;--button-hover-bg:#173431;--button-hover-text:#ffffff;--button-active-bg:#20e6ad;--button-active-text:#04140f;--dropdown-bg:#0d1418;--dropdown-text:#effff9;--nav-text:#effff9;--nav-muted:#b4d0c8;--nav-hover-bg:#16302e;--nav-hover-text:#ffffff;--nav-active-bg:#20e6ad;--nav-active-text:#04140f;font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}body[data-theme="technical"] .sidebar{background:#090f12}body[data-theme="technical"] .topbar{background:rgba(7,11,14,.97)}body[data-theme="technical"] .hero{background:linear-gradient(135deg,#0d1d1b,#0a1116);border-radius:5px}body[data-theme="technical"] .card,body[data-theme="technical"] .req,body[data-theme="technical"] .standout,body[data-theme="technical"] .toolbar-button,body[data-theme="technical"] .toolbar-dropdown{border-radius:3px}body[data-theme="technical"] .brand-mark{border-radius:3px;background:var(--accent);color:#06120e}body[data-theme="technical"] .kicker:before{content:"> ";color:var(--accent)}

@media(max-width:900px){.main{height:100vh}.content{padding-bottom:48px}}
@media(max-width:700px){.theme-actions{gap:6px}.toolbar-button{padding:7px 9px}.toolbar-dropdown{min-width:180px}.topbar{padding:0 12px}}
