:root{font:17px system-ui;color:#18313c;background:#f5f3ed}body{margin:0}header{padding:1.5rem;display:flex;gap:1.5rem;background:#18313c;color:white;align-items:center}header img{width:110px;height:110px;object-fit:contain;background:white}h1{margin:0}main{max-width:1050px;margin:auto;padding:1rem}section,.notice,details{background:white;border-radius:12px;padding:1rem;margin:1rem 0}label{display:block;margin:.7rem 0}input,select,button{font:inherit;padding:.7rem;border:1px solid #819397;border-radius:7px;max-width:100%;box-sizing:border-box}input,select{display:block;width:100%}button{cursor:pointer;background:#00666b;color:white;margin:.3rem}button:disabled{opacity:.5;cursor:default}#scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:.6rem;border-bottom:1px solid #bccbcc}#standings{overflow:auto}dialog{max-width:90vw;border-radius:12px}pre{white-space:pre-wrap}#status{min-height:1.5rem}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #cc9900;outline-offset:2px}[hidden]{display:none!important}@media(max-width:600px){#scores{grid-template-columns:1fr}header{padding:1rem}header img{width:80px;height:80px}h1{font-size:1.4rem}}

.panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.panel-placements{min-width:0;border:1px solid #bccbcc;margin:0;padding:.8rem}.panel-placements h3{margin-top:0;color:#00666b}.placement-table-wrap{overflow-x:auto}.panel-placements table{font-size:.88rem}.panel-placements caption{text-align:left;font-weight:600;padding:.5rem 0}.placement-scope{overflow-wrap:anywhere}.placement-table-wrap:focus-visible{outline:3px solid #cc9900;outline-offset:2px}@media(max-width:850px){.panel-grid{grid-template-columns:1fr}}

@media(max-width:600px){.panel-placements thead{display:none}.panel-placements table,.panel-placements tbody,.panel-placements tr{display:block;width:100%;box-sizing:border-box}.panel-placements tr{padding:.6rem 0;border-bottom:1px solid #bccbcc}.panel-placements td{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:.5rem;border:none;padding:.25rem 0;overflow-wrap:anywhere}.panel-placements td::before{content:attr(data-label);font-weight:600}}

textarea{display:block;width:100%;min-height:6rem;box-sizing:border-box;font:inherit;padding:.7rem;border:1px solid #819397;border-radius:7px}input[type=checkbox]{display:inline-block;width:auto;min-width:1.2rem;min-height:1.2rem;margin-right:.5rem}#captionComparison{min-width:0}#captionComparison table{min-width:540px}#captionComparison button{display:block;min-height:44px}textarea:focus-visible{outline:3px solid #cc9900;outline-offset:2px}

.panel-progress{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.panel-progress p{padding:.8rem;background:#e8f4f3;border:1px solid #00666b;border-radius:7px;margin:.3rem 0;overflow-wrap:anywhere}.panel-focused{grid-template-columns:1fr}.inline-caption{padding:.6rem;margin:.6rem 0;min-width:0}.inline-caption summary{cursor:pointer;font-weight:600}.caption-matrix{min-width:540px}.panel-placements .caption-matrix{display:table;width:100%}.panel-placements .caption-matrix thead{display:table-header-group}.panel-placements .caption-matrix tbody{display:table-row-group}.panel-placements .caption-matrix tr{display:table-row;width:auto;padding:0}.panel-placements .caption-matrix td,.panel-placements .caption-matrix th{display:table-cell;padding:.6rem;border-bottom:1px solid #bccbcc}.panel-placements .caption-matrix td::before{content:none}button[aria-pressed=true]{outline:3px solid #cc9900;outline-offset:2px}@media(max-width:850px){.panel-progress{grid-template-columns:1fr}}
body:has(#login:not([hidden])){background:radial-gradient(ellipse at 90% 10%,#183e47 0,transparent 45%),#101c29;color:#f5f1e9;min-height:100vh}body:has(#login:not([hidden])) header{max-width:800px;margin:auto;background:transparent;padding:3rem 1.5rem .5rem}body:has(#login:not([hidden])) header h1{font-size:clamp(2.8rem,7vw,5rem);letter-spacing:-.05em}body:has(#login:not([hidden])) header p{color:#c3d0d3}body:has(#login:not([hidden])) .brand-eyebrow{font-size:.8rem;letter-spacing:.2em;color:#d5c89e;font-weight:700}body:has(#login:not([hidden])) main{max-width:800px;padding:0 1.5rem 3rem}body:has(#login:not([hidden])) .notice{display:none}#login{background:#182836;color:#f5f1e9;border:1px solid #354550;padding:clamp(1.5rem,4vw,2.5rem);border-radius:18px}#login h2{font-size:clamp(1.8rem,4vw,2.5rem);margin:.5rem 0 1rem}#login p{line-height:1.6;color:#c3d0d3}#login .entry-kicker{font-size:.78rem;letter-spacing:.16em;color:#fff466;font-weight:700}#login button{margin:1rem 0 0;background:#00c4cc;border:0;color:#082629;font-weight:700;min-height:48px;padding:.8rem 1.2rem}#login a{color:#d6f9f9;display:inline-block;padding:.4rem 0}#login a:focus-visible,#login button:focus-visible{outline:3px solid #fff466;outline-offset:4px}body:has(#login:not([hidden])) #status{color:#f5f1e9;line-height:1.5}body:has(#login:not([hidden])) #storageStatus:empty{display:none}
/* Authenticated event preparation: optional resources, never a scoring gate. */
#welcome{max-width:960px;margin:24px auto;padding:clamp(20px,4vw,40px);border:1px solid #829b9f;border-radius:16px}#welcome h2{font-size:clamp(1.6rem,4vw,2.5rem);line-height:1.2}#welcome p{line-height:1.6}#welcome section{margin:28px 0}#welcome label{display:block;margin:16px 0}#welcome input[type=checkbox]{width:auto;min-height:20px;margin-right:8px}#welcomeCaptions{columns:2;line-height:1.8;padding-left:24px}.calibration-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.calibration-slots article{padding:16px;border:1px solid #829b9f;border-radius:10px}.calibration-slots h4{margin:0}#beginWorkspace,#welcomeLogout{margin:8px 8px 0 0}@media(max-width:600px){#welcomeCaptions{columns:1}.calibration-slots{grid-template-columns:1fr}}
