:root {
  color-scheme: light;
  --ink: #372c2d;
  --wine: #862035;
  --red: #a51b37;
  --line: #dfcfd0;
  --serif: "Noto Serif TC","Songti TC","PMingLiU",serif;
  --sans: "Source Sans 3","Microsoft JhengHei",system-ui,sans-serif;
}
* { box-sizing: border-box }
body { margin:0; font:15px/1.5 var(--sans); color:var(--ink); background-color:#f5f2ef;
  background-image:repeating-linear-gradient(0deg,transparent 0 3px,#8c696008 3px 4px),repeating-linear-gradient(90deg,transparent 0 3px,#8c696008 3px 4px) }
a {color:#77203a;text-decoration:none}
a:hover {color:#b11e39;text-decoration:underline}
input,select,button {font:inherit}
button {cursor:pointer}
[hidden] {display:none!important}
:focus-visible {outline:3px solid #24618a;outline-offset:2px}
.site {max-width:968px;margin:auto;min-height:100vh;background:#fff;border-inline:1px solid #d8bfc0;box-shadow:0 0 25px #32131c12}
.mast {min-height:85px;border-top:4px solid #842234;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;
  background:linear-gradient(148deg,#fff4f099 24%,transparent 24.3% 25%,#e9b5b580 25.5%,transparent 30%),radial-gradient(ellipse at 82% -25%,#e9a8b3 0,transparent 65%),linear-gradient(109deg,#ffede8,#f7d4d5 51%,#fff2ed)}
.brand {display:flex;align-items:center;gap:10px;color:#671d30}
.brand:hover {color:#671d30;text-decoration:none}
.brand img {width:35px;height:41px}
.brand span {display:grid;gap:4px}
.brand b {font:900 31px/1.04 var(--serif);letter-spacing:.065em;color:#702437;text-shadow:0 1px #fff}
.brand small {font:700 9px/1.2 Georgia,serif;letter-spacing:.23em;color:#885350}
.head-search {border:1px solid #ca9ea3;border-radius:3px;display:flex;align-items:center;width:min(245px,42%);background:#fffaf8}
.head-search input {width:100%;min-width:0;border:none;background:transparent;padding:7px 10px;font-size:13px;color:#493539}
.head-search button {width:35px;height:34px;flex:none;background:none;border:0;color:#914852}
.glass {display:inline-block;width:13px;height:13px;border:1.7px solid currentColor;border-radius:50%;position:relative}
.glass:after {content:"";position:absolute;width:6px;height:1.7px;transform:rotate(48deg);left:9px;top:10px;background:currentColor}
.main-nav {display:grid;grid-template-columns:repeat(5,1fr);background:linear-gradient(#fff,#fff5f3);border-block:1px solid #d5a9ad}
.main-nav a {text-align:center;border-right:1px solid #e6c8ca;padding:7px 3px;font-size:14px;font-weight:750;color:#704047}
.main-nav a:last-child {border:0}
.main-nav {position:sticky;top:0;z-index:5}
#directory,#all,#versions,.day-block {scroll-margin-top:43px}
.main-nav a:hover,.main-nav a[aria-current] {color:#a81733;background:#fae4e5;text-decoration:none;box-shadow:inset 0 -2px #ae2c42}
main {padding:10px 12px 18px}
.hero {position:relative;display:flex;align-items:center;min-height:149px;overflow:hidden;border:1px solid #5c1b20;
  background:#49141a url("assets/knight.webp") 62% 37%/cover no-repeat;color:#fff4df}
.hero:after {content:"";pointer-events:none;position:absolute;inset:5px;border:1px solid #e6bc7859}
.hero-copy {position:relative;padding:17px 28px;text-shadow:0 2px 6px #300b12}
.hero-date {display:flex;align-items:center;gap:8px;font:700 12px/1.4 var(--sans);letter-spacing:.12em;color:#ffd898}
.hero-date i {width:21px;height:1px;background:#ebc282}
h1,h2,p {margin:0}
.hero h1 {font:900 clamp(32px,4vw,48px)/1.3 var(--serif);letter-spacing:.08em;color:#fff3da}
.hero h1 span {color:#ffd17f}
.hero p {font-size:13px;letter-spacing:.06em;color:#ffebd5}
.hero p b {color:#ffe1a4;font-size:16px}
.hero em {font-style:normal;color:#bc8b78;margin:0 4px}
.ribbons {display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:4px 0 6px}
.ribbon {min-height:51px;display:flex;align-items:center;justify-content:space-between;gap:6px;color:white;padding:6px 16px;position:relative;isolation:isolate;overflow:hidden}
.ribbon:before {content:"";position:absolute;inset:3px;border:1px solid #ffffff3b;z-index:-1}
.ribbon:hover {color:#fff;text-decoration:none;filter:brightness(1.1)}
.blue-ribbon {background:linear-gradient(90deg,#142f50df,#183c63c9,#0c2443cd),url("assets/aden.webp") center 53%/cover}
.gold-ribbon {background:linear-gradient(90deg,#5d3229e8,#7e502ca9,#59301ee0),url("assets/knight.webp") 55% 75%/cover}
.ribbon .label {font:800 19px/1.3 var(--serif);letter-spacing:.1em;text-shadow:0 1px 3px #181619}
.ribbon span:last-child {font-size:12px;white-space:nowrap;color:#fff4df}
.ribbon b {font-size:19px;vertical-align:-1px;margin-left:5px}
.ticker {display:flex;align-items:stretch;background:#fff6f4;border:1px solid #efd2cf;color:#77585a;font-size:12px;gap:12px}
.ticker b {background:#963248;color:white;font-size:12px;padding:4px 10px;letter-spacing:.08em}
.ticker span {align-self:center}
.directory-head,.day-title {display:flex;align-items:center;gap:8px}
.directory-head {border-bottom:2px solid #ad4353;margin-top:17px;padding:0 2px 5px}
.directory-head h2,.version-index h2,.detail-inner h2,.related h2 {font:800 21px/1.5 var(--serif);color:#68293a;letter-spacing:.04em}
.directory-head>span,.day-title small {margin-left:auto;font-size:12px}
.filterbar {padding:7px 9px;background:#fff8f6;border:1px solid #e7d1d0;border-top:0;display:flex;align-items:center;gap:14px;font-size:12px;color:#715659}
.filterbar label {display:flex;align-items:center;gap:5px}
.filterbar select,.filterbar input {max-width:155px;padding:3px 6px;height:29px;border:1px solid #d5b8b9;border-radius:2px;background:#fff;color:#493338;font-size:12px}
.filterbar button {margin-left:auto;border:0;background:none;color:#923248;font-size:12px}
.day-block {margin-top:12px;--tint:#fff3ba;--alt:#fff7d5;--border:#decf95;--tag:#913344}
.day-block.blue {--tint:#ffe0ef;--alt:#ffedf5;--border:#dec0ce;--tag:#8d4670}
.day-block.green {--tint:#e2f5e5;--alt:#edf9ef;--border:#c2d9c5;--tag:#38744b}
.day-block.gray {--tint:#eeedf6;--alt:#f7f5fb;--border:#d4d0df;--tag:#636077}
.day-title {padding:6px 9px;border:1px solid var(--border);border-bottom:0;background:linear-gradient(95deg,var(--alt),white);min-height:35px}
.day-title h2 {font-size:15px;line-height:1.4;color:#4e343b}
.day-title small {color:#705f61}
.tag {font:700 11px/1.5 var(--sans);color:white;background:var(--tag);padding:1px 6px;border-radius:2px;white-space:nowrap}
table {width:100%;border-collapse:collapse;table-layout:fixed;text-align:center;font-variant-numeric:tabular-nums}
th,td {border:1px solid var(--border);padding:3px 5px;font-size:13px}
th {background:#f7f0e9;color:#695556;font-size:12px;font-weight:700}
th:first-child {width:19%;text-align:left;padding-left:11px}
th.feature-cell {width:34%}
.feature-cell {text-align:left;padding-inline:9px;overflow-wrap:anywhere}
.feature-cell a {color:#544043}
.feature-cell a:hover {color:var(--wine)}
td.name {text-align:left;padding-left:11px;overflow-wrap:anywhere}
.name a {font-weight:750;color:#713047}
td {background:var(--tint)}
tr:nth-child(even)>td {background:var(--alt)}
tbody tr:hover td {background:#fffdf0}
td.time {color:#992c36;font-weight:700}
.actions {width:48px}
.star {border:0;background:transparent;font:22px/1 Georgia,serif;color:#76512c;min-width:32px;min-height:24px}
.star[aria-pressed=true] {color:#9b5515}
.empty {background:#fff7f2;text-align:center;padding:25px 10px}
.version-index,.related,.detail {margin:18px 0 6px;border:1px solid #dfc7ca}
.version-index h2,.related h2 {font-size:17px;border-bottom:1px solid #dfc7ca;background:#f9e9e7;padding:7px 12px}
.chips {display:flex;flex-wrap:wrap;gap:6px;padding:12px}
.chips a {border:1px solid #dec5c7;color:#792b43;background:#fff8f5;padding:3px 8px;font-size:13px}
.chips small {color:#705d60}
footer {padding:13px 15px;background:#f8e9e6;border-top:1px solid #d4b6b8;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:#765c5e}
footer a {font-weight:750}
.crumb {font-size:13px;padding:5px 2px 10px;color:#755a60;overflow-wrap:anywhere}
.detail {margin-top:0}
.page-title {background:linear-gradient(95deg,#f8dedb,#fff8ef);padding:18px 20px;border-block:1px solid #e1c0c1}
.detail .page-title {border-top:none}
.page-title span {font-size:12px;letter-spacing:.1em;font-weight:700;color:#883449}
.page-title h1 {font:800 clamp(24px,4vw,34px)/1.4 var(--serif);color:#6a2639;overflow-wrap:anywhere}
.page-title p {color:#70555a;font-size:14px}
.detail-inner {padding:16px 20px}.detail-inner h2 {font-size:18px}
.facts {display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;border:1px solid #e3d4c5;background:#e3d4c5;margin:10px 0}
.facts div {background:#fff8e8;padding:8px 12px}
.facts dt {color:#75595b;font-size:12px}.facts dd {margin:1px 0 0;font-weight:700}
.compare {font-size:14px;color:#66504f}
.features {border-top:1px solid var(--line);margin-top:20px;padding-top:14px;scroll-margin-top:48px}
.feature-intro {color:var(--wine);font-weight:700;margin-top:8px;overflow-wrap:anywhere}
.feature-copy {margin-top:10px;max-width:76ch;line-height:1.7;white-space:pre-line;overflow-wrap:anywhere}
.feature-copy p + p {margin-top:.35em}
.feature-posters {margin-top:12px}
.feature-posters a {display:block;margin:0 0 12px;width:fit-content;max-width:100%}
.feature-posters img {display:block;max-width:100%;height:auto}
.feature-posters span {display:block;margin-top:5px;font-size:13px;text-decoration:underline}
.feature-empty {color:#70595e;font-size:14px;margin-top:8px}
.detail-actions {margin-top:12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.detail-actions button,.official-link {border:1px solid #c9a9ae;background:#fff5f3;border-radius:2px;padding:5px 10px;color:#7d253b}
.detail-actions .star {padding:3px 8px}
#official-status {font-size:13px;color:#70595e}
.related ul {list-style:none;padding:0;margin:0}
.related li {padding:7px 12px;display:flex;justify-content:space-between;gap:10px;border-top:1px solid #efe1df}
.related li time {color:#735f62;font-size:12px;white-space:nowrap}
.skip:not(:focus) {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:650px) {
  .site {border:0}.mast {padding:10px 12px;min-height:68px}.brand {gap:6px}.brand b {font-size:24px}.brand img {width:27px;height:34px}.brand small {font-size:8px}
  .head-search {width:41%}.main-nav a {font-size:13px}.hero {min-height:126px;background-position:68% 38%}.hero-copy {padding:14px 16px}
  main {padding:6px 6px 12px}.ribbon {min-height:47px;padding:5px 10px;align-items:flex-start;justify-content:center;flex-direction:column;gap:0}
  .ribbon .label {font-size:15px}.ribbon span:last-child {font-size:11px}.ribbon b {font-size:13px}
  .filterbar {gap:7px;flex-wrap:wrap}.day-title {padding:5px 6px;gap:5px}.day-title h2 {font-size:13px}.day-title small {font-size:11px}
  th,td {font-size:12px;padding:3px}.region {display:none}th:first-child {width:29%}th:first-child,td.name {padding-left:5px}.actions {width:34px}
  .facts {grid-template-columns:1fr 1fr}.detail-inner,.page-title {padding:12px}
}
@media(max-width:440px) {
  .gold {display:none}.main-nav a {font-size:12px}.hero {background-position:64% center}.hero-copy {text-shadow:0 2px 5px #240407}
  .filterbar {padding:6px;gap:6px}.filterbar label {gap:3px}.filterbar input {max-width:120px}.filterbar select {max-width:92px}.filterbar button {padding:2px}
  th:first-child {width:34%}.head-search input {padding:5px 6px}.brand b {font-size:22px}.related li {align-items:center}.detail-actions {gap:6px}
}
@media(max-width:650px) {
  .day-block table,.day-block thead,.day-block tbody {display:block}
  .day-block tr {display:grid;grid-template-columns:minmax(0,1fr) 16% 14% 14% 14% 36px}
  .day-block th,.day-block td {width:auto;min-width:0;align-content:center;border:0;border-right:1px solid var(--border);border-top:1px solid var(--border)}
  .day-block table {border:1px solid var(--border);border-top:0}
  .day-block .actions {border-right:0}
  th.feature-cell {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0}
  td.feature-cell {grid-column:1/-1;grid-row:2;border:0;padding:1px 5px 5px;text-align:left}
  td.feature-cell a {display:block;font-size:12px}
}
@media(max-width:440px) {
  .day-block tr {grid-template-columns:minmax(0,1fr) 18% 17% 16% 36px}
}

