@charset "UTF-8";
:root{--bg:#0a0c0e;--surface:#12161a;--raised:#181c21;--ink:#ecece7;--muted:#9ba2a7;--line:#2a3035;--gold:#b89a61;--gold-light:#cfb581;--serif:Georgia,"Songti SC","SimSun",serif;--sans:Inter,"Segoe UI","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:dark}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:transparent}button:disabled{cursor:default;opacity:.35}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}svg{display:block}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}[hidden]{display:none!important}.wrap{width:calc(100% - 112px);max-width:1360px;margin:auto}main{outline:0}.muted{color:var(--muted)}
.site-header{height:110px;display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid var(--line);z-index:10}.brand{display:flex;gap:12px;align-items:center;font:24px/1.1 Georgia,serif;white-space:nowrap;letter-spacing:-.4px}.brand svg{width:31px;height:31px;fill:var(--gold)}.site-header nav{display:flex;gap:36px;margin-left:auto;margin-right:50px;align-items:center}.site-header nav a{color:#b4b7b9;font-size:14px;padding:14px 0;position:relative;transition:color .2s}.site-header nav a:hover,.site-header nav a.active{color:var(--ink)}.site-header nav a.active:after{content:"";position:absolute;bottom:3px;left:0;width:20px;height:1px;background:var(--gold)}.language-switch{display:flex;align-items:center;gap:9px;white-space:nowrap}.language-switch button{padding:8px 2px;font-size:12px;color:var(--muted)}.language-switch button[aria-pressed=true]{color:var(--gold-light)}.language-switch>span{color:#535b61;font-size:12px}body[data-page=home] .site-header{position:absolute;top:0;left:50%;transform:translateX(-50%);margin:0;border-color:#ffffff20}
.intro-hero{height:100svh;min-height:660px;max-height:1100px;position:relative;overflow:hidden;isolation:isolate;background:#0c1013}.intro-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 47%;z-index:-3;display:block}.hero-scrim{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(6,9,11,.3),transparent 70%),linear-gradient(0deg,var(--bg),transparent 28%),linear-gradient(180deg,rgba(6,9,11,.58),transparent 27%)}.intro-hero-content{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:80px;padding-bottom:75px}.intro-hero h1{font:400 clamp(110px,13vw,184px)/.98 Georgia,serif;letter-spacing:-8px;color:#f2f0e9}.hero-statement{font:italic clamp(30px,3.15vw,44px)/1.4 var(--serif);margin-top:25px;color:#d7d8d4;letter-spacing:-.8px}.hero-primary{margin-top:43px;display:inline-flex;align-items:center;justify-content:space-between;gap:38px;font-size:14px;border:1px solid #b89a6199;padding:15px 22px;color:var(--gold-light);background:#080c0f26;transition:background .2s,color .2s,border-color .2s}.hero-primary span{font-size:22px;line-height:1}.hero-primary:hover{background:var(--gold);color:#101315;border-color:var(--gold)}.hero-scroll{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);padding:12px}.hero-scroll svg{width:20px;height:26px;stroke:var(--gold);fill:none;stroke-width:1}
.about-section{display:grid;grid-template-columns:.9fr 1.4fr;gap:110px;padding:105px 0 70px;scroll-margin-top:55px;align-items:start}.about-section h2{font:400 47px/1.25 var(--serif);letter-spacing:-1.2px}.about-introduction{font:24px/1.75 var(--serif);color:#b7bdc0;max-width:720px}.chapter-links{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:0 0 100px}.chapter-link{padding:26px 0 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font:400 32px/1.4 var(--serif);transition:color .2s,border-color .2s}.chapter-link span{font-family:var(--sans);color:var(--gold);font-size:26px}.chapter-link:hover{color:var(--gold-light);border-color:var(--gold)}
.site-footer{padding:30px 0 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand{font:17px Georgia,serif;letter-spacing:.4px;color:#afb4b5}.copyright{font-size:12px;color:var(--muted)}
.inner-page{min-height:calc(100svh - 210px);padding-top:60px;padding-bottom:100px}.page-intro{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:20px 0 65px}.page-intro h1{font:400 60px/1.15 var(--serif);letter-spacing:-2px}.band-target{border:1px solid #b89a614a;color:var(--gold-light);padding:10px 15px;font-size:14px;white-space:nowrap}.lesson-card{display:grid;grid-template-columns:310px 1fr;gap:70px;align-items:center;padding-bottom:60px}.sheet-art{position:relative;min-height:320px;background:linear-gradient(145deg,#1e2429,#101518);border:1px solid #343c40;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gold)}.paper-number{font:400 107px/.95 Georgia,serif;letter-spacing:-6px;color:#c0a66d}.voice-wave{width:210px;height:56px;margin-top:22px;opacity:.58}.lesson-day{font-size:14px;color:var(--gold-light)}.lesson-card h2{font:400 43px/1.25 var(--serif);letter-spacing:-.8px;max-width:600px;margin-top:17px}.sheet-meta{display:flex;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:14px;margin-top:23px;line-height:1.6}.sheet-meta span+span:before{content:"·";margin-right:18px;color:#666f74}.lesson-actions{display:flex;align-items:center;gap:32px;margin-top:29px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:14px 22px;border:1px solid var(--gold);background:var(--gold);color:#101214;font-size:14px;line-height:1.5;transition:background .2s,border-color .2s}.button:hover{background:var(--gold-light);border-color:var(--gold-light)}.button.secondary{background:transparent;color:var(--ink);border-color:#444c52}.button.secondary:hover{border-color:var(--gold);background:#b89a6112}.button.ghost{color:var(--muted);background:transparent;border-color:transparent;padding-left:0;padding-right:0}.button.ghost:hover{color:var(--ink)}.text-link{font-size:14px;color:var(--muted);display:inline-flex;align-items:center;gap:18px}.text-link:hover{color:var(--gold-light)}.progress-track{height:2px;background:var(--line);margin-top:35px}.progress-fill{height:100%;background:var(--gold);transition:width .25s}.progress-label{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;color:var(--muted);margin-top:12px}.reset-progress{font-size:13px;color:var(--muted);padding:0;border-bottom:1px solid #535b60;white-space:nowrap}.reset-progress:hover{color:var(--ink)}
.practice-top{display:grid;grid-template-columns:1fr auto 1fr;gap:25px;align-items:center;padding:29px 0;border-bottom:1px solid var(--line)}.back-link{font-size:14px;color:var(--muted);display:flex;gap:13px;align-items:center;width:fit-content}.back-link:hover{color:var(--ink)}.practice-title{font:22px/1.3 Georgia,var(--serif);color:#c0c5c6}.practice-top>.text-link{justify-self:end}.practice-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:70px;padding:42px 0 85px;min-height:calc(100svh - 285px)}.practice-layout>*{min-width:0}.question-list{list-style:none;padding:0;margin:0;max-width:100%}.question-list li{margin-bottom:7px}.question-list button{width:100%;display:flex;gap:13px;align-items:flex-start;text-align:left;padding:13px 12px;color:var(--muted);font-size:14px;line-height:1.5;border-left:2px solid transparent}.question-list button:hover{color:var(--ink);background:#171c20}.question-list button.selected{color:var(--gold-light);background:#b89a6110;border-left-color:var(--gold)}.question-list button>span:first-child{font:16px/1.4 Georgia,serif;min-width:18px;color:#727c84}.question-list button.selected>span:first-child{color:var(--gold)}.done-mark{margin-left:auto;font-size:13px;color:var(--gold)}.sidebar-footer{margin-top:27px;padding-top:20px;border-top:1px solid var(--line)}.sidebar-footer .progress-label{margin-top:0}.sidebar-footer .progress-track{margin-top:14px}.practice-tabs{display:flex;gap:31px;border-bottom:1px solid var(--line);margin-bottom:32px}.practice-tabs button{font-size:14px;color:var(--muted);padding:0 0 16px;position:relative}.practice-tabs button[aria-selected=true]{color:var(--ink)}.practice-tabs button[aria-selected=true]:after{content:"";position:absolute;height:2px;bottom:-1px;left:0;right:0;background:var(--gold)}.question-index{display:block;font:16px/1.3 Georgia,serif;color:var(--gold)}.question-text{font:400 47px/1.24 Georgia,serif;letter-spacing:-.8px;margin-top:22px;margin-bottom:35px;max-width:850px}.practice-controls{display:flex;gap:25px;align-items:center;margin-bottom:30px}.timer{display:flex;gap:13px;align-items:center}.timer-label{font:27px/1 Georgia,serif;font-variant-numeric:tabular-nums;min-width:61px}.timer-button{width:36px;height:36px;border:1px solid #62665c;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--gold-light)}.timer-button:hover{border-color:var(--gold)}.timer-reset{font-size:22px;color:var(--muted);padding:3px}.control-divider{width:1px;height:23px;background:var(--line)}.timer-choice{display:flex;gap:13px}.timer-choice button{font-size:12px;color:var(--muted);padding:5px 0;border-bottom:1px solid transparent}.timer-choice button.active{color:var(--gold-light);border-color:var(--gold)}.answer-placeholder{display:flex;min-height:180px;align-items:center;justify-content:center;padding:30px;text-align:center;background:var(--surface);border:1px solid #252d33}.answer-placeholder p{font:25px/1.6 var(--serif);color:var(--muted)}.reveal-button{display:flex;gap:30px;align-items:center;color:#b9c0c2;font-size:14px;padding:8px 0;border-bottom:1px solid #5d5849}.reveal-button:hover{color:var(--gold-light)}.reveal-button span{color:var(--gold)}.answer-box{background:var(--surface);border-left:2px solid var(--gold);padding:30px 34px}.answer-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.answer-header h2{font:500 14px var(--sans);color:var(--gold-light)}.answer-header button{font-size:13px;color:var(--muted);padding:0}.answer-box>p{font:20px/1.8 Georgia,serif;color:#d1d6d7;white-space:pre-line;margin-top:22px}.translation{border-top:1px solid var(--line);padding-top:18px;margin-top:26px;font-size:14px;color:#a6afb2;line-height:2}.translation summary{cursor:pointer;width:fit-content}.translation p{white-space:pre-line;margin-top:15px}.expressions{margin-top:31px}.expressions h3{font-size:16px;font-weight:400;color:#bdc4c6;margin-bottom:12px}.expression-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.expression-row p{font:19px/1.5 Georgia,serif}.expression-row small{display:block;font:14px/1.7 var(--sans);color:var(--muted);margin-top:6px}.save-expression{font-size:22px;color:var(--muted);padding:5px 9px;flex-shrink:0}.save-expression.saved{color:var(--gold-light)}.save-expression:hover{color:var(--gold)}.practice-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:35px;padding-top:26px;border-top:1px solid var(--line)}.practice-bottom .button{font-size:13px;padding:12px 19px}.tab-intro{font:400 39px/1.3 var(--serif);letter-spacing:-.8px;margin-bottom:29px}.expression-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.expression-card{background:var(--surface);border:1px solid #262e33;padding:32px 28px;position:relative;min-width:0}.expression-card .save-expression{position:absolute;top:19px;right:15px}.expression-card h3{font:25px/1.4 Georgia,serif;max-width:calc(100% - 18px);padding-right:16px}.expression-card .meaning{font-size:14px;color:var(--muted);line-height:1.75;margin-top:15px}.expression-card .example{font:italic 18px/1.75 Georgia,serif;border-top:1px solid var(--line);padding-top:20px;margin-top:23px;color:#c4cace}.correction-table{width:100%;border-collapse:collapse;table-layout:fixed}.correction-table th{text-align:left;padding:14px 16px;font-size:14px;font-weight:400;color:var(--muted);border-bottom:1px solid #495158}.correction-table td{font:18px/1.65 Georgia,serif;padding:20px 16px;border-bottom:1px solid var(--line);width:50%;overflow-wrap:anywhere;vertical-align:top}.correction-table td:first-child{color:#919aa0}.correction-table td:last-child{color:var(--gold-light)}.archive-filter{display:flex;gap:33px;border-bottom:1px solid var(--line)}.archive-filter button{font-size:14px;color:var(--muted);padding:0 0 17px;border-bottom:2px solid transparent}.archive-filter button.active{color:var(--ink);border-color:var(--gold)}.archive-empty{min-height:350px;display:flex;align-items:center;justify-content:center;text-align:center}.archive-empty h2{font:400 25px/1.6 var(--serif);color:var(--muted)}.completion{padding:80px 0;text-align:center}.seal{height:65px;width:65px;border:1px solid #7d6f4f;color:var(--gold-light);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 28px;font-size:29px}.completion h2{font:400 45px/1.3 var(--serif)}.completion p{font-size:14px;color:var(--muted);margin-top:23px}.completion-actions{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:34px}
.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);opacity:0;background:#242b30;border:1px solid #626450;color:var(--ink);padding:14px 22px;font-size:14px;pointer-events:none;transition:opacity .2s,transform .2s;z-index:20;max-width:calc(100% - 40px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}.skip-link{position:fixed;top:-60px;left:20px;padding:14px;background:var(--gold);color:var(--bg);z-index:100}.skip-link:focus{top:10px}
html[lang=zh-CN] .hero-statement{font-style:normal;font-size:37px;letter-spacing:1px;line-height:1.5}html[lang=zh-CN] .about-introduction{font-size:21px;line-height:2}html[lang=zh-CN] .page-intro h1{letter-spacing:0}html[lang=zh-CN] .about-section h2{letter-spacing:0}html[lang=zh-CN] .tab-intro{letter-spacing:0}
@media(min-width:1700px){.intro-hero h1{font-size:190px}.hero-statement{font-size:45px}.intro-hero-content{padding-left:20px}.intro-hero-image{object-position:center 45%}}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.site-header{gap:25px}.brand{font-size:22px}.site-header nav{gap:28px;margin-right:25px}.intro-hero h1{font-size:137px}.hero-statement{font-size:36px}.about-section{gap:50px}.about-introduction{font-size:21px}.chapter-links{gap:50px}.lesson-card{grid-template-columns:260px 1fr;gap:45px}.sheet-art{min-height:310px}.lesson-card h2{font-size:36px}.practice-layout{grid-template-columns:205px minmax(0,1fr);gap:36px}.question-list button{font-size:13px;padding-left:9px;padding-right:9px}.question-text{font-size:40px}.practice-tabs{gap:25px}.practice-tabs button{font-size:13px}.expression-card{padding:28px 23px}.expression-card h3{font-size:24px}.expression-card .save-expression{right:9px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:125px;display:grid;grid-template-columns:1fr auto;gap:10px 25px;padding-top:21px;padding-bottom:12px}.brand{font-size:22px;gap:9px;grid-column:1;grid-row:1}.brand svg{width:27px;height:27px}.site-header nav{grid-column:1/-1;grid-row:2;gap:28px;height:43px;margin:0;align-items:center;justify-content:flex-start}.site-header nav a{font-size:13px;padding:10px 0}.site-header nav a.active:after{bottom:1px}.language-switch{grid-column:2;grid-row:1;gap:8px}.language-switch button{font-size:12px}.intro-hero{height:100svh;min-height:650px;max-height:980px}.intro-hero-image{object-position:65% 48%}.hero-scrim{background:linear-gradient(90deg,rgba(6,9,11,.45),rgba(6,9,11,.12)),linear-gradient(0deg,var(--bg),transparent 28%),linear-gradient(180deg,rgba(6,9,11,.5),transparent 30%)}.intro-hero-content{padding-top:110px;padding-bottom:60px}.intro-hero h1{font-size:103px;letter-spacing:-5px;line-height:1}.hero-statement{font-size:29px;max-width:310px;margin-top:20px;line-height:1.3;letter-spacing:-.6px}.hero-primary{margin-top:32px;padding:13px 18px;font-size:13px;gap:28px}.hero-scroll{bottom:32px}.hero-scroll svg{height:24px;width:18px}.about-section{grid-template-columns:1fr;gap:26px;padding:55px 0 43px;scroll-margin-top:30px}.about-section h2{font-size:36px}.about-introduction{font-size:21px;line-height:1.7}.chapter-links{grid-template-columns:1fr;gap:0;padding-bottom:55px}.chapter-link{font-size:30px;padding:23px 0}.chapter-link:last-child{border-bottom:1px solid var(--line)}.site-footer{padding:25px 0 30px}.footer-brand{font-size:15px}.copyright{font-size:12px}.inner-page{padding-top:30px;padding-bottom:65px;min-height:calc(100svh - 210px)}.page-intro{padding:17px 0 37px;gap:18px;align-items:flex-start}.page-intro h1{font-size:41px;letter-spacing:-1.3px;max-width:265px}.band-target{font-size:12px;padding:8px 10px;margin-top:6px;white-space:nowrap}.lesson-card{grid-template-columns:1fr;gap:30px;padding-bottom:0}.sheet-art{min-height:220px;flex-direction:row;gap:30px}.paper-number{font-size:94px}.voice-wave{width:150px;height:42px;margin:0}.lesson-day{font-size:14px}.lesson-card h2{font-size:35px;margin-top:12px;line-height:1.25}.sheet-meta{font-size:13px;margin-top:19px;gap:14px}.sheet-meta span+span:before{margin-right:14px}.lesson-actions{gap:24px;margin-top:25px}.button{font-size:13px;padding:13px 19px;gap:25px}.text-link{font-size:13px;gap:12px}.progress-track{margin-top:32px}.progress-label{font-size:13px}.practice-top{padding:23px 0;gap:12px}.back-link{font-size:12px;gap:7px}.practice-title{font-size:16px}.practice-top>.text-link{font-size:12px;gap:8px}.practice-layout{grid-template-columns:minmax(0,1fr);gap:25px;padding-top:25px;padding-bottom:60px}.question-list{display:flex;gap:9px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:#535341 transparent}.question-list li{margin:0;flex-shrink:0}.question-list button{font-size:12px;padding:9px 11px;gap:8px;white-space:nowrap;border-left:0;border-bottom:1px solid transparent;align-items:center;background:#171c20}.question-list button>span:first-child{font-size:14px;min-width:auto}.question-list button>span:nth-child(2){display:none}.question-list button.selected{border-left:0;border-bottom-color:var(--gold)}.question-list button.selected>span:nth-child(2){display:inline}.done-mark{font-size:11px}.sidebar-footer{display:none}.practice-tabs{gap:24px;margin-bottom:29px}.practice-tabs button{font-size:13px;padding-bottom:15px}.question-index{font-size:15px}.question-text{font-size:36px;line-height:1.22;margin-top:20px;margin-bottom:28px;letter-spacing:-.6px}.practice-controls{gap:19px;margin-bottom:27px}.timer{gap:12px}.timer-label{font-size:26px;min-width:58px}.timer-choice{gap:11px}.timer-choice button{font-size:12px}.answer-placeholder{min-height:160px;padding:24px}.reveal-button{font-size:14px;gap:22px}.answer-box{padding:25px 23px}.answer-box>p{font-size:19px;line-height:1.75;margin-top:20px}.answer-header h2{font-size:14px}.translation{font-size:14px}.expression-row{padding:17px 0;gap:14px}.expression-row p{font-size:18px}.expression-row small{font-size:13px}.expressions h3{font-size:16px}.practice-bottom{margin-top:30px;padding-top:25px;gap:15px}.practice-bottom .button{font-size:12px;padding:12px 15px;gap:15px}.tab-intro{font-size:33px;margin-bottom:27px}.expression-grid{grid-template-columns:1fr;gap:17px}.expression-card{padding:29px 25px}.expression-card h3{font-size:26px}.expression-card .meaning{font-size:14px}.expression-card .example{font-size:18px}.expression-card .save-expression{top:18px;right:13px}.correction-table th{font-size:13px;padding:13px 9px}.correction-table td{font-size:16px;padding:19px 9px}.archive-filter{gap:31px}.archive-filter button{font-size:14px}.archive-empty{min-height:330px}.archive-empty h2{font-size:24px}.completion{padding:55px 0}.completion h2{font-size:35px}.completion-actions{gap:17px;flex-direction:column;align-items:center}.toast{font-size:13px;padding:13px 20px}html[lang=zh-CN] .hero-statement{font-size:29px;letter-spacing:.5px}html[lang=zh-CN] .about-introduction{font-size:19px;line-height:1.9}html[lang=zh-CN] .page-intro h1{font-size:40px}}
@media(max-width:380px){.wrap{width:calc(100% - 36px)}.brand{font-size:20px}.brand svg{width:24px;height:24px}.site-header nav{gap:26px}.intro-hero h1{font-size:94px}.hero-statement{font-size:28px}.page-intro h1{font-size:37px;max-width:230px}.band-target{font-size:11px;padding:8px}.practice-tabs{gap:19px}.practice-tabs button{font-size:12px}.practice-title{font-size:15px}.practice-top>.text-link{font-size:11px}.question-text{font-size:33px}.timer-choice{gap:8px}.practice-controls{gap:15px}.sheet-art{gap:20px}.voice-wave{width:145px}.lesson-card h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:760px){.question-list{scrollbar-width:none}.question-list::-webkit-scrollbar{display:none}}

.intro-hero h1{font-size:clamp(78px,9.6vw,154px);letter-spacing:-5px;white-space:nowrap;max-width:100%}
html[lang=zh-CN] .hero-statement{font:italic clamp(30px,3.15vw,44px)/1.4 Georgia,serif;letter-spacing:-.8px}
@media(min-width:1700px){.intro-hero h1{font-size:154px}}
@media(max-width:1100px){.intro-hero h1{font-size:clamp(64px,9.6vw,106px)}}
@media(max-width:760px){.intro-hero h1{font-size:clamp(44px,11vw,80px);letter-spacing:-1.7px}html[lang=zh-CN] .hero-statement{font-size:29px;line-height:1.3;letter-spacing:-.6px}}
@media(max-width:380px){.intro-hero h1{font-size:40px;letter-spacing:-1.5px}html[lang=zh-CN] .hero-statement{font-size:28px}}

body[data-page=home] .site-header{border-color:transparent}
@media(max-width:760px){.intro-hero-image{top:120px;height:calc(100% - 120px);object-position:57% 48%}}

/* Fill the screen; protect the sky by cropping from the bottom. */
@media(min-width:761px){
  .intro-hero{height:100svh;min-height:0;max-height:none}
  .intro-hero-image{object-fit:cover;object-position:35% top}
}

/* Publishing and reading share the journal's quiet editorial typography. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.footer-tools{display:flex;gap:28px;align-items:center}.footer-tools>a{font-size:14px;color:var(--muted)}.footer-tools>a:hover{color:var(--gold-light)}
.portal-loading{min-height:60svh;display:flex;align-items:center;justify-content:center}.portal-loading span{width:24px;height:24px;border:1px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:portal-spin 1s linear infinite}@keyframes portal-spin{to{transform:rotate(360deg)}}
.auth-page{min-height:calc(100svh - 210px);display:grid;place-items:center;padding:55px 0 100px}.auth-panel{width:100%;max-width:420px}.auth-panel h1{font:400 62px/1.2 var(--serif);letter-spacing:-2px;margin-bottom:45px}.auth-panel form{display:grid;gap:12px}.auth-panel label{font-size:14px;color:var(--muted);margin-top:12px}.auth-panel input{height:51px;width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:16px var(--sans);padding:12px 14px;outline:none;border-radius:0}.auth-panel input:focus{border-color:var(--gold)}.auth-submit{margin-top:22px;justify-content:space-between}.auth-note{color:var(--muted);font:22px/1.7 var(--serif)}.form-error{font-size:15px;line-height:1.6;color:#dfa685;margin:15px 0}.studio-top,.editor-top{display:flex;gap:30px;align-items:center;justify-content:space-between;padding:20px 0 58px}.studio-top h1,.editor-top h1{font:400 62px/1.15 var(--serif);letter-spacing:-2px}.studio-actions,.editor-actions{display:flex;gap:28px;align-items:center}.studio-row,.journal-row{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:34px 0;border-bottom:1px solid var(--line)}.studio-row h2,.journal-row h2{font:400 34px/1.3 var(--serif);letter-spacing:-.6px;overflow-wrap:anywhere}.entry-meta{display:flex;align-items:center;flex-wrap:wrap;gap:17px;color:var(--muted);font-size:13px;line-height:1.6;margin-bottom:11px}.entry-meta>span:first-child{color:var(--gold-light)}.entry-status{border:1px solid #b89a6145;padding:2px 8px;color:var(--gold-light);font-size:12px}.entry-status.is-private{color:#a8b6c1;border-color:#a8b6c140}.row-actions{display:flex;gap:25px;align-items:center;white-space:nowrap;font-size:14px;color:var(--muted)}.row-actions a:hover,.row-actions button:hover{color:var(--gold-light)}.journal-row{padding:38px 0;transition:color .2s}.journal-row:hover h2{color:var(--gold-light)}.journal-row p{color:var(--muted);font:18px/1.65 var(--serif);margin-top:15px;max-width:800px}.journal-arrow{font-size:27px;color:var(--gold);flex-shrink:0}.journal-more{padding-top:40px;text-align:center}.editor-page{max-width:1180px}.editor-nav{display:flex;justify-content:space-between;align-items:center;padding-bottom:33px}.danger-link:hover{color:#dfa685}.editor-top{padding:15px 0 35px}.title-input,.summary-input{display:block;width:100%;border:0;background:transparent;color:var(--ink);outline:none;resize:none;border-radius:0}.title-input{font:400 48px/1.3 var(--serif);letter-spacing:-1px;padding:15px 0}.title-input::placeholder{color:#646d73}.summary-input{font:20px/1.6 var(--serif);padding:7px 0 26px;color:#b0b8bc;border-bottom:1px solid var(--line)}.summary-input::placeholder{color:#646d73}.editor-settings{display:flex;gap:36px;align-items:center;flex-wrap:wrap;padding:25px 0}.format-switch{display:flex;gap:21px;align-items:center}.format-switch button{font-size:14px;color:var(--muted);padding:9px 0;border-bottom:1px solid transparent}.format-switch button.active{color:var(--gold-light);border-color:var(--gold)}.field-pair{display:flex;gap:14px;align-items:center;font-size:13px;color:var(--muted)}.field-pair select{font:14px var(--sans);color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:10px 28px 10px 12px;border-radius:0}.writing-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--line);padding:14px 0}.markdown-editor{width:100%;min-height:480px;display:block;background:#0d1013;color:#d8dde0;border:1px solid var(--line);padding:28px;font:16px/1.8 Consolas,"SFMono-Regular",monospace;resize:vertical;border-radius:0;outline:none}.markdown-editor:focus{border-color:#665d49}.editor-preview{min-height:480px;border:1px solid var(--line);padding:32px}.pdf-upload{display:flex;gap:25px;align-items:center;padding:15px 0 32px}.pdf-file-name{font-size:15px;color:var(--muted);overflow-wrap:anywhere}.file-picker{position:relative;cursor:pointer;overflow:hidden}.file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.reading-page{max-width:1040px;padding:55px 0 100px;min-height:calc(100svh - 210px)}.entry-heading{padding:35px 0 45px}.entry-heading h1{font:400 64px/1.15 var(--serif);letter-spacing:-1.7px;overflow-wrap:anywhere;max-width:100%}.entry-heading .entry-meta{margin-bottom:24px}.prose{font:21px/1.85 var(--serif);color:#c6cdd0;overflow-wrap:anywhere}.prose>*+*{margin-top:22px}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--serif);font-weight:400;color:var(--ink);line-height:1.3;letter-spacing:-.5px;margin-top:38px;margin-bottom:17px}.prose h1{font-size:42px}.prose h2{font-size:36px}.prose h3{font-size:29px}.prose h4{font-size:25px}.prose a{color:var(--gold-light);text-decoration:underline;text-underline-offset:4px}.prose pre{background:var(--surface);padding:23px;overflow-x:auto;border:1px solid var(--line);font:15px/1.8 Consolas,monospace;white-space:pre}.prose code{font:15px/1.8 Consolas,monospace;background:var(--surface);padding:3px 5px}.prose pre code{padding:0}.prose blockquote{margin-left:0;margin-right:0;border-left:1px solid var(--gold);padding-left:24px;font-style:italic;color:var(--muted)}.prose img{max-width:100%;height:auto;display:block}.prose hr{border:0;border-top:1px solid var(--line);margin:35px 0}.prose table{border-collapse:collapse;display:block;overflow-x:auto;max-width:100%;font-size:18px}.prose td,.prose th{padding:12px 16px;border:1px solid var(--line);text-align:left}.prose ul,.prose ol{padding-left:30px}.prose li+li{margin-top:9px}.document-toolbar{display:flex;gap:30px;margin:35px 0}.pdf-reader{width:100%;height:80svh;min-height:550px;background:var(--surface);border:1px solid var(--line);display:block}.editor-pdf{margin-top:30px}.docs-prose>blockquote:first-child{margin-bottom:32px}
@media(max-width:1100px){.studio-actions{gap:20px}.studio-top h1,.editor-top h1{font-size:52px}.reading-page{width:calc(100% - 72px)}.editor-actions{gap:15px}.editor-settings{gap:24px}.entry-heading h1{font-size:56px}}
@media(max-width:760px){.footer-tools{gap:17px}.footer-tools>a{font-size:12px}.footer-tools .copyright{font-size:11px}.auth-page{min-height:calc(100svh - 210px);padding-top:30px;padding-bottom:60px}.auth-panel h1{font-size:48px;margin-bottom:32px}.studio-top,.editor-top{align-items:flex-start;flex-direction:column;gap:28px;padding-bottom:33px}.studio-top h1,.editor-top h1{font-size:44px}.studio-actions{width:100%;justify-content:space-between;gap:13px;flex-wrap:wrap}.studio-actions .text-link{font-size:12px}.studio-actions .button{font-size:12px;padding:12px 15px;gap:15px}.studio-filters,.journal-filters{gap:24px;overflow-x:auto;scrollbar-width:none}.studio-filters button,.journal-filters button{font-size:13px;white-space:nowrap}.studio-row{padding:25px 0;gap:20px;align-items:flex-start}.studio-row h2,.journal-row h2{font-size:27px}.row-actions{gap:14px;font-size:12px;flex-direction:column;align-items:flex-end;padding-top:5px}.entry-meta{font-size:12px;gap:12px}.entry-status{font-size:11px}.editor-top{gap:23px;padding-top:3px}.editor-actions{gap:15px;width:100%;justify-content:space-between}.title-input{font-size:35px;letter-spacing:-.5px}.summary-input{font-size:18px}.editor-settings{gap:20px 25px}.editor-settings>.format-switch{width:100%}.field-pair{font-size:12px;gap:9px}.field-pair select{font-size:13px;padding:9px 22px 9px 10px}.markdown-editor{padding:20px;min-height:380px;font-size:14px}.editor-preview{padding:23px;min-height:380px}.writing-toolbar .text-link{font-size:12px}.pdf-upload{gap:18px;flex-wrap:wrap}.pdf-file-name{font-size:13px}.reading-page{width:calc(100% - 40px);padding:35px 0 70px}.entry-heading{padding-top:28px;padding-bottom:34px}.entry-heading h1{font-size:42px;letter-spacing:-1px}.entry-heading .entry-meta{margin-bottom:18px}.prose{font-size:19px;line-height:1.8}.prose h1{font-size:33px}.prose h2{font-size:29px}.prose h3{font-size:25px}.prose h4{font-size:22px}.prose pre{font-size:13px;padding:18px}.prose code{font-size:13px}.prose table{font-size:16px}.prose th,.prose td{padding:10px}.journal-row{padding:28px 0;gap:22px}.journal-row p{font-size:17px}.journal-arrow{font-size:23px}.pdf-reader{height:70svh;min-height:450px}.document-toolbar{gap:23px;flex-wrap:wrap}}
