:root{--navy:#1D425F;--orange:#DD5420;--bg:#F4F6F8;--ink:#1b2833;--mut:#5d6b78;--line:#dde3e9}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.45}
h1,h2,h4{font-family:Cinzel,Georgia,serif;color:var(--navy);margin:0 0 .4em}
.hero{background:var(--navy);color:#fff;padding:16px 24px 26px}.bar{display:flex;justify-content:space-between;align-items:center;gap:10px;max-width:1000px;margin:0 auto 18px}
.logo{height:34px}select{font:13px Inter;padding:6px;border-radius:6px;max-width:240px}
.hrow{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1000px;margin:0 auto}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:#F0A27F;margin:0 0 4px}.hero h1{color:#fff;font-size:28px}.status{font-size:17px;margin:0;opacity:.95}
.scorebox{text-align:center}.ring{--p:0;width:130px;height:130px;border-radius:50%;background:conic-gradient(var(--orange) calc(var(--p)*1%),rgba(255,255,255,.15) 0);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}
.ring::before{content:"";position:absolute;inset:11px;background:var(--navy);border-radius:50%}.ring span,.ring small{position:relative}.ring span{font:700 40px Cinzel;line-height:1}.ring small{font-size:10px;letter-spacing:.06em;text-transform:uppercase;opacity:.8}
#scoreChg{margin-top:8px}.hero .co.up{color:#7fe0a5}.hero .co.down{color:#ffb4a8}
.banner{background:#FFF1EA;color:#8a2f0c;border-bottom:2px solid var(--orange);padding:8px 24px;font-weight:600;font-size:13px;text-align:center}
main{max-width:1000px;margin:0 auto;padding:10px 20px}section{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;margin:18px 0}
h2{font-size:20px;border-bottom:2px solid var(--orange);display:inline-block;padding-bottom:4px}
.muted{color:var(--mut)}.small{font-size:12.5px}.center{text-align:center;justify-content:center}
.trends{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.tile{min-width:0;border:1px solid var(--line);border-radius:10px;padding:12px}
.tt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);font-weight:600}.tv{font-size:24px;font-weight:600;color:var(--navy)}.sub{font-size:12px;color:var(--mut)}.mc{height:80px;margin-top:6px}
.co{font-size:12.5px;font-weight:600}.co.up{color:#1e7a46}.co.down{color:#b3261e}.co.flat{color:var(--mut)}
.aud{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.ac{background:#F7F9FB;border-radius:10px;padding:12px}.ac h4{font-size:13px}.ac ol{margin:0;padding-left:18px}.ac li b{float:right;color:var(--mut)}.ac p{margin:4px 0 0;font-size:12.5px}
.big{font:700 22px Cinzel;color:var(--navy)}
.ac .bar{display:grid;grid-template-columns:1fr 50px 32px;gap:6px;align-items:center;font-size:12px;margin:3px 0;max-width:none}.ac .bar i{height:8px;background:var(--orange);border-radius:4px;display:block}.ac .bar b{text-align:right}
.top,.moves{list-style:none;padding:0;margin:8px 0}.person,.moves li{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.pn{flex:none;width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}
.ph{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tag{font-size:10px;text-transform:uppercase;font-weight:700;background:#E8EEF3;color:var(--navy);padding:2px 7px;border-radius:4px}
.pb p{margin:3px 0;font-size:14px}.step{color:var(--orange);font-weight:600}.moves h4{font-size:16px;margin:2px 0}.moves p{margin:2px 0}.gain{color:#1e7a46;font-weight:600;font-size:13.5px}
.empty{background:#F7F9FB;border:2px dashed var(--line);border-radius:10px;padding:20px;text-align:center;color:var(--mut)}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}
.btn{font:600 13px Inter;padding:9px 14px;border-radius:6px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}.btn.primary{background:var(--orange);border-color:var(--orange);color:#fff}.btn input{display:none}
.how{margin-top:10px;font-size:13px;color:var(--mut)}.how summary{cursor:pointer;font-weight:600;color:var(--navy)}
footer{text-align:center;color:var(--mut);font-size:12px;padding:20px}
body.viewonly .noview{display:none!important}
@media(max-width:700px){.hrow{flex-direction:column-reverse;align-items:flex-start}.hero h1{font-size:22px}.trends{grid-template-columns:1fr 1fr}.ring{width:110px;height:110px}.ring span{font-size:32px}section{padding:16px}main{padding:6px 12px}}
@media print{.noprint,.noview,select{display:none!important}body{background:#fff}.hero,.ring,.pn,.banner,.ac .bar i{-webkit-print-color-adjust:exact;print-color-adjust:exact}section{break-inside:avoid}}
.login{max-width:440px;margin:30px auto}.login form{display:flex;flex-direction:column;gap:10px;margin:14px 0}.login label{display:flex;flex-direction:column;font-weight:600;font-size:13px;gap:5px}
.login input{font:16px Inter;padding:11px;border:1px solid var(--line);border-radius:6px}#lCode{letter-spacing:6px;font-size:22px;text-align:center}.err{color:#b3261e;font-weight:600;min-height:1em}
.hero.anon .hrow{display:none}#logout{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
[hidden]{display:none!important}
