:root{--ink:#19332f;--muted:#727d76;--line:#e2e6dd;--paper:#fff;--bg:#f5f6f1;--lime:#dcf494;--green:#254c3f;--radius:15px;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.38;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,svg:focus-visible{outline:3px solid #7ea54a;outline-offset:3px}button{border:0;background:none}a{color:var(--green)}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}.rail{position:fixed;inset:0 auto 0 0;width:84px;display:flex;flex-direction:column;align-items:center;background:#172f2d;color:#e2ebe3;padding:26px 9px;z-index:30}.logo{display:flex;flex-direction:column;align-items:center;line-height:.85;font-weight:900;font-size:54px;color:var(--lime);text-decoration:none;letter-spacing:-5px}.logo span{font-size:10px;letter-spacing:3px;margin-top:12px;margin-left:4px}.rail nav{display:grid;gap:12px;margin-top:54px;width:100%}.rail-button{width:100%;min-height:62px;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:#a8b9ad;border-radius:11px}.rail-button .icon{width:23px;height:23px}.rail-button:hover{background:#28413b;color:white}.rail-button.active{background:var(--lime);color:#203d31}.rail-button.help{margin-top:auto}.rail-bottom{text-align:center;font-size:8px;font-weight:700;line-height:1.8;letter-spacing:1.5px;color:#83998c;margin-top:28px}.shell{margin-left:84px;padding:27px 32px 12px;max-width:1830px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.6px;color:var(--muted)}.eyebrow>span{padding:0 9px;color:#bec6ba}h1{font-size:25px;line-height:1.15;margin:10px 0 8px;letter-spacing:-.8px}h2{font-size:17px;line-height:1.3;letter-spacing:-.4px;margin:7px 0 0}h3{font-size:15px;letter-spacing:-.2px}.subheading{font-size:12px;color:var(--muted);display:flex;gap:9px}.header-actions{display:flex;align-items:center;gap:10px}.button{min-height:43px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;font-size:12px;font-weight:650;transition:background .15s,border-color .15s;white-space:nowrap}.button.light{background:white;border:1px solid var(--line)}.button.light:hover{background:#edf1e7;border-color:#c7d2bf}.button.dark{background:#203e35;color:white;border:1px solid #203e35}.button.dark:hover{background:#355d46}.button.danger{color:#ac3f31;background:#fff3ef}.button .icon{width:17px;height:17px}.saved{font-size:10px;display:flex;align-items:center;gap:6px;color:var(--muted);margin-right:10px}.saved i,.offline-dot{width:6px;height:6px;display:inline-block;background:#7c9d5c;border-radius:50%}.saved.error{color:#b54831}.notice{background:#fff0d5;color:#795827;padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:12px;font-size:13px;margin-bottom:12px}.notice button{margin-left:auto}.scoreboard{display:grid;grid-template-columns:minmax(200px,1fr) 270px minmax(200px,1fr);background:white;border:1px solid var(--line);border-radius:var(--radius);min-height:144px;overflow:hidden;box-shadow:0 3px 5px #26332603}.team-score{display:flex;align-items:center;gap:15px;padding:22px 26px;border-bottom:4px solid transparent;min-width:0;text-align:left;position:relative}.team-score:hover{background:#f8faf5}.team-score.selected{background:color-mix(in srgb,var(--team) 5%,white);border-bottom-color:var(--team)}.team-badge{display:flex;align-items:center;justify-content:center;width:53px;height:60px;flex-shrink:0;background:color-mix(in srgb,var(--team) 11%,white);color:var(--team);font-size:14px;font-weight:850;letter-spacing:1px;border-radius:9px 9px 19px 19px;border:1px solid color-mix(in srgb,var(--team) 18%,white)}.team-copy{display:flex;flex-direction:column;gap:9px;min-width:0}.team-copy strong{font-size:20px;font-weight:700;letter-spacing:-.5px;overflow-wrap:anywhere}.team-copy>span{color:var(--muted);font-size:9px;letter-spacing:.6px}.team-score.selected .team-copy>span{color:var(--team);font-weight:750}.score{margin-left:auto;font-size:56px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-2px}.clock-block{padding:16px 22px;text-align:center;border-inline:1px solid var(--line);background:#fcfdf9;display:flex;flex-direction:column;align-items:center;justify-content:center}.period-row{display:flex;align-items:center;gap:12px}.period-chip{font-size:10px;background:#e9eee3;padding:5px 9px;border-radius:5px;font-weight:750;min-height:28px}.period-chip>span{margin-left:6px}.match-state{font-size:8px;font-weight:750;letter-spacing:1px;color:#8a948a}.match-state.live{color:#318654}.clock-row{display:flex;align-items:center;gap:15px}.clock-value{font-variant-numeric:tabular-nums;font-size:45px;font-weight:650;letter-spacing:-2px;line-height:1.35;padding:0}.clock-toggle{display:grid;place-items:center;width:38px;height:38px;background:var(--lime);border-radius:50%;margin-top:3px}.clock-toggle .icon{width:17px;height:17px}.clock-toggle.running{background:#243e34;color:white}.clock-hint{color:#879180;font-size:9px;margin-top:2px}kbd{font-family:inherit;font-size:9px;border:1px solid #dfe5d9;background:#f8faf5;color:#7b8675;display:inline-block;padding:2px 5px;border-radius:4px;font-weight:500;white-space:nowrap}.workspace-nav{display:flex;align-items:center;justify-content:space-between;margin:20px 0 17px;border-bottom:1px solid var(--line);gap:8px}.tabs{display:flex;gap:24px}.tabs button{display:flex;align-items:center;gap:8px;padding:12px 1px 15px;min-height:48px;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:12px;color:var(--muted);font-weight:600}.tabs button.active{color:var(--ink);border-bottom-color:var(--green)}.tabs .icon{width:17px;height:17px}.count{font-size:10px;font-weight:650;background:#edf0e7;color:#66745d;border-radius:5px;padding:3px 6px;margin-left:4px;vertical-align:middle}.undo-link{display:flex;align-items:center;gap:7px;font-size:11px;min-height:44px;color:#717e6b}.undo-link .icon{width:15px;height:15px}.undo-link kbd{margin-left:5px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 294px;gap:20px;align-items:stretch}.field-card,.activity-card{background:white;border:1px solid var(--line);border-radius:var(--radius);min-width:0}.card-header{padding:21px 22px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.card-header .eyebrow{font-size:9px;letter-spacing:1.5px}.card-header h2{font-size:16px;margin-top:6px}.icon-button{min-width:38px;min-height:38px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:#748367}.icon-button:hover{background:#eff2e9}.icon-button .icon{width:17px;height:17px}.field-toolbar{display:flex;justify-content:space-between;align-items:center;margin:0 22px 12px;gap:8px}.attack-label{font-size:10px;color:var(--team);display:flex;align-items:center;gap:6px;font-weight:750}.attack-label i,.palette-title i{width:7px;height:7px;border-radius:50%;background:var(--team);display:inline-block}.field-filters{display:flex;gap:7px}.field-filters select{font-size:10px;padding:6px 25px 6px 9px;min-height:31px;border:1px solid #e5e9e0;border-radius:6px;background:#fafbf7;color:#6b7963;max-width:160px}.pitch-wrap{position:relative;margin:0 18px;isolation:isolate}.pitch{display:block;width:100%;height:auto;aspect-ratio:1000/520;touch-action:manipulation;border-radius:10px}.pitch#pitch{cursor:crosshair}.field-label{font-family:inherit;font-size:12px;letter-spacing:2px;fill:#476341;opacity:.8;font-weight:750}.field-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;pointer-events:none;color:#38552e;opacity:.74;font-size:12px}.field-empty .icon{width:31px;height:31px;stroke-width:1.2;background:#c3d9b9aa;border-radius:50%;box-sizing:content-box;padding:14px}.field-empty span{background:#d8e8cfbb;padding:7px 12px;border-radius:6px}.field-footer{padding:15px 23px;display:flex;align-items:center;justify-content:space-between;gap:10px}.legend{display:flex;align-items:center;gap:16px;font-size:9px;color:#7a8572}.legend>span{display:flex;align-items:center;gap:5px}.marker{width:7px;height:7px;border-radius:50%;display:inline-block;background:#6a7b5d}.marker.goal{width:9px;height:9px;background:#6a7b5d;border:2px solid #6a7b5d;box-shadow:inset 0 0 0 1px white}.marker.wide{background:transparent;border:1px solid #6a7b5d}.cross{font-size:15px;line-height:.5;font-weight:400}.position-note{font-size:9px;color:#99a28f}.steps{display:flex;align-items:center;gap:28px;border-top:1px solid #eff1ea;padding:13px 23px;color:#98a18e;font-size:10px}.steps>span{display:flex;align-items:center;gap:6px}.steps b{display:inline-grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#f1f3ec;font-size:9px}.steps .current{color:#27452e;font-weight:700}.steps .current b{background:var(--lime)}.steps .done b{background:#e5eddc;color:#628446}.steps small{margin-left:auto;font-size:9px;color:#a3ab9b}.activity-card{display:flex;flex-direction:column;max-height:620px;min-height:400px}.activity-card .card-header{border-bottom:1px solid #edf0e7;padding:21px 19px 16px}.live-dot{width:7px;height:7px;border-radius:50%;background:#a2bd7e}.timeline{overflow-y:auto;flex:1;min-height:240px;scrollbar-width:thin}.timeline-empty{height:100%;min-height:260px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#89947f;padding:25px}.timeline-empty .icon{width:33px;height:33px;stroke-width:1.1;margin-bottom:20px;color:#acb89f}.timeline-empty strong{font-size:13px;font-weight:600;color:#65765c}.timeline-empty p{font-size:11px;line-height:1.8;margin:9px 0 26px;max-width:190px}.timeline-empty>span{font-size:9px;color:#a1ab98}.activity-footer{display:flex;gap:7px;align-items:center;padding:13px 17px;font-size:9px;color:#9aa48d;border-top:1px solid #edf0e7}.activity-footer .icon{width:12px;height:12px}.event{display:flex;width:100%;gap:10px;text-align:left;padding:16px 12px;border-bottom:1px solid #eff1eb;min-height:85px}.event:hover{background:#f6f8f0}.event-time{width:41px;flex-shrink:0;padding-top:1px}.event-time b{font-size:11px;font-weight:650;font-variant-numeric:tabular-nums}.event-time small{display:block;font-size:8px;color:#9aa28e;margin-top:5px}.event-line{width:5px;height:5px;border-radius:50%;background:var(--team);margin-top:6px;flex-shrink:0}.event-body{display:flex;flex-direction:column;gap:6px;min-width:0}.event-body strong{font-size:11px;font-weight:650;display:flex;align-items:center;gap:7px}.event-body>span{font-size:10px;color:#6f7c67;line-height:1.5;overflow-wrap:anywhere}.event-body small{font-size:8px;color:#9aa28e}.goal-event{background:#f5f9ec}.goal-tag{font-size:7px;letter-spacing:.5px;padding:3px 5px;background:#dfedc8;color:#4e6d32;border-radius:4px}.bottom-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 0}.quick-actions{display:flex;align-items:center;gap:8px}.quick-actions>.eyebrow{font-size:8px;letter-spacing:1px;margin-right:7px}.quick-actions .button{min-height:40px;font-size:10px;padding:9px 12px}.quick-actions .icon{width:15px;height:15px}.next-period{font-size:10px;display:flex;align-items:center;gap:8px;min-height:40px}.next-period .icon{width:14px;height:14px}.mini-stats{display:grid;grid-template-columns:repeat(5,1fr);background:#edf0e5;border:1px solid #e5e9dd;border-radius:10px;padding:16px 0}.mini-stats>div{display:flex;justify-content:center;align-items:center;gap:12px;border-right:1px solid #dbe2d1}.mini-stats>div:last-child{border:0}.mini-stats b{font-size:17px;font-weight:650;font-variant-numeric:tabular-nums}.mini-stats span{font-size:10px;color:#7e8972}.sample-note{display:flex;align-items:center;justify-content:center;gap:6px;color:#929b87;font-size:9px;margin:14px 0}.sample-note .icon{width:12px;height:12px}.page-footer{display:flex;align-items:center;justify-content:space-between;color:#a1a996;font-size:8px;letter-spacing:.2px;padding-top:17px;margin-top:12px;border-top:1px solid #e4e8de}.page-footer span:first-child{display:flex;align-items:center;gap:6px}.page-footer button{font-size:9px;color:#8b987d;padding:4px}.offline-dot{width:5px;height:5px}.action-palette{position:absolute;width:270px;background:white;padding:13px;border-radius:13px;box-shadow:0 12px 60px #14291d50;border:1px solid #e3e9db;z-index:15;max-width:calc(100% - 24px);transform:translateX(-20%)}.palette-title{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px}.palette-title>span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:750}.palette-title button{display:grid;place-items:center;min-height:28px;min-width:28px;color:#98a08b}.palette-title .icon{width:15px;height:15px}.action-palette .eyebrow{font-size:8px;margin-bottom:7px}.shot-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px}.shot-actions button{min-height:43px;display:flex;align-items:center;gap:8px;padding:9px;border-radius:7px;background:#f2f5ec;font-size:11px;font-weight:650}.shot-actions button.goal-action{background:var(--lime)}.shot-actions button:hover{filter:brightness(.96)}.shot-actions .icon{width:16px;height:16px}.other-actions{padding-top:8px;margin-top:9px;border-top:1px solid var(--line);display:grid}.other-actions button{display:flex;align-items:center;justify-content:space-between;min-height:35px;font-size:10px;border-radius:5px;text-align:left;padding:7px}.other-actions button:hover{background:#f1f4e9}.other-actions .icon{width:12px;height:12px}#penalty-strip{display:flex;gap:10px;flex-wrap:wrap}.active-penalty{display:flex;align-items:center;gap:7px;background:white;border:1px solid var(--line);border-left:3px solid var(--team);padding:8px 10px;border-radius:7px;font-size:11px;margin-bottom:14px}.active-penalty>.icon{width:15px;height:15px}.active-penalty button{padding:2px}.active-penalty button .icon{width:13px;height:13px}
dialog{border:1px solid #dce3d4;border-radius:17px;padding:0;background:white;color:var(--ink);width:min(680px,calc(100vw - 36px));max-height:calc(100dvh - 36px);box-shadow:0 24px 100px #0c291c40;overflow-y:auto}dialog::backdrop{background:#14291d70;backdrop-filter:blur(3px)}dialog.settings-dialog{width:min(930px,calc(100vw - 36px))}dialog.small-dialog{width:min(570px,calc(100vw - 36px))}.dialog-header{padding:24px 26px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:white;z-index:2}.dialog-header h2{font-size:23px;margin-top:8px}.dialog-header .eyebrow{font-size:9px}.dialog-body{padding:22px 26px}.dialog-body>p{font-size:13px;line-height:1.8}.dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 26px;background:#f8faf4;border-top:1px solid var(--line);position:sticky;bottom:0;z-index:2}.dialog-footer>.field-help{font-size:10px}.dialog-footer .button.dark kbd{background:#355548;color:#d3e3c7;border-color:#54705d}.outcome-row{display:flex;gap:8px;margin-bottom:24px}.outcome{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-height:49px;border:1px solid var(--line);border-radius:8px;font-size:12px;font-weight:600;background:#fafbf7}.outcome .icon{width:17px;height:17px}.outcome.selected{background:#ecf5dc;border-color:#97b570;box-shadow:0 0 0 1px #97b570}.form-label{display:block;font-size:12px;font-weight:650;margin:21px 0 10px}.split-label{display:flex;align-items:center;justify-content:space-between}.split-label>span{font-size:10px;color:#98a08b;font-weight:400}.player-grid{display:flex;flex-wrap:wrap;gap:7px}.player-chip{display:flex;position:relative;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);background:#fafbf8;min-width:48px;min-height:46px;border-radius:7px;padding:7px 9px;gap:2px;max-width:95px}.player-chip b{font-size:16px;font-weight:650}.player-chip>span{font-size:9px;max-width:78px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-chip small{position:absolute;font-size:7px;right:4px;top:3px;color:#819168}.player-chip.unknown{font-size:9px;max-width:76px;color:#8b9580}.player-chip.selected{border-color:#7e9a5e;background:#eaf2dc;box-shadow:0 0 0 1px #7e9a5e}.player-chip:hover{background:#eaf0e0}input:not([type="checkbox"]),select,textarea{width:100%;border:1px solid #dce3d5;border-radius:7px;padding:10px 11px;background:#fff;color:var(--ink);font-size:13px;min-height:42px}input[type="color"]{padding:5px;height:42px}input[type="checkbox"]{width:17px;height:17px;accent-color:#456c34}textarea{resize:vertical;line-height:1.6;font-family:ui-monospace,Consolas,monospace;font-size:12px}.field-help{font-size:11px!important;line-height:1.65;color:#8b967f;margin:9px 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:650}.team-settings{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:25px;border-top:1px solid var(--line)}.team-settings h3{display:flex;gap:8px;align-items:center;margin:23px 0 17px}.team-settings h3 i,.player-table-card h3 i{width:8px;height:8px;border-radius:50%;display:inline-block}.team-settings>section>label:not(.checkbox-row){display:flex;flex-direction:column;gap:9px;font-size:11px;font-weight:650;margin-top:18px}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:11px;margin:17px 0 0;color:#708062}.event-time-edit{margin-top:20px}.export-options{display:grid;padding-block:9px}.export-options>button{padding:19px 0;display:flex;align-items:center;text-align:left;gap:15px;border-bottom:1px solid #eef1e9}.export-options>button:hover strong{color:#618536}.export-options>button:last-child{border:0}.export-options>button>.icon:first-child{color:#839c68;width:23px;height:23px}.export-options>button>.icon:last-child{margin-left:auto;width:16px;height:16px;color:#a5af99}.export-options span{display:flex;flex-direction:column;gap:7px}.export-options strong{font-size:13px}.export-options small{font-size:11px;line-height:1.7;color:#8a967d}.help-body ol{padding-left:19px;font-size:13px;line-height:1.85}.help-body li{margin-bottom:12px}.shortcut-list{background:#f4f7ed;padding:10px 15px;border-radius:8px;margin:22px 0}.shortcut-list p{display:flex;align-items:center;gap:14px;font-size:11px}.shortcut-list kbd{min-width:59px;text-align:center;background:white}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0 25px}.section-heading h2{font-size:23px;margin-top:8px}.section-heading p{color:#849176;font-size:12px}.stats-comparison{border:1px solid var(--line);border-radius:14px;background:white;padding:22px 45px;max-width:920px;margin:0 auto 25px}.comparison-teams{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;text-align:center;padding-bottom:21px;border-bottom:1px solid var(--line);margin-bottom:12px}.comparison-teams strong{font-size:17px}.comparison-teams>span{font-size:9px;letter-spacing:1.5px;color:#8d9a7f}.comparison-row{display:grid;grid-template-columns:80px 1fr 80px;gap:30px;align-items:center;text-align:center;padding:10px 0;font-size:11px;color:#78866a}.comparison-row b{font-size:17px;color:#314f37;font-weight:650}.comparison-bars{display:flex;height:3px;gap:4px;margin-top:9px;opacity:.65}.comparison-bars i{display:block;height:3px;border-radius:2px;min-width:2px}.player-table-card{background:white;border:1px solid var(--line);border-radius:13px;padding:21px;margin-bottom:22px}.player-table-card h3{display:flex;gap:8px;align-items:center;margin:0 0 18px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:10px;text-align:right;white-space:nowrap}thead{background:#f3f6ed;color:#899579}th,td{padding:12px 9px;border-bottom:1px solid #edf0e7;font-weight:400}th:first-child,td:first-child{text-align:left}thead th{font-size:9px;font-weight:600}tbody th{color:#657557;font-size:10px}tbody th b{color:#1d3d2b;margin-right:5px}.goalie-table{margin-top:23px}tbody tr:hover{background:#fbfcf8}.match-list{display:grid;gap:10px}.match-list-item{width:100%;display:flex;align-items:center;gap:25px;background:white;border:1px solid var(--line);border-radius:12px;padding:22px;text-align:left;min-height:94px}.match-list-item.current{border-color:#a8be89}.match-list-item:hover{background:#fbfcf7}.match-date{font-size:12px;color:#6f7f63;min-width:100px}.match-date small,.match-teams small{display:block;font-size:10px;color:#99a38e;margin-top:9px}.match-teams{flex:1}.match-teams strong{font-size:15px;font-weight:600}.match-teams b{padding:0 12px}.status-badge{padding:6px 10px;border-radius:5px;background:#eef3e5;font-size:10px;color:#718760}.source-card{margin-top:24px;display:flex;gap:17px;align-items:start;background:#eef2e6;padding:23px;border:1px solid #e2e9d5;border-radius:12px}.source-card>.icon{margin-top:3px;color:#8d9f77}.source-card h3{margin:0 0 9px}.source-card p{font-size:12px;color:#7e8c6e;line-height:1.8;margin:0 0 9px;max-width:680px}.source-card a{font-size:11px}.source-card>button{margin-left:auto}.import-actions{display:flex;gap:10px;margin-top:20px}pre{overflow-x:auto;padding:15px;background:#f5f7ef;border-radius:7px;font-size:10px;line-height:1.8}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);max-width:min(650px,90vw);background:#203d31;color:white;border-radius:10px;padding:14px 22px;font-size:12px;line-height:1.6;box-shadow:0 8px 35px #18332225;z-index:1000;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}.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}#print-report{display:none}
@media(min-width:1600px){.shell{padding:34px 45px 15px}.workspace{grid-template-columns:minmax(0,1fr) 335px}.activity-card{max-height:740px}.card-header{padding-top:26px}.team-score{padding-inline:40px}.scoreboard{min-height:160px}.field-card h2{font-size:18px}}
@media(max-width:1200px){.rail{width:70px}.shell{margin-left:70px;padding:22px 22px 10px}.header-actions{gap:7px}.saved{display:none}.scoreboard{grid-template-columns:minmax(0,1fr) 225px minmax(0,1fr);min-height:130px}.team-score{padding:18px 17px;gap:12px}.team-badge{width:43px;height:50px;font-size:12px}.team-copy strong{font-size:17px}.team-copy>span{font-size:8px}.score{font-size:45px}.clock-value{font-size:40px}.workspace{grid-template-columns:minmax(0,1fr) 260px;gap:15px}.field-card .card-header{padding:18px 17px 14px}.card-header h2{font-size:14px}.field-toolbar{margin-inline:17px}.pitch-wrap{margin-inline:13px}.field-footer{padding:12px 17px}.legend{gap:9px}.position-note{display:none}.steps{padding:12px 17px;gap:22px}.steps small{display:none}.quick-actions>.eyebrow{display:none}.quick-actions .button{font-size:10px;padding-inline:10px}.bottom-row{gap:4px}.next-period{font-size:9px}.mini-stats>div{gap:9px}.mini-stats span{font-size:9px}.action-palette{width:245px;transform:translateX(-28%)}.source-card{flex-wrap:wrap}.source-card>button{margin-left:36px}.team-settings{gap:18px}}
@media(max-width:1000px){.shell{padding:17px 17px 10px}.topbar{margin-bottom:20px}h1{font-size:23px}.workspace{grid-template-columns:minmax(0,1fr) 235px;gap:12px}.team-badge{display:none}.scoreboard{grid-template-columns:minmax(0,1fr) 210px minmax(0,1fr)}.team-score{padding-inline:20px}.score{font-size:43px}.field-toolbar{gap:5px}.field-filters{gap:3px}.field-filters select{font-size:9px;padding-left:6px;max-width:133px}.attack-label{font-size:9px;gap:4px}.card-header .eyebrow{font-size:8px}.card-header h2{font-size:13px}.activity-card{min-height:355px}.timeline-empty{padding:15px;min-height:210px}.legend{font-size:8px;gap:9px}.quick-actions .compact{display:none}.tabs{gap:18px}.undo-link kbd{display:none}.mini-stats span{font-size:8px}.action-palette{width:230px}.shot-actions button{min-height:40px;font-size:10px}.other-actions button{min-height:32px}.field-empty span{font-size:10px}}
@media(max-width:800px){.rail{width:58px;padding-inline:6px}.rail .logo{font-size:42px}.logo span{font-size:8px;letter-spacing:2px}.rail-button{font-size:8px;min-height:54px}.rail-button .icon{width:20px;height:20px}.rail-bottom{font-size:6px;letter-spacing:1px}.shell{margin-left:58px;padding:15px 13px 10px}.topbar{align-items:center}.header-actions .button{padding:9px 10px;font-size:10px}.header-actions .button.light span{display:none}.topbar h1{font-size:20px}.eyebrow{font-size:8px}.subheading{font-size:10px}.workspace{grid-template-columns:minmax(0,1fr) 205px}.team-score{padding:15px;gap:6px}.team-copy strong{font-size:15px}.scoreboard{grid-template-columns:minmax(0,1fr) 185px minmax(0,1fr);min-height:115px}.clock-block{padding:12px}.clock-value{font-size:35px}.clock-toggle{width:31px;height:31px}.clock-hint{font-size:8px}.score{font-size:36px}.card-header{padding:16px 13px}.activity-card .card-header{padding:18px 13px 15px}.field-card .card-header h2{max-width:220px}.field-toolbar{flex-wrap:wrap}.field-filters{order:3;justify-content:center;width:100%}.field-filters select{max-width:none;width:50%}.field-footer{padding-inline:13px}.legend{gap:7px}.steps{gap:16px;font-size:9px;padding-inline:13px}.activity-card{min-height:340px}.timeline-empty strong{font-size:11px}.timeline-empty p{font-size:10px}.timeline-empty>span{font-size:8px}.event{gap:7px;padding:13px 9px}.event-time{width:35px}.event-time b{font-size:10px}.event-body strong{font-size:10px}.event-body>span{font-size:9px}.activity-footer{padding-inline:12px;font-size:8px}.bottom-row{flex-wrap:wrap;gap:5px;padding-block:13px}.quick-actions .button{min-height:40px}.mini-stats{padding-block:12px}.mini-stats>div{gap:6px;flex-wrap:wrap}.mini-stats b{font-size:15px}.mini-stats span{font-size:8px}.workspace-nav{margin-top:14px}.tabs button{font-size:10px}.tabs{gap:15px}.action-palette{width:215px;left:50%!important;transform:translateX(-50%)}.player-grid{gap:6px}.section-heading h2{font-size:20px}.match-list-item{gap:12px;padding:16px}.match-teams strong{font-size:12px}.match-date{font-size:10px;min-width:80px}.match-teams b{padding:0 5px}.stats-comparison{padding:20px}.comparison-row{grid-template-columns:50px 1fr 50px;gap:15px}}
@media(max-width:620px){.rail{display:none}.shell{margin-left:0;padding:16px}.header-actions .button span{display:none}.header-actions .button{min-width:40px}.scoreboard{grid-template-columns:1fr 145px 1fr}.team-score{flex-wrap:wrap;justify-content:center;padding:13px 8px;text-align:center}.team-copy strong{font-size:13px}.team-copy>span{font-size:6px;letter-spacing:0}.team-copy{gap:5px}.score{font-size:32px;margin:0;width:100%;line-height:1}.clock-value{font-size:31px}.clock-row{gap:7px}.clock-hint{font-size:7px}.clock-block{padding:10px 7px}.period-row{gap:5px}.match-state{font-size:6px}.workspace{grid-template-columns:1fr}.activity-card{max-height:320px;min-height:250px}.timeline-empty{min-height:180px}.sample-note{font-size:8px;line-height:1.6;text-align:center}.mini-stats{grid-template-columns:repeat(3,1fr);gap:15px}.mini-stats>div{border:0}.tabs{gap:14px}.tabs button{font-size:10px}.undo-link{font-size:9px}.undo-link .icon{display:none}.field-toolbar{flex-wrap:nowrap}.field-filters{width:auto;order:0}.field-filters select{width:auto;font-size:8px;max-width:114px}.team-settings,.form-grid{grid-template-columns:1fr}.team-settings{gap:0}.dialog-body{padding:18px}.dialog-header{padding:20px 18px}.dialog-footer{padding:15px 18px;flex-wrap:wrap}.dialog-footer>.field-help{display:none}.dialog-header h2{font-size:20px}.outcome-row{gap:5px}.outcome{font-size:10px;gap:4px}.outcome .icon{width:14px;height:14px}.section-heading{align-items:start}.section-heading>.button{font-size:9px;padding:8px}.match-list-item{flex-wrap:wrap}.status-badge{margin-left:auto}.source-card>button{margin-left:0;font-size:10px}.import-actions{flex-wrap:wrap}.page-footer>span:nth-child(2){display:none}.action-palette{width:260px}.comparison-row{grid-template-columns:40px 1fr 40px;gap:10px}.comparison-teams strong{font-size:13px}}
@media(min-width:900px) and (max-height:850px){.shell{padding-top:14px}.topbar{margin-bottom:15px}.topbar h1{font-size:22px;margin-block:6px}.scoreboard{min-height:108px}.team-score{padding-block:14px}.team-badge{height:49px;width:44px}.team-copy strong{font-size:19px}.score{font-size:46px}.clock-block{padding-block:10px}.clock-value{font-size:38px}.workspace-nav{margin:10px 0 12px}.tabs button{min-height:40px;padding-block:10px}.card-header,.field-card .card-header,.activity-card .card-header{padding-top:12px;padding-bottom:12px}.pitch{height:clamp(190px,calc(100dvh - 475px),360px);aspect-ratio:auto}.field-toolbar{margin-bottom:8px}.field-footer{padding-block:10px}.steps{padding-block:9px}.activity-card{min-height:300px;max-height:470px}.timeline-empty{min-height:190px;padding:16px}.bottom-row{padding-block:12px}.mini-stats{padding-block:12px}.sample-note{margin-block:10px}.page-footer{padding-top:10px;margin-top:8px}.action-palette{top:auto!important;bottom:5%!important}.other-actions button{min-height:30px}.shot-actions button{min-height:37px}.palette-title{padding-bottom:6px}}
.bottom-row{position:sticky;bottom:5px;z-index:25;background:#f5f6f1f5;border-radius:10px;padding-inline:8px;box-shadow:0 -3px 15px #f5f6f180}
@media(pointer:coarse){.other-actions button,.shot-actions button{min-height:44px}.action-palette{max-height:min(520px,75dvh);overflow-y:auto}.field-filters select{min-height:38px}.period-chip{min-height:36px}.quick-actions .button{min-height:44px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{@page{size:A4 landscape;margin:12mm}body{background:white;color:#152b24;font-size:10px}#app,dialog,#toast{display:none!important}#print-report{display:block!important}#print-report header{text-align:center;margin-bottom:15px}#print-report h1{font-size:17px;letter-spacing:2px}#print-report h2{font-size:17px;margin-block:12px}#print-report p{font-size:10px}#print-report .pitch{max-height:230px;width:445px;margin:10px auto;print-color-adjust:exact;-webkit-print-color-adjust:exact}#print-report table{font-size:8px;margin:10px 0;white-space:normal}#print-report th,#print-report td{padding:6px 7px;border-bottom:1px solid #ddd}#print-report thead{display:table-header-group;print-color-adjust:exact}#print-report tr{break-inside:avoid}#print-report .player-table-card{border:0;padding:0;margin-top:22px;break-inside:auto}#print-report .player-table-card h3{margin-top:20px;break-after:avoid}#print-report .table-scroll{overflow:visible}#print-report .goalie-table{margin-top:15px}#print-report .player-table-card table:first-child{min-width:0}}
/* Terrain en vue principale, sans colonne latérale. */
body.pitch-mode{overflow:hidden;background:#a4c39b}.observer-capture{height:100dvh;width:100%;position:relative;overflow:hidden;background:#a4c39b}.full-pitch{position:absolute;inset:76px 0 52px;z-index:1}.observer-capture .pitch{width:100%;height:100%;max-height:none;min-height:0;aspect-ratio:auto;border-radius:0}.match-hud{position:absolute;inset:0 0 auto;height:76px;background:#fcfdf9;box-shadow:0 2px 12px #17352116;display:grid;grid-template-columns:62px minmax(160px,1fr) 180px minmax(160px,1fr) 110px;align-items:stretch;z-index:40}.hud-logo{color:#c0d66e;background:#18362c;display:grid;place-items:center;text-decoration:none;font-size:44px;font-weight:900;letter-spacing:-3px}.match-hud .team-score{padding:9px 20px;gap:13px;border-radius:0;border-bottom-width:3px}.match-hud .team-badge{height:40px;width:40px;font-size:11px;border-radius:7px 7px 13px 13px}.match-hud .team-copy strong{font-size:19px}.match-hud .team-copy>span{font-size:8px}.match-hud .team-copy{gap:5px}.match-hud .score{font-size:36px}.match-hud .clock-block{padding:5px 10px;min-width:0}.match-hud .period-row{gap:8px}.match-hud .period-chip{font-size:8px;padding:3px 6px;min-height:20px}.match-hud .match-state{font-size:7px}.match-hud .clock-row{gap:12px}.match-hud .clock-value{font-size:30px;letter-spacing:-1px;line-height:1.2}.match-hud .clock-toggle{height:28px;width:28px}.match-hud .clock-toggle .icon{width:13px;height:13px}.match-menu{position:relative;border-left:1px solid #e1e7d8}.match-menu>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:center;gap:8px;height:100%;font-size:12px;font-weight:650;padding:12px}.match-menu>summary::-webkit-details-marker,.extra-actions>summary::-webkit-details-marker{display:none}.match-menu[open]>summary{background:#eaf1dc}.match-menu-content{position:absolute;right:10px;top:calc(100% + 8px);width:300px;max-height:calc(100dvh - 95px);overflow-y:auto;background:#fff;border:1px solid #d9e2ce;border-radius:12px;box-shadow:0 10px 60px #1d35263b;padding:17px;display:flex;flex-direction:column;gap:5px}.match-menu-content>strong{font-size:14px;margin-top:6px}.match-menu-content>small{font-size:10px;color:#8a967d;line-height:1.6;margin-bottom:12px}.match-menu-content>button{display:flex;align-items:center;gap:10px;text-align:left;min-height:43px;font-size:12px;border-radius:7px;padding:9px}.match-menu-content>button:hover{background:#eef4e5}.match-menu-content>button .icon{width:17px;height:17px;color:#7e9267}.match-menu-content .finish-menu-item{border-top:1px solid #e2e8da;color:#a74a35;border-radius:0;margin-top:5px}.menu-map-filters{padding:10px 8px;border-block:1px solid #e9ede2;margin:4px 0;display:grid;gap:6px}.menu-map-filters label{font-size:9px;color:#92a084}.menu-map-filters select{font-size:11px;min-height:35px;margin-top:5px}.field-identifiers{position:absolute;inset:91px 3.5% auto;display:flex;align-items:center;justify-content:space-between;pointer-events:none;z-index:2}.field-identifiers span{font-size:11px;font-weight:800;color:var(--team);padding:6px 10px;background:#f7faefcf;border-radius:6px}.capture-toolbar{position:absolute;inset:auto 0 0;height:52px;background:#fcfdf9;box-shadow:0 -2px 12px #1f3c2112;display:flex;align-items:center;justify-content:space-between;padding:6px 15px;gap:14px;z-index:35}.capture-guidance{display:flex;align-items:center;gap:8px;font-size:11px;min-width:0;color:#829374}.capture-guidance i{width:7px;height:7px;border-radius:50%;flex-shrink:0}.capture-guidance b{color:#345b3b;font-weight:600}.capture-buttons{display:flex;align-items:center;gap:6px}.capture-buttons>button,.extra-actions>summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:39px;padding:8px 11px;background:#f0f4e9;border:1px solid #e2e8d9;border-radius:7px;font-size:11px;white-space:nowrap;list-style:none;cursor:pointer}.capture-buttons>button:hover,.extra-actions>summary:hover{background:#e1edce}.capture-buttons .icon{height:17px;width:17px}.capture-buttons b{font-size:10px;background:#dce8ca;border-radius:4px;padding:3px 5px;font-weight:600}.capture-buttons .selected{background:#e1edce}.extra-actions{position:relative}.extra-actions>div{position:absolute;bottom:calc(100% + 11px);right:0;display:grid;width:210px;background:white;border:1px solid #dfe7d4;border-radius:9px;box-shadow:0 5px 25px #1d352626;padding:8px}.extra-actions>div>button{text-align:left;min-height:43px;padding:10px;font-size:12px;border-radius:6px}.extra-actions>div>button:hover{background:#edf3e4}.feed-drawer{position:absolute;top:86px;bottom:63px;right:10px;width:330px;max-width:calc(100% - 20px);background:#fffffff5;border:1px solid #dce5d1;border-radius:13px;display:flex;flex-direction:column;box-shadow:0 9px 50px #1a32232b;z-index:22;backdrop-filter:blur(8px)}.feed-drawer .timeline{min-height:0}.feed-drawer .card-header{border-bottom:1px solid #e4ebdb;padding:17px}.feed-drawer .event{padding:17px 14px}.feed-drawer .event-body>span{font-size:11px}.feed-drawer .timeline-empty{min-height:180px}.hud-penalties{position:absolute;bottom:64px;left:22px;z-index:19;max-width:80%;pointer-events:none}.hud-penalties .active-penalty{pointer-events:auto;background:#fffffff5;margin:0}.capture-sample{position:absolute;bottom:65px;right:22px;font-size:9px;background:#f7faefcc;color:#718160;padding:7px 11px;border-radius:6px;pointer-events:none;z-index:5}.observer-capture .action-palette{width:290px;transform:none;max-height:calc(100% - 20px);overflow-y:auto;z-index:25}.observer-capture .shot-actions button{min-height:46px;font-size:12px}.observer-capture .other-actions button{min-height:41px;font-size:12px}.capture-warning{position:absolute;inset:90px 20% auto;background:#fff4dc;padding:15px;border-radius:9px;z-index:28;font-size:12px}.capture-warning button{text-decoration:underline}.observer-capture .field-label{display:none}
@media(max-width:1100px){.match-hud{grid-template-columns:48px minmax(140px,1fr) 150px minmax(140px,1fr) 90px}.match-hud .team-score{padding-inline:13px;gap:9px}.match-hud .team-copy strong{font-size:16px}.match-hud .team-copy>span{font-size:7px}.match-hud .team-badge{display:flex;width:34px;height:36px;font-size:9px}.capture-guidance{font-size:9px;max-width:290px}.capture-buttons>button,.extra-actions>summary{font-size:10px;padding-inline:9px}.capture-toolbar{padding-inline:12px}.observer-capture .action-palette{width:265px}.field-identifiers{top:91px}.capture-sample{font-size:8px;right:12px}}
@media(max-width:800px){.match-hud{height:65px;grid-template-columns:36px minmax(95px,1fr) 130px minmax(95px,1fr) 65px}.hud-logo{font-size:34px}.match-hud .team-badge{display:none}.match-hud .team-copy strong{font-size:14px}.match-hud .team-copy>span{font-size:6px}.match-hud .score{font-size:28px}.match-hud .clock-value{font-size:27px}.match-menu>summary{font-size:10px;gap:5px}.match-menu>summary .icon{display:none}.full-pitch{top:65px}.field-identifiers{top:77px}.capture-guidance{font-size:9px;max-width:180px}.capture-buttons>button,.extra-actions>summary{padding-inline:8px;font-size:9px}.capture-buttons>button:first-child>span{display:none}.feed-drawer{top:75px}.capture-buttons{gap:4px}}
@media(max-width:620px){.capture-guidance{display:none}.capture-buttons{justify-content:space-between;width:100%}.capture-toolbar{padding-inline:8px}.match-hud{grid-template-columns:26px minmax(76px,1fr) 120px minmax(76px,1fr) 48px}.match-hud .team-score{padding-inline:8px;flex-wrap:nowrap;justify-content:space-between;text-align:left}.match-hud .team-copy strong{font-size:12px}.match-hud .team-copy>span{display:none}.match-hud .score{font-size:25px;width:auto}.match-menu>summary{font-size:0}.match-menu>summary .icon{display:block}.match-menu>summary span{display:none}.field-identifiers span{font-size:9px}.capture-sample{left:12px;right:auto}.observer-capture .action-palette{width:245px}.observer-capture .other-actions button{min-height:39px}}
/* Raccourcis visibles dans les boutons de sélection. */
.button-shortcut{position:absolute;right:6px;top:5px;display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 4px;line-height:1;font-size:10px;font-weight:750;color:#687c56;background:#ffffffb8;border:1px solid #d5dfc9;border-radius:4px;pointer-events:none;font-variant-numeric:tabular-nums}
.team-score .team-shortcut{top:7px;right:7px;background:#f8faf3;color:#78876b}.team-score.selected .team-shortcut{color:var(--team);border-color:color-mix(in srgb,var(--team) 35%,white)}
.match-hud .team-score{padding-right:36px}.scoreboard .team-score{padding-right:36px}
.action-palette .action-choice{position:relative;padding-right:32px;text-align:left}.action-palette .action-label{min-width:0;line-height:1.35}.action-palette .shot-actions .action-choice{justify-content:flex-start;gap:6px;min-height:52px;font-size:11px}.action-palette .other-actions .action-choice{min-height:43px;justify-content:flex-start}.action-palette .action-choice .action-shortcut{top:4px;right:4px}.action-palette .goal-action .action-shortcut{background:#f4ffd7;border-color:#c3dd86;color:#526b2d}.palette-keyboard-hint{font-size:9px;line-height:1.5;color:#889679;margin:9px 2px 0;padding-top:8px;border-top:1px solid #e9eedf}
@media(max-width:800px){.button-shortcut{font-size:9px;min-width:17px;height:17px}.match-hud .team-score{padding-right:29px}.team-score .team-shortcut{right:5px;top:5px}.palette-keyboard-hint{font-size:8px}}

.shell .team-shortcut{display:none}
/* Accueil : préparation des équipes et récupération des effectifs. */
.home-shell{max-width:1280px;margin:0 auto;padding:30px 38px 32px}.home-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:38px}.home-brand{display:flex;align-items:center;gap:13px}.home-brand>span{display:grid;place-items:center;width:51px;height:57px;border-radius:11px;background:#1a382e;color:#d9f29a;font-size:44px;font-weight:850;line-height:1}.home-brand>div{display:flex;flex-direction:column;gap:6px}.home-brand strong{font-size:15px;letter-spacing:1.8px}.home-brand small{font-size:8px;letter-spacing:1.7px;color:#8a977d}.home-intro h1{font-size:34px;letter-spacing:-1.1px;margin:12px 0}.home-intro>p{font-size:13px;line-height:1.8;color:#839172;margin:0 0 23px}.roster-source{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#edf3e3;border:1px solid #dce7cb;border-radius:12px;padding:16px 19px;margin-bottom:25px}.roster-source>div:first-child{position:relative;padding-left:18px}.roster-source i{position:absolute;left:0;top:5px;width:7px;height:7px;background:#6f9250;border-radius:50%}.roster-source.loading i{animation:source-pulse 1s ease-in-out infinite}.roster-source strong{display:block;font-size:12px}.roster-source small{display:block;color:#8b9879;font-size:10px;margin-top:8px}.roster-source a{color:#708656}.roster-source p{font-size:11px;color:#8c845a;line-height:1.6;margin:8px 0 0}.source-buttons{display:flex;gap:7px;flex-shrink:0}.source-buttons .button{font-size:10px;min-height:37px}.home-teams{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:36px}.home-team-panel{background:#fff;border:1px solid #dfe6d6;border-top:3px solid var(--team);border-radius:14px;padding:22px}.home-team-heading{display:flex;align-items:center;gap:14px;margin-bottom:20px}.home-side{display:grid;place-items:center;width:44px;height:49px;border-radius:9px;background:color-mix(in srgb,var(--team) 10%,white);color:var(--team);font-weight:750;font-size:17px}.home-team-heading>div{flex:1;min-width:0}.home-team-heading label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.3px;font-weight:650;color:#8e9b7d;margin-bottom:6px}.home-team-heading select{font-weight:650;font-size:17px;min-height:46px;background:#fbfcf8}.roster-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px;padding-top:16px;border-top:1px solid #e9eee2}.roster-heading strong{font-size:12px}.roster-heading span{font-size:9px;color:#97a187}.home-roster{max-height:342px;overflow:auto;scrollbar-width:thin}.home-roster>div{display:flex;align-items:center;min-height:35px;gap:11px;border-bottom:1px solid #eff2e9;padding:5px 4px}.home-roster b{font-size:11px;min-width:26px;text-align:center;color:var(--team);font-variant-numeric:tabular-nums}.home-roster span{font-size:11px;color:#6c7e5e}.home-roster small{font-size:8px;background:#e9f2dc;padding:3px 5px;border-radius:4px;color:#7b9460;margin-left:auto}.home-goalie-label{display:block;margin-top:18px;font-size:10px;font-weight:650;color:#7f8f6d}.home-goalie-label select{margin-top:7px;font-size:11px}.home-versus{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);width:30px;height:30px;border:1px solid #e3e9d9;background:#f5f6f1;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:750;color:#93a17e}.home-start{display:flex;align-items:end;justify-content:space-between;gap:24px;background:#fff;border:1px solid #e1e8d7;border-radius:12px;padding:21px;margin-top:24px}.home-match-fields{display:grid;grid-template-columns:1.8fr 1.1fr .6fr .8fr;gap:14px;flex:1}.home-match-fields label{font-size:10px;font-weight:600;color:#8a9879;display:flex;flex-direction:column;gap:7px}.home-match-fields input{font-size:12px}.home-start-button{min-height:45px;padding-inline:23px}.home-bottom-note{text-align:center;font-size:10px;color:#97a28a;margin:18px 0 12px}.home-saved-link{display:block;margin:auto;color:#7a8d66;text-decoration:underline;font-size:11px}.pitch-dimension{font-family:inherit;font-size:9px;letter-spacing:2px;font-weight:650;fill:#e8f0dc;opacity:.8}.pitch-bench-label{font-family:inherit;font-size:7px;letter-spacing:1.1px;fill:#e9f1de}.observer-capture .pitch{object-fit:contain}.full-pitch{background:#87a976}.field-identifiers{inset:86px 3.5% auto;opacity:.85}.field-identifiers span{padding:5px 8px;font-size:9px}
/* Saisie en étapes : les choix suivants apparaissent après le numéro. */
dialog.flow-dialog{width:min(720px,calc(100vw - 30px))}.flow-dialog .dialog-header h2{font-size:23px}.flow-progress{display:flex;gap:7px;margin:-2px 0 20px;flex-wrap:wrap}.flow-progress span{font-size:10px;border:1px solid #e3e9d9;border-radius:6px;padding:7px 10px;color:#93a183;background:#f8faf3}.flow-progress .current{background:#e8f5d1;border-color:#c3d99d;color:#4c6c31;font-weight:700}.flow-team{display:flex;gap:7px;align-items:center;color:var(--team);font-size:11px;font-weight:650;margin-bottom:12px}.flow-team i{width:7px;height:7px;border-radius:50%;background:var(--team)}.jersey-entry{display:grid;grid-template-columns:105px 80px 1fr 35px;align-items:center;gap:12px;background:#f3f7ec;border:1px solid #dde8cc;border-radius:9px;padding:10px 15px}.jersey-entry>span{font-size:10px;color:#8a9979}.jersey-entry output{font-size:33px;line-height:1.2;font-weight:650;color:#294a31;font-variant-numeric:tabular-nums}.jersey-entry small{font-size:10px;color:#70875b;line-height:1.6}.jersey-entry kbd{text-align:center;font-size:12px;background:#fff;min-height:27px;padding:6px}.flow-hint{font-size:10px!important;color:#8f9e7d;line-height:1.7;margin:11px 0 15px}.flow-players{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.flow-player{display:flex;align-items:center;text-align:left;position:relative;gap:9px;border:1px solid #e0e8d5;background:#fbfcf8;border-radius:8px;min-height:74px;padding:12px 12px 11px}.flow-player>b{font-size:19px;font-weight:650;min-width:37px;letter-spacing:-.5px}.flow-player>span{font-size:10px;line-height:1.5;color:#7c8f68;overflow-wrap:anywhere;min-width:0;padding-top:5px}.flow-player kbd{position:absolute;top:4px;right:4px;font-size:8px;padding:1px 4px;background:white}.flow-player small{position:absolute;bottom:4px;right:6px;font-size:7px;color:#98ac7e}.flow-player:hover,.flow-player.typed{border-color:#a3be7d;background:#ecf5dd}.flow-unknown{display:flex;align-items:center;gap:10px;font-size:10px;color:#9ba68e;margin:14px 0 0;padding:6px 0}.flow-unknown kbd{font-size:8px}.flow-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.flow-choice{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:13px;padding:23px 20px 20px;min-height:157px;text-align:left;border:1px solid #dce6ce;background:#f6f9ef;border-radius:11px}.flow-choice:hover{background:#e7f3d3;border-color:#acc789}.flow-choice>.icon{width:26px;height:26px;color:#8ba66b}.flow-choice strong{font-size:18px;font-weight:650}.flow-choice>span{font-size:10px;line-height:1.7;color:#889c73}.flow-choice>.button-shortcut{width:25px;height:25px;font-size:12px;right:8px;top:8px}.flow-footer-hint{margin-left:auto;font-size:9px;color:#a1ab96;max-width:180px;line-height:1.5}.flow-dialog .dialog-footer{gap:9px}.flow-dialog .dialog-footer>.button{font-size:11px}
@keyframes source-pulse{50%{opacity:.3}}
@media(max-width:1050px){.home-shell{padding:24px}.home-intro h1{font-size:29px}.home-start{flex-wrap:wrap}.home-match-fields{flex-basis:100%}.home-start-button{margin-left:auto}.source-buttons{flex-wrap:wrap;justify-content:flex-end}.home-teams{gap:24px}.home-team-panel{padding:18px}}
@media(max-width:700px){.home-shell{padding:18px}.home-header{margin-bottom:28px}.home-header>.button{font-size:9px;padding:9px}.home-brand strong{font-size:11px;letter-spacing:1px}.home-brand small{font-size:6px;letter-spacing:1px}.home-brand>span{width:36px;height:42px;font-size:33px}.home-intro h1{font-size:25px}.roster-source{flex-wrap:wrap;padding:15px}.source-buttons{justify-content:flex-start}.home-teams{gap:14px}.home-team-panel{padding:13px}.home-side{display:none}.home-team-heading select{font-size:13px}.roster-heading span{display:none}.home-roster span{font-size:10px}.home-roster b{font-size:10px;min-width:18px}.home-match-fields{grid-template-columns:1fr 1fr}.home-versus{display:none}.flow-players{grid-template-columns:repeat(2,minmax(0,1fr))}.jersey-entry{grid-template-columns:80px 60px 1fr 26px;gap:7px;padding:10px}.jersey-entry output{font-size:27px}.jersey-entry>span{font-size:8px}.jersey-entry small{font-size:9px}.flow-choice-grid{grid-template-columns:1fr}.flow-choice{min-height:97px;padding:18px;gap:8px}.flow-choice>.icon{display:none}.flow-footer-hint{display:none}.flow-dialog .dialog-header h2{font-size:20px}.flow-progress span{font-size:9px;padding:6px 8px}}

/* An unknown jersey must remain a large, accessible choice during live capture. */
.flow-dialog .flow-unknown{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:48px;padding:12px 15px;margin:0 0 12px;border:1px solid #b2c39b;border-radius:9px;background:#edf3e4;color:#294332;font-size:13px;text-align:left;cursor:pointer}.flow-dialog .flow-unknown:hover{background:#e1edce}.flow-dialog .flow-unknown:focus-visible{outline:3px solid #799b51;outline-offset:2px}

[hidden]{display:none!important}.match-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.match-list-row .match-list-item{width:100%}.match-delete{color:#a4483e}.match-trash{padding:18px;border:1px solid #dce5d1;border-radius:10px;margin:24px 0}.match-trash summary{cursor:pointer;font-weight:600}.trash-item{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid #e6ecde}.trash-item small{display:block;margin-top:4px;color:#718660}.report-dialog{width:min(1120px,calc(100vw - 24px))!important}.report-dialog .dialog-body>p,.report-result>p{font-size:12px;line-height:1.6;color:#718660}.report-controls{display:flex;gap:10px;margin-bottom:16px}.report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.report-group{border:1px solid #dce5d1;border-radius:9px;padding:12px;min-width:0}.report-group legend{padding:0 5px;font-size:12px;font-weight:650}.report-find{width:100%;font-size:11px;padding:8px!important;margin-bottom:8px}.report-checks{height:155px;overflow:auto}.report-option{display:flex!important;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;padding:6px 2px;cursor:pointer}.report-option input{width:15px!important;height:15px;min-width:15px;accent-color:#526e37;margin-top:1px}.report-group>button{font-size:10px;text-decoration:underline;padding:7px 0;color:#607848}.report-advanced{padding:16px;background:#f5f8ee;border-radius:9px;margin-top:15px}.report-advanced summary{cursor:pointer;font-size:12px}.report-advanced .form-grid{margin-top:16px}.report-advanced label{font-size:11px}.report-result{border-top:1px solid #dce5d1;padding-top:18px;margin-top:15px}#report-count{font-size:18px;font-weight:650}.report-result .table-scroll{max-height:300px;overflow:auto}.report-result table{font-size:10px;width:100%;border-collapse:collapse}.report-result th,.report-result td{padding:8px;text-align:left;border-bottom:1px solid #e1e8d7}.report-downloads{flex-wrap:wrap!important;gap:8px}.report-downloads .button{font-size:11px}.report-dialog .dialog-body{max-height:calc(92vh - 185px)}@media(max-width:1000px){.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.report-grid{grid-template-columns:1fr}.match-list-row{grid-template-columns:1fr}.match-delete{justify-self:end}}

.report-dialog[open]{display:flex;flex-direction:column;overflow:hidden;height:min(92dvh,1000px)}.report-dialog>.dialog-header,.report-dialog>.dialog-footer{flex-shrink:0;position:static}.report-dialog>.dialog-body{flex:1;min-height:0;max-height:none!important;overflow:auto}

/* Capture layout: pitch flush left, comparisons right, history below. */
body.pitch-mode{overflow:auto;background:#eef3e8}.observer-capture{height:auto;min-height:100dvh;overflow:visible;background:#eef3e8}.observer-capture>.match-hud{position:sticky;inset:auto;top:0}.capture-dashboard{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;padding:12px 12px 0 0;align-items:start}.capture-field-column{min-width:0;background:#fcfdf9;border:1px solid #dbe5d2;border-left:0;border-radius:0 10px 10px 0;overflow:visible}.capture-field-column .full-pitch{position:relative;inset:auto;width:100%;aspect-ratio:1000/520;z-index:1}.capture-field-column .full-pitch .pitch{width:100%;height:auto;aspect-ratio:1000/520;max-height:none;display:block}.capture-field-column .field-identifiers{inset:12px 2.4% auto}.capture-field-column .field-identifiers span{font-size:9px;padding:4px 8px}.capture-field-column>.capture-toolbar{position:static;inset:auto;height:auto;min-height:52px;flex-wrap:wrap;padding:10px 12px;border-radius:0 0 10px 0;box-shadow:none;border-top:1px solid #dfe8d6}.capture-field-column .capture-guidance{max-width:none;font-size:10px}.capture-field-column .capture-buttons{flex-wrap:wrap}.capture-field-column>.hud-penalties{position:static;max-width:none;padding:0 12px;display:flex;flex-wrap:wrap;gap:6px}.capture-field-column>.hud-penalties:empty{display:none}.capture-legend{padding:12px 15px;background:#fcfdf9;border-top:1px solid #dce5d1;font-size:10px;line-height:1.5}.legend-teams,.legend-actions{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap}.legend-teams{font-weight:650;margin-bottom:8px}.legend-teams span,.legend-actions span{display:inline-flex;align-items:center;gap:6px}.legend-teams i{width:10px;height:10px;border-radius:50%;display:inline-block}.legend-actions svg{width:17px;height:17px;flex-shrink:0}.legend-actions{color:#627c55}.live-stats{background:#fcfdf9;border:1px solid #dbe5d2;border-radius:10px;padding:17px 16px;min-width:0}.live-stats>header{display:flex;align-items:baseline;gap:10px;justify-content:space-between;margin-bottom:16px}.live-stats h2{font-size:18px}.live-stats>header small{font-size:9px;color:#8a9c78}.live-stats-teams{display:flex;justify-content:space-between;gap:18px;padding-bottom:14px}.live-stats-teams strong{display:flex;align-items:center;gap:6px;font-size:11px;line-height:1.5;max-width:48%}.live-stats-teams strong:last-child{text-align:right;flex-direction:row-reverse}.live-stats-teams i{display:block;background:var(--team);width:9px;height:9px;border-radius:50%;flex-shrink:0}.live-stat-row{border-top:1px solid #e0e8d6;padding:10px 0}.live-stat-row>span{display:block;text-align:center;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#81986e;margin-bottom:8px}.live-stat-row>div{display:flex;gap:8px;align-items:center;justify-content:space-between}.live-stat-row b{font-size:17px;min-width:42px;font-variant-numeric:tabular-nums}.live-stat-row b:last-child{text-align:right}.live-stat-bars{display:flex;gap:3px;height:6px;border-radius:2px;overflow:hidden;flex:1}.live-stat-bars i{height:6px}.capture-history,.capture-player-stats{margin:20px 12px 0 0;padding:22px;background:#fcfdf9;border:1px solid #dbe5d2;border-left:0;border-radius:0 10px 10px 0;scroll-margin-top:90px}.capture-history .section-heading{margin-bottom:10px}.capture-history h2,.capture-player-stats h2{font-size:20px}.capture-history>p{font-size:11px;color:#8b9f77;margin-bottom:12px}.capture-history .timeline{max-height:none;overflow:visible}.capture-history .timeline-empty{min-height:120px}.capture-history .event{width:100%}.capture-history .event-body{flex:1}.capture-player-stats{margin-bottom:24px}.capture-player-stats .player-table-card{margin-top:15px}.capture-inline-notice,.capture-inline-sample{font-size:11px;line-height:1.6;padding:10px 15px;color:#80956c}.capture-inline-notice button{margin-left:10px;text-decoration:underline}
@media(min-width:1600px){.capture-dashboard{grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:1100px){.capture-dashboard{grid-template-columns:minmax(0,1fr) 270px;gap:10px;padding-right:10px}.live-stats{padding:14px 12px}.live-stats h2{font-size:16px}.live-stat-row{padding:8px 0}.capture-field-column .capture-guidance{width:100%}.capture-field-column .capture-buttons{justify-content:flex-end;width:100%}.capture-legend{padding:10px}.legend-actions{gap:7px 10px;font-size:9px}}
@media(max-width:780px){.capture-dashboard{grid-template-columns:minmax(0,1fr);padding-right:0;gap:12px}.capture-field-column{border-right:0;border-radius:0}.live-stats{margin:0 10px}.capture-history,.capture-player-stats{margin-right:0;border-right:0;border-radius:0;padding:16px}.capture-field-column .field-identifiers{inset:9px 2.4% auto}.capture-field-column .field-identifiers span{font-size:8px}.capture-history,.capture-player-stats{scroll-margin-top:76px}.capture-player-stats .section-heading{flex-wrap:wrap;gap:10px}}

.capture-history .timeline{min-height:0}

.embedded-analysis{background:#fcfdf9;border:1px solid #dbe5d1;border-radius:12px;overflow:hidden;margin-bottom:24px}.embedded-analysis>.dialog-header{position:static}.embedded-analysis>.dialog-body{overflow:visible;max-height:none!important}.embedded-analysis .report-result .table-scroll{max-height:520px}.embedded-analysis .report-downloads{justify-content:flex-start;flex-wrap:wrap;position:sticky;bottom:0}.embedded-analysis .report-downloads .button{font-size:11px}.manager-explanation{padding:14px;background:#edf5df;border-radius:8px;color:#38542d!important}.report-map-section,.report-statistics-section{margin:24px 0;border-top:1px solid #dfe7d6;padding-top:20px}.report-map-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.report-map-header label{font-size:11px;display:flex;gap:8px;align-items:center}.report-map-header select{padding:8px;max-width:240px}.report-field-svg{width:100%;height:auto;display:block;border:1px solid #dae4cf;border-radius:8px}.report-map-marker{cursor:pointer}.report-map-marker:hover{filter:drop-shadow(0 0 3px #173521)}#report-map-selection{font-size:12px;line-height:1.6;color:#526f40;padding:12px;background:#f0f5e8;border-radius:7px}.report-statistics-section h3{margin-bottom:14px}.report-pagination{display:flex;align-items:center;gap:15px;margin:14px 0}.manager-document{margin:0;padding:24px;background:#eff4e8}.manager-document #manager-root{max-width:1500px;margin:0 auto}.manager-document .embedded-analysis{margin:0}.manager-document .dialog-header h2{font-size:25px}@media(max-width:700px){.manager-document{padding:8px}.report-map-header label{flex-wrap:wrap}.embedded-analysis .report-downloads{position:static}.report-pagination{flex-wrap:wrap}}

#report-image-preview{margin:18px 0;padding:14px;border:1px solid #d5e2c9;background:white;border-radius:8px;scroll-margin-top:20px}#report-image-preview figcaption{font-weight:650;margin-bottom:12px}#report-image-preview img{display:block;max-width:100%;height:auto;margin-bottom:12px}
