/* 烽火档案馆 × 山河长卷 · original vector landscape and paper surfaces */
:root{--ink:#382e26;--muted:#807566;--paper:#f6f1e6;--cream:#e9dfca;--line:#ded2bd;--red:#a1342c;--gold:#d5ba81;--green:#922e29;--white:#fffbf2;--serif:"Songti SC","SimSun","STSong",serif}
body{background:#f6f1e6;color:#382e26;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)' opacity='.035'/%3E%3C/svg%3E")}
.rail{width:218px;padding:34px 21px 23px;background:#eae2d1;border-color:#d9cbb2;background-image:linear-gradient(90deg,#d3c5aa16,transparent 12%,transparent 90%,#b59e7418)}
.brand{font-size:23px;letter-spacing:3px;margin:0 0 55px 5px;gap:13px;color:#472d25}.brand small{color:#998467;letter-spacing:2.7px;font-size:9px}.brand-seal{background:#9f3028;border:1px solid #b86449;outline:1px solid #e0b48a;color:#f5dfb5;width:40px;height:48px;box-shadow:2px 2px 0 #b59b6a26;font-size:16px}
.rail-label{color:#917e61;font-size:10px;letter-spacing:2px;border-top:1px solid #d6c7ac;padding-top:20px;margin-top:0}.rail-label span{color:#b09d7d;letter-spacing:1.5px}
.primary-nav{gap:8px}.primary-nav a{color:#8c7d64;font-size:12px;padding:13px 12px;border-radius:3px;letter-spacing:1px}.primary-nav a:hover{background:#ddd0b84d;color:#783c2d}.primary-nav a.active{background:#9d352d;color:#fff0d8;box-shadow:2px 3px 10px #8c493515;border:1px solid #a94c3e}.primary-nav a.active:after{content:"";position:absolute;width:3px;top:10px;bottom:10px;right:6px;background:#d7b98b55}.primary-nav b{background:#ffffff15;border-radius:2px;color:#e6c5a4;font-size:9px}.nav-icon{font-size:20px}
.rail-bottom{color:#8c7055;border-color:#d6c6a8}.rail-bottom small{color:#a79478}.live-dot{background:#a43a2c}.rail-settings{color:#a38d6d}.workspace{margin-left:218px}.topbar{height:72px;background:#f6f1e6d9;border-color:#e0d5c1;color:#9b886b;padding:0 40px}.topbar #breadcrumb{font-family:var(--serif);font-size:12px;letter-spacing:1px}.topbar #breadcrumb span{color:#c6b69a}.teacher-button{color:#8c6c4c;border-color:#dcd0ba}#save-status{color:#a19077}#save-status:before{background:#9b6043}
#main{padding:33px 40px 30px;max-width:1530px}.home-intro{margin:0 0 24px;align-items:center}.home-intro .eyebrow{font-size:10px;letter-spacing:2.3px;color:#a73f30}.home-intro h1{font-family:var(--serif);font-size:29px;letter-spacing:2px;color:#3a3025;margin-top:7px}.home-intro .lead{color:#9e8b6b;font-size:11px;letter-spacing:.5px}.edition-tag{border:1px solid #c9b48b;color:#92754a;border-radius:0;font-family:var(--serif);letter-spacing:2px;padding:7px 11px;position:relative;background:#ede2c72e}.edition-tag:before{content:"";position:absolute;inset:3px;border:1px solid #dac7a055;pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(275px,1fr);gap:0;border:1px solid #d2b98b;border-radius:3px;min-height:460px;background:#ede5d1;background-image:linear-gradient(90deg,#f5efdf 2%,#f4edddc4 32%,#eee4cd44 58%,#e7dcc255),url('shanhe-scroll.svg');background-position:center,bottom center;background-size:cover,cover;box-shadow:0 5px 22px #74604309;overflow:hidden;padding:0 31px 0 0}
.hero-grid:before{content:"";position:absolute;inset:8px;border:1px solid #bba4713d;pointer-events:none;z-index:3}.hero-grid:after{content:"";width:8px;height:100%;position:absolute;left:0;top:0;background:linear-gradient(90deg,#9d84602a,transparent);pointer-events:none}
.hero{background:transparent;color:#42382d;min-height:460px;border-radius:0;overflow:visible;position:relative}.hero:after{opacity:.12;mix-blend-mode:multiply}.hero-copy{padding:39px 34px 42px 39px;z-index:4}.hero-label{color:#a34b38;letter-spacing:2.5px;font-size:10px;margin-bottom:26px}.hero-label:before{width:26px;background:#ac5241}.hero h2{font-family:var(--serif);font-size:59px;line-height:1.32;letter-spacing:7px;font-weight:500;color:#342d23;margin-bottom:19px}.hero h2 em{font-style:normal;color:#9c352b;position:relative}.hero h2 em:after{content:"";position:absolute;bottom:-1px;left:0;width:95%;height:2px;background:#b5624324;transform:rotate(-2deg)}.hero p{font-family:var(--serif);font-size:14px;line-height:2;color:#8a775b;letter-spacing:1px}.hero .button{margin-top:27px}.button.gold{background:#9d342b;color:#fff0d6;border:1px solid #a64a36;border-radius:2px;box-shadow:3px 3px 0 #b3935924;padding:13px 24px;letter-spacing:1px;min-height:46px}.button.gold:hover{background:#842c26;box-shadow:4px 4px 0 #b3935940}.hero-meta{font-size:9px;color:#9c8b6f;letter-spacing:1px;margin-top:24px}.hero-meta b{color:#bd9b65}.hero-vertical{display:none}.hero .mountains,.hero .contour{display:none}
.scroll-caption{position:absolute;bottom:20px;right:18px;writing-mode:vertical-rl;color:#806e4e;font-family:var(--serif);letter-spacing:5px;font-size:9px;z-index:2;line-height:1.8}.scroll-caption:after{content:"山河";color:#a04a37;border:1px solid #a45e42;letter-spacing:2px;font-size:10px;padding:4px 2px;margin-top:13px;display:inline-block}
.incoming-letter{align-self:center;justify-self:center;width:100%;max-width:310px;min-height:344px;margin:20px 8px 50px 0;padding:25px 25px 31px;background:#fff8e5;position:relative;transform:rotate(2.2deg);border:1px solid #d7c39b;border-radius:1px;box-shadow:6px 9px 18px #70614417,-7px 7px 0 -1px #f5ecd3,-8px 8px 0 0 #d4c29e;z-index:4;overflow:visible;transition:transform .5s,box-shadow .4s}
.incoming-letter:hover{transform:rotate(.5deg) translateY(-3px);box-shadow:8px 12px 24px #70614423,-7px 7px 0 -1px #f5ecd3,-8px 8px 0 0 #d4c29e}
.incoming-letter:before{inset:8px;border:1px solid #cbb98f33}.incoming-letter:after{content:"";position:absolute;z-index:-1;bottom:-36px;left:-11px;width:calc(100% + 23px);height:102px;border:1px solid #ccb184;background:linear-gradient(151deg,transparent 49.5%,#d1b88e70 50%,transparent 50.6%),linear-gradient(209deg,transparent 49.5%,#d1b88e70 50%,transparent 50.6%),#e4d3ae;clip-path:polygon(0 0,50% 40%,100% 0,100% 100%,0 100%);box-shadow:0 7px 18px #6e5c3c22}
.letter-top{color:#a18a65;font-size:9px;letter-spacing:1.4px}.tiny-stamp{color:#a84a37;border:1px dashed #b87852;font-family:var(--serif);font-size:9px;padding:3px 6px;outline:1px solid #bd8f63;outline-offset:3px;transform:rotate(7deg);margin-right:3px}.paper-rule{border-color:#d5c4a1;margin:17px 0}.incoming-letter h3{color:#633d2c;font-size:19px;letter-spacing:1px;margin:0 0 17px;font-weight:500}.incoming-letter p{font-size:13px;color:#8c7757;line-height:2.15;letter-spacing:1px}.incoming-letter p+p{margin-top:13px}.incoming-letter .letter-sign{color:#a08a65;margin-top:18px;letter-spacing:1.4px;font-size:10px;padding-right:26px}.letter-open{border-color:#d8c6a5;color:#9f4b32;margin:19px 0 0;padding:13px 0 0;font-size:10px;letter-spacing:2px}.wax-seal{bottom:-18px;right:23px;width:56px;height:56px;border:5px double #b65f46;border-radius:44% 48% 45% 47%;color:#e6b78a;background:radial-gradient(ellipse at 35% 30%,#bd4e39,#8d2923 73%);transform:rotate(-14deg);font-size:26px;box-shadow:2px 4px 7px #5b382527,inset 0 0 0 1px #672b2055;z-index:4;opacity:1}
.journey-section{margin-top:28px}.section-heading{margin-bottom:18px}.section-heading .eyebrow{color:#b18b58;letter-spacing:2px}.section-heading h2{font-family:var(--serif);font-size:24px;letter-spacing:2px;color:#4a392a;margin-top:5px}.section-heading .plain-link{color:#9d6d46;font-size:10px;letter-spacing:1px}.act-grid{gap:20px;position:relative}.act-card{border:1px solid #d9c6a5;background:#f9f4e6;border-radius:2px;padding:19px 22px 15px;position:relative;overflow:hidden;box-shadow:0 3px 8px #78633d06}.act-card:before{content:"";position:absolute;right:-3px;bottom:0;width:70%;height:110px;background-image:url('shanhe-scroll.svg');background-size:auto 200px;background-position:right bottom;opacity:.2;pointer-events:none}.act-card:after{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#a6382c}.act-card:nth-child(2):after{background:#5f6451}.act-card:nth-child(3):after{background:#ab884f}.act-card:nth-child(2):before{background-position:20% bottom}.act-card:hover{border-color:#b8815e;box-shadow:0 8px 22px #7954390e;transform:translateY(-3px)}.act-card-top{margin-bottom:15px}.chapter-no{font-family:Georgia,serif;color:#c0ab83;font-size:23px}.date-label{color:#ac9270;font-size:10px;letter-spacing:1.5px}.arrow-circle{border:1px solid #dac6a2;border-radius:0;width:24px;height:24px;color:#a7744d;font-size:12px;background:#fff8e870}.act-card .small-label{font-size:9px;color:#aa8d64;letter-spacing:1px}.act-card h3{font-size:27px;letter-spacing:3px;margin:7px 0 10px;color:#593e2c}.act-card:nth-child(2) h3{color:#4d5144}.act-card:nth-child(3) h3{color:#876339}.act-card p{color:#9b8665;font-size:11px;line-height:1.9;position:relative;max-width:95%}.act-progress{border-color:#d9c8aa99;margin-top:18px;padding-top:11px;color:#af9573;position:relative;font-size:9px}.act-progress span:last-child{color:#a65f3b}
.home-bottom{grid-template-columns:minmax(0,2fr) minmax(220px,1fr);margin-top:23px;gap:20px}.progress-panel{background:#eee5d1;border-color:#dfccaa;border-radius:2px;gap:14px;padding:17px 20px}.progress-icon{color:#a7714c}.progress-panel h3{color:#77543a;font-family:var(--serif);font-size:14px;letter-spacing:.5px;font-weight:500}.progress-panel p{color:#ab9470;font-size:10px}.progress-panel a{color:#9a5938}.bar{background:#dfcfad;border-radius:0}.bar span{background:#ac4c36}.authenticity{border-color:#decdaf;border-radius:2px;background:#f5eddd;padding:15px 19px}.authenticity>span{color:#a34633;font-family:var(--serif);font-size:13px;letter-spacing:2px}.authenticity p{color:#a58f6c;font-size:10px}.site-footer{color:#b29d7a;padding-left:40px;padding-right:40px}.site-footer span:first-child{font-size:11px;letter-spacing:2px}.site-footer span:last-child{font-size:9px}
/* Common archive surfaces */
.page-heading h1{color:#493628;font-weight:500;letter-spacing:2px}.page-heading .eyebrow{color:#a25239;letter-spacing:1.7px}.lead{color:#9d8562}.filter-tabs{border-color:#dac9aa}.filter-tabs a{color:#a38b66;border-radius:2px}.filter-tabs a.active{background:#9f382d;color:#fff0d7}.archive-act-head h2{color:#674531}.archive-act-head p{color:#a58d66;border-color:#d9c5a1}.archive-list{background:#fdf8ec;border-color:#d9c5a2;border-radius:2px}.archive-row{padding:25px 25px;position:relative}.archive-row+.archive-row{border-color:#e4d5bc}.archive-row:hover{background:#f2e7d0}.archive-number{color:#b69b70;border-right:1px solid #decaab;padding-right:21px;min-width:53px}.archive-row h3{color:#61422e;font-size:21px}.archive-row p,.archive-row .small-label{color:#a48964}.archive-row-end,.archive-row-end small{color:#ad9470}.archive-row.complete .archive-row-end{color:#9d422c}.archive-arrow{color:#b3784b}.small-label{color:#ac9169}.plain-link{color:#a46540}.button.primary{background:#9e352b;border:1px solid #a34a37;color:#fff3df;border-radius:2px;box-shadow:2px 2px 0 #b7905b1a;letter-spacing:.5px}.button.primary:hover{background:#872d26}.button.secondary{background:#f7eedb;border-color:#d4bd95;color:#987046;border-radius:2px}.button.secondary:hover{background:#eee0c3}.button.outline{border-color:#caab7e;color:#985b39;border-radius:2px}.button.danger{background:#f1e0d1;border-color:#d1a58a;color:#a13e2d;border-radius:2px}.tag{background:#f4e9d3;border-color:#dec8a3;color:#a08055;border-radius:1px}.source-link{color:#aa5434;text-decoration-color:#cdac7d}.info-note{background:#f0e6d0;border-color:#dfc9a3;border-radius:2px;color:#9c8058}.info-note strong{color:#8e5b35}.privacy-note{color:#aa906d!important}.source-intro{background:#ede3cd;border-color:#d8c19a;border-radius:2px;color:#a48a60}.source-intro strong{color:#a04c31}.source-card{background:#fbf6e9;border-color:#dac5a1;border-radius:2px}.source-card h2{color:#6e472f}.source-card p{color:#9b825d}.source-id{color:#ba9663}.source-card .source-org{color:#ae946d}.source-card a{color:#a85735}
/* The reading desk: dossiers, notes and red pencil annotations */
.task-breadcrumb,.task-breadcrumb a{color:#a2865e}.task-header{border-color:#d8c5a4;position:relative;padding-bottom:28px}.task-header h1{color:#513a2a;font-size:34px;font-weight:500;letter-spacing:2px}.task-header .eyebrow{color:#a85a3b}.task-question{color:#ab8a60;font-size:17px}.task-seal{color:#a4402e;border-color:#b96c4a;border-radius:0;outline:1px solid #b96c4a55;outline-offset:3px;background:#f7ebd344;width:59px;height:65px}.task-letter{background:#eae0c8;border-color:#d8c099;border-radius:2px;padding:23px 25px;position:relative}.task-letter:after{content:"";position:absolute;inset:6px;border:1px solid #bd9d6c33;pointer-events:none}.letter-icon{color:#aa7d4b}.task-letter p{color:#826342;line-height:2;font-size:15px}.task-letter .small-label{color:#a88455;letter-spacing:1px}.task-block{background:#fffaf0;border:1px solid #ddc9a9;border-radius:2px;padding:27px;box-shadow:3px 4px 0 #cdb28a0a}.block-heading h2{color:#63442e;font-weight:500;font-size:22px;letter-spacing:1px}.step-no{border:1px solid #d6b890;color:#a14931;background:#f5e8cd;border-radius:0;font-size:13px}.block-heading>span{color:#b1956b}.block-help{color:#a28a63;font-size:12px}.evidence-card{border:1px solid #ddc7a0;border-radius:1px;background:#fbf4e3;position:relative}.evidence-card:before{content:"";position:absolute;width:1px;height:100%;left:10px;top:0;background:#b9855221;pointer-events:none}.evidence-card-head{padding:17px 21px 0}.evidence-index{color:#b08958;font-size:10px;letter-spacing:2px}.evidence-card h3{color:#775033;font-size:21px;letter-spacing:1px;margin:13px 21px}.evidence-text{color:#775c3e;font-size:15px;line-height:2.1;margin:0 21px 18px}.source-meta{margin:0 21px 17px;color:#b1956d;font-size:10px}.evidence-note{border-color:#dfc9a5;background:#f1e7d2;padding:17px 21px}.evidence-note label{color:#976840;font-size:12px}.evidence-note label span{color:#b29468;font-size:10px}.evidence-note textarea{background:#fffaf0;border-color:#dac39d;color:#6c5037;border-radius:2px;font-family:var(--serif);font-size:14px;line-height:2}.note-hint{color:#ac8b60;font-size:11px}.quiz{border-color:#e3cfad}.quiz legend{color:#765236}.quiz legend>span{color:#ba9767}.quiz-option{background:#fbf5e7;border-color:#e2cdab;color:#987349;border-radius:2px;font-size:12px}.quiz-option:hover{background:#f2e5cb}.quiz-option.selected,.quiz-option:has(input:checked){background:#f1ddc5;border-color:#b46c48;color:#804b30}.quiz-option input{accent-color:#a23e2b}.option-letter{color:#b69568}.quiz-feedback.correct{background:#eee8d5;color:#7a7043}.quiz-feedback.incorrect{background:#f3e2cd;color:#a65b34}.reflection-prompt{color:#a07d51}.reflection-block textarea,.letter-editor textarea{border-color:#d7bf97;border-radius:2px;background-color:#fcf7e9;background-image:repeating-linear-gradient(transparent 0,transparent 28.4px,#d8c6a22b 29px,transparent 30px);line-height:30px;background-position:0 12px;color:#6f5037;font-size:15px}.reflection-footer{color:#b2966c}.investigator-card{background:#ebe0c8;border-color:#d9c098;border-radius:2px;padding:25px 21px}.side-progress strong{color:#a04b31}.side-progress>span{color:#ad8c60}.side-checks{color:#a4895e}.evidence-status{border-color:#d7bf95;color:#a27b49}.doubt-card{background:#f1e7d1;border-color:#d8bd91;border-radius:2px;position:relative}.doubt-card:before{content:"查证";position:absolute;right:16px;top:22px;font-family:var(--serif);color:#bd8c5a33;font-size:34px;transform:rotate(-12deg);letter-spacing:5px;pointer-events:none}.doubt-icon{border-color:#ceaa79;color:#ad6940;border-radius:0}.doubt-card h3{color:#805432;font-size:19px;font-weight:500}.doubt-card p{color:#ad8b60;font-size:11px}.sidebar-note,.sidebar-note>span{color:#a7885e}.task-pagination{border-color:#ddc9a6;color:#aa784c}.question-first{background:#efe1c6;border-color:#d4b385;border-radius:2px}.question-first strong{color:#a24d2f;font-size:19px}.question-first p{color:#ad8a59;font-size:12px}.question-first textarea{border-color:#d7bc91;border-radius:2px;background:#fff8e8;color:#876441}.sealed-evidence{border-color:#ceb38b;color:#ae9265;background:#ece2cc;border-radius:2px}.collab-hint{background:#eee4ce;border-color:#d6bd93;color:#a78a5b;border-radius:2px}.collab-hint strong{color:#97643a}.field-label{color:#997043}.field-label span{color:#b1946a}input,textarea{border-color:#d5bf98;border-radius:2px;background:#fffaf0;color:#775237}textarea::placeholder,input::placeholder{color:#b3a083}input:focus,textarea:focus{border-color:#aa6746;outline:2px solid #bd764d22}.text-input{background:#fbf5e6}.completion-box{background:#ece5cd;border-color:#cbbb8c;color:#827348;border-radius:2px}.completion-box>span{color:#a25732}.completion-box p{color:#a18d63}.task-message.error{background:#f7e4d3;border-color:#e0bda0;color:#a45735;border-radius:2px}
/* The final letter and archive collection */
.journal-stats{background:#eee3cd;border-color:#dbc29b;border-radius:2px}.journal-stats>div{border-color:#d5be96}.journal-stats span{color:#a7895d}.journal-stats strong{color:#a64f31}.journal-stats small{color:#b1966a}.final-letter{background:#f3e8d0;border-color:#d5b98d;border-radius:2px;padding:31px 35px;box-shadow:4px 5px 0 #c6a87815;position:relative}.final-letter:after{content:"";position:absolute;inset:8px;border:1px solid #c5a36c33;pointer-events:none}.final-letter h2{color:#7b462d;font-size:24px}.final-letter p{color:#9a7750;font-size:15px}.final-letter blockquote{color:#ac4b30;border-color:#b36e45;font-size:24px;letter-spacing:2px}.final-letter .small-label{color:#b39363}.journal-detail{border-color:#ddc7a1;background:#fcf6e7;border-radius:2px}.journal-detail summary{color:#8b603b}.journal-detail summary small,.journal-detail summary>b{color:#b29465}.record-dot{background:#f2e8d1;border-color:#dac39b;color:#b08c57}.record-dot.done{background:#ecdbc0;border-color:#bb8855;color:#a04f30}.journal-detail-content{color:#a18459;border-color:#e1ccaa}.record-evidence{border-color:#e5d5b9}.record-evidence>span{color:#b08d5b}.badge-cabinet{background:#ece0c6;border-color:#d6b88b;border-radius:2px}.badge-cabinet .eyebrow{color:#b18c54}.badge-cabinet h3{color:#89613a;font-size:21px}.badge-item strong{color:#9a703f}.badge-item small{color:#b39667}.badge-mark{border-color:#cdb58d;color:#b4996d;border-radius:2px;transform:rotate(-4deg)}.earned .badge-mark{border-color:#af6e48;color:#a14a2e;background:#f2dfbe}.secret-earned .badge-mark{background:#edd9b0;border-color:#b08b4e;color:#966b2f}.next-step-note,.next-step-note>span{color:#a58759}.report-status{background:#f1e5cc;border-color:#d9bf91;color:#a1804e;border-radius:2px}.report-status.ready{background:#ebe0bf;border-color:#c3ae78;color:#8c743b}
/* Overlays are paper folios, never artificial historical originals. */
.modal-backdrop{background:#332719bc;backdrop-filter:blur(6px)}.modal{background:#f7efdf;border-color:#bf9b67;border-radius:3px;box-shadow:0 20px 80px #2e1e0f55}.modal-heading{background:#f6ecdbf5;border-color:#d7bd95}.modal-heading h2{color:#75472d;letter-spacing:2px}.icon-button{color:#b38e5c}.icon-button:hover{background:#eddfc5}.modal-body{color:#96754d}.modal-body hr{background:#dcc4a0}.modal-body>h3{color:#855332}.prologue-content>p{color:#9a794f;font-size:15px}.prologue-content>p.serif{color:#8f3b2b;font-size:27px;letter-spacing:3px}.prologue-content h3{color:#895638}.source-dl dt{color:#b29567}.source-dl dd{color:#96744c}.secret-option{background:#fbf3e2;border-color:#d9bf93;border-radius:2px}.secret-option:hover{background:#f0e2c6}.secret-option strong{color:#955c35}.secret-star{color:#ae6b3b}.secret-option small{color:#b09362}.false-statement{background:#eedcc0;border-color:#b77549;color:#a77347}.secret-source{color:#ae8b59}.secret-success .earned-seal{color:#a44429;border-color:#b76c40;background:#efd8ad;border-radius:2px;transform:rotate(-5deg)}.secret-success h3{color:#985c32}.secret-success>p{color:#a98658}.setting-row p{color:#ad9062}.teacher-grid a{background:#fff6e5;border-color:#d8bc90;color:#92603a;border-radius:2px}.teacher-grid a:hover{background:#f0e0be}.teacher-grid a>span,.teacher-grid small{color:#b18e5c}.empty-state h1{color:#8a5635}.empty-state p{color:#aa8d61}#toast{background:#863e2e;color:#fff0d6;border-color:#bd8053;border-radius:3px}.skip-link{background:#f5e7cb;color:#8e3e29}.warning{color:#a35432!important}
@media(min-width:1550px){.hero-grid,.hero{min-height:510px}.hero-copy{padding:47px 46px}.hero h2{font-size:70px}.hero p{font-size:15px}.incoming-letter{max-width:345px;padding:28px 30px 34px;min-height:370px}.incoming-letter h3{font-size:22px}.incoming-letter p{font-size:15px}.hero-label{margin-bottom:29px}.hero-meta{margin-top:28px}.act-card{padding:22px 25px 17px}.act-card h3{font-size:29px}}
@media(max-width:1220px){.rail{width:194px;padding:29px 16px}.workspace{margin-left:194px}.brand{font-size:21px;gap:9px;margin-left:4px}.brand-seal{width:36px;height:43px}.brand small{letter-spacing:2px;font-size:8px}.topbar{padding:0 27px}#main{padding:28px 27px}.hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);padding-right:23px;min-height:440px}.hero{min-height:440px}.hero-copy{padding:36px 25px 35px 29px}.hero h2{font-size:51px;letter-spacing:5px}.hero-label{font-size:9px;letter-spacing:1.7px}.hero p{font-size:13px}.incoming-letter{max-width:275px;min-height:330px;padding:22px 22px 27px;margin-bottom:42px}.incoming-letter h3{font-size:18px}.incoming-letter p{font-size:12px}.scroll-caption{right:11px}.act-card{padding:17px 18px 14px}.act-card h3{font-size:24px}.act-grid{gap:15px}.act-card p{font-size:10px}.act-progress{gap:7px}.home-bottom{grid-template-columns:1.8fr 1fr}.site-footer{padding-left:27px;padding-right:27px}.task-header h1{font-size:30px}.task-block{padding:23px}.progress-panel h3{font-size:13px}.progress-panel{padding:17px}.evidence-text{font-size:15px}}
@media(max-width:1000px){.rail{width:178px;padding-left:12px;padding-right:12px}.workspace{margin-left:178px}.brand{font-size:18px;gap:9px}.brand small{letter-spacing:1.5px}.primary-nav a{font-size:11px;gap:8px;padding-left:9px;padding-right:9px}.hero-grid{grid-template-columns:minmax(0,1fr) 225px;min-height:420px;padding-right:17px}.hero{min-height:420px}.hero-copy{padding:33px 20px 30px 25px}.hero h2{font-size:43px;letter-spacing:3px}.hero p{font-size:12px;letter-spacing:.5px}.hero-label{font-size:8px;letter-spacing:1px;gap:7px}.hero-label:before{width:15px}.hero-meta{font-size:8px;letter-spacing:0}.hero .button{padding:12px 17px;font-size:11px}.incoming-letter{min-height:315px;padding:19px 19px 24px}.incoming-letter h3{font-size:17px}.incoming-letter p{font-size:12px;letter-spacing:.5px}.incoming-letter .letter-sign{font-size:9px;margin-top:12px;padding-right:12px}.letter-open{font-size:9px;margin-top:14px}.tiny-stamp{font-size:8px}.incoming-letter .letter-top{font-size:8px;letter-spacing:1px}.wax-seal{width:48px;height:48px;font-size:23px;bottom:-18px;right:15px}.home-intro h1{font-size:24px;letter-spacing:1px}.act-card{padding:16px 14px}.act-card h3{font-size:23px}.act-card .small-label{font-size:8px;letter-spacing:.5px}.act-progress{display:block}.act-progress span:last-child{display:block;margin-top:4px}.home-bottom{grid-template-columns:1fr}.authenticity{display:flex;gap:22px;align-items:center}.authenticity p{margin:0}.scroll-caption{font-size:8px;right:8px;bottom:15px}.task-header h1{font-size:30px}.task-side{position:static}.block-heading h2{font-size:21px}}
@media(max-width:760px){.rail{width:auto;height:67px;background:#f1e7d4f5;border-top:1px solid #cfb88d;padding:0 0 env(safe-area-inset-bottom)}.primary-nav a{font-size:9px;padding:8px 3px;letter-spacing:.3px;color:#b1956b}.primary-nav a.active{border:0!important;color:#9a382a;background:transparent!important;box-shadow:none}.primary-nav a.active:after{display:none}.workspace{margin-left:0;padding-bottom:67px}.topbar{height:60px;padding:0 20px}.topbar #breadcrumb{font-size:11px}.teacher-button{font-size:10px;color:#9d7148}#main{padding:23px 19px}.home-intro{margin-bottom:21px}.home-intro .eyebrow{font-size:8px;letter-spacing:2px}.home-intro h1{font-size:26px;letter-spacing:1px;margin:10px 0 6px}.home-intro .lead{font-size:11px;letter-spacing:0}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:0 0 51px;background-image:linear-gradient(180deg,#f5eddbf0 4%,#f2e8d2b0 34%,#ece1c820 78%),url('shanhe-scroll.svg');background-size:cover,auto 575px;background-repeat:no-repeat;background-position:center,bottom center;overflow:hidden}.hero-grid:before{inset:6px}.hero{min-height:auto;overflow:visible}.hero-copy{padding:28px 27px 21px}.hero-label{font-size:8px;letter-spacing:1.4px;margin-bottom:19px}.hero-label:before{width:22px}.hero h2{font-size:49px;letter-spacing:5px;margin-bottom:17px;line-height:1.35}.hero p{font-size:13px;line-height:1.95;letter-spacing:.8px}.hero .button{padding:13px 23px;margin-top:22px;min-height:46px;font-size:12px}.hero-meta{font-size:8px;letter-spacing:.5px;margin-top:19px}.hero-vertical{display:none}.incoming-letter{max-width:calc(100% - 77px);width:285px;margin:5px 0 20px;min-height:auto;padding:21px 23px 26px;transform:rotate(2deg)}.incoming-letter .letter-top{font-size:9px}.incoming-letter h3{font-size:19px;margin-bottom:13px}.incoming-letter p{font-size:13px;letter-spacing:1px;line-height:2.1}.incoming-letter p+p{margin-top:9px}.incoming-letter .letter-sign{font-size:10px;margin-top:15px;padding-right:12px}.paper-rule{margin:13px 0}.letter-open{margin-top:15px;padding-top:12px;font-size:10px;letter-spacing:1px}.tiny-stamp{font-size:9px}.wax-seal{width:52px;height:52px;bottom:-23px;right:18px;font-size:25px}.incoming-letter:after{bottom:-30px;height:90px}.scroll-caption{bottom:37px;right:15px;font-size:9px;letter-spacing:3px}.journey-section{margin-top:26px}.section-heading{gap:8px;margin-bottom:20px}.section-heading h2{font-size:21px;letter-spacing:1px}.section-heading .eyebrow{font-size:8px}.section-heading .plain-link{font-size:9px;white-space:nowrap}.act-grid{grid-template-columns:1fr;gap:18px}.act-card{padding:20px 22px 15px;display:grid;grid-template-columns:1fr 1fr;gap:0 14px;overflow:visible}.act-card:before{height:100px;width:50%;opacity:.23}.act-card:after{width:3px}.act-card-top{margin-bottom:11px;grid-column:1 / -1}.act-card .small-label{font-size:9px;grid-column:1 / -1}.act-card h3{font-size:27px;letter-spacing:3px;margin:7px 0 0;grid-column:1}.act-card p{grid-row:3 / 5;grid-column:2;min-height:0;font-size:11px;line-height:2;align-self:center}.act-progress{grid-column:1 / -1;display:flex;margin-top:17px;padding-top:11px;font-size:9px}.act-progress span:last-child{margin:0}.chapter-no{font-size:23px}.date-label{font-size:10px}.home-bottom{margin-top:20px;gap:15px}.progress-panel{padding:18px;gap:11px}.progress-panel h3{font-size:14px;line-height:1.8;max-width:210px}.progress-panel a{font-size:10px;white-space:nowrap}.authenticity{padding:15px 18px;gap:16px}.authenticity>span{font-size:13px;white-space:nowrap;letter-spacing:1px}.authenticity p{font-size:10px;line-height:1.9}.site-footer{padding:6px 20px 24px}.site-footer span:first-child{font-size:11px}.site-footer span:last-child{font-size:9px;color:#b39d7b}.page-heading h1{font-size:28px;letter-spacing:1px}.filter-tabs a{font-size:11px}.archive-row{padding:21px 17px;gap:14px}.archive-number{font-size:22px;padding-right:14px;min-width:39px}.archive-row h3{font-size:19px}.archive-row p{font-size:11px}.archive-act-head h2{font-size:22px}.task-header h1{font-size:28px;line-height:1.6;letter-spacing:1px}.task-seal{width:45px;height:53px;margin-right:5px}.task-question{font-size:15px}.task-header{padding-bottom:22px}.task-letter{padding:20px 18px;gap:13px}.task-letter p{font-size:15px;line-height:2}.task-letter .small-label{font-size:9px}.task-block{padding:22px 17px}.block-heading h2{font-size:21px}.block-help{font-size:12px}.evidence-card-head{padding:15px 16px 0}.evidence-card h3{font-size:20px;margin:12px 16px}.evidence-text{font-size:16px;line-height:2.1;margin:0 16px 17px}.source-meta{margin:0 16px 16px}.source-meta>span{font-size:10px}.evidence-index{font-size:9px}.evidence-note{padding:16px}.evidence-note textarea{font-size:15px}.evidence-note label{font-size:12px}.note-hint{font-size:11px}.quiz legend{font-size:15px}.quiz-option{font-size:13px;padding:12px;line-height:1.9}.quiz-feedback{font-size:12px}.reflection-prompt{font-size:13px}.reflection-block textarea,.letter-editor textarea{font-size:16px}.reflection-footer{font-size:10px}.doubt-card h3{font-size:20px}.doubt-card p{font-size:12px}.investigator-card{padding:21px}.side-progress strong{font-size:39px}.source-card h2{font-size:22px}.source-card p{font-size:13px}.source-card .source-org{font-size:11px}.source-intro strong{font-size:22px}.journal-stats strong{font-size:29px}.final-letter{padding:26px 24px}.final-letter p{font-size:16px}.final-letter h2{font-size:24px}.final-letter blockquote{font-size:24px;letter-spacing:1px}.journal-detail summary{font-size:13px}.journal-detail-content{font-size:13px}.badge-cabinet h3{font-size:22px}.badge-item strong{font-size:14px}.badge-item small{font-size:11px}.modal-heading h2{font-size:21px}.modal-body{font-size:14px}.prologue-content>p{font-size:16px}.prologue-content>p.serif{font-size:27px}.info-note{font-size:12px}.teacher-grid a{font-size:18px}.secret-option strong{font-size:18px}.secret-option small{font-size:11px}.privacy-note{font-size:11px!important}.source-dl{font-size:13px}}
@media(prefers-reduced-motion:no-preference){.hero-copy{animation:ink-enter .65s ease-out both}.incoming-letter{animation:letter-enter .8s ease-out both}.act-card{animation:ink-enter .55s ease-out both}.act-card:nth-child(2){animation-delay:.08s}.act-card:nth-child(3){animation-delay:.16s}@keyframes ink-enter{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}@keyframes letter-enter{from{opacity:0;translate:0 15px;rotate:-2deg}to{opacity:1;translate:0 0;rotate:0deg}}}
@media print{body{background:#fff!important;color:#222}.workspace{margin:0}.task-block,.evidence-card,.final-letter{background:#fff;box-shadow:none}.hero-grid{background:#fff}.scroll-caption{display:none}}

/* 首页第二次精修：卷首、邮路与三幕书签 */
.home-intro{margin-bottom:25px;padding-bottom:18px;border-bottom:1px solid #d9cbb5;position:relative}.home-intro:after{content:'序';position:absolute;bottom:-10px;left:0;background:#f6f1e6;color:#a43e30;font-family:var(--serif);padding-right:12px;font-size:13px}.home-intro h1{font-size:25px;letter-spacing:3px}.home-intro .lead{color:#81745f;font-size:12px}.hero-grid{min-height:490px;background-image:linear-gradient(90deg,#f5efdfef 0%,#f4edddaa 31%,#eee4cd08 70%),url('shanhe-scroll.svg');box-shadow:0 12px 32px #6653330c,0 1px 0 #fff9ed inset;border-radius:1px;isolation:isolate}.hero-grid:after{width:100%;height:7px;top:auto;bottom:0;background:linear-gradient(0deg,#95724825,transparent)}.hero-grid:before{inset:10px;border-color:#ad8b4e48}.hero{min-height:490px}.hero-copy{padding:45px 24px 40px 40px}.hero-label{font-size:10px;letter-spacing:3px;margin-bottom:29px}.hero h2{font-size:clamp(44px,4.7vw,76px);line-height:1.36;letter-spacing:5px;text-shadow:1px 2px 0 #fff5dc}.hero p{color:#74644d;font-size:14px}.hero-meta{color:#89785d;letter-spacing:1.4px}.hero .button{margin-top:28px;position:relative}.hero .button span{margin-left:18px}.incoming-letter{background:linear-gradient(115deg,#fffbea,#f8eed4);padding:26px 26px 30px;margin-top:12px;transform:rotate(3deg);box-shadow:9px 16px 26px #594a3422,-8px 7px 0 -1px #f5ecd3,-9px 8px 0 0 #c9b58e}.incoming-letter h3{color:#654532;letter-spacing:2px}.incoming-letter p{color:#7b684d}.incoming-letter .letter-top{color:#8e7859}.incoming-letter:before{border-color:#beaa7a45}.letter-open{font-size:11px;color:#9d382b;letter-spacing:2px}.wax-seal{box-shadow:3px 5px 8px #5b382535,inset 0 0 0 1px #672b2055}.scroll-caption{right:17px;color:#725f40}.letter-route{display:flex;align-items:center;gap:27px;min-height:78px;border-bottom:1px solid #d8c8ac;color:#8d7a5c;font-size:10px;letter-spacing:1px;position:relative}.letter-route>span{display:flex;align-items:center;gap:9px;white-space:nowrap}.letter-route strong{font-family:var(--serif);font-size:18px;color:#6b4d32;font-weight:500}.route-origin{padding-right:22px;border-right:1px solid #d9c8a9;color:#9b4934}.route-origin i{width:7px;height:7px;background:#a33b2e;border-radius:50%;outline:1px solid #b68c62;outline-offset:4px;margin-right:5px}.letter-route .route-end{margin-left:auto;font-family:var(--serif);color:#927550}.route-end b{font-size:22px;font-weight:400;color:#a34633;margin-left:8px}.journey-section{margin-top:33px}.section-heading .eyebrow{color:#a04431;letter-spacing:3px;font-size:9px}.section-heading h2{font-size:25px;color:#503c2b}.act-grid{gap:18px}.act-card{padding:25px 23px 18px;min-height:255px;background:linear-gradient(140deg,#fffaf0,#eee3cd);border-color:#d0bc95;box-shadow:0 5px 12px #66502d0a}.act-card:before{height:150px;width:100%;background-size:auto 280px;opacity:.32;mask-image:linear-gradient(transparent,#000)}.act-card:after{width:3px;height:62px;top:23px;background:#a6382c}.act-card-top{margin-bottom:26px}.chapter-no{font-size:31px;line-height:1;color:#b49b72}.date-label{color:#8b7452;letter-spacing:1px}.act-card h3{font-size:29px;letter-spacing:4px;position:relative}.act-card p{color:#7d6b51;font-size:12px;line-height:1.95}.act-card .small-label{color:#917859}.act-progress{color:#8b7251;padding-top:14px;margin-top:24px}.act-card:hover .arrow-circle{background:#9d352d;border-color:#9d352d;color:#fff3df}.arrow-circle{transition:background .2s,color .2s}.home-bottom{margin-top:27px}.authenticity{background:transparent;border-left:2px solid #b7915b}.authenticity p{color:#8b7657}.progress-panel p{color:#8b7452}
@media(min-width:1400px){.hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);padding-right:60px}.incoming-letter{max-width:330px}.hero-copy{padding-left:55px}.hero{min-height:515px}.hero-grid{min-height:515px}}
@media(max-width:1100px){.letter-route{gap:17px}.letter-route .route-end{display:none}.hero h2{font-size:51px;letter-spacing:3px}.act-card{padding:22px 17px 17px}.act-card h3{font-size:25px;letter-spacing:2px}.act-card p{font-size:11px}.hero-copy{padding-left:25px}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(245px,1fr);padding-right:25px}.incoming-letter{padding:23px 21px 26px}}
@media(max-width:760px){.home-intro{padding-bottom:20px;margin-bottom:25px}.home-intro h1{font-size:24px;letter-spacing:1px}.home-intro .lead{font-size:11px;line-height:1.9}.hero-grid{grid-template-columns:1fr;padding:0 0 43px;background-image:linear-gradient(180deg,#f5efdf 0%,#f5efdfb0 45%,#eee4cd00 100%),url('shanhe-scroll.svg');background-size:cover,auto 100%;background-position:center,bottom center}.hero{min-height:0}.hero-copy{padding:34px 27px 26px}.hero h2{font-size:47px;letter-spacing:3px}.hero-label{font-size:9px;letter-spacing:1.5px;margin-bottom:24px}.hero p{font-size:13px}.hero-meta{font-size:8px;letter-spacing:.4px}.incoming-letter{width:calc(100% - 72px);max-width:320px;margin:8px 0 21px;padding:24px 22px;min-height:0;transform:rotate(2deg)}.incoming-letter h3{font-size:18px}.incoming-letter p{font-size:12px}.letter-route{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:22px 5px;min-height:0}.letter-route .route-origin{grid-column:1/-1;border:0;font-size:10px;padding:0;margin-bottom:4px}.letter-route>span{font-size:9px;gap:5px}.letter-route strong{font-size:17px}.journey-section{margin-top:27px}.section-heading h2{font-size:20px;letter-spacing:1px}.act-card{min-height:0;padding:22px 22px 17px}.act-card-top{margin-bottom:16px}.act-card:after{top:22px;height:55px}.act-card h3{font-size:27px;letter-spacing:3px}.act-card p{font-size:11px}.chapter-no{font-size:28px}.act-progress{margin-top:20px}.home-bottom{margin-top:23px}}
@media(min-width:761px) and (max-width:1100px){.hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(240px,1fr);padding-right:24px;min-height:475px}.hero{min-height:475px}.hero-copy{padding:40px 12px 34px 25px}.hero h2{font-size:40px;letter-spacing:2px;white-space:nowrap}.hero p{font-size:12px;letter-spacing:.4px;line-height:2}.hero-label{font-size:9px;letter-spacing:1px}.hero-meta{font-size:8px;letter-spacing:.2px}.hero .button{padding:12px 18px}.incoming-letter{margin-right:0;width:100%;padding:23px 20px}.incoming-letter h3{font-size:18px;letter-spacing:1px}.incoming-letter p{font-size:12px;letter-spacing:.5px}}
