:root{color-scheme:light;--ink:#352419;--muted:#705a49;--paper:#fffaf0;--line:#ddcbaa;--accent:#85522d;font-family:system-ui,-apple-system,"Segoe UI","Noto Sans TC",sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}a{color:var(--accent);text-underline-offset:.22em}a:focus-visible,summary:focus-visible{outline:3px solid #a57033;outline-offset:5px}p{line-height:1.8}h1,h2,h3{line-height:1.35}h1{font-size:clamp(2rem,5vw,3.6rem);max-width:850px;margin:0 0 1.2rem}h2{font-size:1.65rem;margin:0 0 1.5rem}h3{font-size:1.15rem;margin:0 0 .8rem}
.site-header{border-bottom:1px solid var(--line);padding:1.3rem max(1.3rem,calc((100% - 1080px)/2));display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.brand{font-weight:750;font-size:1.25rem;text-decoration:none;color:var(--ink)}.brand span span{font-size:1rem;font-weight:500;margin-left:.4rem}.site-header nav{display:flex;gap:1.2rem;flex-wrap:wrap}.site-header [aria-current]{font-weight:700;color:var(--ink)}
main{max-width:1080px;padding:1.6rem 1.3rem 3rem;margin:auto}.edition-nav{display:flex;gap:1rem;justify-content:space-between;flex-wrap:wrap;font-size:.9rem;color:var(--muted)}.edition-nav ol{padding:0;margin:0;list-style:none}.edition-nav ol a{color:var(--muted);text-decoration:none}.hero{padding:3rem 0}.eyebrow{color:var(--accent);font-size:.85rem;font-weight:700;letter-spacing:.2em}.intro{font-size:1.2rem;max-width:800px;margin-bottom:1.8rem}.button{display:inline-block;background:var(--ink);color:#fffaf0;text-decoration:none;padding:.85rem 1.3rem;border-radius:6px;font-weight:700;line-height:1.5}.button:hover{background:var(--accent)}.status{border-left:4px solid #b17631;background:#f4ead5;padding:1rem 1.2rem;color:#61421f;max-width:850px;margin:1.8rem 0 0}.features{margin:0 0 3rem}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cards article{border:1px solid var(--line);border-radius:8px;padding:1.5rem;background:#fffdf7}.cards p{margin:0;color:var(--muted)}.status-list{margin-bottom:3rem}.status-list ul{padding-left:1.2rem;color:var(--muted)}.status-list li{margin:.3rem 0}.status-list strong{color:var(--ink)}.faq{margin-bottom:3rem}.faq details{padding:1.2rem 0;border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:700}.faq details p{max-width:900px;color:var(--muted);margin-bottom:0}.notice{font-size:.9rem;color:var(--muted);margin-bottom:2rem}.notice p{margin:.4rem 0}footer{border-top:1px solid var(--line);padding:1.5rem;text-align:center;font-size:.85rem;color:var(--muted)}footer span{margin-left:1rem}
@media(max-width:640px){.cards{grid-template-columns:1fr}.site-header{padding:1.2rem}.hero{padding:2rem 0}.intro{font-size:1.05rem}.edition-nav{font-size:.85rem}.cards article{padding:1.2rem}.site-header nav{gap:1rem}.button{max-width:100%;overflow-wrap:anywhere}}

/* 公開規範沿用工具桌面的木質、羊皮紙與金色，主欄專注閱讀。 */
.legal-site { background: #e8dcbf; color: #352419; }
.legal-site .site-header { color: #fff9ee; background: linear-gradient(#4a3324, #2e1e14); border-bottom: 3px solid #d99b26; padding-block: 1rem; }
.legal-site .site-header a { color: #f4deb0; }
.legal-site .site-header .brand { color: #fff9ee; }
.legal-site .site-header nav { gap: 8px; }
.legal-site .site-header nav a { padding: 5px 10px; border: 1px solid #80613d; border-radius: 5px; text-decoration: none; font-size: .85rem; }
.legal-site .site-header [aria-current] { background: #ecc068; color: #352419; border-color: #d99b26; }
.legal-page { max-width: 1180px; padding-top: 2rem; }
.legal-page__hero { margin-bottom: 24px; padding: 24px 28px; background: #faf7f0; border: 1px solid #c8b896; border-top: 4px solid #d99b26; border-radius: 10px; }
.legal-page__hero h1 { font-size: clamp(1.65rem, 3vw, 2.5rem); margin: 0 0 8px; }
.legal-page__version { margin: 0; color: #705a49; font-size: .85rem; }
.legal-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 24px; align-items: start; }
.legal-toc { position: sticky; top: 20px; padding: 20px; border: 1px solid #c8b896; border-radius: 8px; background: #f5efe0; }
.legal-toc h2, .legal-support h2 { font-size: 1rem; margin: 0 0 12px; }
.legal-toc ol { margin: 0; padding-inline-start: 22px; font-size: .9rem; }
.legal-toc li { padding: 6px 0 6px 4px; line-height: 1.6; }
.legal-toc a { text-decoration: none; }
.legal-toc a:hover { text-decoration: underline; }
.legal-content { min-width: 0; display: grid; gap: 16px; }
.legal-content section { padding: 24px 28px; background: #fffdf8; border: 1px solid #c8b896; border-radius: 8px; scroll-margin-top: 20px; }
.legal-content section:target { border-color: #a57033; box-shadow: 0 0 0 2px #ecc068; }
.legal-content h2 { display: flex; align-items: baseline; gap: 14px; margin: 0 0 18px; padding-bottom: 12px; border-bottom: 1px solid #ddcbaa; font-size: 1.2rem; }
.legal-section-number { color: #a57033; font-size: .9rem; font-variant-numeric: tabular-nums; }
.legal-paragraphs { margin: 0; padding-inline-start: 24px; line-height: 1.9; }
.legal-paragraphs li { padding-inline-start: 6px; margin-bottom: 16px; overflow-wrap: anywhere; }
.legal-paragraphs li:last-child { margin-bottom: 0; }
.legal-paragraphs li::marker { color: #85522d; font-size: .85rem; font-weight: 700; }
.legal-documents { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr)); gap: 14px; padding: 0; list-style: none; margin: 24px 0; }
.legal-documents a { display: grid; gap: 10px; height: 100%; padding: 20px; border: 1px solid #c8b896; border-radius: 8px; background: #fffdf8; color: #352419; text-decoration: none; }
.legal-documents a:hover { background: #fff4da; border-color: #a57033; }
.legal-documents strong { font-size: 1.08rem; }
.legal-documents span, .legal-documents small { color: #705a49; font-size: .85rem; }
.legal-documents small { border-top: 1px solid #ddcbaa; padding-top: 10px; }
.legal-support { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; margin-top: 28px; padding: 24px; border-top: 1px solid #b5a17c; color: #705a49; font-size: .85rem; }
.legal-support p { margin: 0 0 10px; }
.legal-support ul { padding-inline-start: 20px; margin: 0; display: grid; gap: 8px; }
.legal-support nav { display: flex; flex-wrap: wrap; gap: 12px 20px; }
.legal-support a { overflow-wrap: anywhere; }
.legal-consent { padding: 24px; background: #fffdf8; border: 1px solid #c8b896; border-radius: 8px; margin-top: 20px; }
.legal-consent__links { display: flex; flex-wrap: wrap; gap: 12px; }
.legal-consent__links a { display: block; padding: 12px 16px; border: 1px solid #c8b896; border-radius: 6px; background: #faf7f0; text-decoration: none; }
.legal-consent .consent-check { display: flex; align-items: flex-start; gap: 12px; line-height: 1.8; padding: 16px; background: #f5efe0; border: 1px solid #c8b896; border-radius: 6px; cursor: pointer; }
.legal-consent .consent-check:has(input:checked) { border-color: #a57033; background: #fff4d8; }
.legal-consent input[type=checkbox] { flex: none; width: 18px; height: 18px; margin: 5px 0 0; accent-color: #7a520b; }
.legal-consent button { font: inherit; cursor: pointer; padding: 12px 20px; border-radius: 6px; border: 1px solid #7a520b; color: #352419; background: linear-gradient(#ecc068, #d99b26); font-weight: 700; }
.legal-consent button:hover { background: #f5d084; }
.legal-consent__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 20px; }
.legal-consent :is(button, input):focus-visible { outline: 3px solid #2e6699; outline-offset: 3px; }
@media (max-width: 800px) { .legal-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; } .legal-toc { position: static; } .legal-toc ol { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); column-gap: 24px; } }
@media (max-width: 540px) { .legal-page { padding-inline: 14px; } .legal-page__hero, .legal-content section, .legal-consent { padding: 20px; } .legal-support { grid-template-columns: minmax(0, 1fr); padding: 20px 0; } .legal-site .site-header nav { width: 100%; } }
