:root { color-scheme: light; font-family: system-ui, "Microsoft YaHei", sans-serif; color: #222c31; background: #f5f4ef; }
* { box-sizing: border-box; }
body { margin: 0; font-size: 1.0625rem; line-height: 1.75; }
header { padding: 1.25rem max(1rem, calc((100vw - 58rem) / 2)); background: #163e3a; color: white; }
header p { margin: 0; }.brand { font-weight: 700; }
main { max-width: 58rem; padding: 1.5rem 1rem 4rem; margin: auto; }
h1 { font-size: 2rem; } h2 { font-size: 1.5rem; } h3 { font-size: 1.2rem; }
section section, #auth, details { background: #fff; border: 1px solid #c8cecb; border-radius: .6rem; padding: 1.4rem; margin: 1.5rem 0; }
label { display: block; font-weight: 600; }
input, button { font: inherit; } input[type=password] { display: block; width: min(100%, 28rem); padding: .5rem; margin: .5rem 0 1rem; border: 1px solid #64736d; }
input[type=file] { display: block; max-width: 100%; margin: .7rem 0 1rem; }
button { cursor: pointer; padding: .5rem 1rem; border: 1px solid #174f43; border-radius: .25rem; background: #174f43; color: #fff; min-height: 44px; }
button:disabled { background: #63726e; cursor: default; } a { color: #09584e; text-underline-offset: .2em; }
:focus-visible { outline: 3px solid #a33a12; outline-offset: 4px; }
.choice { display: inline-flex; align-items: center; gap: .6rem; margin: 0 1.5rem 1rem 0; } input[type=checkbox] { width: 1.3rem; height: 1.3rem; }
.row { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; }
ul { padding-left: 1.3rem; } li { padding: .7rem 0; } li a { margin-right: 1.2rem; } li p { margin: .25rem 0; }
#error:not(:empty) { color: #8c241c; border-left: 4px solid #8c241c; padding: .7rem 1rem; background: #fff; }
#feedback:not(:empty) { color: #174f43; padding: .7rem 0; }
.skip { position: absolute; top: -10rem; left: 1rem; background: white; padding: 1rem; }.skip:focus { top: 1rem; }
dialog { max-width: min(40rem, calc(100vw - 2rem)); border: 2px solid #174f43; border-radius: .5rem; padding: 1.5rem; overflow-wrap: anywhere; } dialog::backdrop { background: #0009; }
summary { cursor: pointer; font-weight: 600; } [hidden] { display: none !important; }
