:root{--accent-dark: color-mix(in srgb, var(--accent) 72%, #1a0010);--grad: linear-gradient(120deg, color-mix(in srgb, var(--accent) 78%, #fff) 0%, var(--accent) 48%, var(--accent2) 100%);--grad-badge: linear-gradient(120deg, var(--accent) 0%, var(--accent2) 100%);--ink: #17171b;--ink-soft: #4a4a52;--muted: #8a8a93;--line: #ececf0;--bg: #ffffff;--bg-soft: #f5f5f7;--surface: #ffffff;--header-bg: rgba(255, 255, 255, .92);--zebra: #fafafb;--body-ink: #232329;--radius: 12px;--shadow: 0 6px 24px rgba(20, 20, 30, .08);--shadow-hover: 0 14px 40px rgba(20, 20, 30, .16);--maxw: 1180px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.7;font-size:16px;-webkit-font-smoothing:antialiased;word-break:keep-all}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}.site-header{position:sticky;top:0;z-index:50;background:var(--header-bg);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:20px;height:64px}.site-brand{font-weight:800;font-size:22px;letter-spacing:-.03em;color:var(--ink);white-space:nowrap}.site-brand .brand-dot{color:var(--accent)}.primary-nav{margin-left:auto}.primary-nav ul{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}.primary-nav a{display:block;padding:8px 14px;font-weight:700;font-size:15px;letter-spacing:-.02em;border-radius:8px;color:var(--ink-soft)}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--accent);background:var(--bg-soft)}.nav-toggle{display:none;margin-left:auto;background:none;border:0;font-size:26px;cursor:pointer;color:var(--ink)}.program-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.program-chips .chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:var(--bg-soft);font-size:14px;font-weight:700;color:var(--ink-soft)}.program-chips .chip:hover{border-color:var(--accent);color:var(--accent);background:var(--surface)}.program-chips .chip-count{font-size:12px;font-weight:700;color:var(--muted)}.site-main{padding:32px 0 56px}.section-head{display:flex;align-items:baseline;gap:10px;margin:0 0 20px;border-bottom:2px solid var(--ink);padding-bottom:10px}.section-head h2{margin:0;font-size:20px;font-weight:800;letter-spacing:-.03em}.section-head .accent{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.hero{display:block;position:relative;border-radius:var(--radius);overflow:hidden;margin-bottom:32px;box-shadow:var(--shadow);background:var(--bg-soft)}.hero:before{content:"";display:block;padding-top:56.25%}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.hero:hover img{transform:scale(1.03)}.hero-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:32px;background:linear-gradient(to top,#000000d1,#00000026 55%,#0000);color:#fff}.hero-overlay .cat-badge{align-self:flex-start}.hero-overlay h2{margin:12px 0 0;font-size:clamp(22px,3.4vw,36px);font-weight:800;line-height:1.25;letter-spacing:-.035em;color:#fff}.hero-overlay .post-meta{color:#ffffffd1;margin-top:10px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:26px}.card{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:transparent}.card-thumb{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:var(--bg-soft)}.card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.card:hover .card-thumb img{transform:scale(1.06)}.card-thumb .cat-badge{position:absolute;top:12px;left:12px}.card-body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:10px;flex:1}.card-title{margin:0;font-size:18px;font-weight:700;line-height:1.4;letter-spacing:-.03em}.card-excerpt{margin:0;color:var(--ink-soft);font-size:14px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta{margin-top:auto}.cat-badge{display:inline-block;background:var(--grad-badge);color:#fff;font-size:12px;font-weight:800;letter-spacing:-.01em;padding:4px 10px;border-radius:6px;line-height:1}.cat-badge:hover{color:#fff;filter:brightness(.93)}.post-meta{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pagination{margin-top:44px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.pagination a,.pagination span{min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--line);border-radius:8px;font-weight:700;color:var(--ink-soft)}.pagination .current,.pagination a:hover{background:var(--accent);border-color:var(--accent);color:#fff}.single-wrap{max-width:760px;margin:0 auto}.single-header{margin-bottom:24px}.single-header .cat-badge{margin-bottom:16px}.single-title{margin:0 0 16px;font-size:clamp(26px,4vw,40px);font-weight:800;line-height:1.28;letter-spacing:-.035em}.single-header .post-meta{font-size:14px}.entry-content{font-size:18px;line-height:1.9;color:var(--body-ink);letter-spacing:-.01em}.entry-content p{margin:0 0 1.05em}.entry-content figure{margin:1.4em 0}.entry-content img{border-radius:var(--radius);margin:8px auto}.entry-content h2{font-size:26px;font-weight:800;letter-spacing:-.03em;margin:1.8em 0 .6em;line-height:1.35}.entry-content h3{font-size:21px;font-weight:700;letter-spacing:-.02em;margin:1.6em 0 .5em}.entry-content a{color:var(--accent-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px}.entry-content blockquote{margin:1.6em 0;padding:14px 18px;border-left:4px solid var(--accent);border-radius:0 10px 10px 0;background:var(--bg-soft);color:var(--ink-soft);font-size:1.02em}.entry-content mark{background:#fff593;color:#17171b;padding:1px 3px;border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.entry-content u{text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}.entry-content h2:not(:first-child){border-top:1px solid var(--line);padding-top:1.4em}.entry-content ul,.entry-content ol{padding-left:1.4em;margin:0 0 1.5em}.entry-content li{margin-bottom:.5em}.entry-content table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:15px;display:block;overflow-x:auto}.entry-content th,.entry-content td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}.entry-content th{white-space:nowrap}.entry-content td{white-space:normal;min-width:7em}.entry-content thead th,.entry-content tr:first-child th{background:var(--bg-soft);font-weight:800;color:var(--ink)}.entry-content tbody tr:nth-child(2n){background:var(--zebra)}.post-toc{margin:0 0 2em;padding:16px 20px;border:1px solid var(--line);border-radius:12px;background:var(--bg-soft)}.post-toc__title{display:block;font-size:15px;font-weight:800;color:var(--ink);margin-bottom:10px}.post-toc__list{margin:0;padding-left:1.3em;font-size:15px}.post-toc__list li{margin-bottom:6px}.post-toc__list li:last-child{margin-bottom:0}.post-toc__list a{color:var(--ink-soft);font-weight:500}.post-toc__list a:hover{color:var(--accent-dark);text-decoration:underline}.entry-content h2,.entry-content h3{scroll-margin-top:80px}.entry-tags{margin:36px 0 0;display:flex;flex-wrap:wrap;gap:8px}.entry-tags a{background:var(--bg-soft);color:var(--ink-soft);font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px}.entry-tags a:hover{background:var(--accent);color:#fff}.related{margin-top:56px;padding-top:8px;border-top:1px solid var(--line)}.page-body{max-width:760px;margin:0 auto;font-size:17px;line-height:1.85;color:var(--body-ink)}.page-body h2{font-size:22px;font-weight:800;margin:1.8em 0 .5em;letter-spacing:-.03em}.page-body ul{padding-left:1.4em}.page-body a{color:var(--accent-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px}.site-footer{background:#16161a;color:#b8b8c0;padding:40px 0;margin-top:40px}.footer-inner{display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center}.footer-brand{font-size:20px;font-weight:800;color:#fff;letter-spacing:-.03em}.footer-brand .brand-dot{color:var(--accent)}.footer-nav{display:flex;gap:18px;flex-wrap:wrap;justify-content:center}.footer-nav a{color:#b8b8c0;font-size:14px;font-weight:600}.footer-nav a:hover{color:#fff}.footer-copy{font-size:13px;color:#6f6f78}.archive-hero{background:var(--bg-soft);border-radius:var(--radius);padding:32px 28px;margin-bottom:32px}.archive-hero h1{margin:0;font-size:28px;font-weight:800;letter-spacing:-.035em}.archive-hero .archive-desc{margin:8px 0 0;color:var(--ink-soft);font-size:15px}.no-results{text-align:center;padding:80px 20px}.no-results h1{font-size:48px;margin:0 0 8px;letter-spacing:-.04em}.no-results p{color:var(--muted)}@media(max-width:720px){.nav-toggle{display:block}.primary-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);padding:8px 0;box-shadow:var(--shadow)}.primary-nav.open{display:block}.primary-nav ul{flex-direction:column;align-items:stretch;gap:0;padding:0 12px}.primary-nav a{padding:12px 10px;border-radius:8px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.card-title{font-size:15px}.card-excerpt{display:none}.card-body{padding:12px 12px 14px;gap:8px}.entry-content{font-size:17px}.site-main{padding:20px 0 40px}.hero-overlay{padding:20px}}@media(prefers-color-scheme:dark){:root{--accent-dark: color-mix(in srgb, var(--accent) 70%, #fff);--ink: #ececf0;--ink-soft: #b7b7c0;--muted: #83838d;--line: #2b2b32;--bg: #131317;--bg-soft: #1d1d23;--surface: #212129;--header-bg: rgba(19, 19, 23, .82);--zebra: rgba(255, 255, 255, .035);--body-ink: #e4e4ea;--shadow: 0 6px 24px rgba(0, 0, 0, .5);--shadow-hover: 0 14px 40px rgba(0, 0, 0, .6)}}
