:root {--bg:#071425;--bg2:#0b1c33;--surface:#0e223e;--surface2:#132a49;--surface3:#193451;--line:#263f5c;--text:#f6f8fc;--muted:#aac1d5;--orange:#f78129;--orange2:#ffb56f;--green:#96d9a7;--red:#ff8c8c;--shadow:0 16px 55px rgba(0,0,0,.17);--rad:17px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}svg{flex:none}img{max-width:100%}::selection{background:#f7812980}*:focus-visible{outline:2px solid var(--orange2);outline-offset:3px}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:linear-gradient(170deg,#0a1b31,#071324);border-right:1px solid var(--line);z-index:30;display:flex;flex-direction:column;padding:24px 14px 16px}.brand{display:flex;align-items:center;gap:11px;padding:2px 10px 25px;border-bottom:1px solid var(--line)}.brand img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 4px 9px #0006)}.brand h1{font-size:16px;line-height:1.06;margin:0;letter-spacing:.055em}.brand small{display:block;font-size:11px;font-weight:800;color:var(--orange);letter-spacing:.15em;margin-top:7px}.nav-label{font-size:10px;font-weight:800;letter-spacing:.17em;color:#8197af;padding:25px 14px 11px}.nav-link{display:flex;align-items:center;gap:13px;border:1px solid transparent;border-radius:11px;padding:12px 13px;color:#bed0e1;font-weight:700;font-size:13px;margin:2px 0;text-align:left;background:transparent;width:100%}.nav-link:hover{background:#112945;color:white}.nav-link.active{background:#f7812918;border-color:#f7812955;color:white}.nav-link.active .i{color:var(--orange)}.nav-link .i{width:21px;height:21px}.side-bottom{margin-top:auto;border-top:1px solid var(--line);padding:16px 10px 0;color:var(--muted);font-size:11px}.side-bottom b{color:#fff}.side-bottom span{display:block;margin-top:6px}
.main{margin-left:248px;min-height:100vh}.topbar{position:sticky;top:0;z-index:20;background:#08182be8;border-bottom:1px solid #2b4561;backdrop-filter:blur(18px);height:69px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,52px);gap:16px}.breadcrumbs{display:flex;gap:8px;align-items:center;font-size:12px;color:#a6b9ce;min-width:0}.breadcrumbs strong{font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breadcrumbs button{border:0;background:none;color:#9cb3cb;padding:0}.top-actions{display:flex;align-items:center;gap:10px}.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid #3b4f65;border-radius:50px;color:#c3d3e1;font-size:11px;font-weight:800;padding:7px 11px;white-space:nowrap}.pill.orange{background:#f781291c;color:#ffb576;border-color:#f7812950}.pill.green{color:#a5e5b6;border-color:#406952}.role-button{color:#fff;border:1px solid #3b5570;border-radius:11px;background:#112944;padding:8px 12px;font-size:11px;font-weight:800}.role-button:hover{border-color:var(--orange)}.role-button .i{width:14px;height:14px;vertical-align:middle;margin-right:4px}.container{width:min(1180px,100%);margin:auto;padding:32px clamp(16px,3vw,52px) 98px}
.eyebrow{font-size:11px;text-transform:uppercase;color:var(--orange2);font-weight:900;letter-spacing:.19em}.page-title{margin:9px 0 7px;font-size:clamp(29px,3vw,41px);line-height:1.12;letter-spacing:-.035em}.page-sub{color:var(--muted);font-size:14px;margin:0 0 25px;max-width:750px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:32px 0 16px}.section-head h2{font-size:22px;letter-spacing:-.035em;margin:0}.section-head a,.text-link,.link-button{color:var(--orange2);font-size:12px;font-weight:800;background:none;border:0;padding:0}.section-head a:hover,.text-link:hover{text-decoration:underline}.muted{color:var(--muted)}.small{font-size:12px}
.hero{position:relative;min-height:325px;background:radial-gradient(ellipse 390px 250px at 90% 35%,#29476b,#0000),linear-gradient(115deg,#102644,#0b1c34 65%,#1a2b43);border:1px solid #334864;border-radius:24px;overflow:hidden;padding:clamp(28px,4vw,46px);display:flex;align-items:center;isolation:isolate}.hero:before{content:"";position:absolute;inset:auto 0 0;height:7px;background:linear-gradient(90deg,var(--orange),#ef6120,#f9b25c)}.hero-copy{max-width:600px;position:relative;z-index:1}.hero h2{font-size:clamp(31px,4.4vw,57px);line-height:1.035;letter-spacing:-.045em;margin:15px 0 15px;max-width:650px}.hero h2 em{font-style:normal;color:var(--orange)}.hero p{max-width:470px;color:#d0dce8;margin:0 0 23px;font-size:14px}.hero-logo{position:absolute;width:310px;right:9px;top:4px;bottom:0;height:100%;object-fit:contain;opacity:.23;filter:drop-shadow(0 6px 22px #0005);z-index:0}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.button{display:inline-flex;gap:9px;align-items:center;justify-content:center;background:var(--orange);border:1px solid var(--orange);border-radius:11px;color:#0b1c2c;font-size:13px;font-weight:900;padding:11px 17px;text-align:center}.button .i{height:17px;width:17px}.button:hover{background:#ff9a52}.button-outline{background:transparent;color:white;border:1px solid #587088}.button-outline:hover{background:#1c3755}.button-ghost{background:#162f4a;color:var(--text);border-color:#34516e}.button-ghost:hover{background:#1e3b57}.button.small{padding:8px 12px;font-size:11px}.button.full{width:100%}.button:disabled{opacity:.45;cursor:not-allowed}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:17px}.stat{border:1px solid var(--line);background:var(--surface);padding:16px 20px;border-radius:var(--rad)}.stat b{font-size:27px;line-height:1;display:block}.stat span{font-size:12px;color:var(--muted);margin-top:6px;display:block}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{border:1px solid var(--line);border-radius:var(--rad);background:linear-gradient(155deg,#132b4a,#0d213b);padding:20px;position:relative;min-height:162px}.card:hover{border-color:#ff862d75;transform:translateY(-1px);transition:all .18s}.card .card-icon{display:grid;place-items:center;width:43px;height:43px;background:#f781291b;border-radius:13px;color:var(--orange2);margin-bottom:15px}.card-icon .i{width:22px;height:22px}.card h3{font-size:16px;line-height:1.2;margin:0 0 7px;letter-spacing:-.015em}.card p{font-size:12px;line-height:1.45;color:var(--muted);margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-foot{display:flex;justify-content:space-between;align-items:center;color:var(--orange2);font-size:11px;font-weight:800}.card-foot .i{width:16px;height:16px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:22px}.panel h3{margin:0 0 10px;font-size:18px}.split{display:grid;grid-template-columns:1.45fr 1fr;gap:15px}.focus-list{display:grid;gap:12px}.focus-item{display:flex;gap:11px;align-items:flex-start}.focus-item .number{display:grid;place-items:center;width:29px;height:29px;background:#f7812928;color:var(--orange2);border-radius:8px;font-weight:900;font-size:12px;flex:none}.focus-item p{margin:0;font-size:13px}.focus-item small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.library-tools{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.search{flex:1;min-width:220px;display:flex;align-items:center;gap:8px;border:1px solid #3d5470;background:#112842;border-radius:11px;padding:0 12px;color:var(--muted)}.search .i{width:18px;height:18px}.search input{color:white;border:0;background:transparent;padding:13px 0;outline:none;min-width:0;width:100%;font-size:13px}.search input::placeholder{color:#96a9bf}.filter-select{background:#102741;color:#fff;border:1px solid #39536e;border-radius:11px;padding:11px;min-width:180px}.chapter-header{display:flex;align-items:center;gap:17px;margin-bottom:15px}.chapter-header .card-icon{margin:0}.chapter-header h3{margin:0 0 3px}.lesson-row{display:flex;align-items:center;gap:14px;border:1px solid var(--line);background:var(--surface);padding:12px;border-radius:12px;margin-bottom:9px;cursor:pointer}.lesson-row:hover{border-color:#f781296b;background:#152c4a}.lesson-thumb{width:70px;height:78px;object-fit:cover;object-position:center 19%;border-radius:6px;background:#edf3f9;flex:none}.lesson-row .meta{flex:1;min-width:0}.lesson-row strong{font-size:13px;display:block}.lesson-row p{font-size:11px;margin:3px 0;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-row small{color:var(--orange2);font-size:10px}.lesson-row .i{width:16px;color:var(--orange2)}.empty{border:1px dashed #45627e;padding:45px 24px;text-align:center;color:var(--muted);border-radius:15px}
.detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.72fr);gap:21px;align-items:start}.detail .source-screenshot{position:sticky;top:90px;border:1px solid #465f7c;background:#fff;padding:9px;border-radius:12px}.source-screenshot img{display:block;width:100%;border-radius:6px;cursor:zoom-in}.detail .source-screenshot .button{margin-top:10px;width:100%}.detail .source-screenshot p{color:#607286;text-align:center;margin:7px 0;font-size:11px}.detail-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--rad);padding:21px;margin:0 0 14px}.detail-section h3{margin:0 0 14px;font-size:17px}.detail-section p{color:#d3e0ec;font-size:13px;line-height:1.75;margin:0 0 12px}.detail-section blockquote{border-left:3px solid var(--orange);margin:0 0 12px;padding-left:12px;color:#e8f1fa;font-size:13px}.note-list{margin:0;padding-left:19px;color:#d0dfeb;font-size:12px}.note-list li{margin:8px 0;line-height:1.5}.reference-links{display:flex;flex-wrap:wrap;gap:8px}.reference-links a{border:1px solid #3d5d76;padding:9px 12px;border-radius:10px;font-weight:700;font-size:11px;color:#dbe9f6}.reference-links a:hover{border-color:var(--orange);color:var(--orange2)}.detail-nav{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}.breadcrumb-link{border:0;background:transparent;color:var(--orange2);font-size:12px;font-weight:800;padding:0}
.game-head{background:linear-gradient(120deg,#122b4d,#192941);border:1px solid #375071;border-radius:var(--rad);padding:25px;margin-bottom:16px}.game-head h2{font-size:34px;margin:5px 0 6px}.game-head p{font-size:13px;color:var(--muted);margin:0}.top-priorities{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.priority{border:1px solid var(--line);background:var(--surface);padding:20px;border-radius:var(--rad)}.priority .round{background:#f7812928;color:var(--orange2);height:34px;width:34px;display:grid;place-items:center;border-radius:50%;font-weight:900;margin-bottom:16px}.priority p{margin:0;font-size:13px;line-height:1.55}.tagline{border-left:4px solid var(--orange);padding:18px 22px;background:#f7812913;border-radius:0 13px 13px 0;font-weight:900;letter-spacing:.025em;font-size:18px;margin:24px 0}.segmented{display:flex;gap:5px;background:#07182a;border:1px solid #304c65;padding:4px;border-radius:12px;width:fit-content;max-width:100%;flex-wrap:wrap}.segmented button{border:0;border-radius:9px;background:transparent;padding:9px 13px;color:#9fbed1;font-size:12px;font-weight:800}.segmented button.active{color:#fff;background:#1d3b59}.player-card{display:flex;align-items:flex-start;gap:13px;border:1px solid var(--line);border-radius:14px;padding:18px;background:#0d223b}.player-card .i{color:var(--orange2)}.player-card h3{font-size:15px;margin:0 0 8px}.player-card p{color:#d6e3ed;font-size:13px;line-height:1.6;margin:0}
.preview-alert{border:1px solid #88613d;border-radius:13px;padding:13px 15px;background:#472c174a;color:#ffc88e;font-size:12px;display:flex;gap:10px;align-items:start;margin-bottom:20px}.preview-alert .i{width:20px;height:20px}.callout{border:1px solid #49617c;padding:14px 16px;background:#102a44;border-radius:12px;color:#d1e2ef;font-size:12px}.coach-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.coach-tabs button{background:#102843;border:1px solid #39516b;border-radius:10px;padding:10px 14px;color:#c2d4e2;font-size:12px;font-weight:800}.coach-tabs button.active{background:#f7812925;border-color:var(--orange);color:var(--orange2)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.span2{grid-column:1/-1}.form-field label{font-size:11px;text-transform:uppercase;letter-spacing:.075em;color:var(--orange2);font-weight:900}.form-field input,.form-field textarea,.form-field select{background:#091d34;border:1px solid #3a526a;color:#f3f9ff;border-radius:9px;padding:10px 12px;outline:none;min-width:0}.form-field textarea{resize:vertical;min-height:75px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--orange)}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.practice-row{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:11px;background:#0c213a;margin:8px 0}.practice-row .practice-info{flex:1;min-width:0;font-size:12px}.practice-row .practice-info b{display:block}.practice-row small{color:var(--muted)}.practice-row input{width:65px;border:1px solid #516d87;border-radius:7px;background:#06192a;color:white;padding:7px;font-size:12px}.icon-btn{display:grid;place-items:center;background:#17304c;border:1px solid #34516d;border-radius:8px;height:33px;width:34px;color:white}.icon-btn:hover{border-color:var(--orange)}.icon-btn .i{width:16px;height:16px}.coach-print{display:none}
.site-footer{text-align:center;color:#7d93ab;font-size:11px;border-top:1px solid #1d3450;margin-top:60px;padding:24px 0}.mobile-nav{display:none}.image-dialog{border:1px solid #4e6985;border-radius:14px;padding:0;background:#08172a;color:white;width:min(94vw,920px);max-height:92vh}.image-dialog::backdrop{background:#020810dd}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;gap:15px;border-bottom:1px solid var(--line)}.lightbox-scroll{overflow:auto;max-height:calc(92vh - 63px);text-align:center;padding:10px;background:#35445c}.lightbox-scroll img{width:auto;max-width:none;min-width:650px;max-height:none;height:auto}.toast{position:fixed;bottom:90px;left:50%;transform:translate(-50%,20px);background:#203b58;color:white;border:1px solid #ffb16c;padding:12px 22px;border-radius:12px;opacity:0;pointer-events:none;z-index:100;box-shadow:var(--shadow);transition:.2s;font-size:12px;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;color:#b4c7d9}.loading img{width:95px}
@media(max-width:1200px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-logo{width:255px}}
@media(max-width:960px){.sidebar{width:210px}.main{margin-left:210px}.topbar{padding:0 22px}.container{padding:26px 22px 96px}.split{grid-template-columns:1fr}.hero-logo{opacity:.15}.top-priorities{grid-template-columns:1fr}}
@media(max-width:740px){.sidebar{display:none}.main{margin-left:0}.topbar{height:59px;padding:0 16px}.topbar .pill{display:none}.container{padding:20px 14px 105px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:73px;z-index:40;display:flex;justify-content:space-around;align-items:center;background:#0a1b30ef;backdrop-filter:blur(18px);border-top:1px solid #3b536d;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;color:#a8bed2;font-size:10px;font-weight:750;min-width:70px}.mobile-nav a.active{color:var(--orange2)}.mobile-nav .i{width:22px;height:22px}.hero{min-height:360px;padding:26px 22px}.hero h2{font-size:38px;max-width:470px}.hero-logo{width:250px;right:-65px;opacity:.17}.stats{gap:8px}.stat{padding:12px}.stat b{font-size:24px}.stat span{font-size:10px}.cards{gap:10px}.card{padding:16px;min-height:151px}.card h3{font-size:14px}.card p{font-size:11px}.detail{grid-template-columns:1fr}.detail .source-screenshot{position:static;order:-1}.form-grid{grid-template-columns:1fr}.form-field.span2{grid-column:auto}.game-head h2{font-size:29px}.priority{padding:16px}.page-title{font-size:31px}.site-footer{margin-top:35px}}
@media(max-width:400px){.cards{grid-template-columns:1fr 1fr}.stat b{font-size:21px}.stat{padding:10px}.topbar .role-button{padding:7px}.breadcrumbs{font-size:11px}.hero h2{font-size:34px}.hero-actions .button{padding:10px 12px;font-size:11px}}
@media print{body{background:#fff;color:#111}.sidebar,.topbar,.mobile-nav,.form-actions,.coach-tabs,.site-footer,.preview-alert,.section-head,.button{display:none!important}.main{margin:0}.container{padding:0}.panel,.practice-row{background:white!important;border:1px solid #999!important;color:black!important}.page-title,.practice-info,.panel *{color:black!important}.coach-print{display:block}.app-shell{background:white}.form-field textarea,.form-field input{border:1px solid #ddd!important;background:white!important;color:black!important}}
/* Prevent native select intrinsic sizes from stretching narrow mobile layouts. */
.panel,.split,.form-grid,.form-field{min-width:0}
.form-grid select,.form-field select{width:100%;max-width:100%}
@media(max-width:960px){.split{grid-template-columns:minmax(0,1fr)}}
@media(max-width:740px){.practice-row{min-width:0}.practice-row .practice-info{overflow:hidden}.practice-row .practice-info b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel{max-width:100%}}
.diagram-frame{border-bottom:1px solid #e0e6eb;padding-bottom:13px}.frame-buttons{display:flex;gap:6px;margin-bottom:10px}.frame-buttons button{background:#eaf0f6;color:#264361;border:1px solid #c8d4df;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:800;flex:1}.frame-buttons button.active{background:#0b2346;border-color:#0b2346;color:#fff}.diagram-frame img{width:100%;border:1px solid #d0dae3;max-height:250px;object-fit:contain;background:#fff}.source-screenshot>.eyebrow{color:#526c86}
@media print{#practiceForm{display:none!important}.split{display:block}.split>.panel:first-child{display:none!important}.split>.panel:last-child{border:0!important;box-shadow:none!important}.page-sub{color:#333!important}}

/* V0.2: unified team identity shown on the Player Dashboard hero. */
.mission-slogan{font-weight:900;font-size:clamp(12px,1.18vw,15px);line-height:1.5;letter-spacing:.025em;color:#fff;border-left:4px solid var(--orange);padding:9px 13px;margin:-5px 0 18px;background:rgba(0,0,0,.2);max-width:535px;border-radius:0 8px 8px 0}.mission-slogan span{color:var(--orange2)}

/* V0.4 — coach-directed dashboard order and game lineups. */
.dashboard-cards{margin-bottom:24px}
.lineup-section{margin-top:27px}.lineup-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:15px;flex-wrap:wrap}.lineup-title{margin:3px 0 0;font-size:24px}.lineup-warning{font-size:11px;color:#ffcc94;background:#f7812918;border:1px solid #8b5a37;border-radius:20px;padding:5px 11px;font-weight:750}
.lineup-stack,.lineup-editor-stack{display:grid;grid-template-columns:1fr;gap:15px;min-width:0}.lineup-panel,.editor-section{background:linear-gradient(180deg,#102944 0%,#0d2238 100%);border:1px solid var(--line);border-top:4px solid var(--orange);padding:18px;border-radius:var(--rad);min-width:0;box-shadow:0 10px 24px rgba(0,0,0,.12)}.accent-panel{position:relative}.panel-head{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.panel-kicker{display:inline-grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:#f7812922;border:1px solid #b96f33;color:var(--orange2);font-size:12px;font-weight:900;letter-spacing:.04em;padding:0 9px}.lineup-panel h3,.editor-section h4{margin:0;font-size:16px}.lineup-unit,.editor-unit{background:linear-gradient(180deg,#0d2138 0%,#091829 100%);border:1px solid #2b4866;border-left:4px solid #f7812999;border-radius:12px;padding:12px;margin:10px 0}.unit-label{font-size:10px;font-weight:900;letter-spacing:.11em;color:var(--orange2);margin-bottom:8px}.forward-players,.defense-players{display:grid;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr))}.defense-players{grid-template-columns:repeat(2,minmax(0,1fr))}.forward-players>div,.defense-players>div,.goalie-strip>div{min-width:0;overflow-wrap:anywhere;background:#0f2742;border:1px solid #2d4f71;border-radius:10px;padding:10px 12px}.forward-players small,.defense-players small,.goalie-strip small{color:#90b2ca;font-size:9px;letter-spacing:.035em;display:block;font-weight:800}.forward-players strong,.defense-players strong,.goalie-strip strong{display:block;margin-top:5px;font-size:13px;color:#fff}.unassigned{color:#7f9bb3;font-size:11px;font-weight:500}.goalie-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lineup-goalies .goalie-strip{margin-top:2px}
.lineup-editor{border:1px solid #375673;background:linear-gradient(180deg,#102944 0%,#0b1e33 100%);padding:16px;border-radius:14px;margin-top:22px}.editor-block-head h4{margin:0 0 5px;font-size:16px}.editor-block-head p{font-size:12px;color:var(--muted);margin:0 0 15px}.lineup-editor-stack>div{min-width:0}.lineup-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.lineup-inputs.forward-inputs{grid-template-columns:repeat(3,minmax(0,1fr))}.goalie-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.lineup-inputs .form-field input{width:100%;font-size:12px;padding:10px 8px}.lineup-inputs .form-field label{font-size:9px}
.sort-list{display:grid;gap:8px}.sort-row{display:flex;align-items:center;gap:10px;padding:12px 10px;border:1px solid #304f6d;border-radius:12px;background:#0a2038;transition:background .15s}.sort-row:hover{border-color:#f7812965}.drag-grip{color:var(--orange2);cursor:grab}.sort-index{font-weight:900;color:#aac3d8;font-size:12px;min-width:20px}.sort-title{flex:1;min-width:0}.sort-title strong{display:block;font-size:13px}.sort-title small{display:block;font-size:11px;color:var(--muted)}.sort-buttons{display:flex;gap:5px}.sort-buttons .icon-btn:disabled{opacity:.26;cursor:not-allowed}.sort-row.is-dragging{opacity:.4}.sort-row.drop-target{background:#213c56;border-color:var(--orange)}.preview-order{display:grid;gap:5px}.preview-order>div{font-size:12px;padding:7px 8px;border-bottom:1px solid #2b4057}.preview-order span{color:var(--orange2);font-weight:900;margin-right:10px}

@media(max-width:740px){.lineup-editor{padding:12px}.lineup-panel,.editor-section{padding:15px}.lineup-inputs .form-field input{font-size:12px}.sort-row{gap:7px}.drag-grip{display:none}.goalie-strip{grid-template-columns:1fr}}
@media(max-width:420px){.lineup-inputs.forward-inputs{grid-template-columns:1fr 1fr}.lineup-inputs.forward-inputs .form-field:nth-child(3){grid-column:span 2}.forward-players strong,.defense-players strong,.goalie-strip strong{font-size:12px}.sort-title strong{font-size:12px}.forward-players,.defense-players,.goalie-inputs{grid-template-columns:1fr}.goalie-strip{grid-template-columns:1fr}}
@media print{.lineup-panel,.lineup-unit,.goalie-strip>div,.editor-section,.editor-unit{background:#fff!important;color:#111!important;border-color:#bbb}.lineup-panel h3,.lineup-panel strong,.editor-section h4{color:#111!important}.panel-kicker{background:#fff!important}}

/* V0.5: secure coaching and live-publishing controls. */
.secure-login{max-width:660px;margin-top:22px}
.secure-login input{width:100%}
.live-status{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:18px 20px;margin:16px 0 19px;border:1px solid #5c7a9c;background:linear-gradient(110deg,#17375b,#102640);border-left:5px solid var(--orange);border-radius:15px}
.live-status b{display:block;font-size:16px;color:#fff}
.live-status small{display:block;color:#bed4e9;font-size:12px;margin-top:4px}
.live-status .form-actions{margin:0;align-items:center}
.staff-list{display:grid;gap:8px;margin-top:18px}
.staff-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:12px;border:1px solid var(--line);background:#0a1c32;border-radius:10px}
.staff-row b{flex:1;min-width:100px;word-break:break-word}
.staff-row small{color:var(--orange2);font-weight:800}
.staff-password{width:170px;max-width:100%;background:#0b1e34;border:1px solid #456484;color:#fff;border-radius:8px;padding:8px}
@media(max-width:740px){.live-status{align-items:stretch}.live-status .form-actions{display:grid;width:100%}.live-status .button{width:100%}.staff-password{flex:1 1 160px}}
