:root{color-scheme:light;--ink:#2d4233;--muted:#69745f;--line:#dce0d1}*{box-sizing:border-box}body{margin:0;background:#f7f5ee;color:var(--ink);font:15px/1.7 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}main{max-width:780px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:22px;gap:15px}header a{color:var(--ink);text-decoration:none;font:bold 24px Georgia,serif}header span,.hint,.eyebrow{font-size:12px;color:var(--muted)}h1{font-size:27px;font-weight:500;margin-top:26px}p{color:var(--muted)}#login-panel{max-width:420px;margin:60px auto}.eyebrow{letter-spacing:1.6px}label{display:block;margin:18px 0 8px}input,select,textarea{display:block;width:100%;font:inherit;color:var(--ink);background:#fffef9;border:1px solid #b9c3af;border-radius:6px;padding:12px;margin-top:7px}input[type=file]{font-size:13px}textarea{resize:vertical}button{font:inherit;padding:11px 20px;background:var(--ink);color:#fff;border:0;border-radius:6px;cursor:pointer;min-height:44px;margin:12px 0}button:disabled{opacity:.55;cursor:wait}button.quiet{background:transparent;color:var(--ink);margin-left:auto}nav{display:flex;gap:10px;flex-wrap:wrap}nav button[aria-pressed=false]{background:#e6eadc;color:var(--ink)}.row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.check{display:flex;align-items:center;gap:10px;font-size:14px}.check input{width:18px;height:18px;margin:0}.title-row{display:flex;align-items:center;justify-content:space-between;gap:15px}.title-row h1{font-size:25px}#notice:not(:empty){background:#e4ebdc;padding:12px 16px;border-radius:6px;white-space:pre-line}#notice.error{background:#f4dfd7;color:#833a2c}.footer{margin-top:38px;border-top:1px solid var(--line);padding-top:20px}#photo-preview{display:flex;gap:10px;flex-wrap:wrap}#photo-preview img{width:100px;height:100px;object-fit:cover;border-radius:6px}:focus-visible{outline:3px solid #ac6d83;outline-offset:3px}[hidden]{display:none!important}@media(max-width:520px){main{padding:18px}.row{grid-template-columns:1fr;gap:0}header span{display:none}.title-row{align-items:start;flex-direction:column;gap:0}nav{gap:6px}nav button{font-size:13px;padding:10px 12px}}
