*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;color:#f9edf1;background:radial-gradient(ellipse at 95% 5%,#482032 0,transparent 42%),#130f15;min-height:100vh;font:16px/1.65 Inter,"Microsoft YaHei",sans-serif}main{width:min(100%,760px);margin:auto;padding:24px clamp(18px,5vw,42px) 72px}header,footer,.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}header{border-bottom:1px solid #61404f;padding-bottom:16px}header i,small,.accent{color:#ffa5c8}header span,aside{color:#d4b9c4;font-size:14px}h1{font:600 clamp(38px,8vw,66px)/1.15 Georgia,"Songti SC",serif;letter-spacing:-.04em;margin:20px 0}h2{font-size:24px}h3{font-size:18px}.hero{padding:28px 0 8px}.hero i{font:italic 38px Georgia;color:#ff90ba}.box,details{background:#211820;border:1px solid #4b3542;border-radius:18px;padding:18px;margin:14px 0}summary,button{cursor:pointer}label{display:block;margin:10px 0}button,input,select,textarea{font:inherit;color:inherit;border:1px solid #694c5c;border-radius:10px;background:#251d24;padding:9px 12px}input:not([type=checkbox]),textarea,select{width:100%}.primary{background:#ff9abe;color:#28101e;font-weight:700;border:none}button:hover{border-color:#ffa5c8}button:disabled{opacity:.45}footer{margin-top:28px}.grid,.medals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.opts{display:grid;gap:7px}.opts button{text-align:left}.opts button[aria-pressed=true]{border-color:#ff9fc6;background:#522c40}.bar{height:8px;background:#47313e;border-radius:8px;overflow:hidden}.bar i{display:block;background:linear-gradient(90deg,#a55180,#ffa8ca);height:100%}.medals button{background:none;border:none;padding:4px;font-size:14px}.ring{display:grid;place-items:center;border-radius:100%;width:64px;height:64px;margin:6px auto;border:3px solid #ff8fbd;background:#452538;color:#ffd3e4;font-weight:700}.chart details{margin:6px 0;padding:10px 14px}.chart summary{list-style:none}canvas{max-width:100%;height:auto;display:block;margin:auto}.tags{display:flex;flex-wrap:wrap;gap:6px}.tags button{font-size:13px}.notice{color:#ffbbd5}progress{width:100%;accent-color:#ff99bf}textarea{min-height:70px}@media(max-width:510px){.grid{grid-template-columns:1fr}.box{padding:14px}.grid label{margin:3px 0}}
