@charset "UTF-8";
:root{font-family:Tahoma,"Geeza Pro",Arial,sans-serif;color:#17382d;background:#f6f8f7;font-synthesis:none;--green:#087c46;--green-dark:#075333;--muted:#77867f;--border:#e4ebe7;--red:#e23d4e;--blue:#2374df;--yellow:#ae7b10;--shadow:0 6px 24px #193d2b06}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit}button{touch-action:manipulation}svg{width:22px;height:22px;vertical-align:middle;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #50b987;outline-offset:3px}button{border:0}input,select,textarea{font-size:16px}input[type=checkbox]{width:22px;height:22px;accent-color:var(--green);cursor:pointer}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.55;letter-spacing:-.7px}h2{font-size:20px;line-height:1.6}h3{font-size:17px;line-height:1.7}p{line-height:1.9}small{line-height:1.7}bdi{unicode-bidi:isolate}.skip{position:fixed;top:-80px;right:20px;padding:12px;background:white;z-index:100}.skip:focus{top:10px}
.app-header{background:#ffffffed;border-bottom:1px solid var(--border);padding:max(14px,env(safe-area-inset-top)) 24px 14px;position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}.header-inner{max-width:1080px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}.brand{display:flex;gap:11px;text-decoration:none;align-items:center;font-size:27px;font-weight:800;letter-spacing:-1px}.brand-icon{width:44px;height:48px;background:var(--green);border-radius:13px;display:grid;place-items:center;color:white}.brand-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.5}.brand-sub{display:block;font-size:10px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:1px}.header-actions{display:flex;align-items:center;gap:12px}.connection-status{font-size:11px;color:var(--green);background:#edf8f0;border:1px solid #e0f0e6;border-radius:30px;padding:8px 10px;display:flex;align-items:center;gap:6px}.connection-status i,.live-dot{width:6px;height:6px;border-radius:100%;background:#11a75b}.connection-status.pending{color:#8b6a17;background:#fffaeb;border-color:#f2e8c8}.connection-status.pending i{background:#c89a29}.icon-button{width:42px;height:42px;border:1px solid var(--border);border-radius:12px;display:inline-grid;place-items:center;background:white;color:#6d7c74;flex-shrink:0}.icon-button:hover{background:#f0f5f2;color:var(--green)}
.app-layout{max-width:1080px;margin:0 auto;padding:26px 24px 12px}.main-nav{display:flex;gap:6px;padding:5px;background:#eaf0ec;border-radius:14px;max-width:450px;margin-bottom:32px}.nav-item{display:flex;justify-content:center;align-items:center;gap:8px;flex:1;padding:10px 12px;min-height:44px;border-radius:10px;background:none;color:#78867e;font-size:13px;white-space:nowrap}.nav-item svg{width:18px;height:18px}.nav-item.active{background:white;box-shadow:0 2px 7px #173a2910;color:var(--green);font-weight:bold}.nav-count{display:inline-grid;place-items:center;background:#ecf5ef;border-radius:5px;padding:1px 5px;font-size:10px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}.eyebrow{color:var(--green);font-size:11px;font-weight:bold;letter-spacing:1px;display:block;margin-bottom:8px}.subtitle{color:var(--muted);font-size:13px;line-height:1.9;margin-top:4px}.heading-ball{width:64px;height:64px;border:1px solid #d9e9df;background:white;display:grid;place-items:center;border-radius:19px;transform:rotate(-9deg);font-size:30px;flex-shrink:0;box-shadow:var(--shadow)}.two-column{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:24px;align-items:start}.panel{border:1px solid var(--border);background:white;border-radius:19px;padding:24px;box-shadow:var(--shadow)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.panel-title{font-size:16px;font-weight:bold;display:flex;align-items:center;gap:8px}.panel-title svg{color:var(--green);width:20px;height:20px}.pill{font-size:10px;border:1px solid var(--border);border-radius:7px;padding:5px 8px;color:var(--muted);white-space:nowrap}.muted{color:var(--muted)}.field-label{font-size:12px;font-weight:bold;margin-bottom:9px;display:block}.text-input{width:100%;background:#fafcfb;border:1px solid #dae4dd;border-radius:10px;min-height:48px;padding:12px 14px;color:#17382d}.text-input::placeholder{color:#9eaaa3}.level-picker{display:flex;gap:8px;margin:10px 0 14px}.level-picker label{flex:1;position:relative}.level-picker input{position:absolute;opacity:0;width:1px;height:1px}.level-picker span{padding:10px 6px;min-height:42px;display:flex;gap:6px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:9px;color:#809087;font-size:12px;background:#fafcfb}.level-picker input:checked+span{color:var(--green);background:#ecf7f0;border-color:#93ccb0;font-weight:bold}.level-picker input:focus-visible+span{outline:3px solid #50b987}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:13px 18px;border-radius:11px;line-height:1.4;font-weight:bold;font-size:13px;text-decoration:none;border:1px solid transparent}.btn svg{width:19px;height:19px}.btn-primary{color:white;background:var(--green);box-shadow:0 3px 4px #05713f0c}.btn-primary:hover{background:#05683a}.btn-secondary{background:#f2f6f3;border-color:#dce7df;color:#356149}.btn-secondary:hover{background:#e7f0e9}.btn-outline{background:white;border-color:var(--border);color:#5c7165}.btn-danger{background:#fff1f2;color:#be3142;border-color:#f5d5d9}.full{width:100%}.text-button{background:none;color:var(--green);font-size:12px;padding:8px 3px;min-height:36px;text-decoration:none}.button-row{display:flex;gap:10px;flex-wrap:wrap}.button-row .btn{flex:1}.divider{height:1px;background:var(--border);margin:22px 0}.roster-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.roster-toolbar h2{font-size:15px}.player-list{list-style:none;padding:0;margin:0}.player-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf1ee;padding:13px 0}.player-row:last-child{border:0}.player-check{display:flex;align-items:center;gap:11px;flex:1;min-width:0;cursor:pointer;min-height:36px}.player-name{font-size:13px;font-weight:bold;overflow-wrap:anywhere;flex:1}.avatar{display:inline-grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:10px;background:#f0f4f1;color:#62806b;font-size:14px;font-weight:bold}.player-level{font-size:10px;border:0;padding:7px 5px;color:#5f7366;background:#f1f5f2;border-radius:7px;max-width:82px;cursor:pointer}.player-level[data-level="2"]{background:#eaf3ff;color:#3469a2}.player-level[data-level="3"]{background:#fff7dd;color:#987019}.delete-player{width:30px;min-height:36px;border:0;background:none;color:#a3afa7}.delete-player svg{width:16px;height:16px}.delete-player:hover{color:#d33d4f}.empty-state{padding:25px 0 15px;text-align:center;color:#829087}.empty-icon{display:grid;place-items:center;background:#f0f6f2;color:#65a47f;width:56px;height:56px;border-radius:17px;margin:0 auto 12px}.empty-icon svg{width:28px;height:28px}.empty-state p{font-size:12px;margin-bottom:10px}.setup-panel{background:#fff;position:sticky;top:107px}.setup-count{font-size:52px;line-height:1.2;font-weight:800;letter-spacing:-2px}.setup-count span{font-size:13px;color:var(--muted);letter-spacing:0;font-weight:400;margin-right:7px}.selection-line{margin:18px 0 23px}.count-progress{display:flex;gap:4px;margin-top:13px}.count-progress span{flex:1;height:5px;border-radius:5px;background:#eaf0ec}.count-progress span.filled{background:var(--green)}.format-box{border:1px solid #dcecdf;background:#f4faf6;border-radius:12px;padding:15px;margin-bottom:18px}.format-box h3{font-size:14px;color:var(--green);margin-bottom:5px}.format-box p{color:#718278;font-size:11px}.format-facts{display:flex;gap:12px;margin-top:12px;color:#476a54;font-size:11px}.format-facts span{display:flex;align-items:center;gap:5px}.format-facts svg{width:15px;height:15px}.hint{font-size:11px;color:#819086;line-height:1.9;margin-top:12px;text-align:center}.inline-note{background:#fff8e7;color:#93762e;padding:12px;border-radius:10px;font-size:11px;line-height:1.9;margin-bottom:16px}.feature-note{display:flex;gap:11px;align-items:flex-start;margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.feature-note svg{color:var(--green);width:19px;height:19px;margin-top:2px}.feature-note strong{display:block;font-size:12px;margin-bottom:5px}.feature-note p{font-size:11px;color:var(--muted)}
.teams-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.teams-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.team-card{--team:#e23d4e;--tint:#fff5f5;--line:#f3d8dc;border:1px solid var(--line);border-radius:17px;overflow:hidden;background:white}.team-card.blue,.blue{--team:#2374df;--tint:#f1f7ff;--line:#d2e3fb}.team-card.yellow,.yellow{--team:#ae7b10;--tint:#fffaf0;--line:#f0e2b9}.red{--team:#e23d4e;--tint:#fff5f5;--line:#f3d8dc}.team-header{background:var(--tint);padding:18px;display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--line);color:var(--team)}.team-title{display:flex;gap:9px;align-items:center;font-weight:bold}.shirt{width:37px;height:37px;background:var(--team);color:white;border-radius:10px;display:inline-grid;place-items:center;flex-shrink:0}.shirt svg{width:25px;height:25px}.team-header .pill{border-color:var(--line);color:var(--team);background:#ffffff99}.team-players{list-style:none;margin:0;padding:12px 18px}.team-players li{padding:10px 0;display:flex;align-items:center;gap:9px;border-bottom:1px solid #eff2ef;font-size:13px;overflow-wrap:anywhere}.team-players li:last-child{border:0}.player-number{font-size:10px;color:#9ba69f;width:18px}.level-dots{margin-right:auto;display:flex;gap:3px;flex-shrink:0;direction:ltr}.level-dots i{width:4px;height:8px;border-radius:2px;background:#e6ece8}.level-dots i.on{background:var(--team)}.reserve-label{font-size:9px;background:var(--tint);color:var(--team);border-radius:4px;padding:4px 6px;margin-right:auto;white-space:nowrap}.balance-note{display:flex;align-items:center;justify-content:center;gap:7px;margin:20px 0;color:#7d8f82;font-size:11px}.balance-note svg{color:var(--green);width:16px;height:16px}.setup-actions{max-width:480px;margin:22px auto 0;display:flex;gap:10px}.setup-actions .btn:first-child{flex:1}.draw-stage{max-width:650px;margin:auto}.versus{display:grid;grid-template-columns:1fr 42px 1fr;align-items:center;gap:10px;margin-bottom:20px}.versus-team{text-align:center;padding:26px 12px;border-radius:17px;border:1px solid var(--line);background:var(--tint);color:var(--team)}.versus-team .shirt{width:56px;height:56px;border-radius:16px;margin-bottom:10px}.versus-team .shirt svg{width:35px;height:35px}.versus-team h2{font-size:20px}.versus-team p{font-size:11px;color:#728478;margin-top:7px}.versus-mark{font-size:11px;direction:ltr;color:#8a998f;text-align:center;font-weight:bold}.waiting-team{display:flex;align-items:center;gap:12px;padding:15px 18px;background:var(--tint);border:1px solid var(--line);border-radius:12px;margin-bottom:20px;color:var(--team);font-size:13px}.waiting-team>span:last-child{margin-right:auto;font-size:11px;display:flex;align-items:center;gap:6px}.waiting-team svg{width:17px;height:17px}.waiting-team .shirt{width:30px;height:30px;border-radius:7px}.waiting-team .shirt svg{width:21px;height:21px}.ready-card{border-radius:16px;background:white;border:1px solid var(--border);padding:22px}.ready-duration{text-align:center;margin:0 0 20px}.ready-duration strong{font-size:33px;display:block;direction:ltr;margin-top:5px}.ready-duration small{color:var(--muted)}.last-result{background:#eef8f1;border:1px solid #d8eddf;border-radius:12px;padding:14px 16px;font-size:12px;margin-bottom:20px;color:var(--green);line-height:1.8}.live-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr);gap:24px;align-items:start}.match-panel{padding:24px}.match-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.live-label{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:11px;background:#edf8f0;padding:6px 10px;border-radius:25px}.live-label.paused{color:#9d742a;background:#fff8e4}.live-label.paused .live-dot{background:#c99c42}.match-label{font-size:11px;color:var(--muted)}.clock-wrap{text-align:center;margin:5px 0 17px}.clock-label{font-size:11px;color:#8a9a8f;margin-bottom:4px}.big-clock{font-family:Arial,sans-serif;font-size:clamp(60px,8vw,87px);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-3px;line-height:1.2;direction:ltr;color:#113e2d}.big-clock.urgent{color:#d53d4d}.paused-caption{font-size:11px;color:#a77b24;margin-top:7px}.scoreboard{display:grid;grid-template-columns:1fr 26px 1fr;gap:10px;align-items:center}.score-team{color:var(--team);background:var(--tint);border:1px solid var(--line);border-radius:14px;text-align:center;padding:14px 6px}.score-team strong{display:block;font-size:14px}.score-number{font-family:Arial,sans-serif;font-size:62px;line-height:1.15;font-weight:800;direction:ltr;display:block;margin:6px 0 0;font-variant-numeric:tabular-nums}.score-separator{font-size:25px;color:#a6b5ac;text-align:center}.goal-buttons{display:grid;grid-template-columns:1fr 26px 1fr;gap:10px;margin-top:12px}.goal-buttons .goal-button:last-child{grid-column:3}.goal-button{background:var(--team);color:white;border-radius:11px;min-height:54px;font-size:13px;font-weight:bold;padding:12px 6px;display:flex;align-items:center;justify-content:center;gap:5px}.goal-button:hover{filter:brightness(.94)}.goal-button svg{width:17px;height:17px}.undo-button{display:flex;align-items:center;justify-content:center;gap:6px;background:none;color:#89968e;font-size:11px;padding:11px 4px;min-height:40px;margin:auto}.undo-button svg{width:15px;height:15px}.match-controls{display:flex;gap:9px;margin-top:9px}.match-controls .btn{flex:1;min-height:45px;padding:11px 10px}.match-controls .btn-outline{font-size:11px}.match-side .panel{padding:20px;margin-bottom:18px}.match-side .waiting-team{margin-bottom:0}.side-label{font-size:11px;color:var(--muted);margin-bottom:14px}.on-pitch-team+.on-pitch-team{border-top:1px solid var(--border);margin-top:15px;padding-top:15px}.on-pitch-team h3{font-size:13px;display:flex;gap:7px;align-items:center;color:var(--team)}.on-pitch-team h3 i{width:8px;height:8px;background:var(--team);border-radius:3px}.name-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.name-chips span{background:#f5f8f6;border:1px solid #eaf0ec;border-radius:6px;padding:6px 9px;font-size:11px;max-width:100%;overflow-wrap:anywhere}.bench-line{font-size:11px;color:var(--team);margin-top:9px}.sub-timer{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;background:#f0f8f3;border:1px solid #dcefe3;border-radius:10px;padding:12px;font-size:11px;color:var(--green)}.sub-timer strong{font-family:Arial,sans-serif;font-size:25px;direction:ltr;line-height:1;font-variant-numeric:tabular-nums}.sub-card{border:1px solid var(--line);background:var(--tint);padding:13px;border-radius:11px;margin-bottom:10px}.sub-team{font-size:11px;color:var(--team);margin-bottom:8px;font-weight:bold}.sub-swap{display:grid;grid-template-columns:1fr 24px 1fr;align-items:center;gap:4px;font-size:12px}.sub-swap>span{overflow-wrap:anywhere}.sub-swap small{font-size:9px;display:block;margin-bottom:4px;color:#8b9a90}.sub-swap .in small{color:var(--green)}.sub-swap .out small{color:var(--red)}.sub-swap svg{color:#71a17e;width:18px;height:18px}.sub-alert{background:#fff9e9;border:1px solid #eedc9c;border-radius:13px;padding:17px;margin-bottom:20px}.sub-alert h3{color:#a57911;font-size:14px;margin-bottom:12px}.sub-alert p{font-size:11px;color:#897238}.sub-alert .sub-card{background:white}.sub-alert .btn{min-height:42px;margin-top:7px}.finish-banner{background:#edf8f0;border:1px solid #d0e8d8;border-radius:12px;text-align:center;padding:15px;margin:18px 0 0}.finish-banner p{font-size:12px;color:#658470}.finish-banner h3{color:var(--green);margin-bottom:5px}.finish-banner .btn{margin-top:12px}.event-list{list-style:none;margin:0;padding:0}.event-list li{display:flex;align-items:center;gap:8px;font-size:11px;padding:10px 0;border-bottom:1px solid var(--border)}.event-list li:last-child{border:0}.event-list time{margin-right:auto;font-family:Arial,sans-serif;direction:ltr;color:#8b9b90;font-size:11px}.event-dot{width:7px;height:7px;border-radius:50%;background:var(--team)}.event-empty{font-size:11px;text-align:center;color:#98a69c;padding:10px 0}.penalty-layout{max-width:650px;margin:auto}.penalty-head{text-align:center;margin-bottom:22px}.penalty-head h2{margin-bottom:7px}.penalty-head p{font-size:12px;color:var(--muted)}.penalty-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.penalty-team{border:1px solid var(--line);background:var(--tint);border-radius:15px;padding:20px 13px;text-align:center;color:var(--team)}.penalty-team .shirt{margin-bottom:10px}.penalty-options{display:grid;gap:8px;margin-top:18px}.penalty-option{border:1px solid #dce6df;color:#6b7e71;border-radius:9px;padding:12px 8px;background:white;min-height:46px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px}.penalty-option.selected{color:var(--green);background:#eaf8ef;border:2px solid #68b983;padding:11px 7px;font-weight:bold}.penalty-option.selected.miss{border-color:#df7b85;color:#bd3949;background:#fff0f0}.penalty-team h3{font-size:15px}.penalty-action{margin-top:20px}.lottery-result{padding:20px;text-align:center;background:#eaf7ee;border-radius:13px;color:var(--green);margin-bottom:15px}.lottery-result h3{font-size:21px;margin-top:9px}.lottery-result p{font-size:12px;margin-top:6px}.summary-card{max-width:620px;margin:auto}.summary-hero{text-align:center;padding:5px 0 24px}.summary-icon{font-size:34px;margin-bottom:14px}.summary-hero h2{font-size:25px}.summary-hero p{font-size:12px;color:var(--muted);margin-top:6px}.summary-score{display:flex;align-items:center;justify-content:center;gap:18px;margin:20px 0}.summary-score strong{font-size:46px;font-family:Arial,sans-serif;direction:ltr}.summary-score span{font-size:13px}.empty-session{padding:65px 20px;text-align:center}.empty-session h2{font-size:22px;margin-bottom:8px}.empty-session p{color:var(--muted);font-size:13px;margin-bottom:22px}.history-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.history-card{padding:20px;border:1px solid var(--border);border-radius:15px;background:white}.history-meta{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;margin-bottom:14px}.history-score{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.history-score strong{font:700 26px Arial,sans-serif;direction:ltr}.history-result{font-size:11px;color:var(--green);border-top:1px solid var(--border);padding-top:12px;margin-top:14px}.saved-message{color:var(--green);font-size:10px;display:flex;align-items:center;gap:5px}.saved-message svg{width:14px;height:14px}.app-footer{padding:35px 0 12px;display:flex;align-items:center;justify-content:center;gap:7px;color:#87988a;font-size:11px;line-height:1.8;flex-wrap:wrap}.app-footer>span:last-child{font-size:9px;color:#9daaa0;flex-basis:100%;text-align:center}.tiny-pitch{color:#6ca17a}.toast{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%,20px);background:#183f2e;color:white;border-radius:12px;padding:13px 21px;font-size:12px;line-height:1.8;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:50;max-width:calc(100vw - 32px);width:max-content;box-shadow:0 5px 30px #0002}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--border);border-radius:20px;padding:26px;max-width:480px;width:calc(100% - 32px);color:#17382d;background:white;max-height:85dvh;overflow-y:auto;box-shadow:0 30px 100px #143b2b25}dialog::backdrop{background:#102a2090;backdrop-filter:blur(4px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.dialog-header h2{font-size:20px}.dialog-copy{font-size:12px;color:#728578;margin-bottom:18px;line-height:2}.help-section{border-top:1px solid var(--border);padding-top:17px;margin-top:17px}.help-section h3{font-size:13px;margin-bottom:9px}.help-section p,.help-section li{font-size:11px;color:#75877a;line-height:2}.help-section ol{padding-right:20px;margin:7px 0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 0;font-size:12px}.settings-row small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.install-note{background:#f1f8f3;padding:12px;border-radius:10px;font-size:11px;color:#597a63;line-height:1.9}.error-text{color:#b63644;background:#fff2f3;border:1px solid #f2d9dd;border-radius:9px;padding:10px 12px;font-size:11px;line-height:1.8;margin-bottom:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.backup-actions{display:flex;gap:10px}.backup-actions .btn{font-size:11px;flex:1;padding:10px}.storage-error{border:1px solid #edcf9d;background:#fff7e6;border-radius:12px;padding:14px 18px;color:#94631e;font-size:12px;line-height:1.8;margin-bottom:18px}.reduced-width{max-width:650px;margin:auto}
.mobile-session-bar{display:none}
.keeper-line{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--team,var(--green));font-size:11px;background:var(--tint,#eff8f2);border:1px solid var(--line,#dcecdf);border-radius:8px;padding:8px 10px;margin-top:12px;line-height:1.7;overflow-wrap:anywhere}.keeper-line strong{margin-right:4px}.keeper-rule{font-size:11px;color:#688172;text-align:center;line-height:1.9;margin:0 0 17px}.keeper-change{display:flex;align-items:flex-start;gap:8px;padding-top:12px;margin-top:12px;border-top:1px solid var(--line,#e0ebe3);font-size:12px;line-height:1.6}.keeper-change>span:first-child{font-size:18px}.keeper-change small{display:block;color:#7f9285;font-size:10px;margin-bottom:4px}.keeper-change strong{display:block;color:var(--green);margin-bottom:5px}.team-keeper-footer{padding:9px 18px;border-top:1px solid var(--line);background:var(--tint);display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:9px;color:var(--team)}.team-keeper-footer .text-button{font-size:10px;min-height:34px;color:var(--team)}.keeper-badge{background:#edf8f1;color:#087c46}.name-chips .is-keeper{border-color:#b8d8c4;background:#edf8f2;color:var(--green);font-weight:bold}.name-chips .is-keeper i{font-style:normal;margin-left:4px}.keeper-order-button{font-size:10px;min-height:32px;padding-bottom:0}.on-pitch-team .keeper-line{justify-content:flex-start;font-size:10px;padding:7px;line-height:1.8}.keeper-schedule{list-style:none;padding:0;margin:0}.keeper-schedule li{border:1px solid var(--border);border-radius:10px;padding:11px 12px;display:grid;grid-template-columns:auto 1fr;gap:6px 13px;margin-bottom:8px;font-size:11px;line-height:1.8}.keeper-schedule li>span{color:var(--muted);font-size:10px}.keeper-schedule li>strong{text-align:left;overflow-wrap:anywhere}.keeper-schedule li>small{grid-column:1/-1;color:#829387;font-size:10px}.keeper-schedule li.current{background:#f0f9f3;border-color:#9bceb0}.level-picker{gap:6px}.level-picker span{font-size:11px;padding:11px 4px;white-space:nowrap}.player-level[data-level="3"]{background:#eaf5ed;color:#427650}.player-level[data-level="4"]{background:#fff7dd;color:#987019}
@media(min-width:1100px){.app-layout{padding-top:30px}.main-nav{margin-bottom:37px}h1{font-size:33px}}
@media(max-width:760px){.app-header{padding-right:18px;padding-left:18px}.app-layout{padding:20px 18px 8px}.main-nav{max-width:none;margin-bottom:26px}.two-column,.live-layout{grid-template-columns:1fr}.setup-panel{position:static}.two-column{gap:18px}.heading-ball{width:52px;height:52px;border-radius:15px;font-size:26px}h1{font-size:26px}.page-heading{margin-bottom:22px}.panel{padding:20px}.teams-grid,.teams-grid.two{grid-template-columns:1fr}.team-players{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.team-players li{font-size:12px;min-width:0}.team-header{padding:14px 18px}.team-card{border-radius:14px}.team-players li:nth-last-child(2){border-bottom:0}.match-side{display:grid;grid-template-columns:1fr 1fr;gap:16px}.match-side .panel{margin-bottom:0;min-width:0}.match-side>.waiting-team,.match-side>.substitutions-panel{grid-column:1/-1}.match-side .lineup-panel{grid-column:1/-1}.lineup-panel>div{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lineup-panel .on-pitch-team+.on-pitch-team{border-top:0;border-right:1px solid var(--border);margin:0;padding:0 16px 0 0}.match-side>.event-panel{grid-column:1/-1}.substitutions-panel>.sub-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.substitutions-panel .sub-card{margin-bottom:0}.big-clock{font-size:78px}.goal-button{min-height:57px}.match-controls .btn{min-height:48px}.history-grid{grid-template-columns:1fr}.subtitle{font-size:12px}.sub-alert .sub-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sub-alert .sub-card{padding:10px}.app-footer{padding-top:28px}.setup-actions{max-width:none}}
@media(max-width:380px){.app-layout{padding-right:13px;padding-left:13px}.app-header{padding-right:14px;padding-left:14px}.brand{font-size:24px}.brand-icon{width:39px;height:43px}.connection-status{font-size:9px;padding:7px}.header-actions{gap:7px}.icon-button{width:37px;height:39px}.panel,.match-panel{padding:17px}.nav-item{padding:10px 7px;font-size:12px;gap:6px}.nav-item svg{width:16px;height:16px}.player-row{gap:7px}.player-check{gap:7px}.avatar{width:29px;height:31px;font-size:12px}.player-level{max-width:69px;padding:7px 3px}.player-name{font-size:12px}.delete-player{width:24px}.score-number{font-size:53px}.big-clock{font-size:67px}.goal-button{font-size:11px;gap:3px}.scoreboard,.goal-buttons{grid-template-columns:1fr 18px 1fr;gap:7px}.sub-swap{font-size:11px}.substitutions-panel>.sub-cards,.sub-alert .sub-cards{grid-template-columns:1fr}.versus{grid-template-columns:1fr 22px 1fr;gap:6px}.versus-team{padding:20px 8px}.penalty-grid{gap:10px}.penalty-team{padding:18px 10px}.button-row{gap:7px}h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.keeper-badge{font-size:9px;border-radius:4px;padding:4px 6px;margin-right:auto;white-space:nowrap}
.alert-setup-button{margin-top:10px;font-size:11px}.notification-status{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;margin:0 0 14px;border:1px solid #d8e8dd;border-radius:12px;background:#f0f8f3;color:#4d745a}.notification-status svg{width:20px;height:20px;flex-shrink:0;color:var(--green);margin-top:3px}.notification-status p{font-size:11px;line-height:1.9}.alert-limit-note{background:#fff9e9;border:1px solid #f0e5c3;color:#91732b;border-radius:10px;padding:12px 13px;margin-top:16px;font-size:11px;line-height:1.9}
@media(max-width:380px){.header-actions{gap:6px}.connection-status span{display:none}.connection-status{padding:8px}.header-inner{gap:8px}.header-actions .icon-button{width:35px}}
.main-nav{max-width:540px}.scorer-choices{display:grid;gap:8px;margin-bottom:16px}.scorer-choice{width:100%;min-height:58px;display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#fafcfb;text-align:right;color:#234d37}.scorer-choice strong{font-size:13px;overflow-wrap:anywhere;flex:1}.scorer-choice>svg{color:#8aac96;width:18px;height:18px}.scorer-choice.selected{background:#edf8f1;border-color:#83bf99}.scorer-choice:hover{border-color:#97c9a7;background:#f1f9f3}.scorer-copy{margin-bottom:15px}.scorer-mini{margin:18px 0}.scorer-panel .panel-header,.scorer-mini .panel-header{margin-bottom:10px}.scorer-table{padding:0;margin:0;list-style:none}.scorer-table li{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #edf2ef;font-size:12px}.scorer-table li:last-child{border:0}.scorer-rank{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#f1f6f2;font-size:12px;color:#689176;flex-shrink:0}.scorer-table strong{flex:1;overflow-wrap:anywhere}.scorer-total{color:var(--green);font-weight:bold;white-space:nowrap;font-size:16px}.scorer-total small{color:#8a9d8f;font-size:9px;font-weight:400}.unassigned-note{color:#9b7a22;background:#fff9e8;border-radius:9px;padding:10px 12px;font-size:10px;line-height:1.9;margin-top:14px}.goal-records li{align-items:center;gap:9px}.goal-description{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.goal-description strong{font-size:11px;overflow-wrap:anywhere}.goal-description small{font-size:9px;color:#8c9b91}.goal-records .text-button{font-size:10px;white-space:nowrap;padding:8px 2px}.match-detail-score{display:flex;justify-content:center;align-items:center;gap:20px;margin:15px 0 20px;font-size:13px}.match-detail-score strong{font:700 36px Arial,sans-serif;direction:ltr}.booking-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}.booking-toolbar .text-input{max-width:275px;min-height:43px;font-size:12px;background:white}.scope-tabs{display:flex;gap:4px;background:#e9f0ec;border-radius:10px;padding:4px}.scope-tabs button{border-radius:7px;padding:11px 15px;background:none;color:#71867a;font-size:11px;white-space:nowrap;min-height:38px}.scope-tabs button.active{color:var(--green);font-weight:bold;background:white;box-shadow:0 2px 5px #17442c09}.booking-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.booking-stats>div{background:white;border:1px solid var(--border);border-radius:13px;padding:18px;text-align:center}.booking-stats strong{display:block;color:var(--green);font-size:28px;margin-bottom:5px}.booking-stats span{font-size:11px;color:#8a9c8f}.top-scorer-hero{text-align:center;padding:22px 10px 25px;border-radius:12px;background:linear-gradient(140deg,#f1f9f2,#fffdf3);margin:16px 0 10px}.top-scorer-hero>span{font-size:35px}.top-scorer-hero h2{font-size:22px;margin-top:12px;overflow-wrap:anywhere}.top-scorer-hero p{font-size:12px;color:#789480;margin-top:5px}.booking-match-section{margin-top:30px}.section-heading{font-size:17px;margin-bottom:18px}.history-scorers{font-size:11px;color:#788d7b;line-height:1.8;margin-top:10px}.match-side>.scorer-panel{grid-column:1/-1}.scorer-panel .panel-title{font-size:14px}.booking-stats+ .two-column aside .panel{position:sticky;top:110px}
@media(max-width:760px){.main-nav{max-width:none}.nav-item{padding:10px 7px;font-size:12px}.booking-toolbar{flex-direction:column;align-items:stretch;gap:12px}.booking-toolbar .text-input{max-width:none}.scope-tabs button{flex:1}.booking-stats{gap:10px}.booking-stats>div{padding:15px 9px}.booking-stats strong{font-size:25px}dialog[data-kind="scorer"]{position:fixed;inset:auto 0 0;margin:0 auto;border-radius:22px 22px 0 0;width:100%;max-width:520px;max-height:88dvh;padding:24px 22px calc(22px + env(safe-area-inset-bottom))}.scorer-choices{gap:8px}.scorer-choice{min-height:56px}.booking-stats+ .two-column aside .panel{position:static}}
@media(max-width:420px){.main-nav .nav-item svg,.main-nav .nav-count{display:none}.main-nav .nav-item{font-size:11px;padding:11px 6px}.booking-stats span{font-size:10px}.goal-records .text-button{font-size:9px}.scorer-choice strong{font-size:12px}}
@media(max-width:760px){body.roster-screen{padding-bottom:calc(87px + env(safe-area-inset-bottom))}.mobile-session-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;position:fixed;bottom:0;right:0;left:0;background:#fffffff2;border-top:1px solid #dce8df;backdrop-filter:blur(15px);padding:12px 18px calc(12px + env(safe-area-inset-bottom));z-index:9;box-shadow:0 -5px 30px #15382305}.mobile-session-bar strong{display:block;font-size:13px}.mobile-session-bar small{display:block;font-size:10px;color:#8a9c8f;margin-top:6px}.mobile-session-bar .btn{min-width:155px}}
