:root{--ink:#2d2923;--muted:#7d7265;--paper:#f7f1e6;--paper-deep:#eee2d0;--rail:#efe7db;--line:#d9cdbd;--rust:#aa4a32;--gold:#bb8840;--sage:#607463;--shadow:0 20px 60px #553f2b1f}*{box-sizing:border-box}html{background:#ded3c2}body{color:var(--ink);background:radial-gradient(circle at 10% 0%, #ffffffb8, transparent 30rem), repeating-linear-gradient(0deg, #7d644606 0 1px, transparent 1px 4px), var(--paper);min-height:100vh;margin:0;font-family:Songti SC,STSong,Noto Serif CJK SC,serif}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.site-shell{max-width:1500px;min-height:100vh;box-shadow:var(--shadow);background:#fffcf661;border-inline:1px solid #775c4026;grid-template-columns:230px minmax(0,1fr) 300px;margin:0 auto;display:grid}.rail{border-right:1px solid var(--line);background:linear-gradient(#efe7dbf5,#e7dcccbf);padding:34px 24px}.brand{gap:4px;margin-bottom:46px;display:grid}.brand-mark{color:var(--rust);letter-spacing:.25em;font-family:Kaiti SC,STKaiti,serif;font-size:13px}.brand-name{letter-spacing:.08em;font-size:22px}.rail-label{color:var(--muted);letter-spacing:.2em;text-transform:uppercase;margin:24px 0 10px;font-size:11px}.nav-list{gap:3px;display:grid}.nav-link{color:#605446;border-radius:7px;padding:9px 10px;font-size:14px;transition:background .2s,color .2s,transform .2s}.badge{background:var(--rust);color:#fff9ef;border-radius:10px;place-items:center;min-width:18px;height:18px;margin-left:5px;font-size:10px;display:inline-grid}.nav-link:hover{color:var(--rust);background:#fff9;transform:translate(3px)}.course-dot{background:var(--gold);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.course-dot.product{background:var(--rust)}.course-dot.logic{background:var(--sage)}.course-dot.economics{background:#8f6b93}.main-column{min-width:0;padding:34px clamp(24px,4vw,68px) 64px}.story-shell .main-column{grid-column:2/4}.story-shell .right-rail{display:none}.topline{color:var(--muted);letter-spacing:.08em;justify-content:space-between;align-items:center;margin-bottom:36px;font-size:12px;display:flex}.topline a{color:var(--rust)}.hero{max-width:720px;margin-bottom:48px}.eyebrow{color:var(--rust);letter-spacing:.22em;font-size:12px}h1{letter-spacing:-.03em;margin:12px 0 16px;font-size:clamp(32px,5vw,58px);font-weight:500;line-height:1.08}.lede{color:#6d6357;max-width:620px;font-size:16px;line-height:1.9}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;margin:38px 0 16px;padding-bottom:10px;display:flex}.section-heading h2{letter-spacing:.08em;margin:0;font-size:17px;font-weight:500}.section-heading span{color:var(--muted);font-size:12px}.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.lesson-card{border:1px solid var(--line);background:#fffcf5b8;border-radius:4px;min-height:136px;padding:19px 18px;transition:transform .25s,box-shadow .25s,border-color .25s}.lesson-card:hover{border-color:#bd9a73;transform:translateY(-3px)rotate(-.25deg);box-shadow:0 12px 28px #6f4c2a1c}.lesson-card .meta{color:var(--rust);letter-spacing:.14em;font-size:12px}.lesson-card h3{margin:16px 0 8px;font-size:18px;font-weight:500}.lesson-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.right-rail{border-left:1px solid var(--line);background:#f2eae08a;padding:34px 22px}.note-card{border:1px solid var(--line);background:#fffbf2ad;border-radius:5px;margin-bottom:16px;padding:18px}.note-card h3{margin:0 0 10px;font-size:14px;font-weight:600}.note-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.75}.story-paper{background:#fffcf5db;border:1px solid #dfd1be;max-width:760px;margin:4px auto 0;padding:clamp(28px,5vw,68px);box-shadow:0 15px 36px #5c462e14}.story-paper h1{font-size:clamp(28px,4vw,46px)}.story-body{letter-spacing:.025em;white-space:pre-wrap;font-size:18px;line-height:2.15}.story-highlight{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#f4d982;border-radius:.15em;padding:0 .08em}.comment-label{color:var(--accent);border:1px solid var(--accent);border-radius:999px;margin-left:8px;padding:2px 5px;font-size:11px;display:inline-block}.story-analysis{border-top:1px solid var(--line);color:#655b50;margin-top:38px;padding-top:26px;font-size:15px;line-height:1.9}.story-question{border-left:3px solid var(--gold);color:#665743;background:#f4ebdc;margin-top:12px;padding:14px 16px;font-size:14px;line-height:1.7}.story-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:760px;margin:20px auto;display:grid}.story-layout{grid-template-columns:minmax(0,760px) minmax(280px,360px);align-items:start;gap:clamp(18px,3vw,34px);display:grid}.story-reading-column{min-width:0}.story-layout .story-paper{max-width:none;margin:4px 0 0}.story-layout .story-tools{grid-template-columns:1fr;max-width:none;max-height:calc(100vh - 44px);margin:4px 0 0;padding-right:4px;display:grid;position:sticky;top:22px;overflow:auto}.admin-console{gap:14px;display:grid}.admin-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:13px;display:flex}.admin-row button{border:1px solid var(--line);color:var(--rust);background:0 0;padding:5px 9px}.invite-output{word-break:break-all;color:var(--rust);font-size:13px}.preview{color:#fff9ef;white-space:pre-wrap;background:#2d2923;max-height:260px;padding:12px;font-size:11px;overflow:auto}.story-tools .note-card{margin:0}.story-tools textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);background:#fffaf0;padding:8px}.selection-toolbar{z-index:10;border:1px solid var(--line);box-shadow:var(--shadow);background:#3c342b;gap:4px;padding:7px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.selection-toolbar button{color:#fff9ef;background:0 0;border:0;padding:7px 10px;font-size:13px}.selection-toolbar button:hover{color:#f4c777}.comment{border-top:1px solid var(--line);margin-top:12px;padding-top:10px;font-size:12px}.comment p{color:var(--muted);margin:5px 0 0;line-height:1.6}.agent-answer{white-space:pre-wrap;color:#68584b;border-top:1px solid var(--line);padding-top:12px;font-size:13px;line-height:1.7}.secondary-button,.comment button,.comments-head button{border:1px solid var(--line);color:var(--rust);background:0 0;margin:8px 4px 0 0;padding:5px 8px;font-size:12px}.annotation{border-top:1px solid var(--line);margin-top:12px;padding-top:10px;font-size:12px}.annotation p{color:var(--muted);line-height:1.6}.comments-head{justify-content:space-between;align-items:center;display:flex}.comments-head h3{margin:0}.auth-wrap{background:radial-gradient(circle at 70% 10%, #fbf1de 0 14rem, transparent 32rem), var(--paper-deep);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);width:min(430px,100%);box-shadow:var(--shadow);background:#fffcf5eb;padding:42px}.auth-card h1{margin-bottom:8px;font-size:32px}.field{gap:6px;margin-top:18px;display:grid}.field label{color:var(--muted);font-size:12px}.field input,.field textarea{width:100%;color:var(--ink);background:#fffaf0;border:1px solid #ccbba4;border-radius:3px;outline:none;padding:11px 12px}.field input:focus,.field textarea:focus{border-color:var(--rust);box-shadow:0 0 0 3px #aa4a321a}.primary-button{background:var(--rust);color:#fff9ef;letter-spacing:.08em;border:0;border-radius:3px;margin-top:22px;padding:11px 18px}.muted{color:var(--muted);font-size:13px}.error{color:#9b3629;margin-top:12px;font-size:13px}@media (max-width:1180px){.story-shell .main-column{grid-column:2/3}.story-layout{grid-template-columns:minmax(0,1fr)}.story-layout .story-tools{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;position:static}}@media (max-width:1040px){.site-shell{grid-template-columns:190px minmax(0,1fr)}.right-rail{display:none}.story-shell .main-column{grid-column:2}}@media (max-width:700px){.site-shell{display:block}.rail{border-right:0;border-bottom:1px solid var(--line);padding:20px}.brand{margin-bottom:18px}.nav-list{gap:4px;display:flex;overflow-x:auto}.nav-link{white-space:nowrap}.main-column{padding:24px 18px 48px}.lesson-grid{grid-template-columns:1fr}.story-paper{padding:26px 20px}.story-body{font-size:16px}}@media (max-width:760px){.story-tools{grid-template-columns:1fr}}
