/* Generated by scripts/build.py from site/template.html. */
:root{
  --bg:#f4f6f8; --surface:#ffffff; --surface-2:#eef1f5; --ink:#141a24; --muted:#586374; --line:#dbe0e8;
  --accent:#0f766e; --accent-ink:#ffffff; --accent-soft:#dcf2ef;
  --hero:#111827; --hero-2:#1b2537; --hero-ink:#e8edf6; --hero-muted:#93a1b8; --hero-line:#2a3650; --phos:#5eead4; --amber:#fbbf24;
  --star:#a15c00; --star-soft:#fdf0d9; --info:#3557b7; --info-soft:#e3e9fa;
  --r-cost:#a15c00; --r-cost-bg:#fdf0d9; --r-external:#2f5fc4; --r-external-bg:#e2eafb; --r-secrets:#7c3aed; --r-secrets-bg:#efe7fd;
  --r-files:#a8380b; --r-files-bg:#fde8dc; --r-perms:#b42318; --r-perms-bg:#fde3e1;
  --phos-ink:#06201d; --phos-soft:rgba(94,234,212,.12); --phos-glow:rgba(94,234,212,.16); --hero-tint:rgba(255,255,255,.04);
  --term-bg:var(--hero-2); --term-ink:var(--hero-ink); --term-muted:var(--hero-muted); --term-line:var(--hero-line); --term-accent:var(--phos);
  --term-shadow:0 20px 50px rgba(0,0,0,.45);
  --hue-s:52%; --hue-l:40%; --shadow:0 1px 2px rgba(20,26,36,.06),0 6px 18px rgba(20,26,36,.06);
  --font-zh:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC","Source Han Sans SC",sans-serif;
  --font-ja:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic","Meiryo","Noto Sans CJK JP",sans-serif;
  --font-tc:"PingFang TC","Microsoft JhengHei","Noto Sans CJK TC","Source Han Sans TC",sans-serif;
  --font-ko:"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR","Noto Sans CJK KR",sans-serif;
  --font-en:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  --font-mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0c1118; --surface:#141b26; --surface-2:#1a2330; --ink:#e6ebf3; --muted:#97a3b6; --line:#263142;
  --accent:#5eead4; --accent-ink:#06201d; --accent-soft:#12302d;
  --hero:#0a0f17; --hero-2:#121a27; --hero-line:#223047;
  --star:#f5b94a; --star-soft:#3a2b12; --info:#9db4f0; --info-soft:#1d2741;
  --r-cost:#f5b94a; --r-cost-bg:#3a2b12; --r-external:#8fb0f5; --r-external-bg:#1b2742; --r-secrets:#c4a5fb; --r-secrets-bg:#2a1f45;
  --r-files:#fb9a6b; --r-files-bg:#3d2216; --r-perms:#f38b82; --r-perms-bg:#3f1c1a;
  --hue-s:62%; --hue-l:68%; --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 22px rgba(0,0,0,.25); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0c1118; --surface:#141b26; --surface-2:#1a2330; --ink:#e6ebf3; --muted:#97a3b6; --line:#263142;
  --accent:#5eead4; --accent-ink:#06201d; --accent-soft:#12302d;
  --hero:#0a0f17; --hero-2:#121a27; --hero-line:#223047;
  --star:#f5b94a; --star-soft:#3a2b12; --info:#9db4f0; --info-soft:#1d2741;
  --r-cost:#f5b94a; --r-cost-bg:#3a2b12; --r-external:#8fb0f5; --r-external-bg:#1b2742; --r-secrets:#c4a5fb; --r-secrets-bg:#2a1f45;
  --r-files:#fb9a6b; --r-files-bg:#3d2216; --r-perms:#f38b82; --r-perms-bg:#3f1c1a;
  --hue-s:62%; --hue-l:68%; --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 22px rgba(0,0,0,.25); color-scheme:dark}
/* Skins. Each sets the banner/terminal palette and the accent for both light and dark;
   Paper also pins the light page palette. Chosen with the swatches next to the language switch. */
:root[data-skin="graphite"]{
  --hero:#16171b; --hero-2:#1e2025; --hero-line:#2b2e35; --hero-ink:#ececf0; --hero-muted:#9b9ea8;
  --phos:#7aa2f7; --phos-ink:#0b1530; --phos-soft:rgba(122,162,247,.13); --phos-glow:rgba(122,162,247,.13);
  --accent:#1d4ed8; --accent-ink:#ffffff; --accent-soft:#e2e9fb}
@media (prefers-color-scheme: dark){:root[data-skin="graphite"]:not([data-theme="light"]){--accent:#8fb0f8; --accent-ink:#0b1530; --accent-soft:#1c2740}}
:root[data-skin="graphite"][data-theme="dark"]{--accent:#8fb0f8; --accent-ink:#0b1530; --accent-soft:#1c2740}
:root[data-skin="indigo"]{
  --hero:#191a3d; --hero-2:#222452; --hero-line:#323567; --hero-ink:#eceeff; --hero-muted:#a6a9d8;
  --phos:#a5b4fc; --phos-ink:#191a3d; --phos-soft:rgba(165,180,252,.14); --phos-glow:rgba(165,180,252,.2);
  --accent:#4338ca; --accent-ink:#ffffff; --accent-soft:#e7e6fb}
@media (prefers-color-scheme: dark){:root[data-skin="indigo"]:not([data-theme="light"]){--accent:#b4c0fd; --accent-ink:#191a3d; --accent-soft:#25264f}}
:root[data-skin="indigo"][data-theme="dark"]{--accent:#b4c0fd; --accent-ink:#191a3d; --accent-soft:#25264f}
:root[data-skin="paper"],:root[data-skin="frost"]{
  --bg:#f6f7f9; --surface:#ffffff; --surface-2:#eff2f6; --ink:#121826; --muted:#566074; --line:#dde2ea;
  --accent:#1f4fa3; --accent-ink:#ffffff; --accent-soft:#e3eaf7;
  --star:#9a5b00; --star-soft:#fbefd8; --info:#3557b7; --info-soft:#e3e9fa;
  --r-cost:#9a5b00; --r-cost-bg:#fbefd8; --r-external:#2f5fc4; --r-external-bg:#e2eafb; --r-secrets:#7c3aed; --r-secrets-bg:#efe7fd;
  --r-files:#a8380b; --r-files-bg:#fde8dc; --r-perms:#b42318; --r-perms-bg:#fde3e1;
  --hue-s:52%; --hue-l:40%; --shadow:0 1px 2px rgba(18,24,38,.05),0 6px 18px rgba(18,24,38,.06); color-scheme:light}
:root[data-skin="paper"]{
  --hero:#eef1f5; --hero-2:#ffffff; --hero-line:#d3d9e2; --hero-ink:#121826; --hero-muted:#5a6476;
  --phos:#1f4fa3; --phos-ink:#ffffff; --phos-soft:rgba(31,79,163,.08); --phos-glow:rgba(31,79,163,.09); --hero-tint:rgba(18,24,38,.03);
  --term-bg:#121826; --term-ink:#e6e9ef; --term-muted:#98a1b3; --term-line:#283246; --term-accent:#7cc4fa;
  --term-shadow:0 18px 40px rgba(18,24,38,.18); color-scheme:light}

:root[data-skin="ocean"]{
  --hero:#0b1d30; --hero-2:#10273f; --hero-line:#1d3a58; --hero-ink:#e6f0fa; --hero-muted:#8fa9c4;
  --phos:#38bdf8; --phos-ink:#04263a; --phos-soft:rgba(56,189,248,.16); --phos-glow:rgba(56,189,248,.16);
  --accent:#0369a1; --accent-ink:#ffffff; --accent-soft:#e0f0fa}
@media (prefers-color-scheme: dark){:root[data-skin="ocean"]:not([data-theme="light"]){--accent:#7dd3fc; --accent-ink:#04263a; --accent-soft:#0e2a3d}}
:root[data-skin="ocean"][data-theme="dark"]{--accent:#7dd3fc; --accent-ink:#04263a; --accent-soft:#0e2a3d}
:root[data-skin="ember"]{
  --hero:#1a1512; --hero-2:#241d18; --hero-line:#3a2f27; --hero-ink:#f4ede6; --hero-muted:#b3a291;
  --phos:#f5a524; --phos-ink:#2a1a05; --phos-soft:rgba(245,165,36,.15); --phos-glow:rgba(245,165,36,.15);
  --accent:#9a4708; --accent-ink:#ffffff; --accent-soft:#fdf0dc}
@media (prefers-color-scheme: dark){:root[data-skin="ember"]:not([data-theme="light"]){--accent:#f7b955; --accent-ink:#2a1a05; --accent-soft:#3a2a12}}
:root[data-skin="ember"][data-theme="dark"]{--accent:#f7b955; --accent-ink:#2a1a05; --accent-soft:#3a2a12}
:root[data-skin="rose"]{
  --hero:#24121a; --hero-2:#301822; --hero-line:#4a2634; --hero-ink:#fbecf1; --hero-muted:#c79aab;
  --phos:#fb7185; --phos-ink:#3a0d18; --phos-soft:rgba(251,113,133,.16); --phos-glow:rgba(251,113,133,.16);
  --accent:#be123c; --accent-ink:#ffffff; --accent-soft:#fde4ea}
@media (prefers-color-scheme: dark){:root[data-skin="rose"]:not([data-theme="light"]){--accent:#fda4af; --accent-ink:#3a0d18; --accent-soft:#3d1a24}}
:root[data-skin="rose"][data-theme="dark"]{--accent:#fda4af; --accent-ink:#3a0d18; --accent-soft:#3d1a24}
:root[data-skin="mono"]{
  --hero:#0a0a0a; --hero-2:#141414; --hero-line:#2a2a2a; --hero-ink:#f5f5f5; --hero-muted:#a3a3a3;
  --phos:#f5f5f5; --phos-ink:#0a0a0a; --phos-soft:rgba(255,255,255,.08); --phos-glow:rgba(255,255,255,.08);
  --accent:#171717; --accent-ink:#ffffff; --accent-soft:#ececec}
@media (prefers-color-scheme: dark){:root[data-skin="mono"]:not([data-theme="light"]){--accent:#f5f5f5; --accent-ink:#0a0a0a; --accent-soft:#262626}}
:root[data-skin="mono"][data-theme="dark"]{--accent:#f5f5f5; --accent-ink:#0a0a0a; --accent-soft:#262626}
:root[data-skin="frost"]{
  --accent:#0f766e; --accent-ink:#ffffff; --accent-soft:#dcf2ef;
  --hero:#eaf3f2; --hero-2:#ffffff; --hero-line:#cfe0de; --hero-ink:#10201e; --hero-muted:#52665f;
  --phos:#0f766e; --phos-ink:#ffffff; --phos-soft:rgba(15,118,110,.08); --phos-glow:rgba(15,118,110,.1); --hero-tint:rgba(16,32,30,.03);
  --term-bg:#0f1f1d; --term-ink:#e3efed; --term-muted:#93aba6; --term-line:#1f3a36; --term-accent:#5eead4;
  --term-shadow:0 18px 40px rgba(16,32,30,.18)}

/* Full-dark skins: the whole page stays dark whatever the system setting. */
:root[data-skin="cyberpunk"],:root[data-skin="matrix"],:root[data-skin="midnight"]{
  --star:#f5b94a; --star-soft:#3a2b12; --info:#9db4f0; --info-soft:#1d2741;
  --r-cost:#f5b94a; --r-cost-bg:#3a2b12; --r-external:#8fb0f5; --r-external-bg:#1b2742; --r-secrets:#c4a5fb; --r-secrets-bg:#2a1f45;
  --r-files:#fb9a6b; --r-files-bg:#3d2216; --r-perms:#f38b82; --r-perms-bg:#3f1c1a;
  --hue-s:70%; --hue-l:66%; --shadow:0 1px 2px rgba(0,0,0,.4),0 8px 22px rgba(0,0,0,.35); color-scheme:dark}
:root[data-skin="cyberpunk"]{
  --bg:#0c0717; --surface:#150d25; --surface-2:#1c1231; --ink:#f4eaff; --muted:#b39fd2; --line:#2f1e4a;
  --accent:#00f0ff; --accent-ink:#07031a; --accent-soft:#0d2a3a;
  --hero:#0a0614; --hero-2:#140b26; --hero-line:#3a1f5c; --hero-ink:#f7ecff; --hero-muted:#b9a3da;
  --phos:#00f0ff; --phos-ink:#07031a; --phos-soft:rgba(0,240,255,.12); --phos-glow:rgba(255,43,214,.22); --amber:#ff2bd6;
  --term-accent:#ff2bd6}
:root[data-skin="matrix"]{
  --bg:#020804; --surface:#06120a; --surface-2:#0a1a0f; --ink:#c9f7d5; --muted:#6faf81; --line:#103a1c;
  --accent:#00ff41; --accent-ink:#001a08; --accent-soft:#0a2a14;
  --hero:#000000; --hero-2:#03100a; --hero-line:#0d3518; --hero-ink:#d6ffe0; --hero-muted:#6fbf85;
  --phos:#00ff41; --phos-ink:#001a08; --phos-soft:rgba(0,255,65,.1); --phos-glow:rgba(0,255,65,.12);
  --hue-s:60%; --hue-l:62%}
:root[data-skin="midnight"]{
  --bg:#0a0e18; --surface:#111726; --surface-2:#161e30; --ink:#e7ebf3; --muted:#98a2b8; --line:#222c42;
  --accent:#f5c46a; --accent-ink:#1d1406; --accent-soft:#2e2615;
  --hero:#070a12; --hero-2:#0f1524; --hero-line:#1f2940; --hero-ink:#eef1f7; --hero-muted:#97a1b7;
  --phos:#f5c46a; --phos-ink:#1d1406; --phos-soft:rgba(245,196,106,.12); --phos-glow:rgba(245,196,106,.12)}

*{box-sizing:border-box}
html{--body-font:var(--font-en)}
html[lang="ja"]{--body-font:var(--font-ja)}
html[lang="zh-CN"]{--body-font:var(--font-zh)}
html[lang="zh-Hant"]{--body-font:var(--font-tc)}
html[lang="ko"]{--body-font:var(--font-ko)}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.75 var(--body-font);-webkit-text-size-adjust:100%}
a{color:var(--accent);text-underline-offset:3px}
a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
code{font-family:var(--font-mono);font-size:.9em;background:var(--surface-2);border:1px solid var(--line);padding:0 5px;border-radius:5px;overflow-wrap:anywhere}
code.nw{white-space:nowrap}
.top{background:var(--hero);color:var(--hero-ink);border-bottom:1px solid var(--hero-line)}
.in{max-width:820px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
.top .in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding-top:12px;padding-bottom:12px}
.brand{color:var(--phos);font:700 15px/1.4 var(--font-mono);text-decoration:none}
.brand span{color:var(--hero-muted);font-weight:500}
.langs{margin:0 0 0 auto;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:2px 12px;font-size:13px}
.langs a{font-family:var(--font-en);color:var(--hero-muted);text-decoration:none;display:inline-block;padding:4px 0}
.langs a:hover{color:var(--hero-ink)}
.langs a[aria-current]{color:var(--phos);font-weight:600}
main{padding-top:20px;padding-bottom:28px}
.crumb{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px;font-size:13px;color:var(--muted)}
.crumb li+li::before{content:"›";margin-right:4px}
.crumb a{color:var(--muted)}
h1{font:700 clamp(30px,7vw,44px)/1.15 var(--font-mono);margin:14px 0 4px;overflow-wrap:anywhere}
h1 .args{display:block;font-size:.45em;font-weight:500;color:var(--muted);margin-top:6px}
.lead{font-size:18px;margin:8px 0 0}
.gloss{font-size:14px;color:var(--muted);margin:6px 0 0}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}
.tag{font-size:12.5px;line-height:1.6;padding:1px 9px;border-radius:999px;background:var(--surface-2);color:var(--muted)}
.tag.pick{background:var(--star-soft);color:var(--star)}
.tag.skill,.tag.workflow{background:var(--info-soft);color:var(--info)}
.tag.removed{background:var(--r-perms-bg);color:var(--r-perms)}
.tag.r-cost{background:var(--r-cost-bg);color:var(--r-cost)}
.tag.r-external{background:var(--r-external-bg);color:var(--r-external)}
.tag.r-secrets{background:var(--r-secrets-bg);color:var(--r-secrets)}
.tag.r-files{background:var(--r-files-bg);color:var(--r-files)}
.tag.r-perms{background:var(--r-perms-bg);color:var(--r-perms)}
.box{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:16px 0 0;box-shadow:var(--shadow)}
.box h2{font-size:13px;letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;color:var(--accent)}
.box p{margin:0}
.box.warn{border-left:4px solid var(--r-perms)}
.risk+.risk{margin-top:8px}
.list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.list a{font:600 15px var(--font-mono);text-decoration:none}
.list a:hover{text-decoration:underline}
.list small{display:block;color:var(--muted);font-size:14px;line-height:1.55}
.pn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0 0}
.pn a{display:block;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-family:var(--font-mono);text-decoration:none;overflow-wrap:anywhere}
.pn a:hover{border-color:var(--accent)}
.pn .next{text-align:right;grid-column:2}
.all{display:inline-block;margin-top:20px;font-weight:600}
footer{border-top:1px solid var(--line);margin-top:8px;padding-top:16px;padding-bottom:40px;font-size:13px;color:var(--muted)}
footer a{color:var(--muted)}
footer p{margin:0 0 8px}
