/* Shared by every page: light theme tokens, nav tool buttons, Ctrl+K menu */
:root{--accent-ink:var(--accent,#c6ff3d);--pa-ink:var(--pa,#c6ff3d);--surface:rgba(12,12,16,.8);--surface-2:rgba(10,10,14,.9);--text-2:#c9c8d3;--bd-2:rgba(255,255,255,.2);color-scheme:dark}
:root[data-theme=light]{
  --bg:#f3f2ec;--text:#121217;--muted:#5f5e6b;--line:rgba(18,18,23,.13);--glass:rgba(255,255,255,.62);
  --surface:rgba(255,255,255,.82);--surface-2:rgba(255,255,255,.92);--text-2:#3a3944;--bd-2:rgba(18,18,23,.22);
  --accent-ink:color-mix(in srgb,var(--accent,#c6ff3d) 50%,#0b0b0f);--pa-ink:color-mix(in srgb,var(--pa,#c6ff3d) 55%,#0b0b0f);
  color-scheme:light;
}
:root[data-theme=light] ::selection{color:#000}
html{transition:background-color .35s}

.nav-tools{display:flex;align-items:center;gap:8px}
.tool{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;min-width:40px;padding:0 12px;border-radius:99px;border:1px solid var(--line);background:var(--glass);color:var(--text);cursor:pointer;font:inherit;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:border-color .3s,color .3s}
.tool:hover{border-color:var(--accent-ink,var(--pa-ink))}
.tool:focus-visible{outline:2px solid var(--accent-ink,var(--pa-ink));outline-offset:2px}
.tool kbd{font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.04em;color:var(--muted)}
.tool svg{display:block}
@media (max-width:899px){.tool.k-btn kbd{display:none}.tool.k-btn::before{content:"⌕";font-size:1.15rem;line-height:1}}

.kmenu{position:fixed;inset:0;z-index:120;display:flex;justify-content:center;align-items:flex-start;padding:14vh 16px 16px;background:rgba(4,4,6,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.kmenu[hidden]{display:none}
.k-panel{width:100%;max-width:620px;max-height:70vh;display:flex;flex-direction:column;border-radius:18px;border:1px solid var(--line);background:var(--surface-2);box-shadow:0 30px 80px rgba(0,0,0,.45);overflow:hidden;color:var(--text);font-family:"Space Grotesk",system-ui,sans-serif;animation:kin .18s ease-out}
:root[data-theme=light] .kmenu{background:rgba(40,40,50,.25)}
@keyframes kin{from{opacity:0;transform:translateY(-8px) scale(.985)}}
.k-top{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}
.k-top input{flex:1;min-width:0;border:0;outline:0;background:none;color:var(--text);font:inherit;font-size:1.08rem}
.k-top input::placeholder{color:var(--muted)}
.kmenu kbd{font-family:"JetBrains Mono",monospace;font-size:.68rem;padding:3px 7px;border-radius:6px;border:1px solid var(--line);color:var(--muted);margin-right:3px}
.k-list{list-style:none;margin:0;padding:8px;overflow:auto;flex:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
html.k-open,html.k-open body{overflow:hidden}
.k-g{padding:12px 10px 6px;font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.k-i{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 12px;border-radius:10px;cursor:pointer}
.k-i small{color:var(--muted);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}
.k-i.on{background:color-mix(in srgb,var(--accent,var(--pa,#c6ff3d)) 16%,transparent)}
.k-i.on span{color:var(--text)}
.k-empty{padding:26px;text-align:center;color:var(--muted)}
.k-foot{display:flex;gap:18px;padding:10px 18px;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}
@media (max-width:600px){.k-foot{display:none}.kmenu{padding-top:10vh}}
@media (prefers-reduced-motion:reduce){.k-panel{animation:none}html{transition:none}}
