:root{
  --bg:#0C0B0A;--deep:#161311;--panel:#1C1916;--panel2:#26221D;--paper:#F3E6D2;
  --title:#FFF8F0;--text:#EDE4D8;--muted:#B7A898;--aux:#8A7B6C;--red:#E11D2E;
  --red-hi:#FF4A4F;--wine:#8B1E2D;--rust:#E25A2A;--amber:#E2B14A;
  --border:rgba(226,177,74,.16);--accent-border:rgba(225,29,46,.40);--shadow:0 18px 44px rgba(0,0,0,.46);
  --max:1280px;--radius:8px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.8 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;overflow-wrap:anywhere;overflow-x:hidden}
a{color:inherit;text-decoration:none}
a:hover{color:var(--title)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
img{display:block;max-width:100%;height:auto}
button,input{font:inherit}
button{cursor:pointer}
[id]{scroll-margin-top:24px}
.site-header{border-bottom:1px solid var(--border);background:var(--deep)}
.header-inner{max-width:var(--max);min-height:80px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;min-width:0;gap:12px;color:var(--title)}
.brand-logo,.footer-logo{width:auto;height:32px;object-fit:contain;object-position:center;flex:none}
.brand-logo-text{font-weight:800;font-size:24px;letter-spacing:.04em;color:var(--title)}
.brand-english{font-size:12px;letter-spacing:.18em;color:var(--muted);white-space:nowrap}
.header-quick{display:flex;gap:8px;align-items:center}
.header-quick a{min-height:44px;padding:8px 12px;display:inline-flex;align-items:center;border-bottom:1px solid transparent;color:var(--muted)}
.header-quick a:hover{border-color:var(--red);color:var(--title)}
.tool-zone{background:#100e0c;border-bottom:1px solid var(--border)}
.tool-row{max-width:var(--max);margin:0 auto;padding:10px 24px;display:flex;justify-content:flex-end;gap:10px;align-items:flex-start}
.site-tool{width:min(720px,100%);background:var(--deep);border:1px solid var(--border);border-radius:6px}
.directory-tool{display:none}
.site-tool summary{list-style:none;min-height:44px;padding:7px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--title);cursor:pointer;font-weight:700}
.site-tool summary::-webkit-details-marker{display:none}
.summary-state::before{content:"＋";color:var(--red-hi);font-size:19px}
.site-tool[open] .summary-state::before{content:"－"}
.tool-content{border-top:1px solid var(--border);padding:16px;background:var(--panel)}
.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.directory-group{min-width:0}
.directory-group h2,.footer-group h2,.sidebar-group h2{margin:0 0 8px;color:var(--amber);font-size:13px;letter-spacing:.08em;font-weight:700}
.directory-link{display:block;padding:10px 8px;border-bottom:1px solid rgba(243,230,210,.07)}
.directory-link strong{display:block;color:var(--title);font-size:15px}
.directory-link span{display:block;color:var(--muted);font-size:13px;line-height:1.55;margin-top:2px}
.directory-link.is-current{background:rgba(225,29,46,.11);border-left:3px solid var(--red);padding-left:10px}
.tool-close{min-height:44px;margin-top:16px;border:1px solid var(--accent-border);border-radius:5px;background:transparent;color:var(--title);padding:8px 14px}
.local-search label{display:block;color:var(--title);font-weight:700;margin-bottom:8px}
.search-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.search-controls input{width:100%;min-height:44px;border:1px solid var(--border);border-radius:5px;background:#0f0d0b;color:var(--text);padding:8px 12px}
.search-controls button{min-height:44px;border:1px solid var(--border);border-radius:5px;background:var(--paper);color:#2a211b;padding:8px 14px;font-weight:700}
.search-status,.search-empty{margin:10px 0;color:var(--muted);font-size:13px}
.search-empty{color:var(--paper)}
.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px}
.search-result{padding:9px 6px;border-bottom:1px solid rgba(243,230,210,.07);min-width:0}
.search-result strong{display:block;color:var(--title)}
.search-result span{display:block;color:var(--muted);font-size:13px;line-height:1.5}
.site-shell{max-width:var(--max);margin:0 auto;padding:36px 24px 64px;display:grid;grid-template-columns:196px minmax(0,1fr);gap:24px;align-items:start}
.desktop-sidebar{min-width:0}
.sidebar-group{margin-bottom:22px}
.sidebar-group a{display:flex;align-items:center;min-height:40px;padding:7px 10px 7px 14px;color:var(--muted);border-left:2px solid transparent;border-radius:0 5px 5px 0}
.sidebar-group a:hover{color:var(--title);background:rgba(243,230,210,.04)}
.sidebar-group a.is-current{color:var(--title);border-left-color:var(--red);background:rgba(225,29,46,.10);font-weight:700}
.full-directory-link{display:flex;min-height:44px;align-items:center;padding:8px 12px;border:1px solid var(--border);border-radius:5px;color:var(--paper)}
.page-main{min-width:0}
.breadcrumbs{margin:0 0 12px;color:var(--aux);font-size:13px}
.breadcrumbs a{color:var(--muted)}
.page-heading{max-width:800px;margin:0 0 34px}
.kicker{display:inline-block;margin-bottom:8px;color:var(--red-hi);font-size:13px;font-weight:800;letter-spacing:.08em}
h1{font-size:clamp(28px,3vw,32px);line-height:1.25;margin:0 0 14px;color:var(--title);letter-spacing:-.02em}
h2{font-size:23px;line-height:1.38;color:var(--title);margin:0 0 14px}
h3{font-size:18px;line-height:1.45;color:var(--title);margin:0 0 8px}
p{margin:0 0 16px}
.lead{font-size:18px;color:var(--paper);line-height:1.85}
.section-block{margin:0 0 48px;min-width:0}
.article-column{max-width:780px}
.article-column p{color:var(--text)}
.rule-section{padding-top:26px;border-top:1px solid var(--border)}
.subtle-note{color:var(--muted);font-size:14px}
.inline-label{display:inline-block;color:var(--red-hi);font-weight:800;font-size:13px;margin-right:8px}
.text-link{display:inline-flex;min-height:44px;align-items:center;color:var(--paper);font-weight:700;border-bottom:1px solid var(--red)}
.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.primary-link,.secondary-link{min-height:44px;padding:9px 16px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-weight:800}
.primary-link{background:linear-gradient(135deg,#FF4A4F 0%,#E11D2E 46%,#E25A2A 100%);color:#fff8f0}
.secondary-link{background:var(--paper);color:#30251d}
.related-links{margin-top:42px;padding:22px;border:1px solid var(--border);background:var(--deep);border-radius:var(--radius)}
.related-links h2{font-size:18px}
.related-links div{display:flex;gap:10px;flex-wrap:wrap}
.related-links a{min-height:44px;padding:8px 12px;display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:5px;color:var(--paper)}
.content-image{width:auto;max-width:100%;height:auto;max-height:240px;object-fit:contain;object-position:center;margin-inline:auto}
.image-fallback{width:100%;min-height:140px;max-height:180px;background:linear-gradient(135deg,#171210,#321417);border:1px solid var(--accent-border);display:flex;align-items:center;justify-content:center;padding:20px;color:var(--paper);text-align:center;border-radius:var(--radius)}
.figure-frame{margin:0;padding:18px;background:var(--deep);border:1px solid var(--border);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;min-width:0}
.figure-frame figcaption{margin-top:8px;color:var(--aux);font-size:13px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:center;padding:28px 0 42px;border-bottom:1px solid var(--border)}
.hero-grid .figure-frame{min-height:220px}
.home-cover{max-height:300px}
.reading-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.path-item{padding:16px;border-top:2px solid var(--red);background:var(--deep);min-width:0}
.path-item strong{display:block;color:var(--title);margin-bottom:5px}
.path-item span{color:var(--muted);font-size:14px;line-height:1.6}
.media-copy-grid{display:grid;grid-template-columns:minmax(220px,.38fr) minmax(0,.62fr);gap:28px;align-items:start}
.media-copy-grid.reverse{grid-template-columns:minmax(0,.62fr) minmax(220px,.38fr)}
.digest-list,.mini-grid,.status-grid,.compare-grid,.topic-grid{display:grid;gap:14px}
.digest-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.digest-item,.mini-item,.status-item,.compare-item,.topic-item{min-width:0;padding:17px;border:1px solid var(--border);background:var(--panel);border-radius:var(--radius)}
.digest-item h3,.mini-item h3,.status-item h3,.compare-item h3,.topic-item h3{font-size:17px}
.digest-item p,.mini-item p,.status-item p,.compare-item p,.topic-item p{color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:8px}
.editorial-pair{display:grid;grid-template-columns:1.08fr .92fr;gap:22px;align-items:start}
.editorial-unit{min-width:0;padding:20px 0;border-top:1px solid var(--border)}
.editorial-unit:nth-child(2){padding-left:22px;border-left:1px solid var(--border)}
.editorial-unit .content-image{max-height:230px;margin-bottom:18px}
.long-band{display:grid;grid-template-columns:minmax(220px,.34fr) minmax(0,.66fr);gap:26px;padding:24px 0;border-top:1px solid var(--border);align-items:center}
.compare-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.status-item{border-left:3px solid var(--red)}
.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.paper-box{background:var(--paper);color:#2c231d;padding:20px;border-radius:var(--radius)}
.paper-box h2,.paper-box h3{color:#1f1915}.paper-box p{color:#44372e}
.red-rule-box{border-top:2px solid var(--red);border-bottom:1px solid var(--border);padding:24px 0}
.app-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.42fr);gap:28px;align-items:center}
.app-image{max-height:420px;width:auto}
.mark-image{max-height:72px;width:auto}
.triple-text{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.triple-text article{padding-top:18px;border-top:1px solid var(--border)}
.article-section{max-width:780px;margin:0 0 38px;padding-top:5px}
.article-section + .article-section{padding-top:30px;border-top:1px solid var(--border)}
.article-section p{margin-bottom:17px}
.fact-opinion{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.fact-opinion > div{padding:16px;border:1px solid var(--border);background:var(--deep)}
.fact-opinion strong{display:block;color:var(--title);margin-bottom:6px}
.timeline-reading{display:grid;gap:12px;margin:20px 0}
.timeline-step{position:relative;padding:16px 16px 16px 22px;border-left:3px solid var(--wine);background:var(--deep)}
.timeline-step strong{display:block;color:var(--title)}
.method-list{margin:16px 0;padding:0;list-style:none;display:grid;gap:10px}
.method-list li{padding:12px 14px;background:var(--deep);border-left:3px solid var(--amber)}
.responsive-table{width:100%;border-collapse:collapse;margin:20px 0;background:var(--deep)}
.responsive-table th,.responsive-table td{text-align:left;vertical-align:top;padding:12px;border:1px solid var(--border)}
.responsive-table th{color:var(--title);background:var(--panel2)}
.responsive-table td{color:var(--text)}
.faq-list{max-width:820px;display:grid;gap:10px}
.faq-item{border:1px solid var(--border);border-radius:6px;background:var(--deep)}
.faq-item summary{min-height:48px;padding:10px 14px;color:var(--title);font-weight:800;cursor:pointer}
.faq-answer{padding:0 14px 14px;color:var(--text)}
.site-footer{background:#080706;border-top:1px solid var(--red);color:#D8CBBA}
.footer-inner{max-width:var(--max);margin:0 auto;padding:38px 24px 34px}
.footer-brand-row{display:grid;grid-template-columns:minmax(220px,.35fr) minmax(0,.65fr);gap:28px;align-items:start;margin-bottom:30px}
.footer-brand{display:flex;gap:12px;align-items:center}
.footer-brand div{display:flex;flex-direction:column}.footer-brand strong{color:var(--title)}.footer-brand span{font-size:11px;letter-spacing:.16em;color:var(--muted)}
.footer-note{color:#bdb0a1;font-size:14px;max-width:760px}
.footer-home-link{display:inline-flex;min-height:44px;align-items:center;margin-bottom:14px;color:var(--paper);border-bottom:1px solid var(--red)}
.footer-directory{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;padding-top:22px;border-top:1px solid rgba(243,230,210,.10)}
.footer-group{min-width:0}.footer-group a{display:block;padding:5px 0;color:#c7b9aa;font-size:14px}.footer-group a:hover{color:var(--title)}
.copyright{margin:28px 0 0;padding-top:16px;border-top:1px solid rgba(243,230,210,.08);color:var(--aux);font-size:13px}
.mobile-bottom-nav{display:none}
@media (min-width:1100px) and (min-height:760px){.desktop-sidebar nav{position:sticky;top:20px}}
@media (max-width:1099px){
  .header-inner,.tool-row,.site-shell,.footer-inner{padding-left:20px;padding-right:20px}
  .site-shell{display:block;padding-top:28px}
  .desktop-sidebar{display:none}
  .directory-tool{display:block}
  .tool-row{display:block}.site-tool{width:100%;margin-bottom:8px}
  .directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-main{width:100%}
}
@media (max-width:767px){
  body{font-size:16px;line-height:1.78;padding-bottom:calc(74px + env(safe-area-inset-bottom))}
  .header-inner{min-height:64px;padding:10px 16px;gap:10px}.brand{gap:8px}.brand-logo,.footer-logo{height:28px}.brand-logo-text{font-size:21px}.brand-english{font-size:10px;letter-spacing:.11em}
  .header-quick a{padding:6px 8px}.header-quick a:last-child{display:none}
  .tool-row,.site-shell,.footer-inner{padding-left:16px;padding-right:16px}
  .tool-zone{padding-top:4px}.tool-row{padding-top:6px;padding-bottom:6px}
  .tool-content{padding:14px 12px}.directory-grid,.search-results{grid-template-columns:1fr}
  .site-shell{padding-top:24px;padding-bottom:44px}
  h1{font-size:clamp(24px,8vw,28px)}h2{font-size:21px}.lead{font-size:17px}
  .page-heading{margin-bottom:28px}.section-block{margin-bottom:34px}
  .hero-grid,.media-copy-grid,.media-copy-grid.reverse,.editorial-pair,.long-band,.app-grid,.footer-brand-row{grid-template-columns:1fr;gap:18px}
  .hero-grid{padding-top:12px}.hero-grid .figure-frame{min-height:0}.home-cover{max-height:260px}
  .reading-path{grid-template-columns:repeat(2,minmax(0,1fr))}
  .digest-list,.compare-grid,.status-grid,.topic-grid,.triple-text,.fact-opinion{grid-template-columns:1fr}
  .editorial-unit:nth-child(2){padding-left:0;border-left:0}
  .long-band{align-items:start}.app-image{max-height:360px}.mark-image{max-height:64px}
  .footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.footer-brand-row{margin-bottom:22px}
  .mobile-bottom-nav{position:fixed;z-index:30;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);min-height:56px;padding-bottom:env(safe-area-inset-bottom);background:#0a0807;border-top:1px solid var(--border);box-shadow:0 -8px 24px rgba(0,0,0,.38)}
  .mobile-bottom-nav a{min-width:0;min-height:56px;display:flex;align-items:center;justify-content:center;padding:6px 3px;color:var(--muted);font-size:13px;font-weight:700;border-top:3px solid transparent}
  .mobile-bottom-nav a.is-current{color:var(--title);border-top-color:var(--red);background:rgba(225,29,46,.08)}
  .responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%}.responsive-table thead{display:none}.responsive-table tr{border:1px solid var(--border);margin-bottom:12px;background:var(--deep)}.responsive-table td{border:0;border-bottom:1px solid rgba(243,230,210,.07);padding:10px 12px}.responsive-table td:last-child{border-bottom:0}.responsive-table td::before{content:attr(data-label);display:block;color:var(--amber);font-size:12px;font-weight:800;margin-bottom:3px}
}
@media (max-width:360px){.header-quick a{font-size:13px}.brand-english{display:none}.reading-path,.footer-directory{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
