:root {
  --bg-page:#F5F1E8;
  --bg-dark-blue:#2C3E50;
  --bg-dark-green:#1F3B2C;
  --bg-card:#FFF8EF;
  --accent-red:#C0392B;
  --accent-orange:#E67E22;
  --accent-purple:#9B59B6;
  --status-green:#27AE60;
  --status-gray:#7F8C8D;
  --status-yellow:#F1C40F;
  --tag-1:#E8D5B7;
  --tag-2:#D5E8B7;
  --tag-3:#B7D5E8;
  --tag-4:#E8B7D5;
  --text-main:#333333;
  --text-sub:#666666;
  --border:#D1CCC4;
  --on-dark:#F5F1E8;
  --on-green:#DCE4DC;
  --font-head:"Songti SC","STSong","SimSun",serif;
  --font-body:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --font-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --focus-ring:var(--status-yellow);
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:var(--font-body);
  line-height:1.75;
  color:var(--text-main);
  background-color:var(--bg-page);
}
img,svg,video{max-width:100%;display:block;}
h1,h2,h3,h4{margin:0 0 .5em;font-family:var(--font-head);line-height:1.3;}
p{margin:0 0 1em;}
a{color:var(--accent-red);}
a:hover{color:#8E2C21;}
button,input,select,textarea{font:inherit;}
button:not(:disabled){cursor:pointer;}
:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;}

.container{width:100%;max-width:1220px;margin-inline:auto;padding-inline:24px;}

.section{padding:52px 0;}
.section--airy{padding:84px 0;}
.section--compact{padding:32px 0;}
.section--paper{background:var(--bg-page);}
.section--card{background:var(--bg-card);}
.section--dark-blue{background:var(--bg-dark-blue);color:var(--on-dark);}
.section--dark-green{background:var(--bg-dark-green);color:var(--on-green);}
.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px;}
.section-kicker{display:block;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-orange);margin-bottom:6px;}
.section-title{font-size:1.9rem;margin:0;letter-spacing:.04em;}
.section-desc{max-width:64ch;color:var(--text-sub);margin:0;}
.section--dark-blue .section-desc,.section--dark-green .section-desc{color:rgba(245,241,232,.7);}
.section--dark-blue .section-kicker,.section--dark-green .section-kicker{color:var(--status-yellow);}
.section-rule{height:1px;border:0;background:repeating-linear-gradient(90deg,var(--accent-red) 0 6px,transparent 6px 14px);margin:0 0 28px;}

.skip-link{
  position:fixed;
  top:-80px;
  left:18px;
  z-index:300;
  background:var(--accent-red);
  color:var(--on-dark);
  font-size:.9rem;
  padding:10px 16px;
  text-decoration:none;
  box-shadow:4px 4px 0 rgba(0,0,0,.2);
  transition:transform .18s ease;
}
.skip-link:focus{transform:translateY(100px);}

.reading-progress{
  position:fixed;
  top:0;
  left:0;
  z-index:260;
  height:3px;
  width:0;
  background:linear-gradient(90deg,var(--accent-red),var(--accent-orange) 55%,var(--status-yellow));
  box-shadow:0 0 8px rgba(230,126,34,.4);
  opacity:0;
  pointer-events:none;
  transition:width .12s linear,opacity .2s;
}

.site-header{
  position:relative;
  z-index:100;
  background:var(--bg-dark-blue);
  color:var(--on-dark);
  border-bottom:1px solid rgba(245,241,232,.18);
}
.site-header::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:repeating-linear-gradient(115deg,rgba(245,241,232,.025) 0 2px,transparent 2px 18px);
}

.masthead{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:28px;
  align-items:center;
  padding-top:28px;
  padding-bottom:24px;
  position:relative;
}
.masthead-brand{grid-column:2;justify-self:center;}
.brand-logo{display:inline-flex;align-items:center;gap:12px;color:var(--on-dark);text-decoration:none;}
.brand-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  flex:0 0 auto;
  background:var(--accent-red);
  border:2px solid rgba(245,241,232,.9);
  box-shadow:0 0 0 2px var(--accent-red),0 0 0 6px rgba(245,241,232,.15);
  font-family:var(--font-head);
  font-size:26px;
  line-height:1;
  color:var(--on-dark);
}
.brand-text{display:flex;flex-direction:column;gap:2px;}
.brand-text strong{font-size:1.7rem;letter-spacing:.2em;font-weight:600;font-family:var(--font-head);line-height:1.1;}
.brand-text small{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--status-yellow);}
.masthead-search{grid-column:3;justify-self:end;position:relative;width:min(300px,100%);}
.search-input{
  display:block;
  width:100%;
  padding:10px 14px 10px 36px;
  background:rgba(245,241,232,.08);
  border:1px solid rgba(245,241,232,.35);
  color:var(--on-dark);
  font-family:var(--font-body);
  font-size:.9rem;
  transition:border-color .15s,background .15s;
}
.search-input::placeholder{color:rgba(245,241,232,.55);}
.search-input:focus{
  outline:none;
  background:rgba(245,241,232,.14);
  border-color:var(--status-yellow);
  color:var(--on-dark);
}
.search-key{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--status-yellow);font-family:var(--font-mono);font-size:1.05rem;pointer-events:none;}

.nav-toggle{
  display:inline-flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  width:46px;
  height:46px;
  padding:12px;
  background:transparent;
  border:1px solid rgba(245,241,232,.4);
}
.nav-toggle-bar{display:block;width:100%;height:2px;background:var(--status-yellow);transition:transform .2s ease,opacity .2s ease;}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:first-child{transform:translateY(7px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

.site-nav{
  border-top:1px solid rgba(245,241,232,.16);
  border-bottom:3px solid var(--accent-red);
}
.nav-list{display:flex;justify-content:center;list-style:none;margin:0;padding:0;}
.nav-list a{
  display:block;
  padding:14px 22px;
  font-size:.95rem;
  letter-spacing:.06em;
  color:#EAE6DC;
  text-decoration:none;
  border-bottom:3px solid transparent;
  transition:background .15s,border-color .15s,color .15s;
}
.nav-list a:hover{background:rgba(245,241,232,.08);color:var(--status-yellow);border-bottom-color:var(--status-yellow);}
.nav-list a[aria-current="page"]{
  background:var(--bg-dark-green);
  color:var(--status-yellow);
  border-bottom-color:var(--accent-red);
}

.site-footer{background:var(--bg-dark-green);color:var(--on-green);}
.footer-grid{display:grid;grid-template-columns:1.35fr .9fr 1fr;gap:56px;padding:52px 0 44px;}
.footer-brand .brand-logo{color:var(--on-green);}
.footer-brand .brand-mark{width:42px;height:42px;font-size:22px;box-shadow:0 0 0 2px var(--bg-dark-green),0 0 0 4px rgba(245,241,232,.35);}
.footer-desc{color:rgba(220,228,220,.72);font-size:.9rem;max-width:38ch;margin:18px 0 0;}
.footer-title{font-family:var(--font-head);font-size:1rem;letter-spacing:.14em;color:var(--status-yellow);margin:0 0 18px;font-weight:600;}
.footer-nav ul,.footer-meta ul{list-style:none;margin:0;padding:0;}
.footer-nav li + li,.footer-meta li + li{margin-top:10px;}
.footer-nav a,.footer-meta a{color:rgba(220,228,220,.85);text-decoration:none;font-size:.92rem;}
.footer-nav a:hover,.footer-meta a:hover{color:#ffffff;text-decoration:underline;text-underline-offset:4px;}
.footer-contact{margin:18px 0 0;font-family:var(--font-mono);font-size:.82rem;color:rgba(220,228,220,.7);}
.footer-icp{margin:6px 0 0;font-family:var(--font-mono);font-size:.8rem;color:rgba(220,228,220,.6);}
.footer-bottom{border-top:1px solid rgba(245,241,232,.14);padding:18px 0;}
.footer-bottom-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.85rem;color:rgba(220,228,220,.65);}
.footer-bottom-inner p{margin:0;font-family:var(--font-mono);font-size:.8rem;}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 20px;
  border:2px solid var(--bg-dark-blue);
  background:var(--bg-dark-blue);
  color:var(--on-dark);
  font-size:.92rem;
  text-decoration:none;
  transition:background .15s,color .15s,border-color .15s;
}
.btn:hover{background:transparent;color:var(--bg-dark-blue);}
.btn--primary{background:var(--accent-red);border-color:var(--accent-red);color:var(--on-dark);}
.btn--primary:hover{background:transparent;color:var(--accent-red);}
.btn--ghost{background:transparent;border-color:var(--border);color:var(--text-main);}
.btn--ghost:hover{border-color:var(--accent-red);color:var(--accent-red);}
.btn--sm{padding:6px 12px;font-size:.82rem;}

.breadcrumb{display:flex;flex-wrap:wrap;gap:0 8px;list-style:none;margin:0;padding:18px 0;font-family:var(--font-mono);font-size:.82rem;}
.breadcrumb li{display:flex;align-items:center;gap:8px;}
.breadcrumb li + li::before{content:"／";color:var(--text-sub);}
.breadcrumb a{color:var(--text-sub);text-decoration:none;}
.breadcrumb a:hover{color:var(--accent-red);}
.breadcrumb [aria-current]{color:var(--text-main);font-weight:600;}

.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:8px;
  background:var(--bg-card);
  border:1px solid var(--border);
  box-shadow:4px 4px 0 rgba(51,51,51,.06);
  padding:22px;
  text-decoration:none;
  color:var(--text-main);
}
.card:hover{border-color:var(--accent-orange);}
.card--amber{background:#FBE9D4;border-color:var(--accent-orange);}
.card--purple{background:#F2E8F7;border-color:var(--accent-purple);}
.card--red{background:#F9E7E5;border-color:var(--accent-red);}
.card--green{background:#E9F5EF;border-color:var(--status-green);}
.card--yellow{background:#FCF6D8;border-color:var(--status-yellow);}
.card-title{margin:0;font-family:var(--font-head);font-size:1.18rem;line-height:1.35;}
.card-meta{margin:0;font-size:.85rem;color:var(--text-sub);}
.card-link{text-decoration:none;color:inherit;}

.magnet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.magnet{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:12px;
  min-height:132px;
  padding:18px;
  background:var(--bg-card);
  border:1px solid var(--border);
  box-shadow:4px 4px 0 rgba(51,51,51,.07);
  text-decoration:none;
  color:var(--text-main);
  transition:transform .18s ease,box-shadow .18s ease;
}
.magnet:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 rgba(51,51,51,.09);}
.magnet--blue{background:var(--bg-dark-blue);color:var(--on-dark);border-color:var(--bg-dark-blue);}
.magnet--green{background:var(--bg-dark-green);color:var(--on-green);border-color:var(--bg-dark-green);}
.magnet--amber{background:var(--accent-orange);color:#3E2A0A;border-color:var(--accent-orange);}
.magnet--purple{background:var(--accent-purple);color:var(--on-dark);border-color:var(--accent-purple);}
.magnet--red{background:var(--accent-red);color:var(--on-dark);border-color:var(--accent-red);}
.magnet--yellow{background:var(--status-yellow);color:#4D3A00;border-color:var(--status-yellow);}
.magnet--wide{grid-column:span 2;}
.magnet-count{font-family:var(--font-mono);font-size:1.8rem;font-weight:300;line-height:1;}
.magnet-label{font-family:var(--font-head);font-size:1.15rem;line-height:1.3;margin:0;}
.magnet-meta{font-family:var(--font-mono);font-size:.78rem;opacity:.75;}

.index-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--border);}
.index-list li{display:flex;align-items:center;gap:16px;padding:12px 6px;border-bottom:1px solid var(--border);}
.index-list--dense li{padding:8px 4px;}
.index-list--cols{display:grid;grid-template-columns:1fr 1fr;column-gap:36px;}
.index-list__mark{font-family:var(--font-mono);font-size:.82rem;color:var(--accent-orange);min-width:4.5em;}
.index-list__title{flex:1;text-decoration:none;color:var(--text-main);font-weight:600;}
.index-list__title:hover{color:var(--accent-red);}
.index-list__meta{font-family:var(--font-mono);font-size:.8rem;color:var(--text-sub);}

.tag-cloud{display:flex;flex-wrap:wrap;gap:10px;}
.tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 12px;
  border:1px solid var(--border);
  background:var(--tag-1);
  color:var(--text-main);
  text-decoration:none;
  font-size:.85rem;
}
.tag:nth-child(4n+2){background:var(--tag-2);}
.tag:nth-child(4n+3){background:var(--tag-3);}
.tag:nth-child(4n+4){background:var(--tag-4);}
.tag:hover{border-color:var(--accent-red);color:var(--accent-red);}
.tag-count{font-family:var(--font-mono);font-size:.72rem;opacity:.7;}

.status-badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:3px 10px;
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.08em;
  border:1px solid;
  text-transform:uppercase;
  line-height:1.4;
}
.status-badge::before{content:"";width:6px;height:6px;background:currentColor;flex:0 0 auto;}
.status-badge--green{color:#1E8449;background:rgba(39,174,96,.14);border-color:rgba(39,174,96,.45);}
.status-badge--gray{color:#566A72;background:rgba(127,140,141,.14);border-color:rgba(127,140,141,.45);}
.status-badge--yellow{color:#8A6D00;background:rgba(241,196,15,.18);border-color:rgba(241,196,15,.55);}
.status-badge--red{color:var(--accent-red);background:rgba(192,57,43,.12);border-color:rgba(192,57,43,.4);}
.status-badge--orange{color:#B85F1B;background:rgba(230,126,34,.14);border-color:rgba(230,126,34,.45);}
.status-badge--purple{color:#6F3B8A;background:rgba(155,89,182,.14);border-color:rgba(155,89,182,.45);}
.section--dark-blue .status-badge--green,.section--dark-green .status-badge--green{color:#93E8B5;background:rgba(39,174,96,.22);border-color:rgba(39,174,96,.55);}
.section--dark-blue .status-badge--gray,.section--dark-green .status-badge--gray{color:#AAB8BE;background:rgba(127,140,141,.22);border-color:rgba(127,140,141,.55);}
.section--dark-blue .status-badge--yellow,.section--dark-green .status-badge--yellow{color:#FFE066;background:rgba(241,196,15,.18);border-color:rgba(241,196,15,.5);}
.section--dark-blue .status-badge--red,.section--dark-green .status-badge--red{color:#FF9A8F;background:rgba(192,57,43,.22);border-color:rgba(192,57,43,.55);}
.section--dark-blue .status-badge--orange,.section--dark-green .status-badge--orange{color:#FFC48F;background:rgba(230,126,34,.22);border-color:rgba(230,126,34,.55);}
.section--dark-blue .status-badge--purple,.section--dark-green .status-badge--purple{color:#D8B8E8;background:rgba(155,89,182,.22);border-color:rgba(155,89,182,.55);}

.seq-number{display:inline-block;font-family:var(--font-mono);font-size:2.6rem;line-height:1;color:var(--accent-orange);font-weight:300;}
.seq-number--small{font-size:1.5rem;}
.seq-number--red{color:var(--accent-red);}
.seq-number--paper{color:rgba(245,241,232,.45);}
.seq-number--green{color:var(--status-green);}

.metric{display:grid;gap:6px;}
.metric-head{display:flex;justify-content:space-between;gap:12px;font-size:.85rem;}
.metric-head span:last-child{font-family:var(--font-mono);color:var(--text-sub);}
.metric-track{height:8px;background:rgba(51,51,51,.12);overflow:hidden;}
.metric-fill{display:block;height:100%;width:50%;background:var(--accent-orange);}
.metric-fill--green{background:var(--status-green);}
.metric-fill--red{background:var(--accent-red);}
.metric-fill--purple{background:var(--accent-purple);}
.metric-fill--yellow{background:var(--status-yellow);}
.section--dark-blue .metric-track,.section--dark-green .metric-track{background:rgba(245,241,232,.18);}
.section--dark-blue .metric-head,.section--dark-green .metric-head{color:var(--on-dark);}
.section--dark-blue .metric-head span:last-child,.section--dark-green .metric-head span:last-child{color:rgba(245,241,232,.65);}

.h-track{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(250px,300px);
  gap:18px;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  padding:4px 4px 16px;
}
.h-track > *{scroll-snap-align:start;}
.h-track::-webkit-scrollbar{height:8px;}
.h-track::-webkit-scrollbar-track{background:rgba(51,51,51,.08);}
.h-track::-webkit-scrollbar-thumb{background:var(--border);}

.data-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:1px solid var(--border);}
.data-table caption{text-align:left;padding:10px 0;font-family:var(--font-head);}
.data-table th,.data-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border);font-size:.9rem;}
.data-table thead th{background:var(--bg-dark-blue);color:var(--on-dark);font-family:var(--font-mono);font-weight:600;letter-spacing:.04em;}
.data-table tbody tr:nth-child(even){background:rgba(209,204,196,.25);}
.data-table tbody tr:hover{background:var(--tag-3);}
.data-table tbody tr:last-child td{border-bottom:0;}
.table-scroll{overflow-x:auto;}
.table-scroll .data-table{min-width:640px;}

.index-bar{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;}
.index-bar a,.index-bar button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  padding:6px 12px;
  border:1px solid var(--border);
  background:var(--bg-card);
  color:var(--text-main);
  text-decoration:none;
  font-family:var(--font-mono);
  font-size:.9rem;
  cursor:pointer;
}
.index-bar a:hover,.index-bar button:hover{border-color:var(--accent-red);color:var(--accent-red);}
.index-bar [aria-current="true"],.index-bar .is-active{background:var(--bg-dark-blue);border-color:var(--bg-dark-blue);color:var(--on-dark);}

.panel{background:var(--bg-card);border:1px solid var(--border);box-shadow:4px 4px 0 rgba(51,51,51,.05);padding:26px;}
.panel--dark{background:var(--bg-dark-blue);color:var(--on-dark);border-color:var(--bg-dark-blue);}
.panel--green{background:var(--bg-dark-green);color:var(--on-green);border-color:var(--bg-dark-green);}
.panel-title{margin:0 0 12px;font-family:var(--font-head);font-size:1.2rem;}

.chapter-block{display:grid;grid-template-columns:130px 1fr;gap:24px;padding:38px 4px;border-bottom:1px solid var(--border);}
.chapter-block .seq-number{font-size:3.2rem;}
.chapter-block__title{font-family:var(--font-head);font-size:1.35rem;margin:4px 0 8px;}
.chapter-block__desc{color:var(--text-sub);max-width:70ch;}

.corner-tag{
  position:absolute;
  top:-1px;
  right:-1px;
  z-index:2;
  background:var(--accent-red);
  color:var(--on-dark);
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.08em;
  padding:4px 10px;
  box-shadow:0 2px 0 rgba(0,0,0,.12);
}

.spy-list{display:flex;flex-wrap:wrap;gap:14px;list-style:none;margin:0;padding:0;border-bottom:1px solid var(--border);}
.spy-list a{display:block;padding:10px 4px;border-bottom:3px solid transparent;margin-bottom:-1px;color:var(--text-sub);text-decoration:none;font-size:.95rem;}
.spy-list a:hover{color:var(--accent-red);}
.spy-list a.is-active{border-bottom-color:var(--accent-red);color:var(--accent-red);font-weight:600;}

.search-suggest{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:50;
  background:#FFFDF8;
  border:1px solid var(--border);
  box-shadow:0 12px 24px rgba(0,0,0,.18);
  list-style:none;
  margin:0;
  padding:6px;
  max-height:280px;
  overflow-y:auto;
}
.search-suggest[hidden]{display:none;}
.search-suggest li{padding:8px 12px;font-size:.88rem;color:var(--text-main);cursor:pointer;border-left:3px solid transparent;}
.search-suggest li:hover,.search-suggest li.is-active{background:var(--tag-3);border-left-color:var(--accent-red);}
.search-suggest-empty{color:var(--text-sub);cursor:default;}

.to-top{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:80;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  background:var(--bg-dark-blue);
  color:var(--status-yellow);
  border:2px solid var(--accent-red);
  cursor:pointer;
  font-size:1.2rem;
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:opacity .18s,visibility .18s,transform .18s;
}
.to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);}
.to-top:hover{background:var(--accent-red);color:var(--on-dark);}

.sr-only{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

@media (max-width:1060px){
  .masthead{gap:20px;}
  .brand-text strong{font-size:1.45rem;}
  .masthead-search{width:min(260px,100%);}
  .footer-grid{gap:36px;}
}

@media (max-width:899.98px){
  .masthead{grid-template-columns:1fr auto;gap:14px;padding-top:16px;padding-bottom:16px;}
  .masthead-brand{grid-column:1;justify-self:start;}
  .masthead-search{grid-column:1 / -1;grid-row:2;width:100%;justify-self:stretch;}
  .nav-toggle{display:inline-flex;z-index:140;}
  .site-nav{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    width:min(340px,88vw);
    padding:76px 0 32px;
    background:var(--bg-dark-green);
    border-left:4px solid var(--accent-red);
    border-top:0;
    border-bottom:0;
    transform:translateX(102%);
    visibility:hidden;
    overflow-y:auto;
    transition:transform .22s ease,visibility .22s;
    z-index:130;
    box-shadow:0 0 40px rgba(0,0,0,.35);
  }
  .site-nav[data-open]{transform:translateX(0);visibility:visible;}
  .nav-list{flex-direction:column;padding:0;}
  .nav-list a{padding:16px 26px;border-bottom:1px solid rgba(245,241,232,.12);border-left:4px solid transparent;}
  .nav-list a[aria-current="page"]{border-left-color:var(--accent-red);background:rgba(245,241,232,.06);}
  .footer-grid{grid-template-columns:1fr 1fr;gap:40px 28px;}
  .footer-brand{grid-column:1 / -1;}
  .card-grid,.magnet-grid{grid-template-columns:repeat(2,1fr);}
  .chapter-block{grid-template-columns:90px 1fr;}
}

@media (min-width:900px){
  .nav-toggle{display:none;}
  .site-nav{
    position:static;
    width:auto;
    padding:0;
    background:transparent;
    border-left:0;
    border-top:1px solid rgba(245,241,232,.16);
    border-bottom:3px solid var(--accent-red);
    transform:none;
    visibility:visible;
    overflow:visible;
    box-shadow:none;
    z-index:auto;
  }
  .nav-list{flex-direction:row;}
}

@media (max-width:599.98px){
  .container{padding-inline:18px;}
  .section{padding:38px 0;}
  .section--airy{padding:52px 0;}
  .section-head{flex-direction:column;align-items:flex-start;}
  .masthead{padding-top:12px;}
  .brand-mark{width:42px;height:42px;font-size:22px;}
  .brand-text strong{font-size:1.3rem;letter-spacing:.12em;}
  .brand-text small{font-size:.62rem;}
  .card-grid,.magnet-grid{grid-template-columns:1fr;}
  .magnet--wide{grid-column:span 1;}
  .index-list li{flex-wrap:wrap;row-gap:4px;}
  .index-list__mark{min-width:100%;}
  .index-list--cols{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;gap:28px;}
  .footer-bottom-inner{flex-direction:column;}
  .chapter-block{grid-template-columns:1fr;gap:8px;padding:24px 0;}
  .h-track{grid-auto-columns:minmax(210px,240px);}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;scroll-behavior:auto !important;}
}
