:root{
  --bg:#0a0d18;
  --panel:#12182d;
  --panel-2:#171f39;
  --bg-end:#090c17;
  --fg:#f4efe3;
  --muted:#a49eb9;
  --accent:#8d7aff;
  --accent-2:#59c5d5;
  --accent-3:#efb66f;
  --surface:rgba(255,255,255,0.04);
  --surface-2:rgba(255,255,255,0.07);
  --line:rgba(255,255,255,0.08);
  --line-strong:rgba(255,255,255,0.14);
  --shadow:rgba(5,7,17,0.4);
  --dot-color:rgba(255,255,255,0.08);
  --header-bg:rgba(12,16,30,0.5);
  --hero-frame-bg:linear-gradient(180deg,rgba(20,26,48,0.96),rgba(11,15,29,0.98));
  --card-bg:linear-gradient(180deg,rgba(23,28,49,0.94),rgba(14,18,31,0.98));
  --content-panel-bg:linear-gradient(180deg,var(--surface-2),rgba(255,255,255,0.02));
  --footer-bg:linear-gradient(180deg,rgba(20,25,45,0.94),rgba(11,14,28,0.98));
  --soft-panel-bg:rgba(255,255,255,0.02);
  --soft-panel-bg-strong:rgba(6,7,17,0.18);
  --figure-bg:rgba(255,255,255,0.03);
  --chip-border:rgba(141,122,255,0.14);
  --chip-bg:rgba(141,122,255,0.08);
  --tag-border:rgba(89,197,213,0.14);
  --tag-bg:rgba(89,197,213,0.08);
  --hero-accent-fill:linear-gradient(90deg,rgba(141,122,255,0.5),rgba(89,197,213,0.14));
  --hero-dash:rgba(89,197,213,0.16);
  --topic-dot-color:rgba(244,239,227,0.5);
  --footer-bar:rgba(239,182,111,0.18);
  --footer-divider:rgba(255,255,255,0.09);
  --inline-code-bg:rgba(140,107,255,0.12);
  --code-pre-bg:rgba(6,7,17,0.72);
  --code-bg:linear-gradient(180deg,#0d1117 0%,#090c13 100%);
  --code-border:rgba(255,255,255,0.08);
  --code-inner-border:rgba(255,255,255,0.06);
  --code-header-bg:rgba(255,255,255,0.04);
  --code-header-fg:#8b96a9;
  --code-lineno-fg:#58627a;
  --code-lineno-bg:rgba(255,255,255,0.03);
  --code-fg:#e2e8f0;
  --code-btn-bg:rgba(255,255,255,0.06);
  --code-btn-hover-bg:rgba(255,255,255,0.12);
  --code-btn-border:rgba(255,255,255,0.08);
}
body[data-theme="light"]{
  --bg:#f5ecdd;
  --panel:#fffaf1;
  --panel-2:#ece1ce;
  --bg-end:#eee1cb;
  --fg:#1c2233;
  --muted:#5b6178;
  --accent:#6652dd;
  --accent-2:#0f7f92;
  --accent-3:#c9853a;
  --surface:rgba(28,34,51,0.045);
  --surface-2:rgba(28,34,51,0.07);
  --line:rgba(28,34,51,0.1);
  --line-strong:rgba(28,34,51,0.16);
  --shadow:rgba(99,78,51,0.14);
  --dot-color:rgba(84,66,44,0.08);
  --header-bg:rgba(255,248,239,0.84);
  --hero-frame-bg:linear-gradient(180deg,#fffaf2 0%,#f3e8d8 100%);
  --card-bg:linear-gradient(180deg,#fffbf4 0%,#f3e9d9 100%);
  --content-panel-bg:linear-gradient(180deg,rgba(255,255,255,0.8),rgba(248,241,230,0.92));
  --footer-bg:linear-gradient(180deg,#fbf3e7 0%,#efe1cc 100%);
  --soft-panel-bg:rgba(255,255,255,0.58);
  --soft-panel-bg-strong:rgba(255,255,255,0.72);
  --figure-bg:rgba(255,255,255,0.82);
  --chip-border:rgba(102,82,221,0.16);
  --chip-bg:rgba(102,82,221,0.08);
  --tag-border:rgba(15,127,146,0.16);
  --tag-bg:rgba(15,127,146,0.08);
  --hero-accent-fill:linear-gradient(90deg,rgba(102,82,221,0.46),rgba(15,127,146,0.16));
  --hero-dash:rgba(15,127,146,0.22);
  --topic-dot-color:rgba(102,82,221,0.32);
  --footer-bar:rgba(201,133,58,0.22);
  --footer-divider:rgba(28,34,51,0.11);
  --inline-code-bg:rgba(102,82,221,0.12);
}
*{box-sizing:border-box}
*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:JetBrains Mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;background:linear-gradient(180deg,var(--panel-2) 0%,var(--bg) 34%,var(--bg-end) 100%);color:var(--fg);transition:background 240ms ease,color 240ms ease;line-height:1.6;overflow-x:hidden}
body::before{content:"";position:fixed;inset:-20%;background:radial-gradient(circle at 12% 18%,rgba(141,122,255,0.08),transparent 24%),radial-gradient(circle at 84% 20%,rgba(89,197,213,0.06),transparent 24%),radial-gradient(circle at 34% 78%,rgba(239,182,111,0.045),transparent 20%);pointer-events:none;z-index:-2}
body::after{content:"";position:fixed;inset:0;background-image:radial-gradient(var(--dot-color) 0.8px,transparent 0.8px);background-size:24px 24px;mask-image:linear-gradient(180deg,rgba(0,0,0,0.3),transparent 72%);pointer-events:none;z-index:-1;opacity:0.1}
.page-shell{min-height:100vh;position:relative}
.container{max-width:1080px;margin:0 auto;padding:0 1.2rem}
.page-shell,.container,.nav-row,.main-nav,.hero-copy,.post-card,.archive-post-link,.footer-card,.footer-nav,.post-content,.article-header,.article-response{min-width:0}
.site-header{padding:1rem 0;border-bottom:1px solid var(--line);backdrop-filter:blur(8px);background:var(--header-bg)}
.nav-row{display:flex;align-items:center;gap:0.75rem}
.brand{display:flex;align-items:center;gap:0.7rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;color:var(--fg);transition:opacity 180ms ease}
.brand:hover{opacity:0.82}
.brand-mark{width:34px;height:34px;display:block;flex-shrink:0}
.main-nav{display:flex;align-items:center;gap:1.05rem;margin-left:auto}
.main-nav a{position:relative;color:var(--muted);text-decoration:none;transition:color 180ms ease;font-size:0.96rem}
.main-nav a:hover{color:var(--fg)}
.main-nav a.is-active{color:var(--fg)}
.main-nav a.is-active::after{content:"";position:absolute;left:0;right:0;bottom:-0.35rem;height:2px;border-radius:999px;background:var(--accent-2)}
.theme-toggle{width:42px;height:42px;border:1px solid var(--line-strong);background:var(--surface);color:var(--fg);border-radius:999px;cursor:pointer;box-shadow:4px 4px 0 var(--shadow)}
.hero{padding:2.5rem 0 1.3rem;position:relative}
.hero-frame{position:relative;overflow:hidden;padding:2.4rem 2.4rem 2.1rem;border:1px solid var(--line-strong);border-radius:32px;background:var(--hero-frame-bg);box-shadow:12px 12px 0 var(--shadow);--hero-accent-width:120px;--hero-accent-right:1.4rem;--hero-accent-top:1.2rem}
.hero-frame::before{content:"";position:absolute;right:var(--hero-accent-right);top:var(--hero-accent-top);width:var(--hero-accent-width);height:18px;border-radius:999px;background:var(--hero-accent-fill);opacity:0.9}
.hero-frame::after{content:"";position:absolute;right:1.4rem;bottom:1.2rem;width:116px;height:116px;border:2px dashed var(--hero-dash);border-radius:26px;transform:rotate(8deg);animation:frameFloat 7s ease-in-out infinite}
.hero-copy{position:relative;z-index:1;max-width:860px}
.hero-topics{display:inline-flex;align-items:center;gap:0.7rem;flex-wrap:wrap;row-gap:0.45rem;max-width:calc(100% - var(--hero-accent-width) - var(--hero-accent-right) - 1rem);margin:0;padding:0.72rem 1rem;border:1px solid var(--chip-border);border-radius:999px;background:var(--chip-bg);color:var(--muted);font-size:0.77rem;letter-spacing:0.15em;text-transform:uppercase;white-space:normal}
.topic-dot{width:4px;height:4px;border-radius:50%;background:var(--topic-dot-color);flex-shrink:0}
.eyebrow{display:inline-flex;margin:0 0 1rem;padding:0.32rem 0.85rem;border:1px solid var(--chip-border);border-radius:999px;background:var(--chip-bg);color:var(--accent);font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase}
.hero h1{font-size:clamp(3rem,6vw,4.9rem);line-height:1.02;margin:1.2rem 0 1rem;letter-spacing:-0.03em;max-width:19ch;text-wrap:pretty;overflow-wrap:normal;word-break:normal;hyphens:none}
.hero-summary{color:var(--muted);font-size:1.04rem;line-height:1.82;margin:0;max-width:46ch}
.hero-links{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1.35rem}
.hero-jump{display:inline-flex;align-items:center;gap:0.5rem;padding:0.58rem 0.1rem;border:0;color:var(--fg);text-decoration:none;font-weight:700}
.hero-jump:hover{color:var(--accent-2)}
.content-block{padding:0.4rem 0 2rem}
.section-heading{margin:2.2rem 0 1.4rem;display:flex;flex-direction:column;gap:0.36rem;max-width:680px}
.section-heading h2{margin:0;font-size:clamp(1.7rem,2.2vw,2rem);line-height:1.15;overflow-wrap:anywhere}
.section-copy{margin:0;color:var(--muted);max-width:56ch}
.post-card-link{display:block;color:inherit;text-decoration:none}
.post-card{padding:1.2rem 1.25rem 1.1rem;border:1px solid var(--line-strong);border-radius:24px;background:var(--card-bg);display:grid;gap:0.85rem;align-items:start;text-align:left;box-shadow:10px 10px 0 var(--shadow);transition:border-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}
.post-card-link:hover .post-card{border-color:rgba(141,122,255,0.28);transform:translateY(-2px);box-shadow:14px 14px 0 var(--shadow)}
.post-card h3{font-size:1.1rem;font-weight:700;margin:0;color:var(--fg);overflow-wrap:anywhere}
.post-meta-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.post-category{display:inline-block;max-width:100%;padding:0.2rem 0.55rem;border-radius:999px;background:var(--chip-bg);color:var(--accent);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.12em;white-space:normal;overflow-wrap:anywhere}
.post-summary{margin:0;color:var(--muted);line-height:1.75;text-align:left;overflow-wrap:anywhere}
.tag-list{display:flex;flex-wrap:wrap;gap:0.45rem}
.tag-chip{display:inline-flex;align-items:center;max-width:100%;padding:0.22rem 0.58rem;border-radius:999px;border:1px solid var(--tag-border);background:var(--tag-bg);color:var(--accent-2);font-size:0.74rem;letter-spacing:0.08em;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere}
.post-read-time{margin:0;color:var(--muted);font-size:0.85rem;letter-spacing:0.04em;text-transform:uppercase}
.posts{list-style:none;padding:0;margin:1rem 0}
.post-item{padding:0.8rem 0;border-bottom:1px solid var(--line)}
.post-item a{color:var(--fg);text-decoration:none;font-weight:600}
.post-item .meta{color:var(--muted);font-size:0.9rem;margin-left:0.5rem}
.article-shell{position:relative;padding-bottom:0}
.reading-progress{position:absolute;top:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));transform-origin:left;transform:scaleX(0.18);animation:progressPulse 2.6s ease-out forwards}
.back-link{display:inline-block;margin-bottom:1rem;color:var(--accent-2);text-decoration:none;font-weight:600}
.article-header{margin-bottom:1.2rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.article-kicker{margin:0 0 0.35rem;color:var(--accent);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.16em}
.article-header h1{margin:0 0 0.35rem;font-size:clamp(1.6rem,2.4vw,2.2rem);overflow-wrap:anywhere}
.article-meta{margin:0;color:var(--muted)}
.article-summary{margin:0.9rem 0 0;color:var(--muted);max-width:58ch;line-height:1.8;overflow-wrap:anywhere}
.article-tags{margin-top:1rem}
.post-content{background:var(--content-panel-bg);padding:1.4rem 1.5rem;border-radius:24px;border:1px solid var(--line-strong);box-shadow:10px 10px 0 var(--shadow)}
.article-response{margin-top:5rem;padding:1rem 1.15rem;border:1px dashed rgba(89,197,213,0.28);border-radius:18px;background:rgba(89,197,213,0.05)}
.article-response h2{margin:0 0 0.35rem;font-size:0.98rem;letter-spacing:0.08em;text-transform:uppercase}
.article-response p{margin:0;color:var(--muted);line-height:1.75;overflow-wrap:anywhere}
.post-content h1,.post-content h2,.post-content h3{font-family:JetBrains Mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;line-height:1.2}
.post-content p,.post-content li{font-size:1rem;color:var(--muted);overflow-wrap:anywhere}
.post-content h2,.post-content h3{margin-top:1.8rem}
.post-figure{margin:1.35rem 0;display:grid;gap:0.7rem}
.post-figure img{display:block;width:100%;height:auto;border-radius:18px;border:1px solid var(--line-strong);background:var(--figure-bg);box-shadow:10px 10px 0 var(--shadow)}
.post-figure figcaption{color:var(--muted);font-size:0.9rem;line-height:1.6;text-align:center;overflow-wrap:anywhere}
.post-content code{background:var(--inline-code-bg);padding:0.12rem 0.35rem;border-radius:0.3rem}
.post-content :not(pre) > code{overflow-wrap:anywhere;word-break:break-word}
.post-content pre{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding:1rem;border-radius:12px;background:var(--code-pre-bg);border:1px solid var(--code-inner-border);color:var(--code-fg);max-width:100%}
.post-content pre code{color:inherit;background:transparent;padding:0}
.post-content .codehilite{position:relative;margin:1.1rem 0;border-radius:14px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;border:1px solid var(--code-border);box-shadow:0 12px 36px rgba(0,0,0,0.2);background:var(--code-bg);color:var(--code-fg);max-width:100%}
.post-content .codehilite::before{content:attr(data-code-title);display:flex;align-items:center;padding:0.6rem 0.9rem;font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--code-header-fg);background:var(--code-header-bg);border-bottom:1px solid rgba(255,255,255,0.07)}
.post-content .codehilite pre{margin:0;border:0;border-radius:0;background:transparent;padding:0.9rem 1rem}
.post-content .codehilite table{display:table;overflow:visible;margin:0;border:0;width:max-content;min-width:100%}
.post-content .codehilite td.linenos{width:2.2rem;min-width:2.2rem;padding:0.6rem 0.45rem 0.6rem 0.75rem;border-right:1px solid var(--code-inner-border);color:var(--code-lineno-fg);background:var(--code-lineno-bg);user-select:none;text-align:right}
.post-content .codehilite td.code{padding:0.1rem 0.9rem}
.post-content .codehilite .lineno{color:var(--code-lineno-fg)}
.copy-code-btn{position:absolute;top:0.55rem;right:0.7rem;z-index:1;border:1px solid var(--code-btn-border);background:var(--code-btn-bg);color:var(--code-fg);border-radius:999px;padding:0.28rem 0.6rem;cursor:pointer;font-size:0.76rem;font-family:inherit;transition:background 180ms ease}
.copy-code-btn:hover{background:var(--code-btn-hover-bg)}
.post-content .codehilite .k,.post-content .codehilite .kn,.post-content .codehilite .kd{color:#c792ea}
.post-content .codehilite .s,.post-content .codehilite .s1,.post-content .codehilite .s2{color:#7ee787}
.post-content .codehilite .n,.post-content .codehilite .nf{color:#e2e8f0}
.post-content .codehilite .o{color:#f472b6}
.post-content .codehilite .c1,.post-content .codehilite .cm{color:#6b7280;font-style:italic}
.post-content .codehilite .nb{color:#38bdf8}
.post-content table{display:block;width:max-content;min-width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse;margin:1rem 0;border:1px solid var(--line);border-radius:12px}
.post-content th,.post-content td{padding:0.75rem 0.85rem;border-bottom:1px solid var(--line);text-align:left}
.post-content th{background:rgba(140,107,255,0.12);color:var(--fg)}
.post-content tr:last-child td{border-bottom:0}
.post-content blockquote{margin:1rem 0;padding:0.8rem 1rem;border-left:3px solid var(--accent);background:rgba(140,107,255,0.08);color:var(--fg);overflow-wrap:anywhere}
.post-content strong{color:var(--fg)}
.post-content sup{font-size:0.78em}
.post-content a.footnote-ref{text-decoration:none;font-weight:700}
.post-content .footnote{margin-top:2.2rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.post-content .footnote hr{display:none}
.post-content .footnote ol{margin:0;padding-left:1.2rem;display:grid;gap:0.8rem}
.post-content .footnote li{color:var(--muted)}
.post-content .footnote li p{margin:0}
.post-content a.footnote-backref{text-decoration:none;margin-left:0.35rem;white-space:nowrap}
.content-page-shell,.listing-intro-shell{max-width:760px}
.content-page-shell{margin:0 auto}
.listing-intro-shell{margin:0}
.page-content .md-root > :first-child{margin-top:0}
.page-content .md-root > :last-child{margin-bottom:0}
.page-content hr{border:0;border-top:1px solid var(--line);margin:1.4rem 0}
.archive-shell{display:grid;gap:1.3rem}
.archive-intro{margin:0;color:var(--muted);max-width:60ch}
.archive-year{padding:1.35rem 1.4rem;border:1px solid var(--line-strong);border-radius:24px;background:var(--card-bg);box-shadow:10px 10px 0 var(--shadow)}
.archive-year-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.archive-year-head h3{margin:0;font-size:clamp(1.4rem,2vw,1.8rem)}
.archive-count{margin:0;color:var(--muted);text-transform:uppercase;letter-spacing:0.08em;font-size:0.82rem}
.archive-months{display:grid;gap:1rem;margin-top:1rem}
.archive-month{padding:1rem 1.05rem;border:1px solid var(--line);border-radius:18px;background:var(--soft-panel-bg)}
.archive-month-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:0.9rem}
.archive-month-head h4{margin:0;font-size:1rem}
.archive-month-count{color:var(--muted);font-size:0.9rem}
.archive-posts{list-style:none;padding:0;margin:0;display:grid;gap:0.8rem}
.archive-post{margin:0}
.archive-post-link{display:grid;gap:0.7rem;padding:1rem 1.05rem;border:1px solid var(--line);border-radius:16px;background:var(--soft-panel-bg-strong);text-decoration:none;color:inherit;transition:border-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}
.archive-post-link:hover{border-color:rgba(89,197,213,0.24);transform:translateY(-1px);box-shadow:8px 8px 0 var(--shadow)}
.archive-post-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.archive-post-link h5{margin:0;font-size:1rem;color:var(--fg);overflow-wrap:anywhere}
.archive-post-link p{margin:0;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}
.post-form{max-width:760px}
.post-form label{display:block;margin-bottom:0.9rem;color:var(--muted)}
.post-form input,.post-form textarea{width:100%;padding:0.75rem 0.85rem;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg);margin-top:0.35rem}
.post-checkbox{display:flex;align-items:center;gap:0.55rem}
.post-checkbox input{width:auto;margin-top:0}
.post-form button{padding:0.8rem 1rem;border:0;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:white;font-weight:700;cursor:pointer}
a{color:var(--accent-2)}
.site-footer{padding:2rem 0 2.8rem;color:var(--muted);margin-top:2rem}
.footer-card{position:relative;overflow:hidden;padding:1.35rem 1.45rem;border:1px solid var(--line-strong);border-radius:26px;background:var(--footer-bg);box-shadow:12px 12px 0 var(--shadow)}
.footer-card::before{content:"";position:absolute;right:1.6rem;top:-0.35rem;width:74px;height:18px;border-radius:999px;background:var(--footer-bar);transform:rotate(9deg)}
.footer-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.footer-brand{display:inline-flex;align-items:center;gap:0.7rem;color:var(--fg);text-decoration:none;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}
.footer-mark{width:30px;height:30px;display:block}
.footer-top{color:var(--muted);text-decoration:none}
.footer-top:hover{color:var(--fg)}
.footer-copy{margin:1rem 0 0.95rem;color:var(--muted);max-width:58ch;overflow-wrap:anywhere}
.footer-cursor{display:inline-block;width:0.58rem;height:1.05em;margin-left:0.28rem;border-radius:2px;background:var(--accent-2);vertical-align:text-bottom;animation:cursorBlink 1.2s steps(2,end) infinite}
.footer-nav{display:flex;flex-wrap:wrap;gap:1rem;padding-top:0.9rem;border-top:1px dashed var(--footer-divider)}
.footer-nav a{color:var(--fg);text-decoration:none}
.footer-nav a:hover{color:var(--accent-2)}
@keyframes frameFloat{0%,100%{transform:rotate(8deg) translateY(0)}50%{transform:rotate(10deg) translateY(-4px)}}
@keyframes progressPulse{from{transform:scaleX(0.18)}to{transform:scaleX(1)}}
@keyframes cursorBlink{0%,45%{opacity:1}46%,100%{opacity:0}}
@media (max-width: 760px){.hero{padding-top:2rem}.nav-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand toggle" "nav nav";align-items:center;row-gap:0.85rem}.brand{grid-area:brand}.main-nav{grid-area:nav;margin-left:0;gap:0.75rem 0.95rem;flex-wrap:wrap}.theme-toggle{grid-area:toggle;justify-self:end}.hero-frame{padding:1.7rem 1.35rem 1.5rem;--hero-accent-width:88px;--hero-accent-right:1rem;--hero-accent-top:1rem}.hero-frame::after{display:none}.hero h1{font-size:clamp(2.35rem,10vw,3.25rem);max-width:15ch}.archive-year-head,.archive-month-head,.archive-post-top,.footer-head{align-items:flex-start;flex-direction:column}}
@media (max-width: 560px){.main-nav{gap:0.55rem 0.85rem}.main-nav a{font-size:0.93rem}.theme-toggle{width:40px;height:40px}.hero-copy{max-width:none}.hero-topics{gap:0.5rem;padding:0.68rem 0.9rem}.topic-dot{display:none}.hero h1{font-size:clamp(1.85rem,8.4vw,2.75rem);max-width:none;text-wrap:pretty}}
@media (max-width: 420px){.container{padding:0 0.9rem}.site-header{padding:0.8rem 0}.brand{letter-spacing:0.05em}.main-nav a{font-size:0.9rem}.hero-frame{padding:1.35rem 1rem 1.2rem;border-radius:24px;box-shadow:8px 8px 0 var(--shadow)}.hero h1{font-size:clamp(1.65rem,9vw,2.1rem);max-width:none;line-height:1.04;text-wrap:pretty}.hero-summary,.post-content p,.post-content li,.post-summary,.article-summary,.footer-copy{font-size:0.96rem}.post-card,.archive-year,.archive-month,.archive-post-link,.post-content,.article-response,.footer-card{box-shadow:8px 8px 0 var(--shadow)}.post-content,.footer-card{padding:1rem}.post-card,.archive-year,.archive-month,.archive-post-link{padding:0.95rem 1rem}.article-response{padding:0.9rem 1rem}.copy-code-btn{top:0.45rem;right:0.5rem;padding:0.24rem 0.5rem}.post-content .codehilite::before{padding:0.55rem 0.75rem;font-size:0.72rem;letter-spacing:0.12em}.post-content .codehilite pre{padding:0.85rem}.post-content th,.post-content td{padding:0.65rem 0.75rem}}
