@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.1spbknb88wd48.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1gsd1jahc5dg_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_ec844a4e-module__kRo21a__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_ec844a4e-module__kRo21a__variable{--font-sans:"Outfit", "Outfit Fallback"}
@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/79e9e0e3b9220e46-s.3a-pd9010p_dh.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/e62850744c7f266e-s.0n7ulcr4ivksg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/9433d1a810498265-s.p.1hij5ex6k3v9q.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/150f724d70372c02-s.1ljbalzvxyif7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/750c737482d9de2f-s.3ex3j6ahhvjry.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/5f402bd2d8eef81a-s.p.40bho2kviej2o.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.newsreader_9d484074-module__cRr2fG__className{font-family:Newsreader,Newsreader Fallback}.newsreader_9d484074-module__cRr2fG__variable{--font-serif:"Newsreader", "Newsreader Fallback"}
:root{--bg:#f7f7f8;--bg-elevated:#fff;--text:#0a0a0a;--muted:#5c5c66;--line:#0a0a0a14;--line-strong:#0a0a0a24;--accent:#0a0a0a;--accent-soft:#ececef;--focus:#2f6fed;--danger:#c43c3c;--success:#1a7f4b;--radius:14px;--shadow:0 1px 2px #0a0a0a0a, 0 24px 48px #0a0a0a0a;--font-sans:"Outfit", ui-sans-serif, system-ui, sans-serif;--font-serif:"Newsreader", ui-serif, Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(1120px,100% - 48px);margin:0 auto}.site-header,.admin-header{z-index:40;-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);border-bottom:1px solid var(--line);background:#f7f7f8b8;position:sticky;top:0}.nav-wrap,.admin-header{justify-content:space-between;align-items:center;height:64px;display:flex}.admin-header{padding:0 max(24px,50vw - 560px)}.brand{letter-spacing:-.03em;align-items:baseline;gap:0;font-size:17px;font-weight:650;display:inline-flex}.brand span{color:var(--text)}.brand b{color:var(--text);font-weight:650}.nav-wrap nav,.admin-header nav{color:var(--muted);align-items:center;gap:28px;font-size:14px;font-weight:500;display:flex}.nav-wrap nav a:hover,.admin-header nav a:hover{color:var(--text)}.admin-header form{margin:0}.admin-header button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:500}.admin-header button:hover{color:var(--text)}.write-btn,.primary-btn{background:var(--accent);color:#fff;letter-spacing:-.01em;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex}.write-btn:hover,.primary-btn:hover{background:#222;transform:translateY(-1px);box-shadow:0 8px 24px #0a0a0a1f}.primary-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{border:1px solid var(--line-strong);color:var(--text);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.btn-ghost:hover{background:var(--bg-elevated);border-color:#c9c9d1}.hero{isolation:isolate;background:radial-gradient(ellipse 80% 55% at 50% -10%, #2f6fed24, transparent 55%), radial-gradient(ellipse 70% 50% at 80% 100%, #0a0a0a0d, transparent 50%), linear-gradient(180deg, #fbfbfc 0%, var(--bg) 100%);align-items:center;min-height:min(88vh,820px);padding:72px 0 96px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;z-index:0;background:linear-gradient(105deg,#0000 40%,#ffffff8c 50%,#0000 60%);animation:8s ease-in-out infinite lightSweep;position:absolute;inset:0}.hero:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(#ffffffe6,#0000 65%),linear-gradient(#0000,#b4bed240);width:140%;height:55%;position:absolute;bottom:-20%;left:50%;transform:translate(-50%)}.hero-inner{z-index:1;text-align:center;max-width:820px;margin:0 auto;animation:.9s cubic-bezier(.22,1,.36,1) both riseIn;position:relative}.hero-brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:10px;margin-bottom:28px;font-size:15px;font-weight:600;animation:.9s cubic-bezier(.22,1,.36,1) 50ms both riseIn;display:inline-flex}.hero-brand-mark{background:var(--text);border-radius:99px;width:10px;height:10px;box-shadow:0 0 0 6px #0a0a0a0f}.hero h1{letter-spacing:-.055em;margin:0 0 22px;font-size:clamp(44px,7.2vw,80px);font-weight:650;line-height:1.02}.hero h1 em{font-family:var(--font-serif);letter-spacing:-.03em;font-style:italic;font-weight:500}.hero-lead{max-width:540px;color:var(--muted);margin:0 auto 34px;font-size:18px;line-height:1.65}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}@keyframes riseIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes lightSweep{0%,to{opacity:.35;transform:translate(-8%)}50%{opacity:.7;transform:translate(8%)}}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600;display:inline-block}.section{padding:88px 0;animation:.8s cubic-bezier(.22,1,.36,1) both riseIn}.section-head{max-width:640px;margin-bottom:36px}.section-head h2,.about h2{letter-spacing:-.04em;margin:10px 0 0;font-size:clamp(32px,4vw,44px);font-weight:650;line-height:1.1}.categories{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.category-card{border:1px solid var(--line);border-radius:var(--radius);min-height:auto;color:inherit;background:#ffffff8c;flex-direction:column;gap:8px;padding:22px 24px;transition:border-color .2s,background .2s,transform .2s;display:flex}.category-card:hover{background:var(--bg-elevated);border-color:var(--line-strong);transform:translateY(-2px)}.category-card span{color:var(--muted);letter-spacing:.06em;font-size:12px;font-weight:600}.category-card h3{letter-spacing:-.03em;margin:0;font-size:20px;font-weight:650}.category-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.post-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.post-card{border:1px solid var(--line);background:var(--bg-elevated);border-radius:18px;flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;overflow:hidden}.post-card:hover{box-shadow:var(--shadow);border-color:var(--line-strong);transform:translateY(-4px)}.cover{color:#b0b0b8;letter-spacing:.14em;background:linear-gradient(145deg,#ececef,#f7f7f8) 50%/cover;justify-content:center;align-items:center;height:180px;font-size:13px;font-weight:700;display:flex}.post-body{padding:20px 20px 22px}.category-pill{background:var(--accent-soft);color:var(--text);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-block}.post-body h2{letter-spacing:-.025em;margin:12px 0 8px;font-size:18px;font-weight:650;line-height:1.3}.post-body p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 12px;font-size:14px;line-height:1.55;display:-webkit-box;overflow:hidden}.post-body small{color:#8a8a96;font-size:12px}.notice,.empty{background:var(--bg-elevated);border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted);padding:28px}.about{border-top:1px solid var(--line);background:radial-gradient(60% 80% at 20%,#2f6fed14,#0000 55%),linear-gradient(#f3f3f5,#f7f7f8);padding:100px 0}.about p{color:var(--muted);max-width:560px;margin-top:16px;font-size:18px;line-height:1.7}footer{color:var(--muted);border-top:1px solid var(--line);padding:28px 0 40px;font-size:13px}.article-wrap{max-width:720px;padding-top:64px;padding-bottom:96px}.article-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;font-size:14px;display:flex}.article-wrap>h1{letter-spacing:-.045em;margin:0 0 16px;font-size:clamp(36px,5.5vw,56px);font-weight:650;line-height:1.08}.article-excerpt{color:var(--muted);font-size:20px;line-height:1.65;font-family:var(--font-serif);margin:0 0 28px}.article-cover{object-fit:cover;border:1px solid var(--line);border-radius:18px;width:100%;max-height:440px;margin:8px 0 36px}.prose{color:#2a2a32;font-size:17px;line-height:1.8}.prose h2{letter-spacing:-.03em;color:var(--text);margin-top:42px;font-size:28px;font-weight:650}.prose img{border-radius:12px;max-width:100%}.prose a{color:var(--focus);text-underline-offset:3px;text-decoration:underline}.admin-shell{background:var(--bg);min-height:100vh}.admin-main{width:min(1120px,100% - 48px);margin:auto;padding:48px 0 72px}.admin-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.admin-title p,.login-card>p{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;font-size:12px;font-weight:600}.admin-title h1{letter-spacing:-.04em;margin:6px 0 0;font-size:36px;font-weight:650}.stat-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.stat-grid>div,.admin-card,.table-card,.editor,.login-card{background:var(--bg-elevated);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 1px 2px #0a0a0a08}.stat-grid span{color:var(--muted);font-size:13px;font-weight:500;display:block}.stat-grid b{letter-spacing:-.04em;margin-top:14px;font-size:40px;font-weight:650;display:block}.admin-card{margin-top:18px}.admin-card h2{letter-spacing:-.03em;margin:0 0 8px}.admin-card p{color:var(--muted);margin:0}.admin-card a{color:var(--focus);font-weight:600}.login-page{background:radial-gradient(ellipse 70% 50% at 50% 0%, #2f6fed1a, transparent 55%), var(--bg);place-items:center;min-height:calc(100vh - 64px);padding:32px 0;display:grid}.login-card{width:min(420px,100% - 32px)}.login-card h1{letter-spacing:-.04em;margin:8px 0 24px;font-size:34px;font-weight:650}.login-card label,.editor label{color:var(--muted);flex-direction:column;gap:8px;margin-bottom:16px;font-size:13px;font-weight:550;display:flex}.login-card input,.editor input,.editor textarea,.editor select{border:1px solid var(--line-strong);width:100%;color:var(--text);background:#fafafa;border-radius:12px;outline:none;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.login-card input:focus,.editor input:focus,.editor textarea:focus,.editor select:focus{background:#fff;border-color:#9bb6f5;box-shadow:0 0 0 4px #2f6fed1f}.login-card .primary-btn{border-radius:12px;width:100%;margin:8px 0 12px}.login-card small{color:var(--muted);font-size:12px}.editor{max-width:880px}.two-col{grid-template-columns:1fr 1fr;gap:14px;display:grid}.upload{border:1px dashed var(--line-strong);cursor:pointer;background:#fafafa;border-radius:14px;justify-content:center;align-items:center;min-height:170px;padding:18px}.upload input{display:none}.upload img{border-radius:10px;max-width:100%;max-height:280px}.content-area{line-height:1.6;font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;font-size:13px!important}.check{align-items:center;flex-direction:row!important}.check input{width:auto}.table-card{padding:0;overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:16px 18px}th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}td small{color:#8a8a96;margin-top:4px;display:block}.status{background:var(--accent-soft);color:var(--muted);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:600}.status.live{color:var(--success);background:#1a7f4b1a}.danger{color:var(--danger);cursor:pointer;background:#c43c3c0f;border:1px solid #c43c3c40;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#0a0a0a59;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{width:min(560px,100%);max-height:90vh;overflow:auto}@media (max-width:900px){.nav-wrap nav{display:none}.categories,.post-grid,.stat-grid{grid-template-columns:1fr 1fr}.admin-header nav{gap:14px}.two-col{grid-template-columns:1fr}}@media (max-width:560px){.container,.admin-main{width:min(100% - 28px,1120px)}.categories,.post-grid,.stat-grid{grid-template-columns:1fr}.hero{min-height:auto;padding:56px 0 72px}.hero h1{font-size:42px}.admin-header nav a:nth-child(n+3){display:none}.admin-title{flex-direction:column;align-items:flex-start}.admin-title h1{font-size:30px}}
