:root {
  --paper:#F6F3EC; --mint:#E8F4F2; --white:#FFFCFA; --rose:#FDECEA;
  --ink:#1A2A28; --body:#2C3A38; --muted:#5A6B68; --subtle:#7A8A86;
  --teal:#0E8A7D; --deep:#0A5F56; --red:#C62828; --line:rgba(14,138,125,.22);
  --shadow:0 14px 36px rgba(26,42,40,.10); --width:1160px;
  --surface-radius:12px; --pad:24px;
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:90px}
body {margin:0;background:var(--paper);color:var(--body);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;font-size:16px;line-height:1.75;-webkit-text-size-adjust:100%}
a {color:inherit;text-decoration:none}
a:hover {color:var(--deep)}
a,button,input,summary { -webkit-tap-highlight-color:transparent }
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible {outline:3px solid var(--red);outline-offset:3px}
button,input {font:inherit}
button {cursor:pointer}
figure,p,h1,h2,h3,h4 {margin:0}
h1,h2,h3 {color:var(--ink);line-height:1.35}
p {overflow-wrap:anywhere}
img {display:block;max-width:100%;height:auto;object-fit:contain;object-position:center}
[hidden] {display:none!important}
.skip-link {position:fixed;left:12px;top:-90px;z-index:300;padding:8px 16px;background:#fff;border:2px solid var(--red)}
.skip-link:focus {top:10px}
.site-header {position:sticky;top:0;z-index:100;width:100%;isolation:isolate;box-shadow:0 5px 19px rgba(10,95,86,.10)}
.top-ribbon {height:16px;width:100%;background:var(--teal);color:var(--paper)}
.ribbon-inner {position:relative;max-width:var(--width);height:16px;margin:auto;padding:0 16px;display:flex;align-items:center}
.ribbon-inner>span {font-weight:750;font-size:10px;letter-spacing:.55px;white-space:nowrap;line-height:16px}
.search-trigger {position:absolute;top:0;right:104px;z-index:3;width:44px;height:44px;display:grid;place-items:center;background:var(--deep);color:#fff;border:1px solid #0E8A7D;border-top:0;border-radius:0 0 9px 9px;box-shadow:0 5px 14px rgba(10,95,86,.12)}
.search-trigger:hover {background:var(--red)}
.magnifier {position:relative;display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-radius:50%;margin:0 4px 4px 0}
.magnifier::after {content:"";position:absolute;width:7px;height:2px;right:-6px;bottom:-3px;background:currentColor;border-radius:2px;transform:rotate(45deg)}
.read-bar {height:54px;width:100%;background:var(--paper);border-bottom:1px solid var(--line)}
.read-inner {max-width:var(--width);height:54px;margin:auto;padding:0 16px;display:flex;align-items:center;gap:10px;min-width:0}
.site-brand {flex:0 1 auto;max-width:150px;min-width:0;display:flex;align-items:center;justify-content:flex-start;height:44px;color:var(--deep)}
.site-brand img,.cabinet-logo img,.foot-brand img {width:auto;height:auto;max-width:100%;max-height:28px;object-fit:contain;object-position:left center}
.brand-text {font-size:21px;font-weight:900;letter-spacing:1px;line-height:1.2;color:var(--deep);white-space:nowrap}
.cabinet-trigger {display:flex;flex:0 0 auto;gap:7px;align-items:center;justify-content:center;height:44px;min-width:72px;padding:0 12px;background:var(--mint);border:1px solid var(--line);color:var(--deep);font-size:14px;font-weight:800;border-radius:9px}
.cabinet-trigger:hover {background:var(--teal);color:var(--white)}
.hamburger {width:16px;height:15px;flex:0 0 16px;background:linear-gradient(currentColor,currentColor) center top/16px 2px no-repeat,linear-gradient(currentColor,currentColor) center center/16px 2px no-repeat,linear-gradient(currentColor,currentColor) center bottom/16px 2px no-repeat}
.read-spacer {flex:1;min-width:0}
.open-app {display:flex;align-items:center;justify-content:center;min-height:44px;min-width:85px;padding:0 13px;background:var(--red);color:#fff;border-radius:9px;font-size:14px;font-weight:800;white-space:nowrap}
.open-app:hover {background:#A81D1D;color:#fff}
.page-main {min-width:0}
.page-shell {max-width:var(--width);margin:0 auto;padding:24px 16px 84px;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:start;gap:16px}
.main-column {min-width:0;max-width:1104px}
.side-tabs {position:sticky;top:89px;display:flex;flex-direction:column;gap:7px;width:56px;align-self:start;padding:9px 5px;border:1px solid var(--line);background:var(--white);border-radius:12px;box-shadow:var(--shadow);z-index:3}
.side-tabs>a {height:44px;display:grid;place-items:center;font-size:12px;line-height:1.2;font-weight:800;color:var(--deep);border-radius:7px;text-align:center}
.side-tabs>a:hover,.side-tabs>a.active {background:var(--teal);color:#fff}
.micro-label {display:inline-block;color:var(--teal);font-size:12px;font-weight:900;letter-spacing:.06em;line-height:1.55}
.brand-chip {display:inline-block;background:var(--red);color:white;padding:2px 10px;font-size:11px;font-weight:900;letter-spacing:1px;border-radius:4px}
.btn {min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 19px;font-weight:800;font-size:14px;border-radius:9px;transition:transform .15s ease,background .15s ease;white-space:nowrap}
.btn:hover {transform:translateY(-1px)}
.btn-primary {background:linear-gradient(135deg,var(--teal),var(--deep));color:var(--paper);box-shadow:0 7px 17px rgba(10,95,86,.15)}
.btn-primary:hover {color:var(--paper);background:var(--deep)}
.btn-outline {background:var(--paper);color:var(--deep);border:1px solid var(--teal)}
.btn-outline:hover {background:var(--mint)}
.text-link {display:inline-flex;align-items:center;min-height:44px;gap:6px;color:var(--deep);font-weight:900;font-size:14px}
.text-link:hover {color:var(--red)}
.button-row {display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.media-box {display:flex;align-items:center;justify-content:center;min-width:0;max-width:100%;overflow:visible;background:linear-gradient(155deg,var(--mint),var(--white));border-radius:var(--surface-radius);border:1px solid var(--line)}
.media-box img {max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center}
.media-fallback {min-height:145px;width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:26px 30px;gap:8px;color:var(--deep)}
.media-fallback strong {font-size:clamp(17px,2.7vw,24px);line-height:1.4}
.media-fallback small {font-size:12px;font-weight:600;color:var(--muted);line-height:1.6}
.fallback-mark {font-size:24px;color:var(--red);line-height:1}
.home-page {min-width:0}
.home-section,.cover-opening {margin:0 0 36px;background:var(--white);border:1px solid var(--line);border-radius:var(--surface-radius);box-shadow:0 7px 22px rgba(26,42,40,.045);overflow:hidden}
.cover-opening {padding:18px 20px 23px;border-top:4px solid var(--teal)}
.home-kicker {display:flex;gap:12px;align-items:center;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.05em;margin-bottom:15px}
.cover-columns {display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);gap:16px;align-items:stretch}
.cover-picture {min-width:0}
.lead-media {width:100%;height:260px;max-height:260px;border-radius:8px;background:var(--mint)}
.lead-media img {max-height:258px;max-width:100%;object-fit:contain}
.cover-fallback {width:100%;height:260px;background:linear-gradient(135deg,#E8F4F2 0%,#C9EAE5 57%,#F6F3EC 100%);border-radius:8px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(18px,4vw,40px);gap:10px;position:relative;overflow:hidden}
.cover-fallback::after {content:"";position:absolute;width:155px;height:155px;right:-28px;bottom:-60px;border:24px solid rgba(198,40,40,.13);border-radius:50%;pointer-events:none}
.cover-fallback span {font-size:14px;letter-spacing:2px;font-weight:900;color:var(--red)}
.cover-fallback strong {position:relative;z-index:1;max-width:380px;font-size:clamp(20px,2.8vw,29px);line-height:1.45;color:var(--deep)}
.cover-fallback small {font-size:11px;font-weight:900;letter-spacing:1px;color:var(--muted)}
.cover-headlines {border-left:3px solid var(--red);background:var(--paper);padding:6px 14px 6px 16px;display:flex;flex-direction:column;min-width:0;border-radius:0 8px 8px 0}
.lead-list-head {display:flex;justify-content:space-between;gap:6px;align-items:center;color:var(--deep);font-size:11px;letter-spacing:.03em;font-weight:800;padding:7px 0;border-bottom:1px solid var(--line)}
.lead-list-head strong {color:var(--red);font-weight:900}
.lead-link {display:grid;grid-template-columns:23px minmax(0,1fr) 14px;gap:7px;align-items:center;flex:1;min-height:67px;border-bottom:1px dashed rgba(14,138,125,.18);color:var(--ink)}
.lead-link:last-child {border-bottom:0}
.lead-link:hover {background:var(--mint)}
.lead-count {font-size:12px;font-weight:900;color:var(--red)}
.lead-link strong {display:block;font-size:14px;font-weight:900;line-height:1.35}
.lead-link small {display:block;font-size:11px;line-height:1.45;color:var(--muted);padding-top:3px}
.lead-link>b {color:var(--teal);font-size:15px}
.cover-under {padding:18px 3px 0}
.cover-under h1 {font-size:clamp(24px,3.1vw,32px);letter-spacing:-.015em;margin:6px 0 9px;color:var(--deep)}
.cover-under p {font-size:15px;line-height:1.85;color:var(--body);max-width:850px;margin-bottom:15px}
.home-section {padding:24px 26px}
.home-section h2 {font-size:clamp(22px,2.6vw,28px);color:var(--ink);letter-spacing:-.012em;margin:5px 0 12px}
.home-section p {font-size:15px;line-height:1.9;margin:0 0 14px}
.celeb-feature .section-intro {max-width:970px}
.celeb-feature .section-intro p {max-width:890px}
.wide-illustration {width:100%;min-height:160px;max-height:218px;margin-top:12px}
.wide-illustration img {max-height:216px}
.section-heading-large {display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:15px}
.section-heading-large h2 {margin-bottom:0}
.section-heading-large>p {max-width:360px;color:var(--muted);font-size:13px;margin:0;flex:0 1 360px}
.four-card-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.feature-card {min-width:0;border:1px solid var(--line);background:var(--paper);border-radius:11px;padding:11px;display:flex;flex-direction:column}
.feature-card-top {min-height:38px;display:flex;gap:8px;justify-content:space-between;align-items:center}
.feature-card-top>span {color:var(--red);font-weight:900;font-size:14px}
.feature-card-top>a {font-weight:900;color:var(--deep);font-size:15px}
.feature-media {min-height:150px;height:174px;margin:2px 0 10px}
.feature-media img {max-height:172px}
.feature-media .media-fallback {padding:12px;min-height:110px}
.feature-media .media-fallback strong {font-size:15px}
.feature-media .media-fallback small {font-size:11px}
.feature-media .fallback-mark {font-size:17px}
.feature-card p {font-size:13px;line-height:1.8;flex:1;margin-bottom:8px}
.feature-more {display:flex;align-items:center;min-height:44px;color:var(--deep);font-size:13px;font-weight:900;border-top:1px solid var(--line)}
.special-block {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px;align-items:center;background:linear-gradient(120deg,var(--white),var(--mint))}
.special-picture {height:280px}
.special-picture img {max-height:270px}
.chart-inner {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px;align-items:stretch}
.chart-image {min-height:285px}
.chart-image img {max-height:290px}
.chart-rows {display:grid;gap:3px}
.chart-rows>div {display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:0 10px;padding:6px 0;border-bottom:1px solid var(--line)}
.chart-rows>div b {grid-row:span 2;font-size:23px;color:var(--red);font-weight:900;line-height:1.4}
.chart-rows>div strong {font-size:14px;color:var(--ink)}
.chart-rows>div p {font-size:12px;margin:0;color:var(--muted)}
.calendar-image {height:174px;margin:0 0 16px}
.calendar-image img {max-height:174px}
.status-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.status-tile {background:var(--mint);border:1px solid var(--line);border-left:3px solid var(--teal);padding:13px 13px;border-radius:8px;min-width:0}
.status-tile:nth-child(2) {background:#FFF7EC;border-left-color:#CD8B2F}
.status-tile:nth-child(3) {background:var(--rose);border-left-color:var(--red)}
.status-tile:nth-child(4) {background:#EFEDE5;border-left-color:#687B77}
.status-tile strong {font-size:15px;color:var(--deep)}
.status-tile p {font-size:12px;line-height:1.75;margin:5px 0 0}
.scene-block {display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}
.scene-picture {height:280px}
.scene-picture img {max-height:276px}
.opinion-block {border-top:4px solid var(--red)}
.opinion-grid {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;align-items:center}
.opinion-picture {height:246px}
.opinion-picture img {max-height:240px}
.opinion-label {display:inline-block;background:var(--red);color:#fff;padding:2px 9px;font-size:12px;font-weight:800;border-radius:5px;margin-bottom:8px}
.find-block {display:grid;grid-template-columns:1.13fr .87fr;gap:20px;align-items:center;background:linear-gradient(120deg,#E8F4F2,#FFFCFA)}
.find-links {display:flex;gap:7px;flex-wrap:wrap}
.find-links a {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:7px 12px;border:1px solid var(--teal);background:var(--white);border-radius:8px;font-weight:800;font-size:12px;color:var(--deep)}
.find-links a:hover {background:var(--teal);color:#fff}
.find-picture {height:240px}
.find-picture img {max-height:238px}
.app-block {display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:25px;align-items:center}
.app-media {position:relative;min-width:0}
.app-picture {height:315px;background:linear-gradient(150deg,var(--mint),var(--white))}
.app-picture img {max-height:310px}
.app-mark {position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:62px;height:62px;background:var(--white);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);color:var(--deep);font-weight:900;font-size:30px}
.app-mark img {max-height:56px;max-width:56px;object-fit:contain}
.policy-grid {display:grid;grid-template-columns:1fr 1fr;gap:15px}
.policy-grid article {padding:19px 19px;border-radius:9px;border:1px solid var(--line);background:var(--mint);border-top:3px solid var(--teal)}
.policy-grid article:nth-child(2) {background:var(--rose);border-top-color:var(--red)}
.policy-grid h3 {font-size:19px;margin:8px 0}
.policy-grid p {font-size:13px;line-height:1.9}
.policy-grid a {display:inline-flex;align-items:center;min-height:44px;color:var(--deep);font-weight:900;font-size:13px}
.rule-tag {color:var(--teal);font-size:12px;font-weight:900}
.policy-grid article:nth-child(2) .rule-tag {color:var(--red)}
.home-faq-items {margin-bottom:8px}
.home-faq-items details,.inline-faq details {border-bottom:1px solid var(--line);padding:11px 5px}
.home-faq-items summary,.inline-faq summary {cursor:pointer;font-size:15px;font-weight:850;color:var(--deep);min-height:34px;line-height:1.55}
.home-faq-items details p,.inline-faq details p {font-size:13px;margin:6px 0 5px}
.about-home {border-left:5px solid var(--teal);background:linear-gradient(110deg,#FFFCFA,#E8F4F2)}
.about-home p {max-width:900px}
/* Each article has its own authoritative PHP-rendered body; no JS content loading. */
.crumb {display:flex;gap:9px;align-items:center;min-height:35px;margin:0 0 14px;color:var(--muted);font-size:12px;font-weight:700}
.crumb a {color:var(--deep)}
.story {max-width:100%;min-width:0}
.story-lead {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:center;background:var(--white);border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:12px;padding:22px 24px;margin-bottom:20px}
.story-lead-copy {min-width:0}
.story-lead h1,.faq-intro h1 {font-size:clamp(25px,2.8vw,32px);letter-spacing:-.015em;color:var(--deep);margin:8px 0 13px}
.story-intro {font-size:15px;line-height:1.9;margin:0 0 10px}
.story-tags {display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.story-tags span {background:var(--mint);border:1px solid var(--line);font-size:11px;color:var(--deep);font-weight:800;padding:3px 8px;border-radius:5px}
.story-visual {min-width:0}
.story-picture {height:238px}
.story-picture img {max-height:235px}
.text-visual {min-height:238px;padding:25px;background:linear-gradient(125deg,var(--mint),#D2EBE7);border:1px solid var(--line);border-radius:11px;display:flex;flex-direction:column;justify-content:center;gap:12px;position:relative;overflow:hidden}
.text-visual::after {content:"";position:absolute;width:135px;height:135px;border:17px solid rgba(198,40,40,.12);right:-40px;bottom:-35px;border-radius:50%}
.text-visual span {font-size:11px;font-weight:900;letter-spacing:.03em;color:var(--red)}
.text-visual strong {font-size:27px;line-height:1.25;color:var(--deep)}
.text-visual p {font-size:13px;max-width:300px;color:var(--muted)}
.story-layout {display:grid;grid-template-columns:minmax(0,1.75fr) minmax(240px,.6fr);gap:20px;align-items:start}
.story-content {min-width:0}
.topic-entry,.takeaway,.inline-faq,.story-closing,.related,.faq-all,.status-overview {background:var(--white);border:1px solid var(--line);padding:22px 25px;border-radius:11px;margin:0 0 18px}
.topic-entry {border-left:3px solid var(--teal)}
.topic-entry:nth-child(even){border-left-color:var(--red)}
.topic-entry-lined {border-top:2px solid var(--mint)}
.topic-entry-clause {border-left:3px solid var(--red)}
.section-heading {display:flex;align-items:flex-start;gap:12px;margin:0 0 13px}
.section-heading>span {display:inline-flex;justify-content:center;align-items:center;flex:0 0 37px;width:37px;height:37px;border-radius:7px;background:var(--mint);color:var(--deep);font-weight:900;font-size:15px}
.section-heading h2 {font-size:21px;margin:3px 0 0;line-height:1.45}
.topic-entry p {font-size:15px;line-height:2;margin:0 0 13px}
.topic-entry p:last-child {margin:0}
.story-aside {position:sticky;top:89px;min-width:0;background:var(--mint);padding:19px 17px;border:1px solid var(--line);border-radius:11px}
.story-aside h3 {font-size:18px;margin:5px 0 10px}
.aside-index {display:grid;grid-template-columns:29px minmax(0,1fr);gap:6px;border-top:1px solid var(--line);padding:12px 0;align-items:start}
.aside-index b {font-size:13px;color:var(--red)}
.aside-index span {font-size:13px;line-height:1.65;font-weight:750;color:var(--ink)}
.aside-box {margin-top:13px;border-top:3px solid var(--red);padding:12px;background:var(--white);border-radius:7px}
.aside-box strong {font-size:14px;color:var(--deep)}
.aside-box p {font-size:12px;line-height:1.8;margin:5px 0}
.aside-box a {display:inline-flex;align-items:center;min-height:44px;font-size:12px;font-weight:900;color:var(--deep)}
.takeaway h2,.inline-faq h2,.story-closing h2,.related h2 {font-size:20px;margin:6px 0 12px}
.takeaway {background:var(--mint)}
.takeaway-grid {display:grid;grid-template-columns:1fr 1fr;gap:10px}
.takeaway-grid>div {display:flex;gap:10px;align-items:flex-start;background:var(--white);border-radius:8px;padding:12px;border:1px solid var(--line)}
.takeaway-grid span {color:var(--red);font-weight:900;font-size:14px}
.takeaway-grid p {font-size:13px;line-height:1.65;margin:0}
.story-closing {background:var(--rose);border-color:rgba(198,40,40,.1);border-left:3px solid var(--red)}
.story-closing p {font-size:14px;line-height:1.9}
.related {margin-top:5px}
.related-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.related-grid a {display:flex;flex-direction:column;gap:6px;min-height:94px;background:var(--mint);border:1px solid var(--line);padding:13px 16px;border-radius:8px}
.related-grid a:hover {background:var(--deep);color:#fff}
.related-grid strong {font-size:15px;color:inherit}
.related-grid span {font-size:12px;line-height:1.5}
.status-overview h2 {font-size:21px}
.ranking-note,.opinion-note {background:var(--rose);color:var(--ink);border-left:4px solid var(--red);padding:13px 18px;margin:0 0 19px;font-size:13px;line-height:1.75;border-radius:6px}
.story-chart .topic-entry .section-heading>span {background:var(--rose);color:var(--red)}
.story-calendar .status-overview .status-grid {grid-template-columns:repeat(4,minmax(0,1fr))}
.story-editor .story-lead {border-top-color:var(--red)}
.story-app .story-lead {background:linear-gradient(130deg,var(--white),var(--mint))}
.faq-intro {background:linear-gradient(125deg,var(--white),var(--mint));border:1px solid var(--line);border-top:4px solid var(--teal);padding:26px;border-radius:12px;margin:0 0 18px}
.faq-intro p {max-width:860px;line-height:1.9;font-size:15px}
.faq-all h2 {font-size:21px;margin:0 0 14px}
.faq-all details {border-bottom:1px solid var(--line);padding:14px 0}
.faq-all details:last-child {border-bottom:0}
.faq-all summary {display:flex;align-items:flex-start;gap:12px;font-size:16px;font-weight:900;line-height:1.6;color:var(--deep);cursor:pointer}
.faq-all summary span {flex:0 0 26px;color:var(--red);font-size:13px}
.faq-all details p {padding:3px 0 0 38px;font-size:14px;line-height:2}
.site-footer {background:var(--deep);color:#E8F4F2;border-top:4px solid var(--red)}
.footer-inner {max-width:var(--width);margin:auto;padding:32px 16px 20px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,2fr);gap:38px}
.foot-brand {display:inline-flex;align-items:center;min-height:44px;max-width:160px;margin-bottom:6px;color:#fff}
.site-footer .brand-text {color:var(--white)}
.site-footer .foot-brand img {max-height:28px}
.footer-lead p {font-size:12px;line-height:1.9;color:#E8F4F2;margin:7px 0}
.footer-lead .eng {font-weight:900;letter-spacing:.02em}
.footer-groups {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.footer-groups section {min-width:0}
.footer-groups h2 {font-size:14px;color:#fff;margin:0 0 9px}
.footer-groups a {display:block;font-size:12px;line-height:1.8;color:#D9EAE7;padding:3px 0}
.footer-groups a:hover,.foot-bottom a:hover {color:#fff;text-decoration:underline}
.foot-bottom {border-top:1px solid rgba(255,255,255,.17);padding:13px 16px;text-align:center;font-size:11px;color:#D9EAE7}
.foot-bottom a {margin-left:8px;color:inherit}
.modal-veil {position:fixed;inset:0;background:rgba(15,32,29,.46);z-index:120;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility .2s}
.modal-veil.visible {visibility:visible;opacity:1;pointer-events:auto}
.ui-locked {overflow:hidden}
.net-cabinet,.search-panel {position:fixed;z-index:130;visibility:hidden;pointer-events:none;opacity:0;transition:opacity .2s,transform .2s,visibility .2s;box-shadow:0 18px 60px rgba(15,32,29,.30);background:var(--white);border:1px solid var(--line)}
.net-cabinet {top:70px;left:max(16px,calc((100vw - 1160px)/2 + 16px));width:320px;height:min(480px,calc(100dvh - 82px));display:flex;flex-direction:column;border-radius:0 0 12px 12px;transform:translateX(-14px)}
.net-cabinet.open,.search-panel.open {visibility:visible;pointer-events:auto;opacity:1;transform:translateX(0)}
.cabinet-head {flex:0 0 auto;min-height:66px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--mint)}
.cabinet-logo {display:flex;align-items:center;max-width:86px;height:44px;min-width:0}
.cabinet-logo img {max-height:28px}
.cabinet-logo .brand-text {font-size:14px}
.cabinet-head strong {flex:1;min-width:0;font-size:14px;color:var(--deep);text-align:center;white-space:nowrap}
.close-control {display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--line);background:var(--white);border-radius:9px;color:var(--deep);font-weight:900;font-size:26px;line-height:1}
.close-control:hover {color:#fff;background:var(--red)}
.cabinet-scroll {min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:8px 14px 18px}
.cabinet-group {border-bottom:1px solid var(--line);padding:8px 0 12px}
.cabinet-group:last-child {border:0}
.cabinet-group h3 {font-size:12px;color:var(--red);margin-bottom:6px;letter-spacing:.06em}
.cabinet-group a {display:flex;flex-direction:column;gap:1px;min-height:60px;padding:9px 7px;border-radius:6px;border-bottom:1px dashed rgba(14,138,125,.12)}
.cabinet-group a:hover {background:var(--mint)}
.cabinet-group strong {font-size:14px;color:var(--deep)}
.cabinet-group small {font-size:11px;line-height:1.55;color:var(--muted)}
.search-panel {top:70px;right:max(16px,calc((100vw - 1160px)/2 + 16px));width:min(520px,calc(100vw - 32px));padding:20px 22px;border-radius:0 0 12px 12px;transform:translateX(14px)}
.search-panel-head {display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:15px}
.search-panel-head strong {font-size:16px;line-height:1.5;color:var(--deep)}
.search-panel label {display:block;font-size:12px;font-weight:800;margin-bottom:7px}
.search-input-frame {display:flex;align-items:center;gap:13px;padding:0 14px;border:1px solid var(--teal);border-radius:9px;height:48px;color:var(--deep);background:var(--paper)}
.search-input-frame input {min-width:0;width:100%;height:44px;border:0;background:transparent;color:var(--ink);font-size:14px;outline:0}
.search-input-frame:focus-within {outline:2px solid var(--red);outline-offset:2px}
.search-tip {font-size:12px;color:var(--muted);line-height:1.65;margin:10px 0}
.search-links {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.search-links a {display:grid;place-items:center;min-height:44px;background:var(--mint);border:1px solid var(--line);border-radius:7px;font-size:13px;font-weight:800;color:var(--deep)}
.search-links a:hover {background:var(--teal);color:white}
.search-empty {font-size:12px;color:var(--red);margin:9px 0}
.mobile-bottom {display:none}
@media (max-width:1070px) {
  .page-shell {grid-template-columns:minmax(0,1fr);padding-top:18px;gap:0}
  .side-tabs {display:none}
  .main-column {max-width:100%}
}
@media (max-width:900px) {
  .four-card-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .story-layout {grid-template-columns:1fr}
  .story-aside {position:static;display:none}
  .status-grid,.story-calendar .status-overview .status-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-inner {grid-template-columns:1fr;gap:20px}
  .cover-columns {grid-template-columns:1fr 1fr}
}
@media (max-width:640px) {
  .site-header {width:100%}
  .site-brand {flex:0 1 88px;width:88px;max-width:88px;min-width:0}
  .site-brand img {width:auto;max-width:88px;max-height:28px;height:auto;object-fit:contain}
  .site-brand .brand-text {font-size:17px;letter-spacing:0}
  .cabinet-trigger {height:44px;min-width:52px;width:52px;flex:0 0 52px;gap:4px;padding:0 3px;font-size:12px}
  .hamburger {width:12px;flex:0 0 12px;height:13px;background-size:12px 2px,12px 2px,12px 2px}
  .read-inner {gap:7px;padding-inline:16px}
  .open-app {min-width:76px;min-height:44px;font-size:12px;padding:0 8px}
  .ribbon-inner {padding-inline:16px}
  .ribbon-inner>span {font-size:9px}
  .search-trigger {right:104px}
  .page-shell {padding:16px 16px 64px}
  .home-section,.cover-opening {margin-bottom:18px}
  .home-section {padding:17px 16px}
  .cover-opening {padding:13px 13px 18px}
  .home-kicker {margin-bottom:11px;gap:7px;font-size:10px;flex-wrap:wrap}
  .cover-columns {grid-template-columns:1fr;gap:10px}
  .cover-fallback,.lead-media {height:190px;max-height:190px}
  .lead-media img {max-height:187px}
  .cover-headlines {padding:4px 11px}
  .lead-link {min-height:62px}
  .cover-under {padding:15px 3px 0}
  .cover-under h1 {font-size:25px}
  .cover-under p {font-size:14px}
  .button-row {gap:8px}
  .btn {padding:9px 12px;font-size:13px}
  .home-section h2 {font-size:23px}
  .home-section p {font-size:14px;line-height:1.85}
  .section-heading-large {display:block}
  .section-heading-large>p {margin-top:9px;max-width:none}
  .four-card-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .feature-card {padding:8px}
  .feature-media {height:125px;min-height:125px}
  .feature-media img {max-height:123px}
  .feature-card-top>a {font-size:13px}
  .feature-card-top>span {font-size:12px}
  .feature-card p {font-size:12px;line-height:1.7}
  .feature-more {font-size:11px}
  .media-fallback {padding:15px}
  .feature-media .media-fallback {padding:8px}
  .feature-media .media-fallback strong {font-size:13px}
  .special-block,.chart-inner,.scene-block,.opinion-grid,.find-block,.app-block {grid-template-columns:1fr;gap:15px}
  .special-picture,.scene-picture,.opinion-picture,.find-picture {height:195px}
  .special-picture img,.scene-picture img,.opinion-picture img,.find-picture img {max-height:193px}
  .chart-image {min-height:160px;height:195px}
  .chart-image img {max-height:193px}
  .chart-rows>div {min-height:60px}
  .calendar-image {height:145px}
  .calendar-image img {max-height:143px}
  .status-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .status-tile {padding:11px 9px}
  .status-tile strong {font-size:13px}
  .status-tile p {font-size:11px;line-height:1.65}
  .app-media {max-width:360px;width:100%;margin:auto}
  .app-picture {height:225px}
  .app-picture img {max-height:223px}
  .policy-grid {grid-template-columns:1fr;gap:10px}
  .policy-grid article {padding:15px}
  .story-lead {grid-template-columns:1fr;gap:16px;padding:19px 17px;margin-bottom:13px}
  .story-lead h1,.faq-intro h1 {font-size:26px}
  .story-intro {font-size:14px}
  .story-picture,.text-visual {min-height:155px;height:170px}
  .story-picture img {max-height:168px}
  .text-visual {padding:15px}
  .text-visual strong {font-size:22px}
  .topic-entry,.takeaway,.inline-faq,.story-closing,.related,.faq-all,.status-overview {padding:17px 15px;margin-bottom:13px}
  .section-heading {gap:8px}
  .section-heading h2 {font-size:18px}
  .section-heading>span {width:32px;height:32px;flex-basis:32px;font-size:13px}
  .topic-entry p {font-size:14px}
  .takeaway-grid {grid-template-columns:1fr}
  .takeaway-grid>div {padding:9px}
  .related-grid {grid-template-columns:1fr;gap:8px}
  .related-grid a {min-height:65px;padding:10px 13px}
  .faq-all summary {font-size:14px;gap:8px}
  .faq-all details p {padding-left:33px;font-size:13px}
  .faq-intro {padding:19px 17px}
  .footer-inner {padding:26px 16px 18px}
  .footer-groups {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .foot-bottom {padding-bottom:16px}
  .net-cabinet {top:70px;bottom:0;left:0;right:auto;height:calc(100dvh - 70px);max-height:none;width:min(86vw,360px);border-radius:0 11px 0 0;transform:translateX(-103%)}
  .net-cabinet.open {transform:translateX(0)}
  .search-panel {right:16px;width:calc(100vw - 32px);padding:14px;border-radius:0 0 10px 10px}
  .search-panel-head strong {font-size:14px}
  .search-links {grid-template-columns:repeat(2,minmax(0,1fr))}
  .mobile-bottom {display:grid;position:fixed;z-index:90;bottom:0;left:0;right:0;grid-template-columns:repeat(5,minmax(0,1fr));min-height:calc(50px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--white);border-top:1px solid var(--line);box-shadow:0 -5px 14px rgba(10,95,86,.09)}
  .mobile-bottom a {display:grid;place-items:center;min-height:50px;color:var(--deep);font-size:12px;font-weight:850}
  .mobile-bottom a.active {background:var(--teal);color:var(--white)}
  body {padding-bottom:calc(50px + env(safe-area-inset-bottom))}
}
@media (max-width:355px) {
  .site-brand {width:82px;max-width:82px;flex-basis:82px}
  .site-brand img {max-width:82px}
  .site-brand .brand-text {font-size:16px}
  .cabinet-trigger {width:49px;min-width:49px;flex-basis:49px}
  .open-app {width:76px;min-width:76px}
  .search-trigger {right:100px}
  .feature-media {height:116px;min-height:116px}
  .feature-media img {max-height:114px}
  .cover-under h1 {font-size:24px}
}
@media (prefers-reduced-motion:reduce) {html {scroll-behavior:auto} *,*::before,*::after {transition:none!important;animation:none!important}}
