:root{
    --stone:#E8E4DC;--deep-stone:#D6D0C6;--paper:#F6F3ED;--paper-2:#EFEBE3;
    --ink:#2C2A26;--text:#3A372F;--muted:#6B675E;--soft:#8A8478;--rock:#6B675E;
    --deep-rock:#3E3B36;--light-rock:#C8C2B6;--warm:#F7F3EB;--moss:#6A7A58;--clay:#A65A3A;
    --line:rgba(62,59,54,.16);--focus-line:rgba(166,90,58,.40);--shadow:0 12px 28px rgba(44,42,38,.08);
    --max:1080px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--stone)}
body{margin:0;background:var(--stone);color:var(--text);font-family:"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",Arial,sans-serif;font-size:15px;line-height:1.7;overflow-x:hidden}
body.is-locked{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
img{max-width:100%;display:block}
.skip-link{position:fixed;left:16px;top:-60px;z-index:300;background:var(--warm);color:var(--deep-rock);padding:9px 14px;border-radius:8px;border:1px solid var(--focus-line)}
.skip-link:focus{top:8px}
.stone-line{position:fixed;inset:0 0 auto 0;height:22px;z-index:120;background:var(--deep-rock);color:var(--warm);font-size:12px;border-bottom:1px solid rgba(247,243,235,.12)}
.stone-line-inner{height:100%;max-width:var(--max);margin:0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.text-search-button{border:0;background:transparent;color:var(--warm);min-width:48px;height:22px;padding:0 8px}
.rock-bar{position:fixed;left:0;right:0;top:22px;height:56px;z-index:115;background:var(--deep-stone);border-bottom:1px solid var(--line)}
.rock-bar-inner{max-width:var(--max);height:100%;margin:0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand-link{display:inline-flex;align-items:center;min-height:44px;min-width:120px}
.brand-logo,.drawer-logo,.footer-logo{height:26px;width:auto;object-fit:contain;object-position:center}
.brand-text{font-size:16px;font-weight:700;color:var(--deep-rock)}
.rock-actions{display:flex;align-items:center;gap:8px}
.drawer-open,.app-entry,.drawer-close,.search-close{height:44px;min-width:64px;border-radius:9px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;padding:0 14px;font-size:14px}
.drawer-open{background:var(--warm);color:var(--deep-rock)}
.app-entry{background:linear-gradient(135deg,#8A8478 0%,#6B675E 55%,#3E3B36 100%);color:var(--warm);border-color:transparent}
.rock-tabs{position:fixed;left:0;right:0;top:78px;height:38px;z-index:110;background:var(--warm);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;font-size:13px}
.rock-tabs a{height:30px;min-width:72px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--deep-rock)}
.rock-tabs a.is-active{background:var(--deep-rock);color:var(--warm)}
.site-main{max-width:var(--max);margin:0 auto;padding:148px 16px 72px}
.page-title-block{padding:22px 0 18px;border-bottom:1px solid var(--line);margin-bottom:24px}
.eyebrow{margin:0 0 8px;color:var(--clay);font-size:13px;font-weight:700;letter-spacing:.08em}
h1,h2,h3{color:var(--ink);margin-top:0}
h1{font-size:24px;line-height:1.3;margin-bottom:12px}
h2{font-size:20px;line-height:1.4;margin-bottom:14px}
h3{font-size:16px;line-height:1.45;margin-bottom:8px}
p{margin:0 0 14px}
.lead{max-width:820px;color:var(--muted)}
.section{margin:30px 0}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}
.section-head p{max-width:640px;color:var(--muted);margin:0}
.primary-btn,.secondary-btn{min-height:42px;padding:0 18px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;white-space:nowrap;border:1px solid transparent}
.primary-btn{background:linear-gradient(135deg,#8A8478 0%,#6B675E 55%,#3E3B36 100%);color:var(--warm)}
.secondary-btn{background:var(--warm);color:var(--deep-rock);border-color:var(--clay)}
a:hover,button:hover{filter:brightness(.98)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(166,90,58,.28);outline-offset:2px}
.media-slot{background:var(--paper-2);border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.media-slot img{width:100%;height:100%;object-fit:contain;object-position:center}
.media-empty{display:block;width:28%;height:2px;background:var(--light-rock);border-radius:999px;opacity:.75}
.media-168{height:168px}.media-190{height:190px}.media-220{height:220px}.media-app{height:min(340px,64vw)}.media-icon{width:64px;height:64px}.media-brand{height:210px}
.intro-slab{background:var(--paper);border:1px solid var(--line);border-left:6px solid var(--rock);padding:30px;border-radius:10px;box-shadow:var(--shadow)}
.intro-slab p{max-width:790px}
.intro-slab .actions{margin-top:18px}
.paired-stones{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.paired-stone{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:16px}
.paired-stone .media-slot{margin-bottom:14px}
.numbered-strips{display:grid;gap:10px}
.number-strip{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:start;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:16px}
.number-strip .mark{width:44px;height:44px;border-radius:10px;background:var(--deep-rock);color:var(--warm);display:flex;align-items:center;justify-content:center;font-weight:700}
.note-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.note-column{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:20px}
.note-column ul,.plain-list{margin:0;padding-left:1.2em}
.shelf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:var(--deep-stone);padding:10px;border-radius:10px;border:1px solid var(--line)}
.shelf-cell{background:var(--warm);border:1px solid var(--line);border-top:5px solid var(--rock);border-radius:8px;padding:16px;min-height:150px}
.letter-rank{display:grid;gap:10px}
.letter-row{display:grid;grid-template-columns:52px 1fr;gap:14px;background:var(--paper);border-bottom:1px solid var(--line);padding:16px 18px}
.letter-row .letter{color:var(--clay);font-weight:800;font-size:20px}
.timeline-nodes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:6px 2px 12px}
.timeline-node{min-width:0;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--moss);border-radius:10px;padding:16px}
.status{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:var(--paper-2);color:var(--deep-rock);border:1px solid var(--line);font-size:12px;font-weight:700;margin-bottom:10px}
.product-block{background:var(--deep-rock);color:var(--warm);border-radius:12px;padding:24px;display:grid;gap:18px}
.product-block h2,.product-block h3{color:var(--warm)}
.product-block p{color:#EFEAE2}
.product-media{background:var(--warm)}
.reading-points{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.reading-point{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:18px}
.faq-mini{display:grid;gap:10px}.faq-mini details,.faq-list details{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.faq-mini summary,.faq-list summary{font-weight:700;color:var(--deep-rock);cursor:pointer}.faq-mini p,.faq-list p{margin-top:10px;color:var(--muted)}
.observation-directory{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.observation-item{background:var(--paper);border:1px solid var(--line);padding:16px;border-radius:10px;min-height:150px}.observation-item:nth-child(even){background:var(--paper-2)}
.card-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.wall-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:18px;box-shadow:var(--shadow)}.wall-card:nth-child(2n){border-top:4px solid var(--clay)}.wall-card:nth-child(3n){border-top:4px solid var(--moss)}
.memo-list{display:grid;gap:10px}.memo-item{background:var(--paper);border-left:5px solid var(--rock);border-radius:8px;padding:16px 18px}
.method-flow{counter-reset:method;display:grid;gap:12px}.method-step{position:relative;background:var(--paper);border:1px solid var(--line);padding:18px 18px 18px 68px;border-radius:10px}.method-step:before{counter-increment:method;content:counter(method,"cjk-ideographic");position:absolute;left:18px;top:18px;width:34px;height:34px;border-radius:50%;background:var(--deep-rock);color:var(--warm);display:flex;align-items:center;justify-content:center;font-weight:700}
.theme-list{display:grid;gap:10px}.theme-row{display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:18px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:18px}.theme-row strong{color:var(--clay)}
.product-features{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.feature{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:18px}
.terms{display:grid;gap:14px}.term-section{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:20px}.term-section h2{border-bottom:1px solid var(--line);padding-bottom:10px}
.help-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.help-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:18px}
.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.contact-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:20px}.contact-card strong{color:var(--clay)}
.brand-statement{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:start}.brand-copy{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:22px}
.callout{background:var(--warm);border:1px solid var(--focus-line);border-left:5px solid var(--clay);border-radius:9px;padding:16px 18px;color:var(--deep-rock)}
.site-footer{background:#2A2824;color:#E8E4DC;border-top:1px solid rgba(200,194,182,.24);font-size:13px}.footer-inner{max-width:var(--max);margin:0 auto;padding:34px 16px 76px}.footer-brand{display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px solid rgba(200,194,182,.2)}.footer-brand strong,.footer-brand span{font-weight:700}.footer-brand small{color:#C8C2B6}.footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:22px 0}.footer-columns h2{font-size:13px;color:#F7F3EB;margin-bottom:8px}.footer-columns a{display:block;color:#E8E4DC;padding:4px 0}.footer-note{color:#C8C2B6;max-width:860px}.footer-copy{color:#AFA89B;margin-bottom:0}
.drawer-panel{position:fixed;left:0;top:0;bottom:0;width:380px;max-width:88vw;background:var(--warm);z-index:220;transform:translateX(-103%);visibility:hidden;pointer-events:none;transition:transform .22s ease,visibility .22s ease;box-shadow:20px 0 40px rgba(44,42,38,.18);overflow-y:auto}.drawer-panel.is-open{transform:translateX(0);visibility:visible;pointer-events:auto}.drawer-head{position:sticky;top:0;z-index:2;background:var(--warm);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 14px}.drawer-brand{display:flex;align-items:center;gap:8px}.drawer-close,.search-close{background:var(--paper);color:var(--deep-rock)}.drawer-groups{padding:12px 14px 28px}.drawer-groups section{padding:10px 0;border-bottom:1px solid var(--line)}.drawer-groups h2{font-size:13px;color:var(--muted);margin-bottom:8px}.drawer-groups a{display:block;padding:10px 8px;border-radius:8px}.drawer-groups a:hover{background:var(--paper)}.drawer-groups strong{display:block;color:var(--deep-rock)}.drawer-groups span{display:block;color:var(--muted);font-size:12px;line-height:1.55}
.search-layer{position:fixed;left:0;right:0;top:78px;z-index:215;visibility:hidden;pointer-events:none;transform:translateY(-12px);opacity:0;transition:.2s ease}.search-layer.is-open{visibility:visible;pointer-events:auto;transform:translateY(0);opacity:1}.search-card{max-width:var(--max);margin:0 auto;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:0 0 12px 12px;padding:20px}.search-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.search-head p{color:var(--muted);margin:2px 0 0}.search-label{display:block;font-size:13px;color:var(--muted);margin:12px 0 6px}.search-input{width:100%;height:44px;border-radius:9px;border:1px solid var(--line);background:var(--warm);color:var(--deep-rock);padding:0 12px}.search-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.search-presets a{background:var(--warm);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-weight:700}.search-presets a span{display:block;font-size:12px;font-weight:400;color:var(--muted)}.search-empty{margin:12px 0 0;color:var(--clay)}
.page-overlay{position:fixed;inset:0;background:rgba(42,40,36,.48);z-index:205;opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease}.page-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.mobile-bottom{display:none}
@media (max-width:820px){
    .site-main{padding-top:104px;padding-bottom:82px}
    .rock-tabs{display:none}
    .paired-stones,.note-columns,.reading-points,.product-features,.help-grid,.contact-grid,.brand-statement{grid-template-columns:1fr}
    .shelf-grid{grid-template-columns:repeat(2,1fr)}
    .observation-directory{grid-template-columns:repeat(2,1fr)}
    .card-wall{grid-template-columns:1fr 1fr}
    .footer-columns{grid-template-columns:repeat(2,1fr)}
    .search-layer{top:0;bottom:0;background:var(--deep-rock)}
    .search-card{height:100%;border:0;border-radius:0;background:var(--deep-rock);color:var(--warm);padding:calc(22px + env(safe-area-inset-top)) 16px 80px;overflow-y:auto}
    .search-head strong,.search-head p,.search-label{color:var(--warm)}
    .search-close{background:var(--warm);color:var(--deep-rock)}
    .search-input{background:var(--warm);color:var(--deep-rock);border-color:rgba(247,243,235,.25)}
    .search-presets{grid-template-columns:1fr}.search-presets a{background:#4A4640;color:var(--warm);border-color:rgba(247,243,235,.14)}.search-presets a span{color:#D6D0C6}
    .mobile-bottom{position:fixed;left:0;right:0;bottom:0;z-index:140;height:calc(48px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--warm);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr)}
    .mobile-bottom a{min-width:0;height:48px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--deep-rock)}
    .mobile-bottom a.is-active{background:var(--clay);color:var(--warm)}
    .footer-inner{padding-bottom:86px}
}
@media (max-width:600px){
    .stone-line-inner,.rock-bar-inner,.site-main,.footer-inner{padding-left:16px;padding-right:16px}
    .stone-line-inner span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:76%}
    .brand-link{min-width:0;max-width:52%}.brand-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .rock-actions{gap:6px}.drawer-open,.app-entry{min-width:58px;padding:0 10px}
    .intro-slab{padding:22px 18px}
    .shelf-grid,.observation-directory,.card-wall{grid-template-columns:1fr}
    .theme-row{grid-template-columns:1fr;gap:8px}
    .number-strip{grid-template-columns:46px 1fr;padding:14px}.number-strip .mark{width:38px;height:38px}
    .letter-row{grid-template-columns:40px 1fr;padding:14px}
    .footer-columns{grid-template-columns:1fr 1fr;gap:12px}
    .footer-brand{flex-wrap:wrap}
    .media-app{height:300px}
}

.mt-12{margin-top:12px}
.eyebrow-light{color:#E8C7B7}
.icon-center{display:flex;justify-content:center;margin-top:12px}
@media (max-width:820px){.timeline-nodes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.timeline-nodes{grid-template-columns:1fr}}
