﻿/* ===== Winsmate Tweaks — desktop app =====
   Flat, native-Windows look: Segoe UI, neutral dark surfaces, one gold accent used sparingly. */
:root{
  --bg:#0e0f12; --side:#121317; --surface:#17191d; --surface2:#1d2025; --hover:#22262c;
  --border:#2a2e35; --border2:#353a42;
  --text:#e9eaed; --muted:#a2a7b0; --dim:#737985;
  --accent:#f2b51f; --accent-hover:#ffc53d; --accent-ink:#1a1300; --accent-soft:rgba(242,181,31,.12);
  --ok:#4cc38a; --danger:#f0655a; --warn:#f0a045; --info:#6aa8f7;
  --font:"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;
  --font-head:"Segoe UI Variable Display","Segoe UI Semibold","Segoe UI",system-ui,sans-serif;
  --mono:"Cascadia Mono",Consolas,monospace;
  --r:8px; --r-sm:6px;
}
*{margin:0;padding:0;box-sizing:border-box;}
[hidden]{display:none!important;}
html,body{height:100%;overflow:hidden;}
body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;user-select:none;}
::selection{background:rgba(242,181,31,.3);}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-thumb{background:#30343b;border-radius:10px;border:3px solid transparent;background-clip:padding-box;}
::-webkit-scrollbar-thumb:hover{background:#3d424a;background-clip:padding-box;}
b{font-weight:600;}
kbd{font-family:var(--font);font-size:11px;font-weight:600;color:var(--muted);background:var(--surface2);border:1px solid var(--border2);border-radius:4px;padding:0 5px;}
.mono{font-family:var(--mono);font-size:12px;white-space:pre-wrap;word-break:break-word;color:var(--muted);user-select:text;max-height:260px;overflow:auto;}
.muted{color:var(--muted);}
.warn-text{color:var(--warn);font-weight:600;}
.hint{font-size:12.5px;color:var(--muted);}
button{font-family:var(--font);}
button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}

/* ===== window shell ===== */
.app-shell{position:relative;height:100vh;display:flex;flex-direction:column;min-height:0;overflow:hidden;}
.titlebar{-webkit-app-region:drag;display:flex;align-items:center;gap:16px;height:44px;padding:0 6px 0 14px;background:var(--side);border-bottom:1px solid var(--border);flex-shrink:0;}
.brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:13.5px;color:var(--text);width:240px;flex-shrink:0;}
.brand img{width:20px;height:20px;}
.brand b{font-weight:600;color:var(--muted);}
.title-search{-webkit-app-region:no-drag;flex:1;max-width:440px;margin:0 auto;display:flex;align-items:center;gap:8px;height:30px;padding:0 8px 0 10px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--border);cursor:text;}
.title-search:focus-within{border-color:var(--border2);background:var(--surface2);}
.title-search svg{width:14px;height:14px;fill:none;stroke:var(--dim);stroke-width:2;stroke-linecap:round;flex-shrink:0;}
.title-search input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--text);font-family:var(--font);font-size:13px;}
.title-search input::placeholder{color:var(--dim);}
.title-search input::-webkit-search-cancel-button{-webkit-appearance:none;}
.title-search input:focus-visible{outline:none;}
.title-search kbd{font-size:10px;}
.window-controls{-webkit-app-region:no-drag;display:flex;margin-left:auto;}
.control{width:46px;height:32px;border:none;background:transparent;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.control:hover{background:var(--hover);}
.control.close:hover{background:#c42b1c;}
.control .minus{width:10px;height:1px;background:var(--text);}
.control .square{width:10px;height:10px;border:1px solid var(--text);}
.control.restored .square{width:8px;height:8px;box-shadow:2px -2px 0 -1px var(--side),2px -2px 0 0 var(--text);}
.control .x{position:relative;width:11px;height:11px;}
.control .x::before,.control .x::after{content:"";position:absolute;top:5px;left:-1px;width:13px;height:1px;background:var(--text);}
.control .x::before{transform:rotate(45deg);}.control .x::after{transform:rotate(-45deg);}

.background{position:relative;flex:1;display:flex;min-height:0;overflow:hidden;}
.bg-glows,.sidebar-glow{display:none;}

/* ===== sidebar ===== */
.sidebar{width:256px;flex-shrink:0;background:var(--side);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;}
.nav-wrap{flex:1;overflow-y:auto;padding:8px 8px 12px;display:flex;flex-direction:column;gap:1px;}
.nav-group-label{font-size:11px;font-weight:600;color:var(--dim);padding:14px 12px 4px;}
.nav-item{display:flex;align-items:center;gap:12px;width:100%;height:34px;padding:0 8px 0 12px;border:none;background:transparent;border-radius:var(--r-sm);cursor:pointer;color:var(--muted);font-size:13.5px;text-align:left;position:relative;}
.nav-item:hover{background:var(--hover);color:var(--text);}
.nav-item.active{background:var(--surface2);color:var(--text);font-weight:600;}
.nav-item.active::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:2px;background:var(--accent);}
.nav-icon{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:inherit;}
.nav-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.nav-icon svg.ico-fill,.nav-icon svg .ico-fill,.nav-icon svg .ico-dot{fill:currentColor;stroke:none;}
.nav-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.nav-count{font-size:11px;color:var(--dim);font-variant-numeric:tabular-nums;}
.nav-count-full{color:var(--ok);}
.nav-count-warn{color:var(--accent-ink)!important;background:var(--warn);border-radius:4px;padding:0 5px;font-weight:700;}
.nav-count-new{color:var(--accent-ink)!important;background:var(--accent);border-radius:4px;padding:0 5px;font-weight:700;}
.nav-divider{height:1px;background:var(--border);margin:8px 10px;}
.potato-icon svg .potato-body{fill:currentColor;stroke:none;opacity:.9;}
.potato-icon svg .potato-spot{fill:var(--side);stroke:none;}
.potato-icon svg .potato-highlight{display:none;}
.sidebar-foot{border-top:1px solid var(--border);padding:10px;display:flex;flex-direction:column;gap:8px;}
.side-status{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--dim);padding:0 4px;}
.side-status .dot{width:7px;height:7px;border-radius:50%;background:var(--dim);}
.side-status .dot.ok{background:var(--ok);}
.side-status .dot.bad{background:var(--danger);}
.side-restart{display:flex;align-items:center;gap:8px;width:100%;border:1px solid var(--border2);background:var(--surface);color:var(--info);border-radius:var(--r-sm);padding:7px 10px;font-size:12.5px;font-weight:600;cursor:pointer;text-align:left;}
.side-restart:hover{background:var(--hover);}
.side-restart svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;flex-shrink:0;}

/* ===== page ===== */
.page-content{flex:1;overflow-y:auto;padding:28px 36px 56px;}
.panel{max-width:1000px;margin:0 auto;}
.loading{color:var(--muted);padding:24px 0;}
.empty-state{color:var(--muted);padding:24px;border:1px dashed var(--border2);border-radius:var(--r);text-align:center;}
.empty-state:has(.empty-art){display:flex;flex-direction:column;align-items:center;gap:4px;padding:28px 24px 30px;}
.empty-art{display:block;width:160px;height:120px;margin-bottom:6px;pointer-events:none;}
.empty-state:has(.empty-art) > b{font-size:15px;font-weight:600;color:var(--text);}
.empty-state:has(.empty-art) > span{max-width:440px;line-height:1.5;}
.clip-grid > .empty-state, .games-grid > .empty-state{grid-column:1 / -1;}
.pc-clear{margin-bottom:16px;}
.ft-empty{margin-top:16px;}
.page-head,.hero,.potato-hero{margin-bottom:22px;}
.page-head h1,.hero h1,.potato-hero h1,.search-head h1{font-family:var(--font-head);font-size:26px;font-weight:600;color:var(--text);letter-spacing:-.01em;margin-bottom:6px;}
.page-head p,.hero p,.potato-hero p{font-size:14px;color:var(--muted);max-width:720px;}
.grad{color:inherit;}
.hero-badge,.potato-emoji,.sidebar-glow{display:none;}
.hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 10px;}
.section-head h2{font-family:var(--font-head);font-size:16px;font-weight:600;color:var(--text);}
.section-sub{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;color:var(--dim);font-weight:400;font-family:var(--font);}
.field-label{font-size:12.5px;font-weight:600;color:var(--muted);margin:18px 0 8px;}

/* ===== buttons / inputs ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600;font-size:13.5px;cursor:pointer;border:1px solid transparent;border-radius:var(--r-sm);padding:7px 14px;min-height:32px;white-space:nowrap;color:var(--text);transition:background .12s,border-color .12s;}
.btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.btn svg.ico-fill{fill:currentColor;stroke:none;}
.btn-primary{color:var(--accent-ink);background:var(--accent);}
.btn-primary:hover{background:var(--accent-hover);}
.btn-secondary,.btn-ghost{background:var(--surface2);border-color:var(--border2);}
.btn-secondary:hover,.btn-ghost:hover{background:var(--hover);}
.btn-danger{color:#fff;background:#a8372e;}
.btn-danger:hover{background:#bf4036;}
.btn-sm{padding:5px 12px;min-height:28px;font-size:12.5px;}
.btn-lg{padding:9px 18px;min-height:38px;font-size:14px;}
.btn:disabled{opacity:.5;cursor:default;}
.linkbtn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--accent);font-size:12.5px;font-weight:600;cursor:pointer;padding:2px 0;}
.linkbtn:hover{text-decoration:underline;}
.linkbtn:disabled{opacity:.5;}
.linkbtn svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s;}
.input,.search-input,.select{background:var(--surface);border:1px solid var(--border2);border-radius:var(--r-sm);padding:6px 10px;min-height:32px;color:var(--text);font-size:13.5px;font-family:var(--font);outline:none;}
.input:focus,.search-input:focus,.select:focus{border-color:var(--accent);}
.select{min-width:280px;cursor:pointer;}
.select option{background:var(--surface2);}
.seg{display:inline-flex;flex-wrap:wrap;gap:0;border:1px solid var(--border2);border-radius:var(--r-sm);overflow:hidden;background:var(--surface);}
.seg-btn{border:none;border-left:1px solid var(--border2);background:transparent;color:var(--muted);padding:6px 14px;font-size:13px;font-weight:600;cursor:pointer;min-height:32px;}
.seg-btn:first-child{border-left:none;}
.seg-btn:hover{background:var(--hover);color:var(--text);}
.seg-btn.on{background:var(--accent-soft);color:var(--accent);}
.seg-wide{display:flex;}
.seg-wide .seg-btn{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 14px;text-align:left;}
.seg-wide .seg-btn b{color:var(--text);font-size:13.5px;}
.seg-wide .seg-btn span{font-size:12px;font-weight:400;color:var(--dim);}
.seg-wide .seg-btn.on{box-shadow:inset 0 -2px 0 var(--accent);}

/* ===== badges ===== */
.badge{display:inline-flex;align-items:center;font-size:11.5px;font-weight:600;padding:1px 7px;border-radius:4px;white-space:nowrap;background:var(--surface2);color:var(--muted);}
.badge-full{color:var(--danger);background:rgba(240,101,90,.12);}
.badge-reboot{color:var(--info);background:rgba(106,168,247,.12);}
.badge-warn{color:var(--warn);background:rgba(240,160,69,.13);}
.badge-ok{color:var(--ok);background:rgba(76,195,138,.12);}
.badge-muted{color:var(--dim);}
.badge-dim{color:var(--dim);background:transparent;padding:1px 0;}
.badge-cat{color:var(--muted);}

/* ===== banners ===== */
.banners{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;}
.banner{display:flex;align-items:center;gap:14px;border-radius:var(--r);padding:12px 14px;border:1px solid var(--border);border-left:3px solid var(--border2);background:var(--surface);}
.panel>.banner{margin-bottom:14px;}
.banner-ic{flex-shrink:0;display:flex;}
.banner-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.banner-ic svg .ico-dot{fill:currentColor;stroke:none;}
.banner-txt{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0;}
.banner-txt b{font-size:13.5px;color:var(--text);}
.banner-txt span{font-size:12.5px;color:var(--muted);}
.banner-act{flex-shrink:0;}
.banner-warn{border-left-color:var(--warn);}.banner-warn .banner-ic{color:var(--warn);}
.banner-gold{border-left-color:var(--accent);}.banner-gold .banner-ic{color:var(--accent);}
.banner-info{border-left-color:var(--info);}.banner-info .banner-ic{color:var(--info);}

/* ===== dashboard ===== */
.dash-hero{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;border:1px solid var(--border);border-radius:var(--r);padding:24px 28px;background:var(--surface);}
.dash-hero h1{font-family:var(--font-head);font-size:24px;font-weight:600;color:var(--text);margin-bottom:6px;}
.dash-hero p{font-size:13.5px;color:var(--muted);max-width:560px;}
.hw-chips{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:14px;}
.hw-chip{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted);}
.hw-chip svg{width:14px;height:14px;fill:none;stroke:var(--dim);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.ring{position:relative;width:132px;height:132px;}
.ring svg{width:100%;height:100%;transform:rotate(-90deg);}
.ring-bg{fill:none;stroke:var(--surface2);stroke-width:10;}
.ring-fg{fill:none;stroke:var(--accent);stroke-width:10;transition:stroke-dashoffset .8s ease;}
.ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.ring-label b{font-family:var(--font-head);font-size:32px;font-weight:600;line-height:1;color:var(--text);}
.ring-label b small{font-size:16px;color:var(--muted);}
.ring-label span{font-size:12px;color:var(--dim);margin-top:3px;}
.ring-scan{color:var(--muted);}
.live-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px;}
.live-card{border:1px solid var(--border);border-radius:var(--r);padding:12px 16px 10px;background:var(--surface);}
.live-top{display:flex;align-items:baseline;justify-content:space-between;}
.live-top span{font-size:12px;font-weight:600;color:var(--muted);}
.live-val{font-size:20px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;}
.spark{display:flex;align-items:flex-end;gap:2px;height:28px;margin:8px 0 6px;}
.spark i{flex:1;background:var(--accent);opacity:.55;border-radius:1px;}
.live-sub{font-size:12px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.setup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.setup-step{display:flex;flex-direction:column;gap:10px;border:1px solid var(--border);border-radius:var(--r);padding:16px;background:var(--surface);}
.setup-num{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;color:var(--muted);border:1px solid var(--border2);}
.setup-step.done .setup-num{color:var(--accent-ink);background:var(--ok);border-color:var(--ok);}
.setup-num svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;}
.setup-txt{display:flex;flex-direction:column;gap:3px;flex:1;}
.setup-txt b{font-size:14px;color:var(--text);}
.setup-txt span{font-size:12.5px;color:var(--muted);}
.setup-step.done .setup-txt b{color:var(--muted);}
.setup-step .btn{align-self:flex-start;}
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.cat-card{display:flex;align-items:flex-start;gap:12px;text-align:left;border:1px solid var(--border);border-radius:var(--r);padding:14px;background:var(--surface);cursor:pointer;color:var(--text);}
.cat-card:hover{background:var(--hover);}
.cat-card-ic{flex-shrink:0;display:flex;color:var(--muted);margin-top:1px;}
.cat-card-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.cat-card-ic svg.ico-fill,.cat-card-ic svg .ico-fill,.cat-card-ic svg .ico-dot{fill:currentColor;stroke:none;}
.cat-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.cat-card-body b{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cat-card-meta{font-size:12px;color:var(--dim);}
.cat-card-meta em{color:var(--warn);font-style:normal;font-weight:600;}
.minibar{display:block;height:4px;border-radius:2px;background:var(--surface2);overflow:hidden;margin-top:5px;}
.minibar i{display:block;height:100%;background:var(--accent);}
/* Gold while a category is part-done, green once every tweak in it is on (same as the sidebar counts). */
.cat-card.full .minibar i{background:var(--ok);}

/* ===== presets ===== */
.preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;align-items:start;}
.preset-card{position:relative;border:1px solid var(--border);border-radius:var(--r);padding:18px;background:var(--surface);display:flex;flex-direction:column;}
.preset-rec{border-color:var(--border2);}
.preset-flag{position:absolute;top:16px;right:16px;font-size:11.5px;font-weight:600;color:var(--accent);}
.preset-icon{display:flex;color:var(--accent);margin-bottom:12px;}
.preset-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.preset-icon svg.ico-fill{fill:currentColor;stroke:none;}
.preset-name{font-family:var(--font-head);font-size:17px;font-weight:600;margin-bottom:6px;}
.preset-desc{font-size:13px;color:var(--muted);margin-bottom:14px;}
.preset-meter{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--dim);margin-bottom:12px;}
.preset-meter .minibar{flex:1;margin:0;}
.preset-skip{display:flex;gap:7px;font-size:12px;color:var(--dim);margin-bottom:12px;}
.preset-skip b{color:var(--muted);font-weight:600;}
.preset-skip svg{width:13px;height:13px;flex-shrink:0;margin-top:3px;fill:none;stroke:var(--ok);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.preset-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;}
.preset-list{margin-top:12px;padding-top:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px;max-height:260px;overflow:auto;}
.pl-row{display:flex;gap:8px;font-size:12.5px;color:var(--dim);}
.pl-row span{width:12px;}
.pl-row.on{color:var(--muted);}.pl-row.on span{color:var(--ok);}

/* ===== category header ===== */
.cat-hero{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px;}
.cat-hero-icon{display:flex;color:var(--muted);margin-top:6px;}
.cat-hero-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.cat-hero-icon svg.ico-fill,.cat-hero-icon svg .ico-fill,.cat-hero-icon svg .ico-dot{fill:currentColor;stroke:none;}
.cat-hero-text{flex:1;}
.cat-hero-text h1{font-family:var(--font-head);font-size:26px;font-weight:600;letter-spacing:-.01em;}
.cat-hero-text p{font-size:14px;color:var(--muted);margin-top:2px;}
.cat-hero-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px;margin-top:4px;}
.cat-applied{font-size:12.5px;color:var(--dim);}
.cat-applied b{color:var(--text);}
.cat-actions{display:flex;gap:8px;}

/* ===== search ===== */
.search-head h1{margin:2px 0 14px;font-size:20px;}
.tool-hits{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
.tool-hit{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border2);background:var(--surface);color:var(--text);border-radius:var(--r-sm);padding:6px 10px;font-weight:600;font-size:13px;cursor:pointer;}
.tool-hit:hover{background:var(--hover);}
.tool-hit svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;}

/* ===== tweak rows (Windows-Settings style grouped list) ===== */
.tweak-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);overflow:hidden;}
.tweak-card{padding:14px 18px;border-bottom:1px solid var(--border);position:relative;}
.tweak-card:last-child{border-bottom:none;}
.tweak-card:hover{background:#1a1d21;}
.tweak-card.is-drift{box-shadow:inset 3px 0 0 var(--warn);}
.tweak-card.is-na{opacity:.55;}
.tweak-card.busy{opacity:.5;pointer-events:none;}
.tweak-card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.tweak-name{font-size:14px;font-weight:600;color:var(--text);}
.tweak-desc{font-size:13px;color:var(--muted);margin-top:2px;max-width:760px;}
.tweak-card>.tweak-desc{padding-right:70px;}
.tweak-note-inline{color:var(--dim);}
.tweak-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px;}
.tweak-foot:has(.tweak-badges:empty){margin-top:4px;}
.tweak-badges{display:flex;gap:6px;flex-wrap:wrap;}
.tweak-more{font-size:12px;color:var(--dim);font-weight:500;flex-shrink:0;}
.tweak-more:hover{color:var(--text);text-decoration:none;}
.tweak-card.open .tweak-more svg{transform:rotate(90deg);}
.tweak-details{margin-top:10px;padding:10px 12px;border-radius:var(--r-sm);background:var(--bg);border:1px solid var(--border);display:flex;flex-direction:column;gap:6px;}
.chg{display:flex;flex-direction:column;font-size:12px;}
.chg-k{color:var(--dim);font-family:var(--mono);word-break:break-all;user-select:text;}
.chg-v{color:var(--muted);font-family:var(--mono);user-select:text;}
.chg-v b{color:var(--text);font-weight:600;}
.chg-cmd{max-height:140px;font-size:11.5px;}
.chg-note{display:flex;gap:7px;font-size:12px;color:var(--dim);margin-top:2px;}
.chg-note svg{width:13px;height:13px;flex-shrink:0;margin-top:2px;fill:none;stroke:var(--ok);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.tweak-note{margin-top:12px;font-size:13px;color:var(--muted);max-width:720px;}

/* ===== toggle (Windows 11 style) ===== */
.toggle{flex-shrink:0;width:40px;height:20px;border-radius:10px;border:1px solid #8b9099;background:transparent;position:relative;cursor:pointer;padding:0;transition:background .15s,border-color .15s;}
.toggle .toggle-knob{position:absolute;top:4px;left:4px;width:10px;height:10px;border-radius:50%;background:#c9ccd2;transition:left .15s,width .15s,background .15s;}
.toggle:hover .toggle-knob{width:12px;height:12px;top:3px;}
.toggle.on{background:var(--accent);border-color:var(--accent);}
.toggle.on .toggle-knob{left:24px;background:var(--accent-ink);}
.toggle.on:hover .toggle-knob{left:23px;}
.toggle:disabled{opacity:.35;cursor:default;}

/* ===== settings rows ===== */
.settings-card{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);overflow:hidden;}
.settings-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 18px;border-bottom:1px solid var(--border);}
.row-actions{display:flex;gap:8px;flex-shrink:0;}
.settings-row:last-child{border-bottom:none;}
.settings-row>div:first-child{flex:1;}
.settings-row b{font-size:14px;font-weight:600;color:var(--text);}
.settings-row .tweak-desc{margin-top:2px;}
.repair-ok{display:flex;align-items:flex-start;gap:10px;}
.repair-ok>svg{width:18px;height:18px;flex-shrink:0;margin-top:1px;fill:none;stroke:var(--ok);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}
.panel-settings>.banner{margin-bottom:4px;}

/* ===== potato ===== */
.potato-status{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:var(--muted);}
.potato-status .status-dot{width:8px;height:8px;border-radius:50%;background:var(--dim);}
.potato-status.is-on{color:var(--text);}
.potato-status.is-on .status-dot{background:var(--ok);}
.potato-blocked{margin-top:14px;font-size:13px;color:var(--warn);max-width:620px;}
.potato-close{margin-top:14px;max-width:620px;padding:10px 14px;border:1px solid var(--border2);border-left:3px solid var(--accent);border-radius:var(--r-sm);background:var(--surface);font-size:13.5px;color:var(--muted);}
.potato-close b{color:var(--text);}
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.compare-card{position:relative;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;}
.compare-card img{width:100%;height:auto;display:block;}
.compare-label{position:absolute;top:8px;left:8px;font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;background:rgba(0,0,0,.72);color:#fff;}
.compare-caption{font-size:12.5px;color:var(--dim);margin-top:10px;}

/* ===== info cards ===== */
.kbd-hint{margin-top:12px;font-size:12.5px;color:var(--dim);}
.review-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.review-cards.four{grid-template-columns:repeat(4,1fr);}
.review-card{border:1px solid var(--border);border-radius:var(--r);padding:16px;background:var(--surface);}
.rc-icon{display:none;}
.rc-title{font-size:14px;font-weight:600;margin-bottom:4px;}
.rc-body{font-size:13px;color:var(--muted);}
.reviews-hero .tp-stars{color:var(--accent);font-size:20px;letter-spacing:2px;margin-bottom:6px;}
.review-note{margin-top:12px;font-size:12.5px;color:var(--dim);}

/* ===== startup apps ===== */
.su-summary{display:flex;align-items:center;gap:20px;border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;background:var(--surface);}
.su-big{display:flex;align-items:baseline;gap:8px;flex-shrink:0;}
.su-big b{font-family:var(--font-head);font-size:30px;font-weight:600;}
.su-big span{font-size:13px;color:var(--muted);}
.su-tip{font-size:13px;color:var(--muted);border-left:1px solid var(--border);padding-left:18px;}
.startup-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);overflow:hidden;}
.startup-card{display:flex;align-items:center;gap:14px;padding:11px 16px;border-bottom:1px solid var(--border);}
.startup-card:last-child{border-bottom:none;}
.startup-card.is-off{opacity:.6;}
.startup-letter{width:28px;height:28px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:700;font-size:13px;color:var(--muted);background:var(--surface2);}
.startup-info{flex:1;min-width:0;}
.startup-name{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.su-desc{font-weight:400;color:var(--dim);font-size:13px;}
.startup-meta{font-size:12px;color:var(--dim);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* ===== resolution ===== */
.res-now{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);font-size:13.5px;}
.res-now b{color:var(--text);}
.res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;}
.res-btn{display:flex;flex-direction:column;align-items:flex-start;gap:1px;border:1px solid var(--border2);border-radius:var(--r-sm);padding:9px 12px;background:var(--surface);color:var(--text);font-weight:600;font-size:14px;cursor:pointer;text-align:left;}
.res-btn:hover{background:var(--hover);}
.res-btn.sel{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);}
.res-btn.unsupported{color:var(--muted);}
.res-tag{font-size:12px;font-weight:400;color:var(--dim);}
.res-row2{display:grid;grid-template-columns:auto 1fr;gap:28px;}
.res-custom{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.res-in{width:96px;}.res-x{color:var(--dim);}
.res-apply{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid var(--border);}
.res-grid .res-btn{padding:11px 14px;font-size:15px;}
.res-px{color:var(--muted);}
.res-more{margin-top:14px;}
.res-more summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--muted);padding:4px 0;}
.res-more summary:hover{color:var(--text);}
.res-more[open] summary{margin-bottom:-4px;}
.gpu-scale{display:flex;flex-direction:column;gap:12px;padding:16px 18px;}
.gpu-scale .seg{align-self:flex-start;}
.gpu-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--text);}
.gpu-steps b{color:var(--text);}
.perf-note{margin-top:14px;font-size:13px;color:var(--muted);}

/* ===== overlay preview ===== */
/* the preview sits on a game screenshot so "See-through" and the sizes look like they will in game */
.ov-demo{margin-bottom:16px;padding:18px;border-radius:var(--r);border:1px solid var(--border);background-color:#2b2e35;background-image:linear-gradient(45deg,#1d2025 25%,transparent 25%),linear-gradient(-45deg,#1d2025 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1d2025 75%),linear-gradient(-45deg,transparent 75%,#1d2025 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;display:flex;justify-content:flex-end;min-height:84px;align-items:flex-start;}
.ov-bar{display:inline-flex;align-items:center;border-radius:6px;overflow:hidden;background:var(--ov-bg,rgba(12,13,16,.95));border:1px solid rgba(255,255,255,.12);white-space:nowrap;}
.ov-bar.thin{border-color:rgba(255,255,255,.06);}
.ov-bar.thin .k,.ov-bar.thin .v,.ov-bar.thin .u{text-shadow:0 1px 2px rgba(0,0,0,.9);}
.ov-bar.column{flex-direction:column;align-items:stretch;}
.ov-bar.column .ov-m{border-left:none;border-top:1px solid rgba(255,255,255,.08);justify-content:space-between;gap:14px;}
.ov-bar.column .ov-m:first-child{border-top:none;}
.ov-bar.nolabels .k{display:none;}
.ov-m[hidden]{display:none;}
.ov-bar .ov-m.first{border-left:none;border-top:none;}
.ov-m.ov-graph{padding:4px 8px;align-items:center;}
.ov-m.ov-graph svg{display:block;}
.ov-m.ov-graph polyline{fill:none;stroke:var(--ov-fps,#f5b82e);stroke-width:1.5;stroke-linejoin:round;}
.ov-bar.column .ov-m.ov-graph svg{width:100%;}
.ov-show-row{align-items:flex-start;}
.ov-pos{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
/* crosshair share codes */
.xh-code-row{display:flex;align-items:center;gap:8px;}
.xh-code{font-family:"Cascadia Mono",Consolas,monospace;font-size:14px;font-weight:600;color:var(--text);background:var(--bg);border:1px solid var(--border2);border-radius:var(--r-sm);padding:6px 10px;user-select:all;}
.xh-code-in{width:240px;font-family:"Cascadia Mono",Consolas,monospace;}
/* Fastest DNS */
.dns-row{display:grid;grid-template-columns:minmax(180px,1.2fr) 1fr 80px 64px;gap:16px;align-items:center;}
.dns-bar{height:8px;border-radius:4px;background:var(--surface2);overflow:hidden;}
.dns-bar span{display:block;height:100%;border-radius:4px;background:var(--accent);}
.dns-ms{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text);text-align:right;}
.dns-use-gap{display:block;}
#dns-results .hint{margin:0 0 10px;}
/* Driver Check */
.drv-card{margin-bottom:12px;}
.drv-builtin{background:transparent;}
.xmp-steps{margin:10px 0 12px 20px;padding:0;display:flex;flex-direction:column;gap:8px;line-height:1.5;}
.drv-part{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--dim);margin-bottom:1px;}
.drv-card .drv-actions{align-items:center;}
.drv-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.badge-bad{color:#ff7a6b;background:rgba(255,122,107,.13);}
.ov-demo{overflow-x:auto;}
.ov-groups{display:grid;grid-template-columns:auto auto;gap:8px 12px;align-items:center;justify-content:end;}
.ov-groups .ov-g{font-size:12px;font-weight:600;color:var(--dim);text-align:right;}
.ov-groups .chip-set{justify-content:flex-start;}
.ov-slider{display:flex;align-items:center;gap:12px;min-width:260px;}
.ov-slider input[type=range]{flex:1;accent-color:var(--accent);}
.ov-opacity{margin-top:14px;font-size:12.5px;font-weight:600;color:var(--muted);}
.ov-wheel{margin-top:14px;}
/* Startup Apps guide */
.su-steps{padding:16px 18px;}
.su-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0;}
.su-col{padding:16px 18px;}
.su-col ul{margin:10px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--muted);}
.su-col li b{color:var(--text);}
.su-head{font-size:14px;}
.su-keep{color:var(--ok);}
.su-off{color:var(--accent);}

/* Colour wheel (Crosshair + Performance Overlay) */
.cw{display:flex;gap:20px;align-items:center;flex-wrap:wrap;}
.cw-wheel{width:172px;height:172px;cursor:crosshair;touch-action:none;border-radius:50%;}
.cw-side{display:flex;flex-direction:column;gap:12px;min-width:220px;flex:1;}
.cw-now{display:flex;align-items:center;gap:10px;}
.cw-swatch{width:36px;height:36px;border-radius:8px;border:1px solid var(--border2);flex-shrink:0;}
.cw-hex{width:110px;font-family:var(--mono);text-transform:uppercase;}
.cw-label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;color:var(--muted);}
.cw-label input{width:100%;accent-color:var(--accent);}
.cw-quick{display:flex;flex-wrap:wrap;gap:6px;}
.cw-q{width:24px;height:24px;border-radius:6px;border:1px solid var(--border2);background:var(--sw);cursor:pointer;padding:0;}
.cw-q.on{outline:2px solid var(--accent);outline-offset:1px;}
.cw-card{padding:18px;}

/* Crosshair page */
.xh-top{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;align-items:stretch;}
.xh-preview{display:flex;align-items:center;justify-content:center;min-height:200px;border-radius:var(--r);border:1px solid var(--border);background-color:#2b2e35;background-image:linear-gradient(45deg,#1d2025 25%,transparent 25%),linear-gradient(-45deg,#1d2025 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1d2025 75%),linear-gradient(-45deg,transparent 75%,#1d2025 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;overflow:hidden;}
.xh-preview svg{transform:scale(1.6);}
.xh-main{display:flex;flex-direction:column;justify-content:center;}
.xh-colors{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.xh-swatch{width:28px;height:28px;border-radius:50%;border:2px solid var(--border2);background:var(--sw);cursor:pointer;padding:0;}
.xh-swatch.on{border-color:#fff;box-shadow:0 0 0 2px var(--accent);}
.xh-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.xh-preset{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;border:1px solid var(--border2);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-size:12.5px;font-weight:600;cursor:pointer;}
.xh-preset:hover{background:var(--hover);}
.xh-preset.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);}
.xh-pv{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:6px;background-color:#2b2e35;background-image:linear-gradient(45deg,#1d2025 25%,transparent 25%),linear-gradient(-45deg,#1d2025 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1d2025 75%),linear-gradient(-45deg,transparent 75%,#1d2025 75%);background-size:12px 12px;background-position:0 0,0 6px,6px -6px,-6px 0;}
.xh-custom{display:flex;flex-direction:column;gap:10px;padding:16px 18px;}
.chip-set.xh-parts{justify-content:flex-start;margin-bottom:4px;}
.xh-slider{display:grid;grid-template-columns:170px minmax(0,1fr) 70px;align-items:center;gap:12px;font-size:13px;color:var(--muted);}
.xh-slider input[type=range]{width:100%;accent-color:var(--accent);}
.xh-val{color:var(--text);font-variant-numeric:tabular-nums;text-align:right;}
.xh-note{margin-top:12px;}
.chip-set{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;}
.chip-btn{border:1px solid var(--border2);background:var(--surface);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:600;cursor:pointer;}
.chip-btn:hover{background:var(--hover);}
.chip-btn.on{border-color:var(--accent);color:var(--text);background:var(--accent-soft);}
.ov-m{display:inline-flex;align-items:baseline;gap:5px;padding:6px 11px;border-left:1px solid rgba(255,255,255,.08);}
.ov-m:first-child{border-left:none;}
.ov-m .k{font-size:10px;font-weight:600;letter-spacing:.06em;color:var(--ov-txt,#f2f2f2);opacity:.55;}
.ov-m .v{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ov-txt,#f2f2f2);}
.ov-m .u{font-size:10px;color:var(--ov-txt,#f2f2f2);opacity:.55;}
.ov-m.fps .v{color:var(--ov-fps,#f5b82e);}

/* ===== toasts ===== */
.toast-host{position:fixed;bottom:18px;right:18px;z-index:1200;display:flex;flex-direction:column;gap:8px;align-items:flex-end;}
.toast{max-width:400px;padding:10px 14px;border-radius:var(--r);font-size:13px;color:var(--text);background:var(--surface2);border:1px solid var(--border2);box-shadow:0 8px 24px rgba(0,0,0,.45);opacity:0;transform:translateY(6px);transition:opacity .18s,transform .18s;}
.toast.show{opacity:1;transform:none;}
.toast-success{border-left:3px solid var(--ok);}
.toast-error{border-left:3px solid var(--danger);}
.toast-info{border-left:3px solid var(--info);}
.toast-clickable{cursor:pointer;}
.toast-clickable:hover{background:var(--hover);}

/* ===== dialogs ===== */
.progress-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);}
.progress-card,.confirm-card{width:min(460px,90vw);border:1px solid var(--border2);border-radius:10px;background:var(--surface2);padding:22px 24px;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.confirm-wide{width:min(560px,92vw);}
.progress-title,.confirm-title{font-family:var(--font-head);font-size:18px;font-weight:600;margin-bottom:12px;}
.progress-bar{height:4px;border-radius:2px;background:var(--border);overflow:hidden;margin-bottom:10px;}
.progress-fill{height:100%;background:var(--accent);width:0;transition:width .25s;}
.progress-bar.is-indeterminate .progress-fill{width:35%;animation:indet 1.1s ease-in-out infinite;}
@keyframes indet{0%{margin-left:-35%;}100%{margin-left:100%;}}
.progress-detail{font-size:13px;color:var(--muted);}
.progress-log{margin-top:10px;display:flex;flex-direction:column;gap:3px;}
.plog{display:flex;gap:8px;font-size:12.5px;color:var(--muted);}
.plog span{width:12px;font-weight:700;}
.plog.ok span{color:var(--ok);}.plog.bad span{color:var(--danger);}.plog.na span{color:var(--dim);}
.plog:nth-child(n+3){opacity:.6;}
.confirm-body{font-size:13.5px;color:var(--muted);margin-bottom:20px;max-height:60vh;overflow:auto;}
.confirm-body b{color:var(--text);}
.confirm-actions{display:flex;justify-content:flex-end;gap:8px;}
.res-line{display:flex;align-items:flex-start;gap:9px;margin-bottom:8px;font-size:13.5px;}
.res-line svg{width:15px;height:15px;flex-shrink:0;margin-top:3px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.res-line svg .ico-dot{fill:currentColor;stroke:none;}
.res-line.ok svg{color:var(--ok);}.res-line.warn svg{color:var(--warn);}.res-line.restart svg{color:var(--info);}
.res-line.na{color:var(--dim);}.res-line .dash{width:15px;text-align:center;flex-shrink:0;}
.res-fails{display:flex;flex-direction:column;gap:8px;margin:4px 0 12px;padding:10px 12px;border:1px solid var(--border2);border-left:3px solid var(--danger);border-radius:var(--r-sm);background:var(--surface);}
.res-fail{display:flex;flex-direction:column;gap:1px;font-size:13px;}
.res-fail b{color:var(--text);}
.res-fail span{color:var(--dim);font-size:12.5px;user-select:text;}

/* ===== launch splash ===== */
.app-splash{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:var(--bg);transition:opacity .25s ease,visibility .25s;}
.app-splash.done{opacity:0;visibility:hidden;}
.splash-in{text-align:center;}
.splash-logo{width:56px;height:56px;margin:0 auto 14px;}
.splash-logo img{width:100%;height:100%;}
.splash-logo .splash-ring,.splash-bar{display:none;}
.splash-name{font-weight:600;font-size:16px;color:var(--text);}
.splash-name b{color:var(--muted);font-weight:600;}

/* ===== Max FPS guide ===== */
.guide-card{display:flex;align-items:center;gap:16px;margin-top:10px;padding:14px 18px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r);background:var(--surface);}
.guide-card-txt{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;}
.guide-card-txt b{font-size:14px;}
.guide-card-txt span{font-size:12.5px;color:var(--muted);}
.guide-card-txt .minibar{max-width:320px;}
.g-progress{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--muted);margin-bottom:16px;}
.g-progress .minibar{flex:1;max-width:420px;margin:0;height:6px;}
.g-steps{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);overflow:hidden;}
.g-step{display:flex;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border);}
.g-step:last-child{border-bottom:none;}
.g-step.current{box-shadow:inset 3px 0 0 var(--accent);background:#1a1c21;}
.g-num{width:26px;height:26px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;color:var(--muted);border:1px solid var(--border2);margin-top:1px;}
.g-step.current .g-num{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);}
.g-step.done .g-num{color:var(--accent-ink);background:var(--ok);border-color:var(--ok);}
.g-num svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;}
.g-body{flex:1;min-width:0;}
.g-body>b{font-size:14.5px;}
.g-step.done .g-body>b{color:var(--muted);}
.g-text{font-size:13px;color:var(--muted);margin-top:3px;max-width:720px;}
.g-text b{color:var(--text);}
.g-step.done .g-text{opacity:.75;}
.g-act{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px;}
.g-step.done .g-act{margin-top:4px;}
.g-note{font-size:12.5px;color:var(--dim);}
.g-note b{color:var(--text);}
.g-fps{display:flex;gap:8px;}
.g-in{width:110px;}
.g-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.g-chip{display:inline-flex;gap:6px;font-size:12.5px;padding:4px 9px;border-radius:5px;background:var(--surface2);border:1px solid var(--border);}
.g-chip span{color:var(--dim);}
.g-chip b{color:var(--text);font-weight:600;}
.g-result{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:16px;padding:16px 20px;border:1px solid var(--border);border-left:3px solid var(--ok);border-radius:var(--r);background:var(--surface);}
.g-result-flat{border-left-color:var(--warn);}
.g-result>div{display:flex;flex-direction:column;}
.g-result>div b{font-family:var(--font-head);font-size:22px;font-weight:600;}
.g-result>div span{font-size:12.5px;color:var(--muted);}
.g-result p{flex:1;min-width:240px;font-size:13px;color:var(--muted);}
/* ===== narrow window ===== */
@media (max-width:1240px){ .cat-grid{grid-template-columns:repeat(2,1fr);} .review-cards.four{grid-template-columns:repeat(2,1fr);} }
@media (max-width:1100px){
  .review-cards,.setup-grid{grid-template-columns:1fr;}
  .sidebar{width:220px;} .brand{width:204px;}
  .dash-hero{grid-template-columns:1fr;} .res-row2{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){ *,*::before,*::after{animation:none!important;transition:none!important;} }

/* Dashboard: Start here card leading to the Guide */
.guide-start{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:16px 18px;border-radius:var(--r);border:1px solid var(--accent);background:var(--surface);}
.guide-start-ic{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent);}
.guide-start-ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.guide-start-txt{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0;}
.guide-start-txt b{font-size:15px;color:var(--text);}
.guide-start-txt span{font-size:13px;color:var(--muted);}
.guide-start-txt .minibar{margin-top:5px;max-width:320px;}

/* Debloat */
.db-tools{display:flex;align-items:center;gap:10px;margin:14px 0 10px;flex-wrap:wrap;}
.db-search{flex:1;min-width:200px;}
.db-list{margin:6px 0 10px 18px;padding:0;display:flex;flex-direction:column;gap:4px;max-height:260px;overflow:auto;}

/* Overlay position screen: a picture of your monitor with a mini copy of the bar to drag */
.ov-screen-wrap{padding:0 18px 18px;}
.ov-screen{position:relative;width:100%;border-radius:10px;border:1px solid var(--border2);overflow:hidden;touch-action:none;
  background:radial-gradient(ellipse at 50% 35%,#2b3a55 0%,#1a2233 55%,#121722 100%);}
.ov-screen-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:13px;font-weight:600;color:rgba(255,255,255,.28);pointer-events:none;letter-spacing:.04em;}
.ov-screen-bar{position:absolute;left:0;top:0;transform-origin:0 0;cursor:grab;}
.ov-screen-bar.dragging{cursor:grabbing;}
.ov-screen-bar .ov-bar{outline:1px dashed rgba(242,181,31,.0);}
.ov-screen-bar:hover .ov-bar{box-shadow:0 0 0 2px var(--accent);}

.drv-foot{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 4px;}

#ping-results .settings-card{margin-top:10px;}
#ping-results .hint{margin:8px 0 0;}

/* Community: post cards, avatars, likes, profile picker */
.cm-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 12px;}
.cm-bar #cm-refresh{margin-left:auto;}
.cm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;}
.cm-card{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);}
.cm-prev{display:flex;align-items:center;justify-content:center;height:120px;border-radius:6px;overflow:hidden;background-color:#2b2e35;background-image:linear-gradient(45deg,#1d2025 25%,transparent 25%),linear-gradient(-45deg,#1d2025 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1d2025 75%),linear-gradient(-45deg,transparent 75%,#1d2025 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;}
.cm-prev.ov{padding:8px;}
.cm-title{font-weight:600;font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;user-select:text;}
.cm-by{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);min-width:0;}
.cm-by span:not(.cm-av){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cm-you{font-size:11px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:1px 6px;}
.cm-actions{display:flex;align-items:center;gap:6px;margin-top:2px;}
.cm-actions .btn-primary{margin-left:auto;}
.cm-like{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border-radius:var(--r-sm);border:1px solid var(--border2);background:var(--surface2);color:var(--muted);font-weight:600;font-size:13px;cursor:pointer;}
.cm-like svg{fill:none;stroke:currentColor;stroke-width:2;}
.cm-like:hover{color:var(--text);}
.cm-like.on{color:#ff6b8b;border-color:rgba(255,107,139,.4);background:rgba(255,107,139,.1);}
.cm-like.on svg{fill:currentColor;}
.cm-av{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;}
.cm-me{display:flex;align-items:center;gap:12px;}
.cm-nick{width:240px;}
.cm-avs{display:flex;flex-wrap:wrap;gap:8px;max-width:360px;justify-content:flex-end;}
.cm-av-pick{padding:3px;border-radius:50%;border:2px solid transparent;background:none;cursor:pointer;}
.cm-av-pick.on{border-color:var(--accent);}
.cm-age{display:flex;align-items:center;gap:8px;font-weight:600;cursor:pointer;}
.cm-age input{width:16px;height:16px;accent-color:var(--accent);}
.cm-more{display:flex;justify-content:center;margin:14px 0 4px;}
.cm-rules{margin-top:14px;}
.cm-title-in{width:240px;}
.cm-grid > .empty-state, .cm-grid > .loading{grid-column:1 / -1;}

/* Accounts: Sign in at the top of the menu, the sign-in pop-up, the profile page */
.nav-account .nav-icon{display:inline-flex;align-items:center;justify-content:center;}
.nav-account .nav-icon .cm-av{width:22px!important;height:22px!important;}
.nav-account:not(.signed-in){color:var(--accent);font-weight:600;}
.nav-account.signed-in .nav-label{color:var(--text);font-weight:600;}
.cm-av-pic{overflow:hidden;background:var(--surface2);}
.cm-av-pic img{width:100%;height:100%;object-fit:cover;display:block;}
.cm-av-empty{background:var(--surface2);color:var(--muted);}
.cm-av-empty svg{width:60%;height:60%;fill:none;stroke:currentColor;stroke-width:1.8;}
.cm-hidden{font-size:11px;font-weight:700;color:var(--warn);background:rgba(240,160,69,.12);border-radius:4px;padding:1px 6px;}
.si-card{width:400px;max-width:calc(100vw - 40px);text-align:center;padding:30px 30px 22px;}
.si-logo{width:64px;height:64px;margin:0 auto 14px;display:block;}
.si-title{font-family:var(--font-head);font-size:22px;font-weight:600;color:var(--text);margin-bottom:6px;}
.si-text{font-size:14px;color:var(--muted);margin-bottom:20px;}
.si-btns{display:flex;flex-direction:column;gap:10px;}
.si-btn{width:100%;min-height:42px;font-size:14.5px;}
.si-google{background:#fff;color:#1f1f1f;border-color:#dadce0;}
.si-google:hover{background:#f1f3f4;}
.si-discord{background:#5865f2;color:#fff;}
.si-foot{margin-top:16px;font-size:12.5px;color:var(--dim);}
.link-btn{background:none;border:none;padding:0;color:var(--muted);font-size:12.5px;text-decoration:underline;cursor:pointer;}
.link-btn:hover{color:var(--text);}
.pf-head{display:flex;align-items:center;gap:22px;margin-bottom:8px;}
.pf-head h1{font-family:var(--font-head);font-size:26px;font-weight:600;color:var(--text);margin-bottom:4px;}
.pf-actions{margin-top:12px;}
.pf-pic .cm-av{box-shadow:0 0 0 3px var(--surface2);}
.pf-pic-row{justify-content:flex-start;gap:22px;}
.pf-pic-btns{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.pf-pic-btns .tweak-desc{flex-basis:100%;}

/* Sign-in screen (full window under the title bar): gameplay on the left, sign-in on the right */
.si-screen{position:fixed;left:0;right:0;bottom:0;top:44px;z-index:900;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,1fr);background:var(--bg);}
.si-art{position:relative;overflow:hidden;border-right:1px solid var(--border);}
.si-art-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.si-art::after{content:"";position:absolute;left:0;right:0;bottom:0;height:45%;background:linear-gradient(to top,rgba(10,11,14,.85),rgba(10,11,14,0));}
.si-art-copy{position:absolute;left:32px;bottom:30px;z-index:1;display:flex;align-items:center;gap:14px;color:#fff;}
.si-art-copy img{width:46px;height:46px;}
.si-art-copy b{display:block;font-family:var(--font-head);font-size:20px;font-weight:600;}
.si-art-copy span{font-size:13.5px;color:rgba(255,255,255,.8);}
.si-panel{display:flex;align-items:center;justify-content:center;padding:32px;overflow-y:auto;}
.si-inner{width:100%;max-width:380px;}
.si-inner h1{font-family:var(--font-head);font-size:28px;font-weight:600;color:var(--text);letter-spacing:-.01em;margin-bottom:6px;}
.si-inner .si-text{font-size:14px;color:var(--muted);margin-bottom:22px;}
.si-inner .si-btn{width:100%;min-height:44px;font-size:14.5px;}
.si-or{display:flex;align-items:center;gap:12px;margin:18px 0 14px;color:var(--dim);font-size:12.5px;}
.si-or::before,.si-or::after{content:"";flex:1;height:1px;background:var(--border);}
.si-email{display:flex;flex-direction:column;gap:10px;}
.si-mode{display:flex;width:100%;}
.si-mode .seg-btn{flex:1;}
.si-input{width:100%;min-height:44px;user-select:text;}
.si-err{color:var(--danger);font-size:13px;font-weight:600;}
.si-skip{margin-top:14px;}
.si-inner .si-foot{margin-top:14px;text-align:center;}
@media (max-width:900px){.si-screen{grid-template-columns:1fr;}.si-art{display:none;}}

/* Profiles: a cover, the picture overlapping it, nickname and stats */
.pf-cover{height:150px;border-radius:var(--r);overflow:hidden;border:1px solid var(--border);}
.pf-cover img{width:100%;height:100%;object-fit:cover;filter:brightness(.72);}
.pf-page .pf-head{display:flex;align-items:flex-end;gap:18px;margin:-52px 0 6px;padding:0 20px;position:relative;}
.pf-page .pf-pic .cm-av{box-shadow:0 0 0 4px var(--bg);}
.pf-page .pf-info{padding-bottom:4px;min-width:0;}
.pf-page .pf-info h1{font-family:var(--font-head);font-size:26px;font-weight:600;color:var(--text);margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pf-stats{display:flex;gap:24px;}
.pf-stats div{display:flex;flex-direction:column;}
.pf-stats b{font-size:17px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;}
.pf-stats span{font-size:12px;color:var(--muted);}
.pf-page .pf-actions{margin-left:auto;padding-bottom:6px;}
.pf-note{margin:6px 20px 0;}
.cm-by-btn{background:none;border:none;padding:0;cursor:pointer;text-align:left;font:inherit;}
.cm-by-btn:hover span:not(.cm-av):not(.cm-you){color:var(--text);text-decoration:underline;}
.si-art-img{object-position:38% 50%;}

/* Sign-in art: drawn background (canvas), the W, a live overlay bar, the line under it */
.si-art{background:#0b0c0f;}
.si-art::after{display:none;}
.si-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;}
.si-art-logo{position:absolute;left:50%;top:40%;width:clamp(96px,13vw,150px);height:auto;transform:translate(-50%,-50%);z-index:1;}
.si-ovbar{position:absolute;top:18px;right:18px;z-index:1;}
.si-art-copy{display:block;left:32px;bottom:28px;}
.si-art-copy b{font-size:22px;}
.pf-cover{background:#0b0c0f;}
.pf-cover svg{display:block;}

/* ===== Community 3: hero, toolbar, grid + sidebar, cards, post view, new post ===== */
.cm-page{max-width:1280px;}
.cm-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px;}
.cm-hero h1{font-family:var(--font-head);font-size:28px;font-weight:600;color:var(--text);margin-bottom:4px;}
.cm-hero p{color:var(--muted);font-size:14px;}
.cm-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:16px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);color:var(--muted);}
.cm-strip b{color:var(--text);}
.cm-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start;}
@media (max-width:1100px){.cm-layout{grid-template-columns:minmax(0,1fr);}.cm-side{display:none;}}
.cm-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;}
.cm-search{display:flex;align-items:center;gap:8px;margin-left:auto;height:32px;padding:0 10px;border:1px solid var(--border2);border-radius:var(--r-sm);background:var(--surface);color:var(--dim);min-width:200px;}
.cm-search:focus-within{border-color:var(--accent);}
.cm-search input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--text);font:inherit;font-size:13.5px;user-select:text;}
.cm-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}
.cm-card{padding:0;gap:0;overflow:hidden;transition:border-color .12s,transform .12s;}
.cm-card:hover{border-color:var(--border2);}
.cm-card.featured{border-color:rgba(242,181,31,.45);}
.cm-card .cm-prev{position:relative;width:100%;height:130px;border:none;border-radius:0;cursor:zoom-in;padding:0;}
.cm-card .cm-prev.ov{padding:10px;}
.cm-feat-tag{position:absolute;top:8px;left:8px;font-size:11px;font-weight:700;color:var(--accent-ink);background:var(--accent);border-radius:4px;padding:2px 7px;}
.cm-card-body{padding:10px 12px 4px;min-width:0;}
.cm-meta{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12.5px;color:var(--muted);min-width:0;}
.cm-meta .cm-by-btn{display:flex;align-items:center;gap:6px;min-width:0;color:var(--muted);}
.cm-meta .cm-by-btn span:not(.cm-av){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cm-time{margin-left:auto;color:var(--dim);white-space:nowrap;font-size:12px;}
.cm-card .cm-actions{padding:8px 12px 12px;}
.cm-feat-head{margin-top:4px;}
.cm-feat-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,240px);gap:12px;overflow-x:auto;padding-bottom:6px;margin-bottom:18px;}
.cm-side{display:flex;flex-direction:column;gap:12px;position:sticky;top:0;}
.cm-side-card{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:14px;}
.cm-side-card h3{font-family:var(--font-head);font-size:14.5px;font-weight:600;color:var(--text);margin-bottom:10px;}
.cm-rules-list{margin:0;padding-left:18px;color:var(--muted);font-size:12.5px;display:flex;flex-direction:column;gap:6px;}
.cm-creator{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--border);}
.cm-creator:first-child{border-top:none;padding-top:0;}
.cm-rank{width:16px;text-align:center;font-weight:700;color:var(--dim);font-size:12.5px;}
.cm-creator-who{display:flex;align-items:center;gap:9px;flex:1;min-width:0;background:none;border:none;padding:0;cursor:pointer;text-align:left;font:inherit;color:var(--text);}
.cm-creator-who > span:last-child{display:flex;flex-direction:column;min-width:0;}
.cm-creator-who b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cm-creator-who small{font-size:11.5px;color:var(--muted);}
.cm-creator-who:hover b{text-decoration:underline;}
.cm-follow{min-width:84px;}
.cm-empty-btn{margin-top:12px;}
.cm-post{width:720px;max-width:calc(100vw - 48px);padding:0;overflow:hidden;display:grid;grid-template-columns:300px minmax(0,1fr);}
.cm-post-prev{display:flex;align-items:center;justify-content:center;min-height:300px;background-color:#2b2e35;background-image:linear-gradient(45deg,#1d2025 25%,transparent 25%),linear-gradient(-45deg,#1d2025 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1d2025 75%),linear-gradient(-45deg,transparent 75%,#1d2025 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;overflow:hidden;padding:12px;}
.cm-post-body{padding:22px;display:flex;flex-direction:column;gap:12px;min-width:0;}
.cm-post-kind{font-size:12px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:.05em;}
.cm-post-title{font-family:var(--font-head);font-size:22px;font-weight:600;color:var(--text);word-break:break-word;user-select:text;}
.cm-post-by{display:flex;align-items:center;gap:10px;}
.cm-post-by .cm-by-btn{display:flex;align-items:center;gap:9px;flex:1;min-width:0;color:var(--text);}
.cm-post-code{display:flex;align-items:center;gap:8px;}
.cm-post-code .xh-code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:12.5px;}
.cm-post-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;}
.cm-post-actions .btn-primary{margin-left:auto;}
@media (max-width:760px){.cm-post{grid-template-columns:1fr;}.cm-post-prev{min-height:200px;}}
.cm-new{width:460px;max-width:calc(100vw - 48px);}
.cm-new-kind{display:flex;width:100%;margin:12px 0;}
.cm-new-kind .seg-btn{flex:1;}
.cm-new-prev{display:flex;align-items:center;justify-content:center;height:160px;border-radius:var(--r);border:1px solid var(--border);overflow:hidden;background-color:#2b2e35;background-image:linear-gradient(45deg,#1d2025 25%,transparent 25%),linear-gradient(-45deg,#1d2025 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1d2025 75%),linear-gradient(-45deg,transparent 75%,#1d2025 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;padding:10px;}
.cm-new-prev.xh svg{transform:scale(1.4);}
.cm-new-hint{font-size:12.5px;color:var(--muted);margin:8px 0 12px;}
.cm-new-title{width:100%;min-height:40px;user-select:text;}

/* ===== Profiles 3: banner (plain until you add one), picture, bio, stats, tabs ===== */
.pf-page{max-width:1100px;}
.pf-banner{position:relative;height:200px;border-radius:var(--r);overflow:hidden;border:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:center;}
.pf-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.pf-banner-add{position:relative;background:var(--surface2);border:1px dashed var(--border2);color:var(--muted);border-radius:var(--r-sm);padding:8px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
.pf-banner-add:hover{color:var(--text);border-color:var(--accent);}
.pf-page .pf-head{display:flex;align-items:flex-end;gap:18px;margin:-56px 0 10px;padding:0 22px;position:relative;}
.pf-page .pf-pic .cm-av{box-shadow:0 0 0 5px var(--bg);}
.pf-page .pf-info{padding-bottom:4px;min-width:0;flex:1;}
.pf-page .pf-info h1{margin-bottom:4px;}
.pf-bio{font-size:14px;color:var(--muted);margin-bottom:8px;max-width:520px;word-break:break-word;user-select:text;}
.pf-stats{flex-wrap:wrap;gap:22px;}
.pf-tabs{display:flex;align-items:center;gap:10px;margin:18px 0 12px;}
.pf-signedout{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;}
.pf-signedout b{font-size:16px;color:var(--text);}
.pf-edit-banner .pf-eb-btns{position:absolute;right:12px;bottom:12px;display:flex;gap:8px;z-index:1;}
.pf-edit-head{align-items:flex-end;}
.pf-pic-edit{position:relative;}
.pf-pic-btn{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);background:rgba(10,11,14,.82);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:3px 12px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;}
.pf-pic-btn:hover{background:rgba(10,11,14,.95);}
.pf-form{margin-top:8px;}
.pf-bio-in{width:320px;resize:none;font-family:var(--font);user-select:text;}

/* Pages fade in; What's new list; Dashboard trending row */
@keyframes panelIn{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:none;}}
.fade-in > .panel{animation:panelIn .18s ease-out;}
@media (prefers-reduced-motion: reduce){.fade-in > .panel{animation:none;}}
.wn-list{display:flex;flex-direction:column;gap:12px;margin-top:4px;}
.wn-item{display:flex;flex-direction:column;gap:2px;padding-left:12px;border-left:3px solid var(--accent);}
.wn-item b{color:var(--text);}
.wn-item span{color:var(--muted);font-size:13px;}
.dash-trend-grid{margin-bottom:6px;}
body.si-open .title-search{visibility:hidden;}

/* Owner tools */
.mod-card{width:440px;max-width:calc(100vw - 48px);}
.mod-label{font-size:12px;font-weight:700;color:var(--dim);text-transform:uppercase;letter-spacing:.05em;margin:12px 0 6px;}
.mod-grid{display:flex;flex-wrap:wrap;gap:8px;}
.cm-banned{border-color:rgba(240,101,90,.4);}
.cm-banned b{color:var(--danger);}

/* Owner badge + owner tools */
.badge-owner{display:inline-flex;align-items:center;font-family:var(--font);font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent);border-radius:4px;padding:1px 6px;margin-left:6px;vertical-align:middle;line-height:1.5;white-space:nowrap;}
h1 .badge-owner{font-size:11.5px;padding:2px 8px;margin-left:10px;position:relative;top:-3px;}
.owner-card{border-color:rgba(242,181,31,.45)!important;}
.owner-wide{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:16px;margin-top:18px;}
.owner-head{display:flex;align-items:center;gap:4px;margin-bottom:6px;}
.owner-head .badge-owner{margin-left:0;margin-right:6px;}
.owner-head h3{font-family:var(--font-head);font-size:14.5px;font-weight:600;color:var(--text);margin:0;}
.owner-text{font-size:12.5px;color:var(--muted);margin:0 0 10px;}
.owner-btns{display:flex;flex-wrap:wrap;gap:8px;}
.owner-n{display:inline-block;min-width:18px;padding:0 6px;border-radius:999px;background:var(--surface);color:var(--text);font-size:12px;}
.owner-list{width:620px;max-width:calc(100vw - 48px);}
.owner-items{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow-y:auto;margin:10px 0;}
.owner-item{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);}
.owner-prev{display:flex;align-items:center;justify-content:center;width:84px;height:56px;border-radius:6px;overflow:hidden;background:#2b2e35;flex-shrink:0;}
.owner-prev svg{transform:scale(.55);}
.owner-prev .ov-bar{zoom:.6!important;}
.owner-info{flex:1;min-width:0;display:flex;flex-direction:column;}
.owner-info b{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.owner-info span{font-size:12.5px;color:var(--muted);}
.owner-info em{color:var(--warn);font-style:normal;}

/* Owner tools page + card placement */
#cm-owner .owner-wide{margin:0 0 14px;}
.owner-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:6px 0 4px;}
.owner-how > div{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);}
.owner-how b{color:var(--text);}
.owner-how span{font-size:12.5px;color:var(--muted);}
.owner-page-list{max-height:none;}
.nav-owner .nav-label{color:var(--accent);font-weight:600;}
@media (max-width:900px){.owner-how{grid-template-columns:1fr;}}

/* Games */
.games-bar{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.games-bar .btn svg{width:15px;height:15px;}
.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;}
.game-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);}
.game-card:hover{border-color:var(--border2);}
.game-tile{display:flex;align-items:center;justify-content:center;height:96px;border-radius:6px;font-family:var(--font-head);font-size:34px;font-weight:700;color:#fff;letter-spacing:.02em;}
.game-info{display:flex;flex-direction:column;min-width:0;}
.game-info b{color:var(--text);font-size:14.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.game-info span{font-size:12.5px;color:var(--muted);}
.game-actions{display:flex;gap:8px;}
.game-actions .btn-primary{flex:1;}

.game-tile{position:relative;overflow:hidden;height:140px;}
.game-tile.has-art{background:#0b0c0f!important;}
.game-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* overlay page: chosen numbers the overlay can't read right now */
.ov-missing{margin:0 18px 14px;padding:11px 14px;border-radius:8px;background:rgba(240,160,69,.1);border:1px solid rgba(240,160,69,.3);color:#e8c595;font-size:13px;line-height:1.5;}
.ov-missing b{color:#f3d3a3;}
.ov-bar .ov-m.ov-off{opacity:.3;}
.seg-mon{flex-wrap:wrap;max-width:520px;}
.seg-mon .seg-btn{flex:0 1 auto;min-width:130px;}
/* keyboard shortcuts (Settings) */
.hk-btn{min-width:150px;justify-content:center;gap:4px;}
.hk-btn kbd{margin:0 1px;}
.hk-btn.hk-rec{border-color:var(--accent);color:var(--accent);}
.hk-btn.hk-taken{border-color:var(--warn);}
.hk-fixed{color:var(--dim);font-size:13px;}
.ov-miss-line + .ov-miss-line{margin-top:8px;padding-top:8px;border-top:1px solid rgba(240,160,69,.2);}
.ov-miss-line .btn{margin:6px 8px 0 0;}

/* ---------- Clips ---------- */
.rec-hero{display:flex;align-items:center;gap:16px;padding:16px 18px;margin-bottom:16px;border-radius:var(--r);border:1px solid var(--border);background:var(--surface,#16181c);}
.rec-dot{width:12px;height:12px;border-radius:50%;flex:none;background:#5b616b;}
.rec-on .rec-dot{background:#4cc38a;box-shadow:0 0 0 4px rgba(76,195,138,.15);}
.rec-rec .rec-dot{background:#ff5a52;animation:rec-pulse 1.2s ease-in-out infinite;}
.rec-err .rec-dot{background:var(--warn,#f0a045);}
.rec-wait .rec-dot{background:#f2b51f;}
@keyframes rec-pulse{50%{opacity:.35;}}
.rec-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.rec-text b{font-size:15px;color:var(--text);}
.rec-text span{font-size:12.5px;color:var(--dim);}
.rec-text .rec-note{color:#e8c595;}
.rec-actions{display:flex;gap:8px;flex:none;}
.mono-path{font-family:"Cascadia Mono",Consolas,monospace;font-size:12px;word-break:break-all;}
.clip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;}
.clip-card{display:flex;flex-direction:column;gap:6px;padding:0 0 10px;border-radius:var(--r);border:1px solid var(--border);background:var(--surface,#16181c);overflow:hidden;text-align:left;cursor:pointer;color:inherit;font:inherit;}
.clip-card:hover{border-color:var(--border2);}
.clip-thumb{position:relative;aspect-ratio:16/9;background:#0b0c0f;display:block;}
.clip-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.clip-len{position:absolute;right:7px;bottom:7px;padding:2px 7px;border-radius:5px;background:rgba(0,0,0,.75);color:#fff;font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums;}
.clip-tag{position:absolute;left:7px;top:7px;padding:2px 7px;border-radius:5px;background:#ff5a52;color:#fff;font-size:11px;font-weight:700;}
.clip-name{padding:0 12px;font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.clip-meta{padding:0 12px;font-size:12px;color:var(--dim);}
.clip-view{width:min(1100px,92vw);max-width:none;padding:14px;}
.clip-video{width:100%;max-height:62vh;border-radius:8px;background:#000;display:block;}
.clip-trim{display:flex;flex-direction:column;gap:6px;margin:12px 4px 4px;}
.clip-trim-row{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--dim);}
.clip-trim-row span{width:38px;}
.clip-trim-row input{flex:1;accent-color:var(--accent);}
.clip-trim-row b{width:42px;text-align:right;color:var(--text);font-variant-numeric:tabular-nums;}
.clip-actions{display:flex;align-items:center;gap:8px;margin-top:12px;}
.clip-title{flex:1;min-width:0;font-size:13px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* ---------- 2.5.0: history ---------- */
.hist-when { color: var(--dim); font-size: 12px; font-weight: 400; margin-left: 6px; }
.hist-row .btn { flex: none; }

/* ---------- 2.5.0: FPS Test ---------- */
.ft-run { padding: 18px 20px; }
.ft-idle .gpu-steps { margin: 0 0 14px; }
.ft-start { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.ft-live { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.ft-live .progress-bar { flex: 1 1 220px; min-width: 160px; }
.ft-live > span { color: var(--muted); }
.ft-live > span b { color: var(--text); }
.ft-count { font: 600 40px/1 var(--font-head); color: var(--accent); min-width: 44px; text-align: center; }
.ft-card { padding: 18px 20px; }
.ft-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.ft-nums { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 12px; margin-bottom: 14px; }
.ft-num { background: var(--surface2); border: 1px solid var(--border); border-radius: var(--r); padding: 12px 14px; display: flex; flex-direction: column; gap: 2px; }
.ft-num b { font: 600 26px/1.1 var(--font-head); color: var(--text); font-variant-numeric: tabular-nums; }
.ft-num span { color: var(--muted); font-size: 12px; }
.ft-big b { font-size: 36px; color: var(--accent); }
.ft-chart { width: 100%; height: 150px; display: block; background: var(--surface2); border: 1px solid var(--border); border-radius: var(--r); }
.ft-line { fill: none; stroke: var(--accent); stroke-width: 1.6; vector-effect: non-scaling-stroke; }
.ft-med { stroke: var(--border2); stroke-width: 1; stroke-dasharray: 4 4; vector-effect: non-scaling-stroke; }
.ft-axis { display: flex; justify-content: space-between; color: var(--dim); font-size: 12px; margin: 6px 2px 14px; }
.ft-verdicts { display: flex; flex-direction: column; gap: 8px; }
.ft-verdict { border: 1px solid var(--border); border-left: 3px solid var(--info); border-radius: var(--r-sm); padding: 10px 12px; display: flex; flex-direction: column; gap: 3px; background: var(--surface2); }
.ft-verdict span { color: var(--muted); font-size: 13px; }
.ft-verdict .linkbtn { align-self: flex-start; margin-top: 2px; }
.ft-warn { border-left-color: var(--warn); }
.ft-ok { border-left-color: var(--ok); }
.ft-row { gap: 12px; }
.ft-pick { display: flex; align-items: center; gap: 10px; flex: 1; cursor: pointer; min-width: 0; }
.ft-pick input { accent-color: var(--accent); width: 16px; height: 16px; }
.ft-compare { display: grid; grid-template-columns: 1fr auto 1fr; gap: 10px 16px; align-items: center; padding: 18px 20px; }
.ft-cmp-col { display: flex; flex-direction: column; gap: 2px; }
.ft-cmp-col span { color: var(--dim); font-size: 12px; }
.ft-cmp-col b { font: 600 34px/1.1 var(--font-head); font-variant-numeric: tabular-nums; }
.ft-cmp-col:last-of-type b { color: var(--accent); }
.ft-cmp-col small { color: var(--muted); }
.ft-cmp-arrow svg { width: 22px; height: 22px; stroke: var(--dim); fill: none; stroke-width: 2; }
.ft-cmp-res { grid-column: 1 / -1; display: flex; align-items: center; gap: 12px; color: var(--muted); border-top: 1px solid var(--border); padding-top: 12px; flex-wrap: wrap; }
.ft-cmp-res em { font-style: normal; font-weight: 600; }
.ft-cmp-res em.up { color: var(--ok); }
.ft-cmp-res em.down { color: var(--danger); }
.ft-cmp-res .btn { margin-left: auto; }
@media (max-width: 1100px) { .ft-nums { grid-template-columns: 1fr 1fr; } }

/* ---------- 2.5.0: PC Check ---------- */
.pc-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 4px 0 14px; }
.pc-sum-txt { display: flex; flex-direction: column; gap: 2px; }
.pc-sum-txt b { font: 600 20px/1.2 var(--font-head); }
.pc-sum-txt span { color: var(--muted); font-size: 13px; }
.pc-bar { margin-bottom: 14px; }
.pc-list { display: flex; flex-direction: column; gap: 10px; }
.pc-item { display: flex; align-items: flex-start; gap: 14px; background: var(--surface); border: 1px solid var(--border); border-left: 3px solid var(--info); border-radius: var(--r); padding: 14px 16px; }
.pc-item > .btn { flex: none; margin-top: 2px; }
.pc-bad { border-left-color: var(--danger); }
.pc-warn { border-left-color: var(--warn); }
.pc-item-main { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; }
.pc-item-main > span { color: var(--muted); font-size: 13px; line-height: 1.45; }
.pc-procs { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; }
.pc-proc { display: flex; align-items: center; gap: 12px; background: var(--surface2); border: 1px solid var(--border); border-radius: var(--r-sm); padding: 7px 10px; }
.pc-proc > span:first-child { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pc-proc-n { color: var(--muted); font-size: 12px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.pc-oks { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 8px 16px; padding: 14px 16px; }
.pc-ok { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; }
.pc-ok svg { width: 16px; height: 16px; stroke: var(--ok); fill: none; stroke-width: 2.4; flex: none; }

/* ---------- 2.5.0: Fortnite Settings ---------- */
.fn-card { padding: 16px 18px; display: flex; flex-direction: column; gap: 14px; }
.fn-cap { display: flex; flex-direction: column; gap: 8px; }
.fn-cap .seg { align-self: flex-start; flex-wrap: wrap; }
.fn-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.fn-gamma { display: flex; align-items: center; gap: 14px; }
.fn-gamma input[type=range] { flex: 1; max-width: 420px; accent-color: var(--accent); }
.fn-gamma b { min-width: 48px; font-variant-numeric: tabular-nums; }
.fn-colour > div { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
.fn-colour > div + div { border-top: 1px solid var(--border); padding-top: 14px; }

/* ---------- 2.5.0: connection test ---------- */
.conn-live, .conn-res { display: flex; flex-direction: column; gap: 12px; padding: 4px 16px 16px; }
.conn-live { padding-top: 14px; }
.conn-lost { stroke: var(--danger); stroke-width: 2; opacity: .7; vector-effect: non-scaling-stroke; }
.conn-empty { height: 110px; }
.conn-net { margin-top: -2px; }
/* speed & lag under load */
.sp-top { display: flex; gap: 12px; align-items: stretch; }
.sp-top .ft-nums { flex: 1; margin: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sp-grade { width: 76px; flex: none; display: flex; align-items: center; justify-content: center; border-radius: var(--r); font: 700 34px/1 var(--font-head); background: var(--surface2); border: 1px solid var(--border); }
.sp-ok { color: var(--ok); }
.sp-warn { color: var(--warn); }
.sp-bad { color: var(--danger); }
.sp-rows { display: flex; flex-direction: column; gap: 6px; }
.sp-row { display: grid; grid-template-columns: minmax(0, 1fr) 72px 64px 44px; align-items: center; gap: 12px; background: var(--surface2); border: 1px solid var(--border); border-radius: var(--r-sm); padding: 8px 12px; }
.sp-row span { color: var(--muted); font-size: 13px; }
.sp-row b { font-variant-numeric: tabular-nums; text-align: right; }
.sp-row em { font-style: normal; color: var(--dim); font-size: 12.5px; font-variant-numeric: tabular-nums; }
.sp-row .badge { justify-self: end; }
/* boot time (Startup Apps) */
.bt-top { display: grid; grid-template-columns: auto minmax(0, 1fr) 180px; gap: 18px; align-items: center; padding: 16px 18px; }
.bt-main { display: flex; flex-direction: column; gap: 2px; }
.bt-main span { color: var(--muted); font-size: 12.5px; }
.bt-sec { font: 600 34px/1 var(--font-head); font-variant-numeric: tabular-nums; }
.bt-sec small { font-size: 16px; color: var(--muted); }
.bt-ok { color: var(--ok); }
.bt-warn { color: var(--warn); }
.bt-bad { color: var(--danger); }
.bt-split b { color: var(--text); font-weight: 600; }
.bt-bars { display: flex; align-items: flex-end; gap: 4px; height: 54px; }
.bt-bars i { flex: 1; background: var(--border2); border-radius: 2px 2px 0 0; min-height: 3px; }
.bt-bars i:last-child { background: var(--accent); }
.bt-slow { display: flex; flex-direction: column; gap: 6px; padding: 0 18px 16px; }
.bt-slow-head { font-weight: 600; font-size: 13px; margin-bottom: 2px; }
.bt-row { grid-template-columns: minmax(0, 1fr) auto 64px; }
.bt-row span b { color: var(--text); font-weight: 600; }
@media (max-width: 1000px) { .bt-top { grid-template-columns: auto minmax(0, 1fr); } .bt-bars { display: none; } }

/* ---------- 2.5.0: Clean up ---------- */
.cu-row { cursor: pointer; gap: 14px; }
.cu-row input { accent-color: var(--accent); width: 17px; height: 17px; flex: none; }
.cu-txt { flex: 1; min-width: 0; }
.cu-size { color: var(--text); font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; min-width: 70px; text-align: right; }
.cu-file { gap: 12px; }
.cu-path { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ---------- 2.5.0: game options ---------- */
.go-card { margin: 0; }
.go-card .settings-row { gap: 16px; }

/* ---------- 2.5.0: settings extras ---------- */
.st-setup-in { display: flex; flex-direction: column; gap: 6px; flex: 1; min-width: 0; }
.st-setup-in .input { max-width: 420px; font-family: var(--mono); font-size: 12px; }
.setup-list { display: flex; flex-direction: column; gap: 4px; max-height: 280px; overflow: auto; margin-bottom: 10px; }
.ca-list { display: flex; flex-direction: column; gap: 4px; max-height: 320px; overflow: auto; }
.ca-row { display: flex; align-items: center; gap: 10px; padding: 6px 4px; cursor: pointer; }
.ca-row input { accent-color: var(--accent); width: 16px; height: 16px; }

/* ---------- 2.5.0: Mouse Test ---------- */
.mt-wrap { display: grid; grid-template-columns: 1fr 240px; gap: 16px; margin-bottom: 16px; }
.mt-pad { height: 300px; border: 1px dashed var(--border2); border-radius: var(--r); background: var(--surface); display: flex; align-items: center; justify-content: center; color: var(--dim); cursor: crosshair; user-select: none; }
.mt-side { display: flex; flex-direction: column; gap: 10px; }
.mt-side .btn { align-self: flex-start; }
/* double-click check */
.mt-clickpad { height: 200px; cursor: pointer; text-align: center; padding: 0 20px; }
.mt-clickpad:active { background: var(--surface2); }
.mt-btn { display: flex; flex-direction: column; gap: 1px; background: var(--surface2); border: 1px solid var(--border); border-left: 3px solid var(--ok); border-radius: var(--r-sm); padding: 8px 12px; }
.mt-btn span { color: var(--muted); font-size: 12.5px; font-variant-numeric: tabular-nums; }
.mt-btn em { font-style: normal; color: var(--danger); font-weight: 600; }
.mt-btn.is-bad { border-left-color: var(--danger); }
/* keyboard */
.kb-card { padding: 14px 16px; display: flex; flex-direction: column; gap: 12px; outline: none; }
.kb-card:focus { border-color: var(--accent); }
.kb-top { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; }
.kb-count { color: var(--text); font-weight: 600; font-size: 13px; font-variant-numeric: tabular-nums; }
.kb { display: flex; flex-direction: column; gap: 5px; user-select: none; }
.kb-row { display: flex; gap: 5px; }
.kb-key { min-width: 0; height: 38px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--border2); border-radius: 6px; background: var(--surface2); color: var(--dim); font-size: 12px; font-weight: 600; transition: background .06s, color .06s; }
.kb-key.seen { color: var(--text); border-color: var(--border2); background: var(--surface); }
.kb-key.down { background: var(--accent); border-color: var(--accent); color: #111; }
/* monitor test */
.mon-card { padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; }
.mon-nums { margin: 0; grid-template-columns: 1.4fr 1fr 1fr; }
.mon-ufo { width: 100%; height: 150px; display: block; border-radius: var(--r); border: 1px solid var(--border); }
.mon-ctl { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.mon-ctl .tweak-desc { flex: 1; min-width: 260px; }
.dead-px { position: fixed; inset: 0; z-index: 99999; cursor: none; display: flex; align-items: center; justify-content: center; }
.dead-px span { background: rgba(0,0,0,.7); color: #fff; padding: 10px 16px; border-radius: 8px; font-size: 14px; transition: opacity .4s; }
.dead-px.quiet span { opacity: 0; }
/* sensitivity converter */
.sens-card { padding: 16px 18px; display: flex; flex-direction: column; gap: 16px; }
.sens-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.sens-grid label { display: flex; flex-direction: column; gap: 6px; min-width: 0; overflow: hidden; }
.sens-card + .hint { margin-top: 10px; }
.sens-grid label > span { color: var(--muted); font-size: 12.5px; }
.sens-grid small { color: var(--dim); }
.sens-grid select, .sens-grid input { width: 100%; min-width: 0; background: var(--surface); border: 1px solid var(--border2); border-radius: 8px; padding: 7px 10px; min-height: 34px; color: var(--text); font: 13.5px var(--font); outline: none; }
.sens-grid select:focus, .sens-grid input:focus { border-color: var(--accent); }
.sens-grid select option { background: var(--surface2); }
.sens-in { position: relative; }
.sens-in em { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); font-style: normal; color: var(--dim); pointer-events: none; }
.sens-res { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 12px; }
.sens-res small { font-size: 15px; color: var(--muted); }
.sens-wait { padding: 6px 2px; }
@media (max-width: 1100px) { .sens-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .sens-res { grid-template-columns: 1fr 1fr; } }
