:root { color-scheme: light; font-family: -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; color:#17312d; background:#edf2ef; }
* { box-sizing:border-box; }
body { margin:0; line-height:1.6; }
.wrap { width:min(1100px, calc(100% - 32px)); margin:auto; }
header { background:#123f37; color:#fff; padding:44px 0 32px; }
h1,h2,h3,p { margin:0 0 12px; }
h1 { font-size:clamp(27px,5vw,48px); line-height:1.2; }
h1 small { font-size:.42em; white-space:nowrap; color:#b5ded1; }
header p { color:#e3f3ed; }
.eyebrow { font-size:.82rem; font-weight:700; letter-spacing:.1em; color:#17624f; }
header .eyebrow { color:#b5ded1; }
nav,.actions,.pager,.checks { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
nav a { color:#fff; border:1px solid #86b9ac; border-radius:8px; padding:7px 12px; }
.notice { background:#fff4d4; color:#573a0a; padding:14px 18px; border-radius:12px; margin:20px 0; }
section { background:white; border:1px solid #d5e1dc; border-radius:16px; padding:clamp(16px,3vw,28px); margin:16px 0; scroll-margin-top:12px; }
.fields { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin:12px 0; }
.fields label { flex:1 1 155px; min-width:0; }
label { display:block; font-weight:600; }
input,select,button { font:inherit; color:inherit; }
input:not([type=checkbox]),select { display:block; width:100%; min-width:0; min-height:42px; border:1px solid #88a49b; border-radius:8px; padding:6px 10px; background:white; }
button { cursor:pointer; min-height:42px; border:0; border-radius:8px; padding:7px 15px; font-weight:700; background:#135b49; color:white; }
button:disabled { opacity:.52; cursor:default; }
button[type=button] { background:#e0eee8; color:#123f37; }
a { color:#075744; text-underline-offset:.15em; }
:focus-visible { outline:3px solid #b57107; outline-offset:3px; }
fieldset { min-width:0; border:1px solid #c5d7d0; border-radius:10px; margin:12px 0; padding:8px 14px 14px; }
legend { font-weight:750; padding:0 5px; }
.checks label { padding:6px 10px; border-radius:7px; background:#edf4f1; }
input[type=checkbox] { accent-color:#135b49; }
.table-scroll { overflow:auto; border:1px solid #d9e4df; border-radius:8px; }
table { width:100%; min-width:610px; border-collapse:collapse; }
th,td { padding:8px 10px; text-align:left; border-bottom:1px solid #e1eae5; }
th { background:#e8f2ed; }
.pager { margin-top:12px; }
.muted,footer { color:#465e56; font-size:.9rem; }
footer { padding-bottom:24px; }
.report-card { border-left:4px solid #34836d; background:#edf5f1; margin:12px 0; padding:12px 16px; border-radius:6px; }
.report-card p { margin-bottom:4px; }
details { margin:10px 0; border:1px solid #d5e1dc; border-radius:8px; padding:10px; }
summary { cursor:pointer; font-weight:700; }
li { margin-bottom:5px; }

[hidden] { display:none !important; }
.path-choices { display:flex; flex-wrap:wrap; gap:12px; }
.path-choices label { flex:1 1 220px; background:#edf5f1; border:1px solid #94b9ab; border-radius:10px; padding:14px; cursor:pointer; }
input[type=radio] { display:inline; width:auto; min-height:auto; accent-color:#135b49; }
blockquote { margin:16px 0; padding:14px 18px; border-left:4px solid #34836d; background:#edf5f1; }

.confirmed-context { border:2px solid #a86a08; border-radius:10px; background:#fff4d4; color:#49320b; padding:14px 16px; margin:14px 0; overflow-wrap:anywhere; }
.confirmed-context strong { display:block; margin-bottom:6px; }
.confirmed-context p:last-child { margin-bottom:0; }
.coverage { padding:10px 12px; border-left:4px solid #34836d; background:#edf5f1; }

header .wrap { position: relative; }
header .back-home { position: absolute; top: 0; right: 0; color: #8fe3cf; text-decoration: none; font-size: 0.92rem; letter-spacing: 0.04em; }
header .back-home:hover { color: #fff; }
