@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#222b50;--muted:#626b7d;--green:#282f59;--lime:#f3cf24;--line:#dce0e9;--paper:#f5f6f9;--orange:#a82435}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:14px/1.5 Inter,Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}[hidden]{display:none!important}.rail{position:fixed;inset:0 auto 0 0;width:230px;background:#22294f;color:#ffffff;padding:32px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-size:30px;font-weight:800;letter-spacing:-1px;padding:0 10px}.brandmark{display:grid;place-items:center;background:var(--lime);color:#183d2c;width:48px;height:48px;border-radius:9px;font-size:25px;transform:skew(-7deg)}.brand-sub{display:block;font-size:9px;letter-spacing:2px;font-weight:500}.rail-caption{font-size:9px;letter-spacing:1.7px;color:#aeb8d2;margin:57px 12px 18px}.rail-link{border:0;background:none;color:#d6dcec;padding:15px 12px;display:flex;gap:14px;align-items:center;text-align:left;border-radius:6px;margin-bottom:6px}.rail-link.active{background:#343d6b;color:var(--lime)}.rail-link span{font-size:12px}.rail-count{margin-left:auto}.rail-bottom{margin-top:auto;font-size:11px;color:#c9d0e2;line-height:2}.rail-bottom small{font-size:10px;color:#a6b0cc}.status-dot{display:inline-block;width:6px;height:6px;background:var(--lime);border-radius:50%;margin-right:6px}#identity{border-top:1px solid #414b73;margin-top:20px;padding-top:15px}.workspace{margin-left:230px}header{height:72px;padding:0 42px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px;color:var(--muted)}header>div{display:flex;gap:16px;align-items:center}.badge{padding:6px 11px;border:1px solid #d6dce7;border-radius:20px;font-size:10px;letter-spacing:0}main{max-width:1450px;padding:42px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:700;color:var(--green);margin-bottom:9px}h1{font-family:'Barlow Condensed',Arial,sans-serif;font-size:60px;line-height:.98;letter-spacing:-.8px;margin:0 0 18px;font-weight:600}h1 span{color:var(--green)}p{color:var(--muted)}.intro p{font-size:12px;margin:0;line-height:1.8}.intro-note{border-left:1px solid #d6dce7;padding:15px 0 15px 26px;max-width:260px}.intro-note strong{font-size:12px;display:block;margin-bottom:9px}.note-icon{font-size:27px;color:var(--green);display:block;margin-bottom:16px}.panel,.upload-panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px}.upload-panel{box-shadow:0 4px 20px #22294f08}.step{display:flex;gap:15px;align-items:center}.step>span{background:#edf0f8;color:#303a68;border-radius:7px;padding:9px;font-size:12px;font-weight:700}h2{font-size:19px;letter-spacing:-.4px;line-height:1.3;margin:0}.step h2{font-size:16px}.step p{font-size:11px;margin:6px 0 0}.upload-actions{display:flex;gap:10px;align-items:center;margin:22px 0 12px}.upload-actions .primary{margin-left:auto}.primary,.secondary,.upload-button{padding:11px 17px;border-radius:5px;border:1px solid var(--line);font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:20px}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#e5bd13}.secondary{background:white;color:var(--ink)}.upload-button{border:1px dashed #8996b8;color:var(--green);background:#f5f7fc;cursor:pointer}.upload-button input{position:absolute;opacity:0;width:1px;height:1px}.upload-button:focus-within{outline:2px solid var(--green)}.muted{font-size:10px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin:24px 0 38px;gap:12px}.stat{background:white;border:1px solid var(--line);padding:20px;border-radius:7px}.stat>span{font-size:8px;letter-spacing:1px;font-weight:700;color:var(--muted)}.stat strong{display:block;font-size:36px;line-height:1.5;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:600}.stat small{font-size:9px;color:var(--muted)}.stat.urgent{background:#fff6cf;border-color:#e4cc65}.stat.urgent strong{color:var(--green)}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.tabs{display:flex;gap:20px;border-bottom:1px solid #d6dce7}.tabs button{border:0;background:none;padding:12px 0;border-bottom:3px solid transparent;color:var(--muted);font-size:11px;white-space:nowrap}.tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:700}.tabs span{font-size:9px;padding-left:3px}.toolbar{display:flex;gap:10px;align-items:center;margin:18px 0}.toolbar input{flex:1;max-width:380px}.toolbar .muted{margin-left:auto}input,select{padding:10px 12px;border:1px solid #cbd2e0;border-radius:5px;background:white;color:var(--ink);font-size:12px}select{max-width:100%}.change-card{background:white;border:1px solid var(--line);border-radius:7px;margin-bottom:12px;overflow:hidden}.change-top{display:flex;gap:12px;align-items:center;padding:16px 19px;border-bottom:1px solid #edf0f6}.change-top input{accent-color:var(--green);width:16px;height:16px}.game-label{font-size:10px;color:var(--muted)}.teams{font-size:13px;font-weight:600;margin-top:3px}.pill{display:inline-block;font-size:9px;border-radius:4px;padding:4px 8px;background:#edf0f8;color:var(--green);white-space:nowrap}.pill.warn{background:#fff0f1;color:var(--orange)}.change-top>.pill{margin-left:auto}.change-body{padding:16px 20px}.diff{display:grid;grid-template-columns:110px 1fr 25px 1fr;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0f6;font-size:12px}.diff-label{font-size:10px;color:var(--muted)}.before{color:#725b66;text-decoration:line-through}.after{font-weight:600;color:var(--green)}.issues{padding:10px 20px;background:#fffaf0;color:#725a28;font-size:10px}.issues button{border:0;background:none;text-decoration:underline;color:var(--green);font-size:10px;margin-left:10px}.empty{padding:50px 25px;text-align:center;background:white;border:1px solid var(--line);border-radius:7px;color:var(--muted)}.empty strong{display:block;font-size:17px;margin-bottom:8px;color:var(--ink)}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:7px}table{border-collapse:collapse;width:100%;font-size:11px;text-align:left}th{background:#edf0f7;color:#414c70;font-size:9px;letter-spacing:.6px;font-weight:600}th,td{padding:13px 15px;border-bottom:1px solid #e7ebf2;vertical-align:top}td small{color:var(--muted);display:block;font-size:9px;margin-top:4px}td select{max-width:310px;font-size:10px}.table-action{background:#edf0f8;border:1px solid #c7d0e4;color:var(--green);font-size:10px;padding:7px 9px;border-radius:4px}.table-action:disabled{opacity:.5}.notice{padding:14px 18px;background:#eef2fa;border:1px solid #d2dbee;border-radius:6px;font-size:11px;margin-bottom:16px;line-height:1.7}.export-bar{margin-top:24px;border-top:1px solid #d6dce7;padding:23px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.export-bar strong{font-size:12px}.export-bar p{font-size:10px;margin:5px 0}.download-link{display:inline-block;margin:8px;padding:10px;color:var(--green);border:1px solid var(--line);border-radius:5px;text-decoration:none;font-size:11px}footer{display:flex;gap:20px;border-top:1px solid var(--line);margin-top:35px;padding:20px 0;color:var(--muted);font-size:9px}footer span{margin-left:auto}footer small{font-size:9px}#message{padding:14px 18px;border:1px solid #d2dbee;background:#eef2fa;border-radius:6px;margin:0 0 20px;font-size:12px}#message.error{background:#fff0f1;border-color:#e8bdc5;color:#a82435}.text-button{border:0;background:none;color:var(--green);font-size:10px}#login-form{display:flex;gap:15px;align-items:end;flex-wrap:wrap}#login-form label{display:flex;flex-direction:column;gap:5px;font-size:11px}.pagination{display:flex;justify-content:center;gap:20px;align-items:center;margin:18px;font-size:11px}@media(min-width:1500px){h1{font-size:70px}.intro{margin-bottom:44px}}@media(max-width:1000px){.rail{width:185px;padding:25px 12px}.workspace{margin-left:185px}main{padding:28px}header{padding:0 28px}.intro-note{display:none}.stats{gap:8px}.stat{padding:14px}.tabs{gap:14px}.diff{grid-template-columns:90px 1fr 20px 1fr}}@media(max-width:700px){.rail{position:static;width:auto;padding:16px 20px;display:block}.brand{font-size:22px}.brandmark{width:36px;height:36px;font-size:20px}.rail-caption,.rail-link,.rail-bottom{display:none}.workspace{margin:0}header{height:48px;padding:0 20px;font-size:8px}main{padding:24px 18px}h1{font-size:52px}.stats{grid-template-columns:repeat(2,1fr);margin-bottom:25px}.tabs{overflow-x:auto;gap:20px}.upload-actions{flex-wrap:wrap}.upload-actions .primary{margin-left:0}.diff{grid-template-columns:65px 1fr 15px 1fr;gap:7px;font-size:11px}.toolbar{flex-wrap:wrap}.toolbar input{width:100%;flex-basis:100%;max-width:none}.section-head{align-items:start;gap:20px}.change-top{padding:13px}.teams{font-size:11px}.change-body{padding:10px 13px}.export-bar{align-items:start;flex-direction:column}footer{flex-wrap:wrap}footer small{width:100%}.intro{margin-bottom:25px}#snapshot-time{max-width:130px}}

/* ASRA identity: crest, navy/gold, and the referee-shirt color strip from azref.com. */
.rail{border-right:1px solid #1a2140;padding-top:25px}
.brand{flex-direction:column;gap:5px;text-align:center;padding:0 4px;letter-spacing:0}
.brand img{display:block;width:132px;height:132px;object-fit:contain}
.brand-title{font-family:'Barlow Condensed',Arial,sans-serif;font-size:29px;font-weight:700;line-height:1.1;color:#fff}
.brand-sub{font-size:8px;letter-spacing:1.35px;line-height:1.8;max-width:175px;color:#d7ddef}
.rail-caption{margin-top:32px}.rail-link.active{box-shadow:inset 3px 0 var(--lime)}
header{position:relative;background:#fff;color:#333f64;font-weight:700}
header:after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#efcd43 0 25%,#98bd70 25% 50%,#579ed3 50% 75%,#d6634b 75%)}
.header-divider{color:#a7afc3;padding:0 9px}.asra-link{color:#28335d;text-decoration:none;font-size:10px;letter-spacing:.6px}.asra-link:hover{text-decoration:underline}
.intro{padding:10px 0 20px}.intro .eyebrow{color:#a82435}.intro h1{font-weight:700;color:#22294f}.intro h1 span{color:#22294f;text-decoration:underline;text-decoration-color:#f3cf24;text-decoration-thickness:6px;text-underline-offset:8px}
.intro-note{border-left:3px solid #f3cf24}.note-icon{color:#a82435}
.primary{background:#f3cf24;border-color:#ddba16;color:#202744;box-shadow:0 2px 0 #b89713;font-weight:800}.primary:hover{background:#ffdc38}.primary:disabled{box-shadow:none}
.upload-panel{border-top:3px solid #303963}.step>span{background:#fff3bc;color:#3b3a24}
.stat.urgent{border-top:3px solid #b62438}.stat.urgent strong{color:#a82435}.stat strong{font-weight:700}
.tabs{overflow-x:auto;gap:19px}.tabs button.active{border-bottom-color:#c0273d}.after{color:#263c75}.pill.warn{border:1px solid #efc6ce;font-weight:700}
.change-card:has(.pill.warn){border-left:4px solid #b62438}.table-action:hover{background:#e0e7f5}.download-link{font-weight:700}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd8d00;outline-offset:3px}
@media(max-width:1000px){.brand img{width:112px;height:112px}.brand-title{font-size:26px}.brand-sub{font-size:7px}.asra-link{display:none}}
@media(max-width:700px){.rail{padding:12px 18px}.brand{display:grid;grid-template-columns:58px 1fr;text-align:left;column-gap:12px;max-width:340px}.brand img{width:58px;height:58px;grid-row:1/3}.brand-title{font-size:27px;align-self:end}.brand-sub{font-size:7px;max-width:240px;align-self:start}.intro{padding-top:2px}.intro h1 span{text-decoration-thickness:4px;text-underline-offset:6px}header>span{font-size:8px}.header-divider{padding:0 4px}}
