  :root{
    /* Fluid container width: hugs content on small screens, scales up
       with the viewport on large ones, and caps so lines don't get
       absurdly long on ultrawide/4K monitors. */
    --container-max: min(1680px, 94vw);
    --bg:#0B0E13;
    --panel:#131720;
    --panel-hover:#171C27;
    --border:#232936;
    --border-soft:#1B212C;
    --text:#E7E9EE;
    --muted:#8890A0;
    --muted-2:#5C6373;
    --amber:#FFB020;
    --cmd:#6C8EBF;
    --ps:#5391FE;
    --wsl:#C2679E;
    --unix:#4FA187;
    --setup:#D9A441;
    --apps:#5FB85A;
    --reg:#8E6FCB;
    --outlook:#2E7FC2;
    --faq:#7C9DFF;
    --git:#F0652F;
    --docker:#3B9FD9;
    --troubleshoot:#E0574F;
    --cleanup:#2BB3A3;
    --files:#6C8EBF;
    --procs:#CC7A3D;
    --netops:#5391FE;
    --search:#4FA187;
    --dataproc:#D65DB1;
    --scripting:#3FB6C4;
    --useradmin:#A0616A;
    --sysdiag:#6B8F71;
    --header-bg:rgba(11,14,19,0.88);
    --example-bg:rgba(255,255,255,0.02);
    --example-text:#B9C0CE;
    --shadow:rgba(0,0,0,0.6);
  }
  html[data-theme="light"]{
    --bg:#F3F5F8;
    --panel:#FFFFFF;
    --panel-hover:#EDF0F5;
    --border:#C7CFDA;
    --border-soft:#DEE3EB;
    --text:#1A2029;
    --muted:#5B6472;
    --muted-2:#6C7687;
    --header-bg:rgba(243,245,248,0.88);
    --example-bg:rgba(20,30,45,0.045);
    --example-text:#3C4452;
    --shadow:rgba(30,40,60,0.14);
    /* Accent hues are tuned for a dark background by default; on white/near-white
       panels the same hex values read too pale (several under 3:1 against white),
       so darken/saturate each one here to clear WCAG AA (4.5:1) for text use
       (section counts, nav labels, "copied" state) while keeping the dot colors
       clearly distinguishable from each other. */
    --amber:#B87500;
    --cmd:#4977BA;
    --ps:#196DFF;
    --wsl:#C14992;
    --unix:#39836C;
    --setup:#9D6E15;
    --apps:#3E8A2E;
    --reg:#8661D0;
    --outlook:#217AC4;
    --faq:#3769FF;
    --git:#DA3D01;
    --docker:#177DB8;
    --troubleshoot:#C6362E;
    --cleanup:#187E72;
    --files:#4977BA;
    --procs:#B15C1E;
    --netops:#196DFF;
    --search:#39836C;
    --dataproc:#B23F91;
    --scripting:#1E8A96;
    --useradmin:#8A4550;
    --sysdiag:#4C6B52;
  }
  html{ transition:background-color .2s ease; }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    transition:background-color .2s ease, color .2s ease;
    background:
      radial-gradient(1200px 600px at 15% -10%, rgba(83,145,254,0.06), transparent),
      radial-gradient(1000px 500px at 100% 0%, rgba(255,176,32,0.05), transparent),
      var(--bg);
    color:var(--text);
    font-family:'IBM Plex Sans', system-ui, sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  ::selection{ background: rgba(255,176,32,0.25); }
  a{color:inherit;}
  code, .mono{ font-family:'JetBrains Mono', monospace; }
  .display{ font-family:'Space Grotesk', sans-serif; }

  /* ===== Header ===== */
  header{
    position:sticky; top:0; z-index:50;
    background:var(--header-bg);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border-soft);
  }
  .header-inner{
    max-width:var(--container-max); margin:0 auto; padding:14px 24px;
    display:flex; align-items:center; gap:24px;
  }
  .logo{
    font-family:'Space Grotesk', sans-serif;
    font-weight:700; font-size:24px; letter-spacing:-0.02em;
    display:flex; align-items:center; gap:8px; white-space:nowrap;
  }
  .logo .bracket{ color:var(--amber); }
  .search-wrap{ position:relative; flex:1; max-width:560px; }
  .search-wrap input{
    width:100%; background:var(--panel); border:1px solid var(--border);
    color:var(--text); padding:10px 14px 10px 38px; border-radius:8px;
    font-family:'JetBrains Mono', monospace; font-size:13.5px;
    outline:none; transition:border-color .15s, box-shadow .15s;
  }
  .search-wrap input:focus{
    border-color:var(--amber);
    box-shadow:0 0 0 3px rgba(255,176,32,0.12);
  }
  .search-wrap svg{
    position:absolute; left:12px; top:50%; transform:translateY(-50%);
    width:15px; height:15px; color:var(--muted-2); pointer-events:none;
  }
  .result-count{
    font-family:'JetBrains Mono', monospace; font-size:12px; color:var(--muted-2);
    white-space:nowrap;
  }
  #themeToggle{
    flex-shrink:0; width:36px; height:36px; border-radius:8px;
    background:var(--panel); border:1px solid var(--border); color:var(--muted);
    display:flex; align-items:center; justify-content:center; cursor:pointer;
    transition:color .12s, border-color .12s, background .12s;
  }
  #themeToggle:hover{ color:var(--amber); border-color:var(--muted-2); }
  #themeToggle svg{ width:16px; height:16px; }
  #themeToggle .icon-moon{ display:none; }
  html[data-theme="light"] #themeToggle .icon-sun{ display:none; }
  html[data-theme="light"] #themeToggle .icon-moon{ display:block; }

  /* ===== Hero ===== */
  .hero{
    max-width:var(--container-max); margin:0 auto; padding:56px 24px 40px;
    display:grid; grid-template-columns: 1.1fr 0.9fr; gap:48px; align-items:center;
  }
  .hero h1{
    font-family:'Space Grotesk', sans-serif; font-weight:600;
    font-size:clamp(28px,4vw,44px); line-height:1.15; letter-spacing:-0.02em;
    margin:0 0 14px;
  }
  .hero h1 .accent{ color:var(--amber); }
  .hero p{ color:var(--muted); font-size:15px; line-height:1.6; max-width:46ch; margin:0 0 20px;}
  .hero-lines{ display:flex; flex-direction:column; gap:6px; max-width:48ch; }
  .hero-lines p{ font-family:'JetBrains Mono', monospace; font-size:13px; color:var(--muted); margin:0; line-height:1.5; }
  .hero-lines p strong{ color:var(--text); font-weight:600; }

  .terminal{
    background:var(--panel); border:1px solid var(--border); border-radius:10px;
    overflow:hidden; box-shadow:0 20px 60px -20px var(--shadow);
  }
  .terminal-bar{
    display:flex; align-items:center; gap:6px; padding:10px 12px;
    border-bottom:1px solid var(--border-soft); background:rgba(255,255,255,0.015);
  }
  .terminal-bar span{ width:10px; height:10px; border-radius:50%; display:inline-block; }
  .terminal-bar span:nth-child(1){ background:#ff5f57;}
  .terminal-bar span:nth-child(2){ background:#febc2e;}
  .terminal-bar span:nth-child(3){ background:#28c840;}
  .terminal-body{
    padding:20px 18px; min-height:150px; font-family:'JetBrains Mono', monospace; font-size:13.5px;
    line-height:1.9;
  }
  .prompt-line{ display:flex; gap:8px; }
  .prompt-line .p{ white-space:nowrap; }
  .prompt-line .c{ color:var(--text); }
  .cursor{ display:inline-block; width:7px; height:15px; background:var(--amber); margin-left:2px; vertical-align:middle; animation:blink 1s step-end infinite; }
  @keyframes blink{ 50%{ opacity:0; } }

  /* ===== Layout ===== */
  .layout{ max-width:var(--container-max); margin:0 auto; padding:8px 24px 80px; display:flex; align-items:flex-start; gap:36px; }
  @media (max-width: 880px){ .layout{ flex-direction:column; } nav.sidebar{ width:100% !important; position:static; } .hero{ grid-template-columns:1fr; } }

  nav.sidebar{
    position:sticky; top:78px; align-self:start; flex-shrink:0;
    display:flex; flex-direction:column; gap:4px;
    width:220px; overflow:hidden; transition:width .22s ease;
  }
  nav.sidebar.collapsed{ width:52px; }
  .nav-label{
    font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted-2);
    margin:6px 0 6px 2px; padding:8px; display:flex; align-items:center; justify-content:space-between; gap:8px;
    cursor:pointer; user-select:none; background:transparent; border:none; width:100%;
    font-family:'IBM Plex Sans', sans-serif; border-radius:6px; transition:color .12s, background .12s;
  }
  .nav-label:hover{ color:var(--muted); background:var(--panel-hover); }
  .nav-label .label-text{ white-space:nowrap; overflow:hidden; }
  .nav-label svg{ width:12px; height:12px; transition:transform .22s ease; flex-shrink:0; }
  nav.sidebar.collapsed .nav-label{ justify-content:center; }
  nav.sidebar.collapsed .nav-label .label-text{ display:none; }
  nav.sidebar.collapsed .nav-label svg{ transform:rotate(180deg); }
  .nav-list{
    display:flex; flex-direction:column; gap:4px;
    max-height:calc(100vh - 150px); overflow-y:auto; overflow-x:hidden;
    scrollbar-width:none; -ms-overflow-style:none;
  }
  .nav-list::-webkit-scrollbar{ display:none; }
  .nav-btn{
    display:flex; align-items:flex-start; justify-content:space-between; gap:10px;
    padding:9px 10px; border-radius:7px; border:1px solid transparent;
    background:transparent; color:var(--muted); cursor:pointer; text-align:left;
    font-family:'IBM Plex Sans', sans-serif; font-size:13.5px; font-weight:500;
    transition:background .12s, color .12s;
  }
  .nav-btn:hover{ background:var(--panel-hover); color:var(--text); }
  .nav-btn.active{ background:var(--panel); color:var(--text); border-color:var(--border); }
  .nav-btn .nav-btn-main{ display:flex; align-items:flex-start; gap:8px; min-width:0; }
  .nav-btn .dot{ width:8px; height:8px; border-radius:50%; flex-shrink:0; margin-top:5px; }
  .nav-btn .label-text{ white-space:normal; overflow-wrap:break-word; line-height:1.3; }
  .nav-btn .count{ font-family:'JetBrains Mono', monospace; font-size:11px; color:var(--muted-2); flex-shrink:0; margin-top:1px; }
  .nav-btn.active .count{ color:var(--muted); }
  nav.sidebar.collapsed .nav-btn{ justify-content:center; padding:9px; }
  nav.sidebar.collapsed .nav-btn .label-text,
  nav.sidebar.collapsed .nav-btn .count{ display:none; }

  /* ===== Sections / Cards ===== */
  .section{ margin-bottom:44px; scroll-margin-top:80px; }
  .section-head{ display:flex; align-items:baseline; gap:12px; margin-bottom:4px; }
  .section-head h2{ font-family:'Space Grotesk', sans-serif; font-size:22px; font-weight:600; margin:0; letter-spacing:-0.01em; }
  .section-head .tag{
    font-family:'JetBrains Mono', monospace; font-size:11px; padding:2px 8px; border-radius:20px;
    border:1px solid currentColor;
  }
  .section-sub{ color:var(--muted); font-size:13.5px; margin:0 0 20px; max-width:70ch; }

  .tier-label{
    font-family:'JetBrains Mono', monospace; font-size:11px; text-transform:uppercase; letter-spacing:.08em;
    color:var(--muted-2); margin:22px 0 10px; display:flex; align-items:center; gap:8px;
  }
  .tier-label::after{ content:''; flex:1; height:1px; background:var(--border-soft); }

  .cards{ display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:12px; align-items:start; }
  .card{
    background:var(--panel); border:1px solid var(--border); border-radius:9px;
    padding:14px 14px 12px; border-left:3px solid var(--card-accent, var(--border));
    transition:transform .12s, border-color .12s;
  }
  .card:hover{ border-color:var(--muted-2); }
  .card-top{ margin-bottom:6px; display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
  .card .cmd{ font-family:'JetBrains Mono', monospace; font-size:13.5px; font-weight:600; color:var(--text); word-break:break-word; }
  .shell-tag{
    flex-shrink:0; font-family:'JetBrains Mono', monospace; font-size:9.5px; font-weight:600;
    text-transform:uppercase; letter-spacing:.05em; padding:2px 6px; border-radius:5px;
    color:var(--shell-color); background:color-mix(in srgb, var(--shell-color) 14%, transparent);
    border:1px solid color-mix(in srgb, var(--shell-color) 35%, transparent);
    white-space:nowrap;
  }
  .copy-btn{
    flex-shrink:0; background:transparent; border:1px solid var(--border); color:var(--muted);
    border-radius:6px; padding:4px 7px; cursor:pointer; font-size:10.5px; font-family:'JetBrains Mono', monospace;
    transition:all .12s;
  }
  .copy-btn:hover{ color:var(--text); border-color:var(--muted-2); }
  .copy-btn.copied{ color:var(--unix); border-color:var(--unix); }
  .copy-btn-inline{
    position:absolute; top:6px; right:6px; z-index:1;
    background:var(--panel); border:1px solid var(--border); color:var(--muted);
    border-radius:5px; padding:2px 6px; cursor:pointer; font-size:9.5px; font-family:'JetBrains Mono', monospace;
    line-height:1.6; opacity:.75; transition:all .12s;
  }
  .copy-btn-inline:hover{ opacity:1; color:var(--text); border-color:var(--muted-2); }
  .copy-btn-inline.copied{ opacity:1; color:var(--unix); border-color:var(--unix); }
  .card .desc{ font-size:13px; color:var(--muted); line-height:1.5; margin:0 0 8px; }
  .card .usecase{ font-size:12px; color:var(--muted-2); line-height:1.5; margin:0 0 8px; font-style:italic; }
  .card .usecase b{ font-style:normal; font-weight:600; color:var(--muted); }

  .faq-list{ display:flex; flex-direction:column; gap:8px; margin-bottom:18px; }
  .faq-item{
    background:var(--panel); border:1px solid var(--border); border-radius:8px;
    padding:12px 14px; transition:border-color .12s;
  }
  .faq-item:hover{ border-color:var(--muted-2); }
  .faq-item summary{
    font-family:'Space Grotesk', sans-serif; font-size:14.5px; font-weight:600; color:var(--text);
    cursor:pointer; list-style:none; display:flex; align-items:center; gap:8px;
  }
  .faq-item summary::-webkit-details-marker{ display:none; }
  .faq-item summary::before{
    content:'+'; color:var(--faq); font-weight:700; font-size:16px; width:16px; flex-shrink:0;
  }
  .faq-item[open] summary::before{ content:'−'; }
  .faq-item p{ font-size:13px; color:var(--muted); line-height:1.6; margin:10px 0 0 24px; }
  .card .example{
    position:relative;
    background:var(--example-bg); border:1px solid var(--border-soft); border-radius:6px;
    padding:8px 34px 8px 10px; font-family:'JetBrains Mono', monospace; font-size:12px; color:var(--example-text);
    white-space:pre-wrap; word-break:break-word; line-height:1.5;
  }
  .card .example .cm{ color:var(--muted-2); }
  .card .example .example-link{ color:var(--amber); text-decoration:underline; text-decoration-color:transparent; transition:text-decoration-color .12s; }
  .card .example .example-link:hover{ text-decoration-color:var(--amber); }

  .nav-divider{ height:1px; background:var(--border-soft); margin:8px 4px; }
  nav.sidebar.collapsed .nav-divider{ margin:8px 8px; }

  /* ===== Command generator ===== */
  .gen-wrap{ max-width:920px; }
  .gen-intro h2{ font-family:'Space Grotesk', sans-serif; font-size:22px; font-weight:600; margin:0 0 4px; letter-spacing:-0.01em; }
  .gen-layout{ display:grid; grid-template-columns:220px 1fr; gap:20px; margin-top:20px; align-items:start; }
  @media (max-width: 720px){ .gen-layout{ grid-template-columns:1fr; } }

  .gen-tasks{ display:flex; flex-direction:column; gap:2px; }
  .gen-cat-label{
    font-family:'JetBrains Mono', monospace; font-size:10.5px; text-transform:uppercase; letter-spacing:.08em;
    color:var(--muted-2); margin:14px 0 4px; }
  .gen-cat-label:first-child{ margin-top:0; }
  .gen-task-btn{
    text-align:left; background:transparent; border:1px solid transparent; color:var(--muted);
    padding:7px 9px; border-radius:7px; font-size:13px; cursor:pointer; font-family:'IBM Plex Sans', sans-serif;
    transition:all .12s;
  }
  .gen-task-btn:hover{ background:var(--panel-hover); color:var(--text); }
  .gen-task-btn.active{ background:var(--panel); border-color:var(--border); color:var(--text); font-weight:500; }

  .gen-mode-toggle{ display:flex; gap:8px; margin-top:14px; flex-wrap:wrap; }
  .gen-mode-btn{
    background:transparent; border:1px solid var(--border); color:var(--muted);
    padding:7px 14px; border-radius:8px; font-size:12.5px; cursor:pointer; font-family:'IBM Plex Sans', sans-serif;
    transition:all .12s; display:flex; align-items:center; gap:6px;
  }
  .gen-mode-btn:hover{ color:var(--text); border-color:var(--muted-2); }
  .gen-mode-btn.active{ background:var(--panel); border-color:var(--amber); color:var(--text); font-weight:600; }
  .gen-mode-count{ font-family:'JetBrains Mono', monospace; font-size:10.5px; color:var(--muted-2); }
  .gen-mode-btn.active .gen-mode-count{ color:var(--amber); }

  .gen-tasks-browse{ display:flex; flex-direction:column; gap:8px; }
  .gen-browse-search{
    width:100%; background:var(--bg); border:1px solid var(--border); color:var(--text);
    padding:8px 10px; border-radius:7px; font-family:'JetBrains Mono', monospace; font-size:12.5px; outline:none;
  }
  .gen-browse-search:focus{ border-color:var(--amber); }
  .gen-browse-list{ display:flex; flex-direction:column; gap:2px; max-height:560px; overflow-y:auto; padding-right:4px; }
  .gen-browse-empty{ font-size:12px; color:var(--muted-2); padding:10px 4px; }
  .gen-task-shell-dot{ display:inline-block; width:6px; height:6px; border-radius:50%; margin-right:6px; flex-shrink:0; }

  .gen-browse-selected{ margin-bottom:14px; }
  .gen-browse-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:8px; }
  .gen-browse-cmd{ font-family:'JetBrains Mono', monospace; font-size:14.5px; font-weight:600; color:var(--text); word-break:break-word; }
  .gen-browse-selected .desc{ font-size:13px; color:var(--muted); line-height:1.5; margin:0 0 8px; }
  .gen-browse-selected .usecase{ font-size:12px; color:var(--muted-2); line-height:1.5; margin:0 0 8px; font-style:italic; }
  .gen-browse-noparams{ font-size:12.5px; color:var(--muted-2); padding:10px; border:1px dashed var(--border); border-radius:8px; margin-bottom:14px; }
  .gen-browse-placeholder{ font-size:13px; color:var(--muted-2); padding:30px 10px; text-align:center; }

  .gen-build{
    background:var(--panel); border:1px solid var(--border); border-radius:10px;
    padding:16px; border-top:3px solid var(--card-accent, var(--border));
  }
  .gen-shell-tabs{ display:flex; gap:6px; margin-bottom:16px; flex-wrap:wrap; }
  .gen-shell-tab{
    background:transparent; border:1px solid var(--border); color:var(--muted);
    padding:6px 12px; border-radius:20px; font-size:12.5px; cursor:pointer; font-family:'IBM Plex Sans', sans-serif;
    transition:all .12s;
  }
  .gen-shell-tab:hover{ color:var(--text); border-color:var(--muted-2); }
  .gen-shell-tab.active{ background:var(--tab-accent); border-color:var(--tab-accent); color:#0B0E13; font-weight:600; }

  .gen-fields{ display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:12px; margin-bottom:16px; }
  .gen-field{ display:flex; flex-direction:column; gap:5px; }
  .gen-field-label{ font-size:11.5px; color:var(--muted); }
  .gen-field-input{
    background:var(--bg); border:1px solid var(--border); color:var(--text);
    border-radius:7px; padding:8px 10px; font-family:'JetBrains Mono', monospace; font-size:13px;
  }
  .gen-field-input:focus{ outline:none; border-color:var(--amber); }
  .gen-field-select{ cursor:pointer; }

  .gen-drive-picks{ display:flex; flex-wrap:wrap; gap:5px; margin-top:2px; }
  .gen-drive-chip{
    background:transparent; border:1px solid var(--border); color:var(--muted-2);
    border-radius:6px; padding:3px 8px; cursor:pointer; font-size:11px; font-family:'JetBrains Mono', monospace;
    transition:all .12s;
  }
  .gen-drive-chip:hover{ color:var(--text); border-color:var(--muted-2); }
  .gen-drive-chip.active{ color:#0B0E13; background:var(--amber); border-color:var(--amber); font-weight:600; }
  .gen-drive-chip.all-drives{ border-style:dashed; }

  .gen-output-wrap{ margin-top:4px; }
  .gen-output-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:6px; }
  .gen-output-btns{ display:flex; gap:6px; }
  .gen-history-select{ margin-right:2px; align-self:flex-start; margin-top:2px; cursor:pointer; }
  .gen-history-combo{ display:flex; align-items:center; gap:8px; }
  .gen-history-combo-count{ font-size:11px; color:var(--muted-2); }
  .gen-output-label{ font-size:11.5px; color:var(--muted); }
  .gen-output{ font-size:13px; }

  /* ---- combine/merge (Command generator → Merge commands mode) ---- */
  .combine-pick{ display:flex; align-items:center; gap:7px; cursor:pointer; }
  .combine-pick-check{ flex-shrink:0; cursor:pointer; accent-color:var(--amber); }
  .combine-build{ display:flex; flex-direction:column; gap:12px; max-height:640px; }
  .combine-build-header{ display:flex; align-items:center; justify-content:space-between; }
  .combine-build-title{ font-size:13px; font-weight:600; color:var(--text); }
  .combine-build-list{ display:flex; flex-direction:column; gap:10px; overflow-y:auto; padding-right:4px; }
  .combine-build-item{ display:flex; gap:8px; border:1px solid var(--border); border-radius:9px; padding:10px; background:var(--bg); }
  .combine-build-order{ display:flex; flex-direction:column; gap:2px; flex-shrink:0; }
  .combine-order-btn{
    background:transparent; border:1px solid var(--border); color:var(--muted-2); border-radius:5px;
    width:22px; height:20px; font-size:10px; cursor:pointer; line-height:1; transition:all .12s;
  }
  .combine-order-btn:hover:not(:disabled){ color:var(--text); border-color:var(--muted-2); }
  .combine-order-btn:disabled{ opacity:.3; cursor:default; }
  .combine-build-main{ flex:1; min-width:0; }
  .combine-build-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:8px; margin-bottom:6px; }
  .combine-build-tags{ display:flex; align-items:center; gap:6px; flex-shrink:0; }
  .combine-build-cmd{ font-family:'JetBrains Mono', monospace; font-size:13px; font-weight:600; color:var(--text); word-break:break-word; }
  .combine-source-tag{
    flex-shrink:0; font-family:'JetBrains Mono', monospace; font-size:9.5px; font-weight:600;
    text-transform:uppercase; letter-spacing:.05em; padding:2px 6px; border-radius:5px;
    color:var(--muted); background:var(--panel); border:1px solid var(--border); white-space:nowrap;
  }
  .combine-token-row{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
  .combine-token-input{ flex:1; min-width:120px; padding:6px 8px; font-size:12px; }
  .combine-build-resolved{ font-size:12px; margin:0; }
  .combine-remove-btn{
    background:transparent; border:1px solid var(--border); color:var(--muted-2); border-radius:6px;
    width:24px; height:24px; flex-shrink:0; cursor:pointer; font-size:12px; align-self:flex-start; transition:all .12s;
  }
  .combine-remove-btn:hover{ color:#e5484d; border-color:#e5484d; }
  .combine-build-footer{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; border-top:1px solid var(--border); padding-top:12px; }
  .combine-download-hint{ font-size:11.5px; color:var(--muted-2); }

  .gen-history-panel{ max-width:920px; margin-top:22px; }
  .gen-history-header{ display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
  .gen-history-title{ font-size:11.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.04em; }
  .gen-history-count{ color:var(--muted-2); text-transform:none; letter-spacing:0; font-weight:400; margin-left:8px; }
  .gen-history-list{ display:flex; flex-direction:column; gap:8px; }
  .gen-history-empty{
    font-size:12.5px; color:var(--muted-2); padding:14px; border:1px dashed var(--border); border-radius:8px;
  }
  .gen-history-item{
    display:flex; align-items:center; justify-content:space-between; gap:14px;
    background:var(--panel); border:1px solid var(--border); border-radius:8px; padding:10px 12px;
  }
  .gen-history-main{ min-width:0; flex:1; }
  .gen-history-top{ display:flex; align-items:center; gap:8px; margin-bottom:4px; flex-wrap:wrap; }
  .gen-history-label{ font-size:12px; color:var(--text); font-weight:500; }
  .gen-history-shell{
    font-size:10px; padding:1px 7px; border-radius:999px; color:#0B0E13;
    background:var(--tab-accent); font-weight:600;
  }
  .gen-history-time{ font-size:11px; color:var(--muted-2); }
  .gen-history-cmd{
    font-family:'JetBrains Mono', monospace; font-size:12px; color:var(--example-text);
    white-space:pre-wrap; word-break:break-all;
  }
  .gen-history-actions{ display:flex; gap:6px; flex-shrink:0; }

  .empty{ text-align:center; padding:60px 20px; color:var(--muted-2); }
  .empty .display{ font-size:18px; color:var(--muted); margin-bottom:6px; }

  #toTop{
    position:fixed; right:24px; bottom:24px; z-index:60;
    width:42px; height:42px; border-radius:50%;
    background:var(--panel); border:1px solid var(--border); color:var(--text);
    display:flex; align-items:center; justify-content:center; cursor:pointer;
    opacity:0; pointer-events:none; transform:translateY(8px);
    transition:opacity .18s ease, transform .18s ease, border-color .12s, background .12s;
    box-shadow:0 10px 30px -8px rgba(0,0,0,0.55);
  }
  #toTop.visible{ opacity:1; pointer-events:auto; transform:translateY(0); }
  #toTop:hover{ border-color:var(--amber); color:var(--amber); }
  #toTop svg{ width:17px; height:17px; }
  @media (prefers-reduced-motion: reduce){ #toTop{ transition:opacity .01s; } }

  footer{ max-width:var(--container-max); margin:0 auto; padding:20px 24px 60px; color:var(--muted-2); font-size:12px; border-top:1px solid var(--border-soft); }

  @media (prefers-reduced-motion: reduce){ .cursor{ animation:none; } }
