:root{--ink:#2d241f;--muted:#665954;--accent:#733749;--pale:#f2e5e5;--line:#d9c9c1}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#f8f3ed;color:var(--ink);font:16px/1.55 "Instrument Sans","Microsoft JhengHei",sans-serif}header{display:flex;justify-content:space-between;align-items:center;gap:.7rem;background:#342420;color:#fff5eb;padding:1rem max(4vw,1rem)}header strong{font-size:1.15rem}header small{margin-left:.6rem;font-size:.8rem;font-weight:400}main{max-width:1000px;margin:2rem auto;padding:0 1rem}.card{background:#fffdfa;border:1px solid var(--line);border-radius:18px;padding:clamp(1rem,4vw,2.4rem)}.login{max-width:460px;margin:7vh auto}.eyebrow{font-size:.74rem;letter-spacing:.2em;color:var(--accent);font-weight:700}h1,h2{line-height:1.2;margin:.3rem 0 1rem}h1{font-size:clamp(1.65rem,4vw,2.25rem)}h2{margin-top:2rem;font-size:1.2rem}nav,.row{display:flex;gap:.55rem;flex-wrap:wrap;margin-bottom:1rem}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:8px;background:#fffdfa;color:var(--ink);padding:.55rem .85rem;min-height:42px}button:hover,button[aria-current=page]{background:var(--pale);border-color:var(--accent)}.primary,.primary:hover{background:var(--accent);color:white;border-color:var(--accent)}button:disabled{opacity:.55;cursor:wait}form{display:grid;gap:1rem;max-width:640px}form button{justify-self:start}label{display:grid;gap:.3rem;font-weight:600}input,textarea,select{width:100%;padding:.6rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);min-width:0}textarea{resize:vertical;min-height:4.5rem}.columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox{display:flex;align-items:center}.checkbox input{width:1.1rem;height:1.1rem}.table{overflow:auto;margin-top:.8rem}table{border-collapse:collapse;width:100%;text-align:left}td,th{padding:.65rem .6rem;border-bottom:1px solid var(--line);overflow-wrap:anywhere}th{background:#f6eee8;white-space:nowrap}#message{position:sticky;bottom:1rem;padding:.8rem 1rem;background:#e9f1e7;color:#193e28;border-radius:8px;box-shadow:0 3px 18px #35242022}#message[data-error=true]{background:#f8e3e1;color:#762b32}@media(max-width:520px){.columns{grid-template-columns:1fr}header small{display:block;margin-left:0}td,th{padding:.5rem .35rem}}
