:root{
  --bg:#F6EDE0;--deep-bg:#EAD7C0;--paper:#FFFFFF;--soft:#E8D2B4;
  --title:#3A2414;--text:#4A3220;--sub:#7A5634;--muted:#9A7450;
  --gold:#C4843C;--gold-light:#D9A05A;--gold-deep:#8B5A2B;
  --stroke:rgba(196,132,60,.18);--stroke-strong:rgba(196,132,60,.46);
  --shadow:0 12px 28px rgba(58,36,20,.08);--serif:"Noto Serif CJK SC","Songti SC","SimSun",Georgia,serif;
  --sans:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{margin:0;padding:0;max-width:100%;scroll-behavior:smooth;background:var(--bg)}
body{margin:0;min-width:0;max-width:100%;font-family:var(--sans);font-size:15px;line-height:1.7;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}
h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--title);letter-spacing:-.015em}
h1{font-size:24px;line-height:1.3;font-weight:750}h2{font-size:20px;line-height:1.4}h3{font-size:16px;line-height:1.4}
p{line-height:1.75}::selection{background:#D9A05A;color:#3A2414}
:focus-visible{outline:3px solid var(--gold-deep);outline-offset:3px}
.content-width{width:calc(100% - 32px);max-width:1120px;margin-left:auto;margin-right:auto;min-width:0}
.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}
.overline{display:inline-block;color:var(--gold-deep);font-size:11px;letter-spacing:.18em;font-weight:800;line-height:1.5;text-transform:uppercase}
.site-top{position:fixed;top:0;left:0;right:0;width:auto;z-index:50;background:var(--paper)}
.crown-line{height:22px;background:#3A2414;color:#FFF6EA}
.crown-inner{height:22px;display:flex;align-items:center;justify-content:space-between;position:relative}
.crown-brand{font-size:12px;line-height:22px;font-weight:600;letter-spacing:.02em;white-space:nowrap}
.crown-dot{padding:0 5px;color:#D9A05A}
.crown-search{appearance:none;display:grid;place-items:center;border:0;background:transparent;color:#FFF6EA;height:44px;width:48px;position:relative;z-index:3;margin-right:0;flex:none;transition:background .2s}
.crown-search:hover,.crown-search:focus-visible{background:rgba(255,248,232,.12)}
.search-glyph{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-radius:50%;position:relative;margin-right:4px}
.search-glyph::after{content:"";position:absolute;right:-6px;bottom:-4px;width:8px;height:2px;border-radius:5px;background:currentColor;transform:rotate(45deg)}
.palace-bar{height:60px;width:100%;background:#fff;border-bottom:1px solid var(--stroke-strong);box-shadow:0 4px 16px rgba(58,36,20,.035)}
.palace-inner{height:60px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center}
.site-brand{display:flex;justify-self:start;align-items:center;min-height:44px;min-width:0;max-width:100%;border-radius:7px}
.brand-logo{display:block;width:auto;height:28px;max-width:210px;object-fit:contain;object-position:left center;flex:none}
.brand-fallback{font-size:18px;font-family:var(--serif);white-space:nowrap;font-weight:800;color:var(--title)}
.palace-trigger{height:44px;min-width:100px;display:flex;gap:9px;align-items:center;justify-content:center;border:1px solid var(--stroke-strong);background:#FFF6EA;color:var(--title);border-radius:11px;font-size:14px;font-weight:700;transition:background .2s,box-shadow .2s,transform .2s}
.palace-trigger:hover{background:#F5E9CA;box-shadow:0 4px 10px rgba(58,36,20,.09)}
.menu-glyph{height:17px;width:18px;display:flex;flex-direction:column;justify-content:space-around}
.menu-glyph i{display:block;height:2px;border-radius:2px;background:var(--title);width:100%}
.menu-glyph i:nth-child(2){width:72%}
.palace-app{justify-self:end;display:flex;align-items:center;justify-content:center;gap:8px;height:44px;min-width:105px;padding:0 16px;border-radius:11px;color:#3A2414;font-size:14px;font-weight:700;background:linear-gradient(135deg,#D9A05A,#C4843C 60%,#8B5A2B);white-space:nowrap;transition:filter .2s,transform .2s}
.palace-app:hover{filter:brightness(1.07);transform:translateY(-1px)}
.ribbon{height:40px;background:#FFF6EA;border-bottom:1px solid var(--stroke);width:100%}
.ribbon-inner{height:100%;display:flex;justify-content:center;align-items:center;gap:14px}
.ribbon a{font-size:13px;font-weight:700;padding:2px 23px;height:44px;display:flex;align-items:center;border-radius:8px;transition:background .2s;color:var(--title)}
.ribbon a:hover{background:#E8D2B4}
.ribbon a.active{background:var(--gold);color:var(--title)}
.main-content{padding-top:148px;padding-bottom:74px}
.image-slot{width:100%;min-width:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#FFF9EC,#EAD7C0);border:1px solid var(--stroke);overflow:hidden;border-radius:12px;position:relative}
.image-slot img{width:100%;height:100%;max-width:100%;max-height:100%;display:block;object-fit:contain;object-position:center}
.image-fallback{display:flex;flex-direction:column;align-items:center;gap:12px;justify-content:center;position:absolute;inset:0;color:var(--title);font-family:var(--serif);font-size:19px;text-align:center}
.fallback-arc{width:88px;height:50px;border:8px solid var(--gold);border-bottom:0;border-radius:88px 88px 0 0;opacity:.4}
.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:9px 21px;border-radius:11px;font-size:14px;line-height:1.1;font-weight:750;white-space:nowrap;border:1px solid transparent;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 9px 19px rgba(58,36,20,.12)}
.btn-gold{background:linear-gradient(135deg,#D9A05A,#C4843C 55%,#8B5A2B);color:#3A2414}
.btn-light{background:#fff;border-color:var(--stroke-strong);color:var(--title)}
.action-pair{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.text-link{display:inline-flex;align-items:center;min-height:44px;gap:7px;font-size:14px;font-weight:800;color:#835127;white-space:nowrap;transition:color .2s,transform .2s}
.text-link:hover{color:#3A2414;transform:translateX(2px)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}
.section-heading h2{margin:6px 0 0;font-family:var(--serif);font-size:22px;font-weight:800}
.section-heading p{font-size:13px;color:var(--sub);margin:0 0 4px;max-width:360px;text-align:right}
.home-block{margin-top:72px}
.home-cover{border:1px solid var(--stroke-strong);border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
.hero-media{height:260px;padding:8px 10px;background:radial-gradient(circle at 75% 25%,#FFFBF6,#EAD7C0 80%);border-bottom:1px solid var(--stroke)}
.media-banner{width:100%;height:100%;border:0;background:transparent;border-radius:8px}
.hero-info{padding:26px 38px 36px;position:relative}
.hero-info::after{content:"";position:absolute;right:40px;top:34px;width:100px;height:100px;border:1px solid var(--stroke-strong);border-radius:100%;opacity:.4;pointer-events:none}
.hero-micro{display:flex;align-items:center;gap:10px;color:var(--gold-deep);font-size:14px;font-weight:800;margin-bottom:10px}
.gold-mark{font-size:20px;line-height:1}
.micro-en{letter-spacing:.18em;color:var(--sub);font-size:10px}
.hero-info h1{font-size:27px;font-family:var(--serif);margin-bottom:12px;max-width:750px}
.hero-lede{font-size:15px;line-height:1.8;max-width:780px;margin-bottom:21px;color:var(--text)}
.three-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.topic-card{background:var(--paper);border:1px solid var(--stroke);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);min-width:0;transition:transform .2s,border-color .2s}
.topic-card:hover{transform:translateY(-3px);border-color:var(--stroke-strong)}
.topic-card-media{padding:12px;background:#FCF6E8;border-bottom:1px solid var(--stroke)}
.media-card{height:180px}
.topic-card-body{padding:21px 22px 15px;display:flex;flex-direction:column;flex:1}
.topic-overline{font-size:10px;letter-spacing:.18em;color:var(--gold-deep);font-weight:700}
.topic-card h3{font-family:var(--serif);font-size:19px;margin:6px 0 10px}
.topic-card p{font-size:14px;line-height:1.8;color:var(--text);margin-bottom:12px;flex:1}
.featured-issue,.bookshelf-section,.calendar-section,.memo-section{padding:30px;border-radius:14px;border:1px solid var(--stroke);background:#fff;box-shadow:var(--shadow)}
.issue-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:stretch}
.media-issue{height:210px}
.issue-copy{min-width:0}
.issue-copy p{font-size:14px;line-height:1.82;color:var(--text);margin:0 0 8px}
.issue-index{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.issue-index a{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;background:#F6EDE0;border:1px solid var(--stroke);border-radius:9px;font-size:13px;font-weight:700}
.issue-index a b{font-size:17px;color:var(--gold-deep);font-family:Georgia,serif}
.issue-index a span:last-child{margin-left:auto;color:var(--gold-deep)}
.issue-index a:hover{background:#EAD7C0}
.shelf-layout{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:25px;align-items:start}
.media-shelf{height:290px}
.shelf-list{display:grid;gap:7px;min-width:0}
.shelf-list a{display:grid;grid-template-columns:32px 116px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:10px 12px;background:#FFFBF1;border:1px solid var(--stroke);border-radius:10px;min-height:50px;transition:background .2s}
.shelf-list a:hover{background:#EAD7C0}
.shelf-no{font-family:Georgia,serif;color:var(--gold-deep);font-weight:bold}
.shelf-list strong{font-size:14px;color:var(--title)}
.shelf-list small{font-size:12px;color:var(--sub)}
.shelf-list .arrow{color:var(--gold-deep)}
.number-section{background:#EAD7C0;border-radius:14px;border:1px solid var(--stroke-strong);padding:30px}
.rank-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:26px;align-items:stretch}
.rank-list{display:grid;gap:7px;min-width:0}
.rank-list a{display:flex;align-items:center;gap:16px;padding:8px 13px;background:#fff;border:1px solid var(--stroke);border-radius:10px;min-height:54px;transition:transform .2s}
.rank-list a:hover{transform:translateX(3px)}
.rank-list em{font-size:31px;font-family:Georgia,serif;font-style:normal;color:#8B5A2B;min-width:48px;line-height:1}
.rank-list strong,.rank-list small{display:block}
.rank-list strong{font-size:14px;color:var(--title)}
.rank-list small{font-size:12px;color:var(--sub)}
.rank-list a>span:last-child{margin-left:auto;color:var(--gold-deep)}
.media-rank{height:320px}
.calendar-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px}
.media-calendar{height:275px}
.time-nodes{padding:14px 0 12px 15px;border-left:2px solid var(--gold);display:grid;gap:28px}
.time-node{position:relative;padding-left:16px}
.time-dot{position:absolute;left:-23px;top:6px;width:13px;height:13px;background:var(--gold);border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--gold-deep)}
.time-node strong{color:var(--title);font-size:16px}
.time-node p{margin:4px 0 0;font-size:13px;color:var(--sub)}
.memo-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center}
.media-memo{height:245px}
.memo-points{display:grid;gap:12px}
.memo-points a{display:flex;align-items:center;gap:18px;background:#FFFBF2;border:1px solid var(--stroke);padding:15px;border-radius:10px;min-height:66px}
.memo-points a:hover{background:#EAD7C0}
.memo-points b{color:var(--gold-deep);font-size:23px;font-family:Georgia,serif}
.memo-points strong,.memo-points small{display:block}
.memo-points strong{font-size:15px;color:var(--title)}
.memo-points small{font-size:12px;color:var(--sub)}
.memo-points a>span:last-child{margin-left:auto;color:var(--gold-deep)}
.side-readings{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.side-reading{padding:28px;border-radius:12px;border:1px solid var(--stroke);background:#fff}
.side-reading:nth-child(2){background:#F8EFD9}
.side-reading h2{font-family:var(--serif);margin:8px 0 10px}
.side-reading p{font-size:14px;line-height:1.8}
.app-section{background:#EAD7C0;padding:32px;border:1px solid var(--stroke-strong);border-radius:14px}
.app-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;align-items:center}
.app-phone{display:flex;justify-content:center;min-width:0}
.media-app{height:360px;max-width:300px;border:0;background:transparent}
.app-copy{min-width:0}
.app-copy p{line-height:1.9;color:var(--text);margin:15px 0 18px}
.app-heading-small{display:flex;align-items:center;gap:13px}
.media-icon{height:55px;width:55px;flex:none;border-radius:14px;background:#fff}
.app-heading-small b,.app-heading-small span{display:block}
.app-heading-small b{font-size:18px;color:var(--title)}
.app-heading-small span{font-size:11px;color:var(--sub);letter-spacing:.14em}
.trust-box{background:#fff;border:1px solid var(--stroke);padding:28px;border-radius:12px}
.trust-box h3{font-size:17px;font-family:var(--serif);margin-bottom:8px}
.trust-box p{font-size:14px;line-height:1.85}
.inline-links{display:flex;flex-wrap:wrap;gap:12px}
.inline-links a{border:1px solid var(--stroke-strong);padding:11px 15px;min-height:44px;display:flex;align-items:center;border-radius:10px;font-size:13px;font-weight:700;color:var(--title)}
.inline-links a:hover{background:#EAD7C0}
.section-subtext{font-size:14px;color:var(--text);max-width:960px;margin-bottom:18px}
.faq-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.faq-preview a{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:4px 12px;border:1px solid var(--stroke);padding:15px 18px;background:#fff;border-radius:10px;min-height:92px}
.faq-preview a:hover{border-color:var(--stroke-strong);background:#FFF9EC}
.faq-preview strong{font-size:14px;color:var(--title)}
.faq-preview span{grid-column:1;grid-row:2;font-size:12px;color:var(--sub);line-height:1.6}
.faq-preview b{grid-column:2;grid-row:1/3;color:var(--gold-deep);align-self:center}
.home-about{background:linear-gradient(120deg,#EAD7C0,#FFFCF4);border:1px solid var(--stroke-strong);text-align:center;padding:44px max(22px,7%);border-radius:14px}
.home-about h2{font-family:var(--serif);font-size:23px;margin:7px 0 12px}
.home-about p{font-size:14px;max-width:900px;margin:0 auto 18px;line-height:1.9}
/* All content pages: same shared components, distinct editorial structures. */
.internal-heading{background:#fff;border:1px solid var(--stroke);padding:32px 38px;border-radius:12px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.internal-heading::before{content:"";position:absolute;right:-44px;top:-69px;width:220px;height:220px;border:1px solid var(--stroke-strong);border-radius:50%;pointer-events:none}
.internal-topline{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;position:relative}
.issue-tag{font-size:12px;color:var(--sub);border-bottom:1px solid var(--stroke-strong);padding-bottom:3px}
.internal-heading h1{font-size:26px;margin-bottom:7px;font-family:var(--serif);position:relative}
.internal-heading .lede{font-size:17px;font-weight:700;color:var(--gold-deep);margin:0 0 14px;position:relative}
.intro-copy{max-width:950px;font-size:15px;line-height:1.85;position:relative;margin:0}
.page-visual{margin:18px 0 28px;padding:10px;background:#fff;border:1px solid var(--stroke);border-radius:12px}
.media-inner{height:225px}
.page-visual-app .media-phone{height:300px;max-width:400px;margin:auto;border:0;background:transparent}
.reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;counter-reset:unit}
.reading-unit{display:flex;min-width:0;gap:15px;align-items:flex-start;padding:25px;background:#fff;border:1px solid var(--stroke);border-radius:12px;box-shadow:0 6px 22px rgba(58,36,20,.04)}
.reading-num{flex:none;font-family:Georgia,serif;font-size:30px;line-height:1.1;color:var(--gold-deep);min-width:41px}
.unit-copy{min-width:0;flex:1}
.reading-unit h2{font-size:17px;font-family:var(--serif);margin:0 0 11px}
.reading-unit p{font-size:15px;line-height:1.87;margin:0;color:var(--text)}
.reading-conclusion{margin-top:20px;padding:25px 28px;background:#EAD7C0;border:1px solid var(--stroke-strong);border-radius:12px}
.reading-conclusion h2{font-size:18px;margin:0 0 10px;font-family:var(--serif)}
.reading-conclusion p{margin:0;font-size:15px}
.read-more{border-top:1px solid var(--stroke-strong);margin-top:45px;padding-top:26px}
.read-more-head h2{font-family:var(--serif);margin:7px 0 19px}
.read-more nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.read-more nav a{min-height:58px;border:1px solid var(--stroke);background:#fff;border-radius:11px;display:flex;justify-content:space-between;align-items:center;padding:13px 18px;font-size:15px;font-weight:800}
.read-more nav a span{color:var(--gold-deep)}
.read-more nav a:hover{background:#EAD7C0;border-color:var(--stroke-strong)}
/* The visual language of each internal department is intentionally different. */
.reading-mode-issue .reading-unit:nth-child(1),.reading-mode-issue .reading-unit:nth-child(4){background:#FFF6EA;border-color:var(--stroke-strong)}
.reading-mode-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.reading-mode-gallery .reading-unit{display:block}
.reading-mode-gallery .reading-num{margin-bottom:17px}
.reading-mode-columns{grid-template-columns:1fr;gap:12px}
.reading-mode-columns .reading-unit{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;padding:24px 28px}
.reading-mode-columns .reading-num{font-size:45px;text-align:center}
.reading-mode-steps{grid-template-columns:1fr 1fr;gap:16px}
.reading-mode-steps .reading-unit{border-left:4px solid var(--gold)}
.reading-mode-rank{grid-template-columns:1fr;gap:11px}
.reading-mode-rank .reading-unit{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;background:#FFFDF7}
.reading-mode-rank .reading-num{font-size:53px;line-height:1;text-align:center}
.reading-mode-timeline{grid-template-columns:1fr;gap:0;border-left:3px solid var(--gold);margin-left:18px;padding-left:28px}
.reading-mode-timeline .reading-unit{position:relative;margin-bottom:15px}
.reading-mode-timeline .reading-unit::before{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--gold);border:3px solid var(--paper);left:-37px;top:32px;box-shadow:0 0 0 1px var(--gold-deep)}
.reading-mode-memo .reading-unit{background:#FFF9ED;border-top:3px solid var(--gold)}
.reading-mode-guide{grid-template-columns:1fr}
.reading-mode-guide .reading-unit{padding:21px 27px}
.reading-mode-list .reading-unit{background:linear-gradient(90deg,#EAD7C0 0,#EAD7C0 8px,#fff 8px,#fff 100%)}
.reading-mode-shelf{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.reading-mode-shelf .reading-unit{display:block;background:#FFFAEF;border-bottom:6px solid #C4843C}
.reading-mode-shelf .reading-num{margin-bottom:14px}
.reading-mode-product .reading-unit{background:#FFFDF8}
.reading-mode-policy{grid-template-columns:1fr}
.reading-mode-policy .reading-unit{border-left:3px solid var(--gold);box-shadow:none}
.reading-mode-brand .reading-unit:nth-child(odd){background:#F9EDD1}
.reading-mode-brand .reading-unit{padding:29px}
.faq-list{margin-top:21px;display:grid;gap:12px}
.faq-item{display:flex;align-items:flex-start;gap:23px;padding:24px 28px;background:#fff;border:1px solid var(--stroke);border-radius:12px}
.faq-number{font-family:Georgia,serif;font-size:29px;color:var(--gold-deep);line-height:1;min-width:45px}
.faq-item h2{font-size:17px;margin:0 0 7px;font-family:var(--serif)}
.faq-item p{font-size:15px;line-height:1.85;margin:0}
/* Footer: full bleed deep coffee, light cream text. */
.site-footer{background:#3A2414;color:#EAD7C0;border-top:5px solid #C4843C;padding:42px 0 26px}
.footer-inner{min-width:0}
.footer-intro{display:flex;flex-direction:column;gap:8px;margin-bottom:27px}
.footer-brand{display:inline-flex;align-items:center;gap:13px;align-self:start;min-height:44px}
.logo-footer{height:28px;max-width:155px}
.footer-name{font-family:var(--serif);font-size:17px;font-weight:800;color:#EAD7C0;line-height:1.1}
.footer-name small{display:block;font-size:10px;font-family:var(--sans);letter-spacing:.14em;margin-top:5px;color:#EAD7C0}
.footer-intro p{font-size:13px;color:#EAD7C0;margin:0}
.footer-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;padding:19px 0 23px;border-top:1px solid rgba(243,230,200,.24);border-bottom:1px solid rgba(243,230,200,.24)}
.footer-groups nav{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.footer-groups h2{font-size:13px;color:#FFF6EA;margin:0 0 7px}
.footer-groups a{display:inline-flex;align-items:center;min-height:44px;padding:2px 2px;color:#EAD7C0;font-size:13px;transition:color .2s,transform .2s}
.footer-groups a:hover{color:#fff;transform:translateX(2px)}
.footer-bottom{display:flex;flex-direction:column;gap:5px;padding-top:20px}
.footer-bottom p{font-size:13px;color:#EAD7C0;margin:0;line-height:1.75}
.bottom-bar{display:none}
/* Drawer, overlay and search appear only upon a deliberate click. */
.screen-shade{position:fixed;inset:0;background:rgba(30,20,6,.6);z-index:80;visibility:hidden;opacity:0;pointer-events:none;transition:visibility 0s linear .25s,opacity .25s}
.screen-shade.shown{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .25s}
.palace-drawer{position:fixed;left:0;top:0;bottom:0;width:min(400px,86vw);z-index:90;display:flex;flex-direction:column;min-width:0;background:#FFF6EA;color:var(--title);border-right:2px solid var(--gold);box-shadow:12px 0 35px rgba(30,20,6,.17);transform:translateX(-103%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .28s,visibility 0s linear .28s}
.palace-drawer[data-open="true"]{transform:translateX(0);opacity:1;visibility:visible;pointer-events:auto;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .28s}
.drawer-head{min-height:79px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 17px;background:#fff;border-bottom:1px solid var(--stroke-strong)}
.drawer-brand{display:flex;align-items:center;gap:10px;min-width:0}
.drawer-logo{max-width:115px;height:28px}
.drawer-brand span{display:flex;flex-direction:column;line-height:1.15;font-weight:800;font-size:14px;white-space:nowrap}
.drawer-brand small{font-size:10px;color:var(--sub);font-weight:400;margin-top:4px}
.close-control{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border:1px solid var(--stroke-strong);border-radius:9px;color:var(--title);background:#fff;font-size:27px;line-height:1;transition:background .2s}
.close-control:hover{background:#EAD7C0}
.drawer-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:13px 15px 26px;scrollbar-color:#C4843C #FFF6EA}
.drawer-group{margin-bottom:16px}
.drawer-group h2{font-size:13px;color:var(--gold-deep);padding:7px 6px;border-bottom:1px solid var(--stroke-strong);margin-bottom:8px}
.drawer-link-grid{display:grid;gap:6px}
.drawer-link-grid a{display:flex;flex-direction:column;min-height:51px;justify-content:center;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:#fff;color:var(--title);transition:background .2s,border-color .2s}
.drawer-link-grid a:hover,.drawer-link-grid a.drawer-current{background:#EAD7C0;border-color:var(--stroke-strong)}
.drawer-link-grid strong{font-size:14px;line-height:1.3}
.drawer-link-grid span{font-size:11px;color:#7A5634;line-height:1.4;margin-top:3px}
.search-panel{position:fixed;z-index:91;top:82px;right:max(16px,calc((100vw - 1120px)/2));width:min(520px,calc(100% - 32px));max-height:calc(100vh - 98px);overflow-y:auto;padding:22px 25px 25px;background:#FFFDF8;color:var(--title);border:1px solid var(--stroke-strong);border-radius:0 0 12px 12px;box-shadow:0 18px 45px rgba(58,36,20,.24);visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-16px);transition:opacity .2s,transform .2s,visibility 0s linear .2s}
.search-panel[data-open="true"]{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0);transition:opacity .2s,transform .2s}
.search-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.search-head h2{margin:4px 0 0;font-family:var(--serif);font-size:21px}
.search-panel label{display:block;font-size:14px;margin-bottom:13px}
.search-field{display:flex;align-items:center;gap:16px;border:1px solid var(--stroke-strong);background:#fff;border-radius:9px;padding:0 12px;height:49px;color:var(--gold-deep)}
.search-field input{background:transparent;border:0;outline:0;color:var(--title);min-width:0;width:100%;height:100%;font-size:14px}
.search-field input:focus-visible{outline:0}
.search-field:focus-within{outline:2px solid var(--gold-deep);outline-offset:2px}
.search-hint{font-size:12px;color:var(--sub);margin:10px 0 14px}
.search-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.search-links a{display:flex;align-items:center;justify-content:space-between;min-height:47px;padding:11px 14px;border-radius:9px;background:#F6EDE0;border:1px solid var(--stroke);font-size:14px;font-weight:700}
.search-links a:hover{background:#EAD7C0}
.search-links a span{color:var(--gold-deep)}
.search-links a[hidden]{display:none!important}
.search-empty{font-size:13px;color:var(--sub);margin-top:12px}
.search-empty[hidden]{display:none!important}
html.overlay-active,body.overlay-active{overflow:hidden!important}
@media(max-width:1000px){
 .three-cards{gap:12px}.topic-card-body{padding:17px}.issue-layout{grid-template-columns:1fr 1fr;gap:19px}
 .shelf-layout{grid-template-columns:1fr 1.12fr;gap:15px}.shelf-list a{grid-template-columns:25px 89px minmax(0,1fr) 16px;gap:7px}
 .rank-layout{gap:17px}.media-rank{height:310px}
 .reading-mode-gallery,.reading-mode-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
 .site-top{left:0;right:0;width:auto;max-width:none}
 .ribbon{display:none}
 .main-content{padding-top:108px;padding-bottom:48px}
 .crown-line,.crown-inner{height:22px}
 .crown-brand{font-size:10.5px}
 .crown-search{margin-right:2px}
 .palace-bar,.palace-inner{height:60px}
 .palace-inner{gap:5px;grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr)}
 .site-brand{min-width:0;max-width:100%}
 .brand-logo{max-width:140px;max-height:28px}
 .brand-fallback{font-size:15px}
 .palace-trigger{min-width:48px;width:48px;min-height:44px;padding:0;border-radius:9px}
 .trigger-label{display:none}
 .palace-app{min-width:0;padding:0 10px;height:44px;font-size:12px;gap:3px;border-radius:9px}
 .hero-media{height:190px;padding:6px}
 .hero-info{padding:21px 20px 24px}
 .hero-info::after{width:50px;height:50px;right:15px;top:14px}
 .hero-info h1{font-size:24px}
 .hero-lede{font-size:14px}
 .section-heading{align-items:flex-start;flex-wrap:wrap;gap:6px;margin-bottom:18px}
 .section-heading h2{font-size:20px}
 .section-heading p{text-align:left;max-width:none}
 .home-block{margin-top:44px}
 .three-cards{grid-template-columns:1fr;gap:14px}
 .topic-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:stretch}
 .topic-card-media{display:flex;align-items:center;padding:8px}
 .media-card{height:190px}
 .topic-card h3{font-size:17px}
 .topic-card-body{padding:13px 13px 9px}
 .topic-card p{font-size:13px;line-height:1.7}
 .featured-issue,.bookshelf-section,.calendar-section,.memo-section,.number-section,.app-section{padding:19px 16px}
 .issue-layout,.shelf-layout,.rank-layout,.calendar-layout,.memo-layout,.app-layout{grid-template-columns:1fr;gap:16px}
 .issue-copy p{font-size:14px}
 .media-issue,.media-calendar,.media-memo{height:195px}
 .media-shelf{height:190px}
 .media-rank{height:195px}
 .shelf-list a{grid-template-columns:26px 85px minmax(0,1fr) 13px;padding:10px 9px}
 .rank-layout>div:last-child{order:-1}
 .rank-list a{min-height:51px}
 .time-nodes{margin-left:13px;gap:19px}
 .memo-points{gap:8px}
 .side-readings{grid-template-columns:1fr;gap:12px}
 .side-reading{padding:20px}
 .app-phone{margin:auto}
 .media-app{height:290px;max-width:280px}
 .app-copy p{font-size:14px}
 .faq-preview{grid-template-columns:1fr}
 .footer-groups{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px}
 .footer-inner{padding-bottom:0}
 .site-footer{padding:29px 0 calc(34px + env(safe-area-inset-bottom,0px))}
 body{padding-bottom:calc(48px + env(safe-area-inset-bottom,0px))}
 .bottom-bar{position:fixed;left:0;right:0;bottom:0;width:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(48px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:#FFFBF2;border-top:1px solid var(--stroke-strong);box-shadow:0 -4px 18px rgba(58,36,20,.09);z-index:70}
 .bottom-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:48px;font-size:11px;color:var(--sub);line-height:1.2}
 .bottom-link.selected{background:#C4843C;color:#3A2414;font-weight:800}
 .bottom-icon{font-family:var(--sans);font-size:16px;line-height:1.1;height:18px}
 .palace-drawer{width:min(400px,86vw)}
 .search-panel{left:0;top:0;right:0;bottom:0;width:auto;height:100dvh;max-height:none;overflow-y:auto;border:0;border-radius:0;padding:calc(30px + env(safe-area-inset-top,0px)) 16px 70px;background:#8B5A2B;color:#FFF6EA;transform:translateY(-100%);box-shadow:none}
 .search-panel[data-open="true"]{transform:translateY(0)}
 .search-panel .overline{color:#D9A05A}
 .search-head h2{color:#FFF6EA}
 .search-panel label,.search-panel .search-hint,.search-panel .search-empty{color:#EAD7C0}
 .search-panel .close-control{background:transparent;color:#FFF6EA;border-color:rgba(243,230,200,.5)}
 .search-field{background:#FFF6EA;color:#3A2414}
 .search-links a{background:#FFF6EA;color:#3A2414;border-color:#C4843C}
 .search-links a:hover{background:#EAD7C0}
 .internal-heading{padding:23px 20px}
 .internal-heading h1{font-size:24px}
 .internal-heading .lede{font-size:16px}
 .internal-topline{flex-wrap:wrap}
 .media-inner{height:190px}
 .page-visual-app .media-phone{height:275px}
 .reading-grid,.reading-mode-gallery,.reading-mode-shelf,.reading-mode-steps,.reading-mode-product,.reading-mode-brand{grid-template-columns:1fr}
 .reading-unit{padding:21px 18px;gap:12px}
 .reading-unit p{font-size:15px}
 .reading-mode-columns .reading-unit,.reading-mode-rank .reading-unit{grid-template-columns:55px minmax(0,1fr);padding:18px 17px}
 .reading-mode-rank .reading-num{font-size:36px}
 .reading-mode-columns .reading-num{font-size:33px}
 .reading-mode-timeline{margin-left:8px;padding-left:20px}
 .reading-mode-timeline .reading-unit::before{left:-29px}
 .faq-item{padding:18px;gap:13px}
 .faq-number{font-size:23px;min-width:33px}
 .read-more nav{grid-template-columns:1fr}
}
@media(max-width:390px){
 .crown-brand{font-size:10px}
 .brand-logo{max-width:119px}
 .palace-app{font-size:11.5px;padding:0 8px}
 .topic-card{display:block}
 .topic-card-media{padding:10px}
 .media-card{height:172px}
 .topic-card-body{padding:18px 17px 12px}
 .topic-card p{font-size:14px}
 .hero-media{height:172px}
 .hero-info h1{font-size:23px}
 .action-pair .btn{padding:10px 13px;min-width:0}
 .issue-index{grid-template-columns:1fr 1fr}
 .issue-index a{padding:7px;gap:6px;font-size:12px}
 .shelf-list a{grid-template-columns:21px 69px minmax(0,1fr) 11px;gap:5px;font-size:12px}
 .shelf-list strong{font-size:12px}
 .shelf-list small{font-size:11px}
 .footer-groups{gap:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* 麦色品牌视觉统一覆盖：从右侧展开的辫匣与手机安全边距 */
:root{--bg:#F6EDE0;--panel:#FFFFFF;--soft:#EAD7C0;--title:#3A2414;--text:#4A3220;--sub:#7A5634;--muted:#9A7450;--gold:#C4843C;--gold-lite:#D9A05A;--gold-deep:#8B5A2B;--stroke:rgba(196,132,60,.18);--stroke-strong:rgba(196,132,60,.46);--shadow:0 12px 28px rgba(58,36,20,.08)}
html,body{max-width:100%;min-width:0} .site-top,.crown-line,.palace-bar{width:100%;left:0;right:0} .image-slot img{object-fit:contain!important;object-position:center!important} .btn-gold{background:linear-gradient(135deg,#D9A05A 0%,#C4843C 55%,#8B5A2B 100%);color:#FFF6EA} .site-footer{background:#8B5A2B;color:#FFF6EA} .site-footer a,.site-footer p,.site-footer h2{color:#FFF6EA}
 .palace-drawer{left:auto;right:0;transform:translateX(103%);border-right:0;border-left:1px solid var(--stroke-strong)} .palace-drawer[data-open="true"]{transform:translateX(0)}
 @media(max-width:620px){.palace-drawer{left:auto;right:0;max-width:86vw;width:86vw}.palace-inner{padding-inline:16px}.crown-inner{padding-inline:16px}}

/* 各界面状态优先保证麦色底配米白字体和窄屏间距 */
.palace-app,.btn-gold,.bottom-link.selected,.ribbon a.active{color:#FFF6EA}
.palace-app:focus-visible,.btn:focus-visible,.bottom-link:focus-visible{outline:3px solid #3A2414;outline-offset:2px}
.crown-inner{max-width:1120px}
@media(max-width:767px){
 .site-top{top:0;left:0;right:0;max-width:none;width:auto}
 .crown-line,.palace-bar{width:100%;max-width:none}
 .palace-inner,.crown-inner{box-sizing:border-box;width:100%;max-width:100%;margin:0;padding-left:16px;padding-right:16px}
 .palace-drawer{right:0;left:auto;width:86vw;max-width:86vw}
 .site-footer{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:380px){
 .palace-app{white-space:nowrap}
 .palace-inner{grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr)}
}

/* 文字可读性：麦色交互控件使用深麦色下沿及浅色字 */
.palace-app,.btn-gold{background:linear-gradient(135deg,#B57435 0%,#985E29 54%,#74461F 100%);color:#FFF6EA;text-shadow:0 1px 1px rgba(35,17,7,.32)}
.ribbon a.active,.bottom-link.selected{background:#865021;color:#FFF6EA}
