:root{--color-primary: #1e3a8a;--color-primary-light: #3b82f6;--color-accent: #f97316;--color-bg: #ffffff;--color-bg-soft: #f8fafc;--color-bg-card: #ffffff;--color-text: #0f172a;--color-text-muted: #475569;--color-text-soft: #94a3b8;--color-border: #e2e8f0;--color-tradeoff-bg: #fff8f1;--color-shadow: 30, 58, 138;--max-width: 1080px;--font-sans: "Inter", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}:root[data-theme=dark]{--color-primary: #60a5fa;--color-primary-light: #93c5fd;--color-accent: #fb923c;--color-bg: #0b1220;--color-bg-soft: #131c30;--color-bg-card: #131c30;--color-text: #e6edf7;--color-text-muted: #b8c4d6;--color-text-soft: #6b7891;--color-border: #2a3550;--color-tradeoff-bg: rgba(251, 146, 60, .07);--color-shadow: 0, 0, 0}html{color-scheme:light dark}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:3px}a:focus-visible,button:focus-visible{outline-offset:3px}.skip-link{position:absolute;top:-100px;left:1rem;padding:.6rem 1rem;background:var(--color-text);color:var(--color-bg);border-radius:6px;z-index:200;font-weight:600;transition:top .15s}.skip-link:focus{top:1rem}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:17px;line-height:1.7;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}a{color:var(--color-primary);text-decoration:none;transition:color .15s}a:hover{color:var(--color-primary-light)}h1,h2,h3,h4{font-weight:700;line-height:1.3;color:var(--color-text)}h1{font-size:3rem;letter-spacing:-.02em}h2{font-size:2rem;letter-spacing:-.01em}h3{font-size:1.4rem}p{margin-bottom:1.2em;color:var(--color-text-muted)}code{font-family:var(--font-mono);background:var(--color-bg-soft);padding:2px 6px;border-radius:4px;font-size:.9em}pre{background:var(--color-bg-soft);padding:1em;border-radius:8px;overflow-x:auto;margin:1em 0;border:1px solid var(--color-border)}pre code{background:transparent;padding:0}blockquote{border-left:3px solid var(--color-primary);padding-left:1em;color:var(--color-text-muted);margin:1.5em 0}.muted{color:var(--color-text-soft);font-size:.9em}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}.nav{border-bottom:1px solid var(--color-border);background:var(--color-bg);position:sticky;top:0;z-index:100;backdrop-filter:blur(8px)}.nav-inner{max-width:var(--max-width);margin:0 auto;padding:1rem 24px;display:flex;justify-content:space-between;align-items:center}.nav-brand{font-weight:700;font-size:1.1rem;color:var(--color-text)}.nav-links{display:flex;gap:1.5rem}.nav-links a{color:var(--color-text-muted);font-size:.95rem}.nav-links a:hover{color:var(--color-primary)}.footer{border-top:1px solid var(--color-border);margin-top:6rem;padding:3rem 0 2rem;background:var(--color-bg-soft)}.footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:2rem}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:var(--color-text-muted)}.footer-bottom{max-width:var(--max-width);margin:2rem auto 0;padding:0 24px;text-align:center}.theme-toggle{background:none;border:none;padding:.4rem;cursor:pointer;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;border-radius:6px;transition:color .15s,background-color .15s}.theme-toggle:hover{color:var(--color-text);background:var(--color-bg-soft)}.theme-icon{display:none}:root[data-theme=light] .theme-icon-moon,:root:not([data-theme]) .theme-icon-moon{display:inline-block}:root[data-theme=dark] .theme-icon-sun{display:inline-block}.lightbox{border:none;padding:0;background:transparent;max-width:95vw;max-height:95vh;overflow:visible}.lightbox::backdrop{background:#000000e0;backdrop-filter:blur(4px)}.lightbox img{max-width:95vw;max-height:95vh;display:block;border-radius:10px;cursor:zoom-out;box-shadow:0 12px 60px #00000080}body,.nav,.footer{transition:background-color .2s ease,border-color .2s ease,color .2s ease}@media(max-width:640px){h1{font-size:2.2rem}h2{font-size:1.6rem}body{font-size:16px}.nav-links{gap:.85rem}}
