/* 本页专用布局；公共配色、组件与动效开关沿用 base.css / motion.js。 */
.inner-page .daily-svg-defs { position:absolute; pointer-events:none }
.inner-page .icon-ink,.inner-page .small-icon { fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round }
.inner-page main { position:relative; isolation:isolate }
.inner-page main::before { content:""; position:absolute; inset:360px 0 170px; z-index:-1; pointer-events:none; background:url('../img/art/daily/landscape-v2.webp') right top / auto 900px repeat-y; opacity:.21; mask-image:linear-gradient(90deg,#000,transparent 28%,transparent 74%,#000),repeating-linear-gradient(to bottom,transparent,#000 130px,#000 760px,transparent 900px); mask-composite:intersect }
.inner-page .sec { padding:30px 0 }
.inner-page .sec-head { margin-bottom:24px }
.inner-page .sec-head h2 { font-size:clamp(28px,3.1vw,40px) }
.inner-page .sec-head h2::before,.inner-page .sec-head h2::after { width:clamp(20px,6vw,85px) }
.inner-page main .card { border-radius:2px; box-shadow:0 3px 16px rgba(70,50,20,.045) }
.page-hero { position:relative; isolation:isolate; overflow:hidden; border-bottom:1px solid var(--gold-line) }
.page-scene { position:absolute; inset:-12px 0 -34px; z-index:-3; will-change:transform }
.page-scene>img,.page-water,.page-water img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:65% center }
.page-water { pointer-events:none; filter:url(#lj-water); mask-image:radial-gradient(24% 15% at 55% 78%,#000 25%,transparent) }
.page-water img { animation:page-river 3.8s ease-in-out -.6s infinite alternate; will-change:transform }
@keyframes page-river { from { transform:translate3d(-6px,-1px,0) scale(1.015) } to { transform:translate3d(6px,2px,0) scale(1.015) } }
.page-mist { position:absolute; inset:25% -15% 0; pointer-events:none; z-index:-2; background:radial-gradient(ellipse at 30% 45%,rgba(251,247,238,.7),transparent 65%); animation:page-mist 26s ease-in-out -10s infinite alternate }
@keyframes page-mist { from { transform:translateX(-3%); opacity:.25 } to { transform:translateX(4%); opacity:.6 } }
.page-hero__inner { position:relative; min-height:380px; padding-top:50px; padding-bottom:48px }
.page-hero h1 { font:400 clamp(70px,7.5vw,100px)/1.15 var(--brush); letter-spacing:.025em; max-width:800px }
.page-slogan { font-size:29px; margin:14px 0 8px; line-height:1.45 }
.page-intro { color:var(--ink-2); font-size:19px; margin-bottom:22px; max-width:34em }
.breadcrumbs { display:flex; gap:12px; color:var(--ink-3); font-size:16px; margin-bottom:14px }
.breadcrumbs a { text-decoration:none }
.paper-note { display:inline-block; padding:3px 13px; border:1px solid var(--gold-line); border-radius:3px; background:rgba(239,230,212,.75); font-size:16px; color:var(--gold) }
.three-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px }
.info-card { padding:24px; position:relative; isolation:isolate; overflow:hidden; display:flex; gap:18px; min-height:158px }
.info-card h3 { font-size:24px; margin-bottom:9px }
.info-card p { font-size:16px; color:var(--ink-2); max-width:20em }
.info-card>img { position:absolute; right:0; bottom:0; width:75%; height:100%; object-fit:cover; object-position:right center; opacity:.25; z-index:-1; mask-image:linear-gradient(135deg,transparent 20%,#000) }
.faq-list { max-width:1000px; margin:auto; display:grid; gap:12px }
.faq-item { padding:0 20px; background:rgba(251,247,238,.94) }
.faq-item::before,.faq-item::after { display:none }
.faq-item summary { display:flex; align-items:center; gap:12px; position:relative; padding:15px 25px 15px 0; font-size:18px; font-weight:700; list-style:none; cursor:pointer }
.faq-item summary::-webkit-details-marker { display:none }
.faq-item summary::before { content:"问"; display:grid; place-items:center; width:26px; height:26px; flex:none; border-radius:50%; color:var(--paper-card); background:var(--gold); font-size:15px }
.faq-item summary::after { content:""; position:absolute; right:2px; top:24px; width:8px; height:8px; border-right:1px solid var(--gold); border-bottom:1px solid var(--gold); transform:rotate(45deg); transition:transform .2s }
.faq-item[open] summary::after { transform:rotate(225deg) }
.faq-item p { padding:0 0 18px 38px; font-size:16px; color:var(--ink-2) }
.faq-item[open] p { animation:page-faq .25s ease }
@keyframes page-faq { from { opacity:0; transform:translateY(-3px) } to { opacity:1; transform:none } }
.notice-strip { display:flex; align-items:center; gap:15px; padding:17px 24px; background:rgba(239,230,212,.8); color:var(--ink-2); font-size:16px }
.notice-strip .small-icon { width:25px; height:25px; flex:none; color:var(--gold) }
.inner-page .end-band { padding:35px 16px 38px }
.page-end-art { position:absolute; inset:-35px 0; width:100%; height:calc(100% + 70px); object-fit:cover; object-position:center 72%; z-index:-2; mask-image:linear-gradient(transparent,#000 30%) }
.inner-page .end-band::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(ellipse,rgba(251,247,238,.97),rgba(251,247,238,.6) 40%,transparent 72%) }
.inner-page .end-band h2 { font-size:39px }
.inner-page .end-band p { color:var(--ink-2); margin-bottom:16px }
.page-cta { text-align:center; margin-top:22px }
@media (max-width:1000px) { .info-card { padding:20px 18px; gap:12px } .info-card h3 { font-size:21px } .info-card .icon-ink { width:32px } }
@media (max-width:767px) {
 .page-hero__inner { min-height:455px; padding-top:172px; padding-bottom:40px }
 .page-hero__inner::before { content:""; position:absolute; inset:130px -20px 0; z-index:-1; background:radial-gradient(ellipse,rgba(251,247,238,.97),rgba(251,247,238,.8) 43%,transparent 76%) }
 .page-hero h1 { font-size:clamp(50px,12.5vw,76px) }
 .page-slogan { font-size:25px; margin-top:12px }
 .page-intro { font-size:17px; max-width:25em }
 .page-scene>img,.page-water img { object-position:72% center }
 .page-water { mask-image:radial-gradient(43% 13% at 38% 73%,#000 30%,transparent) }
 .inner-page .sec { padding:25px 0 }
 .inner-page .sec-head { margin-bottom:20px }
 .inner-page .sec-head h2 { font-size:27px; letter-spacing:0; gap:8px }
 .inner-page .sec-head h2::before,.inner-page .sec-head h2::after { width:17px }
 .inner-page .sec-head p { max-width:22em; margin-left:auto; margin-right:auto }
 .three-cards { grid-template-columns:minmax(0,1fr); gap:16px }
 .info-card { min-height:150px; padding:22px; gap:17px }
 .info-card>img { width:55% }
 .faq-item { padding:0 14px }
 .faq-item summary { font-size:17px; align-items:flex-start; line-height:1.7; gap:10px }
 .faq-item p { padding-left:0 }
 .notice-strip { padding:16px; align-items:flex-start }
 .inner-page .end-band h2 { font-size:31px }
 .page-end-art { opacity:.65; object-position:65% center }
 .inner-page .site-footer { padding-bottom:78px }
}
@media (max-width:360px) { .inner-page .sec-head h2 { font-size:24px; gap:5px } .page-slogan { font-size:23px } }
html.motion-off .inner-page *,html.no-js .inner-page * { transition:none }
html.motion-off .inner-page .faq-item[open] p { animation:none; opacity:1; transform:none }
html.no-js .page-water,html.no-js .inner-page .motion-toggle { display:none }
html.no-js .page-mist { animation:none }
@media (prefers-reduced-motion:reduce) { .inner-page * { transition:none } .inner-page .faq-item[open] p { animation:none } }

.archive-page .page-hero__inner { padding-top:28px }
.archive-page .page-water { mask-image:radial-gradient(17% 12% at 53% 57%,#000 30%,transparent) }
.archive-window { overflow:hidden }
.window-bar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; padding:12px 22px; background:var(--paper-2); border-bottom:1px solid var(--gold-line); font-size:16px; color:var(--ink-3) }
.archive-layout { display:grid; grid-template-columns:235px minmax(0,1fr) }
.archive-sidebar { position:relative; isolation:isolate; padding:26px 20px; border-right:1px solid var(--gold-line); background:var(--paper); overflow:hidden }
.archive-sidebar h3 { display:flex; align-items:center; gap:12px; font-size:25px; margin-bottom:24px }
.archive-sidebar .icon-ink { width:34px; height:34px }
.archive-tabs { display:grid; gap:10px }
.archive-tabs button { display:flex; align-items:center; gap:12px; text-align:left; padding:13px 12px; min-height:48px; font:600 18px/1.5 var(--serif); color:var(--ink-2); background:transparent; border:1px solid transparent; border-radius:3px; cursor:pointer; transition:background-color .2s }
.archive-tabs button[aria-selected="true"] { background:var(--paper-2); color:var(--cinnabar); border-color:var(--gold-line) }
.archive-tabs .small-icon { width:23px; height:23px; flex:none }
.archive-sidebar>p { font-size:16px; color:var(--ink-3); margin-top:25px }
.archive-sidebar>img { position:absolute; width:100%; bottom:-15px; left:0; z-index:-1; opacity:.32 }
.archive-content { min-height:410px; padding:30px }
.archive-panel__head { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; margin-bottom:15px }
.archive-panel__head h3 { font:400 32px/1.4 var(--brush) }
.archive-panel>p { font-size:17px; color:var(--ink-2) }
.archive-metrics { display:grid; grid-template-columns:repeat(3,1fr); background:var(--paper-2); padding:16px 0; margin:20px 0 14px }
.archive-metrics>div { display:flex; justify-content:center; gap:18px }
.archive-metrics>div+div { border-left:1px solid var(--gold-line) }
.archive-metrics dt { font-size:17px }
.archive-metrics dd { margin:0; font-weight:700 }
.archive-table { width:100%; table-layout:fixed; border-collapse:collapse; text-align:center; font-size:17px; margin:18px 0 }
.archive-table th,.archive-table td { border:1px solid var(--gold-line); padding:14px 6px; overflow-wrap:anywhere }
.archive-table th { font-weight:600; background:var(--paper) }
.archive-panel .archive-caption { font-size:16px; color:var(--ink-3); margin-top:14px }
.insight-paper { border:1px solid var(--gold-line); background:var(--paper); min-height:190px; margin:22px 0; padding:22px; font-size:17px }
.insight-paper p { margin:17px 0 8px }
.insight-paper>span:last-child { color:var(--ink-3); font-size:16px }
.archive-journey { display:grid; grid-template-columns:1.15fr 1fr; gap:35px; align-items:stretch }
.journey-feature { padding:30px; position:relative; isolation:isolate; overflow:hidden }
.journey-feature h3 { font-size:32px; margin-bottom:13px }
.journey-feature p { font-size:18px; max-width:26em; margin-bottom:20px }
.journey-feature>img { position:absolute; width:65%; height:100%; right:0; bottom:0; object-fit:cover; object-position:right center; opacity:.23; z-index:-1; mask-image:linear-gradient(120deg,transparent 10%,#000) }
.record-timeline { margin:0; padding:6px 0; list-style:none; display:grid; gap:19px }
.record-timeline li { position:relative; display:flex; align-items:center; gap:20px }
.record-timeline li:not(:last-child)::after { content:""; position:absolute; left:20px; top:50px; bottom:-20px; border-left:1px solid var(--gold-line) }
.record-timeline span { display:grid; place-items:center; width:42px; height:42px; flex:none; border:1px solid var(--gold); border-radius:50%; color:var(--gold); background:var(--paper-card); font-size:21px }
.record-timeline h3 { font-size:23px }
.record-timeline p { color:var(--ink-3); font-size:17px; margin-top:5px }
.archive-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:25px; padding:23px 0 }
.archive-benefits>div { padding:0 24px }
.archive-benefits>div+div { border-left:1px solid var(--gold-line) }
.archive-benefits h3 { font-size:20px; margin-bottom:6px }
.archive-benefits p { font-size:16px; color:var(--ink-3) }
html.no-js .archive-tabs { display:none }
html.no-js .archive-panel[hidden] { display:block; margin-top:35px }
@media(max-width:767px) {
 .archive-page .page-water { mask-image:radial-gradient(32% 10% at 24% 56%,#000 30%,transparent) }
 .archive-page .page-hero__inner { padding-top:148px }
 .archive-layout { grid-template-columns:minmax(0,1fr) }
 .archive-sidebar { border-right:0; border-bottom:1px solid var(--gold-line); padding:20px 16px }
 .archive-sidebar h3 { font-size:24px; margin-bottom:14px }
 .archive-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px }
 .archive-tabs button { justify-content:center; flex-wrap:wrap; font-size:16px; padding:10px 4px; gap:5px }
 .archive-tabs .small-icon { width:18px; height:18px }
 .archive-sidebar>p { margin-top:12px }
 .archive-sidebar>p br { display:none }
 .archive-sidebar>img { display:none }
 .archive-content { min-height:410px; padding:22px 16px }
 .archive-panel__head h3 { font-size:29px }
 .archive-metrics>div { gap:9px }
 .archive-table { font-size:16px }
 .archive-table th,.archive-table td { padding:12px 3px }
 .insight-paper { padding:17px }
 .archive-journey { grid-template-columns:minmax(0,1fr); gap:25px }
 .journey-feature { padding:24px }
 .journey-feature p { font-size:17px }
 .record-timeline { padding:4px 15px }
 .archive-benefits { grid-template-columns:minmax(0,1fr); padding:0 22px }
 .archive-benefits>div { padding:19px 0 }
 .archive-benefits>div+div { border-left:0; border-top:1px solid var(--gold-line) }
}
