:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#203747;background:#f5f8fa}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.45}button,input,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}.site-header{color:white;background:linear-gradient(112deg,#143044,#0e6673);padding:20px max(20px,calc((100vw - 1320px)/2))}.header-inner{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:14px}.brand-symbol{width:56px;height:56px;display:grid;place-items:center;background:#ffffff16;border:1px solid #ffffff30;border-radius:14px;font-size:30px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.15em;color:#b9e8ee}h1{margin:4px 0;font-size:clamp(23px,3vw,31px);letter-spacing:-.035em;line-height:1.15}.brand p{margin:0;font-size:12px;color:#d7edf0}.session-controls{display:flex;align-items:center;gap:12px}.role-label{font-size:12px;color:#d8f2f3}.btn{border:0;border-radius:9px;font-weight:700;padding:10px 13px;font-size:13px;white-space:nowrap;transition:filter .15s}.btn:hover{filter:brightness(.96)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#126979;color:white}.btn-light{color:#155c6c;background:#e5f1f4}.btn-ghost{color:#496476;background:transparent;border:1px solid #cfdee4}.btn-outline-light{color:white;border:1px solid #ffffff65;background:transparent}.full{width:100%}
.auth-view{display:flex;align-items:center;justify-content:center;min-height:70vh;padding:25px}.login-card{background:white;border:1px solid #dbe5ec;border-radius:17px;box-shadow:0 15px 50px #11354714;width:min(430px,100%);padding:32px}.login-icon{background:#e4f4f5;color:#126979;font-size:24px;border-radius:12px;width:45px;height:45px;display:grid;place-items:center}.login-card h2{margin:16px 0 5px;font-size:24px;letter-spacing:-.03em}.login-card p{color:#62798b;margin:0 0 22px}.login-card form{display:grid;gap:12px}.login-card label,.field label{font-weight:740;font-size:12px;color:#526b7a}
input,select{border:1px solid #cddce4;border-radius:8px;padding:10px 11px;min-width:0;width:100%;background:#fff;color:#23394a}input:focus,select:focus{outline:2px solid #8bd1d8;border-color:#4fa7b1}input::placeholder{color:#a2b0ba}.message{color:#1c7684;font-size:12px;min-height:14px}.message.error{color:#b84336}
.main-layout{max-width:1360px;margin:0 auto;padding:22px 20px 60px}.top-intro{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.top-intro h2{font-size:22px;letter-spacing:-.03em;margin:0}.top-intro p{color:#687d8c;margin:2px 0}.layout{display:grid;grid-template-columns:minmax(380px,.88fr) minmax(0,1.32fr);gap:18px;align-items:start}.panel{background:#fff;border:1px solid #dae6ea;border-radius:15px;box-shadow:0 4px 24px #112d3d08;padding:20px}.panel-title{display:flex;align-items:flex-start;gap:11px;margin:0 0 16px}.panel-title h2{margin:0 0 3px;font-size:19px;letter-spacing:-.025em}.panel-title p{margin:0;color:#667d8b;font-size:12px}.step{background:#e5f3f5;color:#166775;display:grid;place-items:center;min-width:35px;height:35px;border-radius:10px;font-weight:800;font-size:15px}.video-wrapper{aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#132a37;position:relative}.video-wrapper iframe,.video-wrapper #videoPlayer{width:100%;height:100%;display:block;border:0}.video-placeholder{color:#d8eef2;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;text-align:center;padding:16px;pointer-events:none}.video-placeholder span{font-size:40px}.video-placeholder small{color:#a7cbd4}.caption{font-size:12px;color:#697e8c;margin:9px 0 0}.watching-banner{background:#e7f5f6;border:1px solid #c5e5e9;padding:10px;border-radius:9px;margin-top:10px;display:flex;gap:7px;flex-wrap:wrap;align-items:center}.watching-banner strong{color:#1f5964}.watching-banner span{color:#527988;font-size:11px;flex:1}.separator{border-top:1px solid #e3ebef;margin:20px 0}.section-title{font-size:15px;letter-spacing:-.01em;margin:18px 0 9px}.small-help{color:#627d8a;font-size:12px;margin:0 0 12px}.field{display:grid;gap:5px;margin:11px 0}.inline-field{display:flex;gap:8px}.inline-field input{flex:1}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.marker{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.marker .field{margin:8px 0}.mark-btn{margin-bottom:8px;min-width:105px}.button-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.button-row button{flex:1}
.library-title .counter{margin-left:auto}.counter{border-radius:30px;background:#dceef1;color:#15606b;font-size:11px;font-weight:780;padding:4px 9px;white-space:nowrap}.goalie-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.goalie-board{border:1px solid #dce6ea;border-radius:11px;min-width:0;overflow:hidden}.goalie-heading{background:#edf5f6;padding:12px 12px 11px;display:flex;gap:5px;align-items:center;justify-content:space-between}.goalie-heading h3{margin:0;font-size:15px;letter-spacing:-.02em}.goal-list{padding:0 12px 14px;min-height:110px}.empty-goals{color:#8295a2;font-size:12px;text-align:center;padding:26px 5px}.game-group{padding-top:16px}.game-heading{font-size:12px;color:#617885;font-weight:800;border-bottom:1px solid #e1e9ec;padding-bottom:6px;display:flex;align-items:center;justify-content:space-between;gap:5px}.game-heading span{font-weight:500;font-size:10px;color:#9baab1}.goal-item{padding:10px 0;border-bottom:1px solid #edf2f4}.goal-item:last-child{border-bottom:0}.goal-first{display:flex;align-items:start;justify-content:space-between;gap:6px}.goal-name{font-weight:760;font-size:12px;overflow-wrap:anywhere}.goal-meta{font-size:11px;color:#6e8390}.goal-actions{display:flex;gap:5px;margin-top:7px}.goal-actions .btn{padding:5px 8px;font-size:11px}.btn-danger{background:#faefed;color:#a54339}.settings-panel{margin-top:18px}.settings-panel summary{cursor:pointer;color:#336b79;font-weight:760}.settings-inputs{max-width:480px}.settings-panel p{margin-top:12px}.footer{font-size:11px;color:#7b8f9c;text-align:center;margin:24px 0 0}
@media(max-width:1050px){.layout{grid-template-columns:1fr}.goalie-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:630px){.main-layout{padding:16px 13px 50px}.panel{padding:15px}.goalie-grid{grid-template-columns:1fr}.brand-symbol{display:none}.site-header{padding:19px 14px}.header-inner{align-items:flex-start;flex-direction:column;gap:12px}.marker{grid-template-columns:1fr}.mark-btn{margin:0 0 4px}.two-col{gap:8px}.login-card{padding:23px}.top-intro h2{font-size:19px}}
