:root{--ink:#161523;--paper:#F7F5EF;--white:#fff;--violet:#6D3EF2;--blue:#245BDB;--lime:#D7F75B;--muted:#5B596B;--line:#D9D6E2;--error:#B4233C;--success:#216B44}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.65}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,6vw,5.3rem)}h2{font-size:clamp(2rem,3.5vw,3.25rem)}h3{font-size:1.35rem}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.wrap{max-width:1200px;margin:auto;padding-left:24px;padding-right:24px}.skip{position:absolute;top:-100px;left:16px;background:var(--lime);color:var(--ink);z-index:100;padding:8px 16px}.skip:focus{top:8px}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.nav{min-height:88px;justify-content:space-between;gap:24px}.brand,.nav{display:flex;align-items:center}.brand{gap:8px;color:var(--ink);font-weight:800;letter-spacing:-.05em;font-size:1.43rem;line-height:1.05;white-space:nowrap}.brand img{width:48px;height:44px;object-fit:contain}.brand:hover{text-decoration:none}.brand-purple{color:var(--violet)}.brand small{display:block;font-size:.58rem;letter-spacing:.24em;color:var(--muted);margin-top:4px}.nav nav{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(12px,2.7vw,36px)}.nav nav a,.text-button{font-size:.88rem;font-weight:700;color:var(--ink)}.nav-login{background:var(--ink);color:#fff!important;border-radius:9px;padding:10px 15px}.text-button{background:none;border:0;padding:0}.text-button:hover{text-decoration:underline}.logout-form{margin:0}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.16em;color:var(--violet);text-transform:uppercase}.button{border:1px solid var(--violet);border-radius:10px;background:var(--violet);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:12px 21px;font-weight:700;line-height:1.4;min-height:46px}.button:hover{background:#5026c7;color:white;text-decoration:none}.back-link,.read-link,.subtle-link{font-weight:700}.subtle-link{color:var(--ink)}.back-link{display:inline-block;margin-bottom:35px}.period,em{color:var(--violet)}em{font-style:normal}.hero{overflow:hidden;border-bottom:1px solid var(--line)}.hero-grid{min-height:510px;display:grid;grid-template-columns:1fr 1fr;align-items:center;grid-gap:48px;gap:48px;padding-top:58px;padding-bottom:64px}.hero-copy{position:relative;z-index:1}.hero-copy h1{margin:20px 0 24px;line-height:1.02}.hero-copy p{font-size:1.1rem;color:var(--muted);line-height:1.75;max-width:570px}.hero-links{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}.hero-art{overflow:hidden;border-radius:20px;background:#e5e2f2;box-shadow:14px 14px 0 var(--lime)}.hero-art img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover}.feed{padding-top:82px;padding-bottom:96px;scroll-margin-top:22px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.section-head h2{margin:15px 0 12px}.section-head p{color:var(--muted)}.count,.small-count{font-size:.83rem;color:var(--muted);font-weight:600;white-space:nowrap}.filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:26px 0 30px;padding:22px 0}.filters>label{display:block;font-size:.8rem;font-weight:700;margin-bottom:8px}.filter-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-controls input{min-width:210px;flex:1 1}.filter-controls select{min-width:172px}.filter-controls label{font-size:.86rem;font-weight:700}.filters .button{min-height:45px}.filters .subtle-link{font-size:.85rem}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.article-card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px;min-height:320px;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.article-card:hover{box-shadow:0 12px 30px #16152310;transform:translateY(-2px)}.card-meta{color:var(--muted);font-size:.78rem;font-weight:600}.dot{display:inline-block;width:7px;height:7px;border-radius:100%;background:var(--violet);margin-right:9px}.article-card h3{font-size:1.55rem;line-height:1.23;margin:17px 0 13px}.article-card h3 a{color:var(--ink)}.article-card p{color:var(--muted);line-height:1.65;font-size:.92rem}.tags{display:flex;gap:7px;flex-wrap:wrap}.tag{border-radius:50px;background:#eeebfa;color:#49328c;padding:4px 11px;font-size:.75rem;font-weight:700}.read-link{margin-top:auto;padding-top:20px;font-size:.86rem}.pagination{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:40px;font-size:.92rem}.pagination a{font-weight:700}.about{background:var(--ink);color:var(--paper);padding:90px 0;scroll-margin-top:0}.about-grid{display:grid;grid-template-columns:1fr .8fr;grid-gap:72px;gap:72px;align-items:center}.about h2{margin:18px 0 24px}.about .eyebrow,.about em{color:var(--lime)}.about p{max-width:650px;color:#e5e2ed}.about img{border-radius:16px;aspect-ratio:1.4;object-fit:cover}.footer{background:#0f0e19;color:var(--paper);padding:50px 0}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer strong{font-size:1.4rem}.footer p{margin:7px 0;color:#d4d1df}.footer small{color:#bfbccb}.article-page{padding-top:48px;padding-bottom:100px}.article-page article{max-width:760px;margin:30px auto 0}.article-page h1{font-size:clamp(2.6rem,5.3vw,4.8rem);margin:20px 0 22px}.article-deck{font-size:1.3rem;color:var(--muted);line-height:1.5}.byline{font-size:.9rem;color:var(--muted);font-weight:600;margin:28px 0}.article-rule{height:5px;width:76px;background:var(--lime);margin:38px 0}.prose{font-size:1.08rem;line-height:1.85;overflow-wrap:anywhere}.prose h2{font-size:1.8rem;margin:45px 0 16px}.prose h3{margin:32px 0 12px}.prose p{margin:0 0 24px}.prose ol,.prose ul{padding-left:24px}.prose pre{max-width:100%;overflow:auto;padding:16px;background:var(--ink);color:#fff}.prose blockquote{border-left:4px solid var(--violet);margin:24px 0;padding-left:20px}.article-tags{margin-top:40px;border-top:1px solid var(--line);padding-top:25px}.article-end{max-width:760px;margin:70px auto 0}.article-end a{font-weight:700}.auth-shell{min-height:calc(100vh - 88px);display:grid;grid-template-columns:1fr 1fr}.auth-side{background:var(--ink);color:var(--paper);display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,7vw,120px)}.auth-side .eyebrow{color:var(--lime)}.auth-side h1{font-size:clamp(2.8rem,5vw,5rem);margin:28px 0}.auth-side em{color:var(--lime)}.auth-side p{color:#d8d5e3;max-width:410px;font-size:1.1rem}.auth-card{width:min(440px,calc(100% - 48px));align-self:center;justify-self:center;padding:30px 0}.auth-card h2{margin:15px 0}.auth-card p{color:var(--muted)}.auth-card form{margin:32px 0 22px}.auth-card label,.editor-form label{display:block;font-weight:700;font-size:.88rem;margin:18px 0 8px}.auth-card small{color:var(--muted)}input,select,textarea{background:#fff;border:1.5px solid #777181;border-radius:10px;min-height:44px;padding:10px 13px;color:var(--ink);max-width:100%}input:focus,select:focus,textarea:focus{border-color:var(--blue)}.auth-card input,.full{width:100%}.form-error{color:var(--error)}.form-error,.success{min-height:22px;font-weight:600;font-size:.88rem}.success{color:var(--success)}.workspace{padding-top:58px;padding-bottom:110px;min-height:65vh}.editor-heading,.workspace-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:12px 0 40px}.workspace h1{font-size:clamp(2.2rem,4.5vw,3.7rem);margin:13px 0 10px}.editor-heading p,.workspace-head p{color:var(--muted)}.editor-panel,.workspace-panel{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.panel-head{padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:1.4rem;margin:0}.small-count{margin-left:6px}.tabs{display:flex;gap:5px;flex-wrap:wrap}.tabs a,.tabs button{padding:7px 13px;border:0;border-radius:8px;background:none;font-size:.85rem;font-weight:700;color:var(--muted)}.tabs a[aria-current],.tabs button[aria-selected=true]{background:#ece7fc;color:#4523a6;text-decoration:none}.article-row{display:flex;align-items:center;gap:25px;padding:18px 26px;border-bottom:1px solid var(--line);color:var(--ink)}.article-row:last-child{border-bottom:0}.article-row:hover{background:#faf9fe;text-decoration:none}.row-info{flex:1 1;min-width:0;display:flex;flex-direction:column}.row-info strong{overflow-wrap:anywhere}.row-info small{color:var(--muted);font-size:.78rem}.badge{display:inline-block;border-radius:50px;background:#eee9ff;color:#49319a;padding:4px 13px;text-transform:capitalize;font-weight:700;font-size:.78rem}.badge.published{background:#e4f4e8;color:#216b44}.empty{text-align:center;padding:70px 25px}.empty h3{margin-bottom:8px}.empty p{color:var(--muted)}.standalone{min-height:54vh}.user-row label{font-size:.82rem;font-weight:700}.user-row select{min-width:135px}.workspace-panel>.form-error,.workspace-panel>.success{margin:0 26px}.editor-page{max-width:1040px}.editor-heading{margin-top:0}.editor-toolbar{border-bottom:1px solid var(--line);padding:15px 25px;display:flex;align-items:center;justify-content:space-between;gap:12px}.dirty{font-size:.82rem;color:var(--muted);font-weight:700}.editor-form,.preview{padding:18px 32px 40px}.editor-form input,.editor-form textarea{width:100%}.editor-form label span{color:var(--error)}.editor-form label small{font-weight:400;color:var(--muted)}.editor-form .hint,.hint{font-size:.78rem;color:var(--muted);margin:5px 0 12px}.body-input{min-height:340px;resize:vertical;font-family:ui-monospace,SFMono-Regular,monospace;font-size:.9rem;line-height:1.6}.preview{min-height:460px}.preview h2{margin:22px 0}.editor-actions{border-top:1px solid var(--line);background:#fcfbff;padding:20px 32px;justify-content:space-between;gap:15px}.action-buttons,.editor-actions{display:flex;align-items:center;flex-wrap:wrap}.action-buttons{gap:12px;margin-left:auto}.secondary-button{background:#fff;color:var(--blue);border:1.5px solid var(--blue);border-radius:10px;padding:10px 16px;font-weight:700;min-height:44px}.danger-link{color:var(--error);border:0;background:none;font-size:.88rem;font-weight:700}.editor-panel>.hint{padding:0 32px 20px}@media(max-width:900px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{gap:24px}.about-grid{gap:32px}}@media(max-width:650px){.wrap{padding-left:18px;padding-right:18px}.nav{min-height:72px;align-items:flex-start;flex-direction:column;padding-top:12px;padding-bottom:14px;gap:12px}.brand{font-size:1.15rem}.brand img{width:40px;height:40px}.nav nav{gap:12px 18px}.nav nav a,.text-button{font-size:.8rem}.hero-grid{grid-template-columns:1fr;gap:38px;padding-top:55px;padding-bottom:58px}.hero-copy h1{font-size:3.35rem}.hero-copy p{font-size:1rem}.hero-art{box-shadow:8px 8px 0 var(--lime)}.feed{padding-top:60px;padding-bottom:70px}.section-head{align-items:start}.section-head .count{margin-top:6px}.filter-controls input{flex:1 1 100%}.filter-controls select{flex:1 1}.card-grid{grid-template-columns:1fr}.article-card{min-height:260px}.about{padding:65px 0}.about-grid{grid-template-columns:1fr}.footer-grid{flex-direction:column}.article-page{padding-top:28px}.article-page article{margin-top:8px}.article-page h1{font-size:2.7rem}.article-deck{font-size:1.12rem}.auth-shell{grid-template-columns:1fr}.auth-side{padding:40px 24px}.auth-side h1{font-size:2.8rem;margin:10px 0}.auth-side p{margin:0}.auth-card{padding:45px 0}.workspace{padding-top:32px}.editor-heading,.workspace-head{margin-bottom:24px}.editor-heading,.panel-head,.workspace-head{align-items:flex-start;flex-direction:column}.article-row{padding:15px;gap:12px}.row-info strong{font-size:.94rem}.row-info small{font-size:.72rem}.user-row{flex-wrap:wrap}.user-row .row-info{flex:1 1 100%}.editor-form,.preview{padding:12px 18px 28px}.editor-toolbar{padding:12px 18px;flex-wrap:wrap}.editor-actions{padding:18px;align-items:stretch;flex-direction:column}.action-buttons{margin:0}.action-buttons button{flex:1 1 auto}.pagination{gap:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.article-card{transition:none}}