:root{--grass-1:#3f9a3c;--grass-2:#368a34;--chalk:#ffffffd9;--shirt:#d7262e;--shirt-dark:#9d151b;--shirt-ink:#fff;--shirt-ink-shadow:#00000080;--keeper:#26d7cf;--keeper-dark:#16827d;--keeper-ink:#222;--keeper-ink-shadow:#ffffff80;--wood-1:#a8743f;--wood-2:#8a5a2b;--wood-dark:#5c3a18;--paper:#fbf8ef;--ink:#2b2b2b;--led:#ffb52e;--board:#1b1d1f}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;color:var(--ink);padding-bottom:env(safe-area-inset-bottom);background:radial-gradient(at top,#ffffff59,#0000 60%),repeating-linear-gradient(45deg,#00000006 0 2px,#0000 2px 6px),#cfd3cf;flex-direction:column;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:flex}main{max-width:820px;margin:0 auto;padding:12px 16px 24px}#root{flex-direction:column;flex:1;display:flex;overflow-x:clip}.app-header,.scoreboard,main{width:100%}.topbar{z-index:10;width:100%;position:sticky;top:0}main:has(>.match-view){flex-direction:column;flex:1;padding-bottom:10px;display:flex}.match-view{flex-direction:column;flex:1;display:flex}.match-view .match-layout{margin-block:auto}main.slide-from-right{animation:.28s cubic-bezier(.2,.8,.2,1) tab-in-right}main.slide-from-left{animation:.28s cubic-bezier(.2,.8,.2,1) tab-in-left}@keyframes tab-in-right{0%{opacity:0;translate:32px}}@keyframes tab-in-left{0%{opacity:0;translate:-32px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{font:inherit;color:#fff;text-shadow:0 -1px #00000059;cursor:pointer;-webkit-tap-highlight-color:transparent;border:1px solid #00000073;border-radius:10px;padding:10px 16px;font-size:15px;font-weight:700;transition:transform 50ms,box-shadow 50ms;box-shadow:inset 0 1px #ffffff73,0 2px 3px #0000004d}.btn:disabled{opacity:.45;cursor:default}.btn:active{transform:translateY(1px);box-shadow:inset 0 2px 4px #00000059}.btn-go{background:linear-gradient(#5cc25a,#2f8a2d)}.btn-amber{background:linear-gradient(#ffc75a,#e08a00)}.btn-dark{background:linear-gradient(#6a6f75,#3d4146)}.btn-red{background:linear-gradient(#ea5a5a,#b52222)}.btn-small{border-radius:8px;padding:5px 10px;font-size:13px}.app-header{max-width:820px;padding:calc(7px + env(safe-area-inset-top)) 14px 11px;color:var(--shirt-ink);background:linear-gradient(color-mix(in srgb, var(--shirt), #fff 30%), color-mix(in srgb, var(--shirt), #fff 10%) 48%, var(--shirt) 50%, color-mix(in srgb, var(--shirt), #000 18%));border-bottom:1px solid var(--shirt-dark);flex-direction:column;gap:7px;margin:0 auto;display:flex;box-shadow:inset 0 1px #ffffff73}.app-header-row{justify-content:space-between;align-items:center;gap:10px;padding:0 4px;display:flex}.brand{letter-spacing:.01em;align-items:center;gap:10px;margin:0;font-size:24px;font-weight:800;line-height:1;display:flex}.brand-name{text-shadow:0 -1px 0 var(--shirt-ink-shadow), 0 1px 2px #0003}.brand-badge{background:linear-gradient(#fff,#dfe2e5);border-radius:10px;padding:2px;display:flex;box-shadow:0 1px 3px #00000073}.brand-icon{background:linear-gradient(#3a3e42, var(--board));border-radius:8px;display:block}.lang-picker,.tabs{background:#00000040;gap:3px;padding:3px;display:flex;box-shadow:inset 0 1px 3px #00000073,0 1px #ffffff4d}.lang-picker{border-radius:999px}.lang,.tab{font:inherit;color:var(--shirt-ink);text-shadow:0 -1px 0 var(--shirt-ink-shadow);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;font-weight:700}.lang{letter-spacing:.08em;border-radius:999px;padding:5px 11px;font-size:12px}.lang.active,.tab.active{color:color-mix(in srgb, var(--shirt-dark), #000 50%);text-shadow:0 1px #fff;background:linear-gradient(#fff,#f1f2f3 50%,#e2e4e6 51%,#d3d6d9);box-shadow:inset 0 1px #fff,0 1px 2px #00000073}.tabs{isolation:isolate;border-radius:12px;position:relative}.tab{border-radius:9px;flex:1;padding:7px 4px;font-size:14px;transition:color .2s,text-shadow .2s;position:relative}.tab.active{box-shadow:none;background:0 0}.tab:before{content:"";z-index:-1;border-radius:inherit;background:linear-gradient(#ffffff4d,#ffffff1f 50%,#ffffff0a 51%,#ffffff1a);position:absolute;inset:0;box-shadow:inset 0 1px #ffffff59,0 1px 2px #00000059}.tab:active:not(.active):before{background:#00000026;box-shadow:inset 0 1px 3px #0006}.tab-thumb{width:calc(33.3333% - 4px);translate:calc(var(--tab-index) * (100% + 3px)) 0;background:linear-gradient(#fff,#f1f2f3 50%,#e2e4e6 51%,#d3d6d9);border-radius:9px;transition:translate .28s cubic-bezier(.2,.8,.2,1);position:absolute;top:3px;bottom:3px;left:3px;box-shadow:inset 0 1px #fff,0 1px 2px #00000073}.scoreboard{background:repeating-linear-gradient(90deg, #ffffff08 0 1px, transparent 1px 4px), linear-gradient(#2b2e31, var(--board));color:#eee;border-bottom:4px solid #0e0f10;justify-content:space-between;align-items:center;gap:10px;max-width:820px;margin:0 auto;padding:10px 16px;display:flex;box-shadow:0 4px 10px #00000059}@media (width>=820px){.scoreboard{border-radius:0 0 14px 14px}}.clock-panel{flex-direction:column;gap:3px;min-width:0;display:flex}.match-label{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;color:var(--led);font-size:11px;font-weight:700;overflow:hidden}.clock-buttons{flex:none;gap:6px;display:flex}.clock-buttons .btn{white-space:nowrap;padding:10px 12px;font-size:14px}.swap-btn{justify-content:center;align-items:center;display:flex;position:relative}.clock-buttons .swap-btn{width:42px;padding:0}.swap-btn svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 -1px #00000059);width:22px;height:22px}.swap-btn select{opacity:0;cursor:pointer;width:100%;height:100%;font-size:16px;position:absolute;inset:0}.clock{letter-spacing:.06em;color:#ffb52e8c;font-variant-numeric:tabular-nums;background:#0a0a0a;border-radius:6px;align-self:flex-start;padding:2px 8px;font-family:Courier New,ui-monospace,monospace;font-size:28px;font-weight:700;box-shadow:inset 0 2px 6px #000000e6,0 1px #ffffff14}.clock.running{color:var(--led);text-shadow:0 0 6px #ffb52eb3,0 0 14px #ff8c0059}.match-view{--chrome:338px;--chrome-lg:248px}.match-layout{grid-template-columns:minmax(0,1fr) 100px;align-items:stretch;gap:10px;display:grid}.pitch-wrap{background:linear-gradient(#2c6a2a,#1e4d1d);border-radius:14px;padding:6px;box-shadow:0 6px 16px #00000059,inset 0 1px #ffffff26;container-type:inline-size}.pitch{aspect-ratio:2/3;cursor:pointer;-webkit-tap-highlight-color:transparent;background:radial-gradient(ellipse at center, transparent 55%, #00000047), repeating-linear-gradient(0deg, #0000000a 0 1px, transparent 1px 3px), repeating-linear-gradient(180deg, var(--grass-1) 0 12.5%, var(--grass-2) 12.5% 25%);width:100%;box-shadow:inset 0 0 0 3px var(--chalk), inset 0 0 20px #00000059;border-radius:6px;margin:0 auto;position:relative;overflow:hidden}@supports (height:1cqw){.pitch{aspect-ratio:auto;height:max(150cqw, min(calc(100vh - var(--chrome)), 200cqw));height:max(150cqw, min(calc(100dvh - var(--chrome)), 200cqw))}}@media (width>=600px){.match-layout{grid-template-columns:auto 150px;justify-content:center}.pitch-wrap{container-type:normal}.pitch{aspect-ratio:2/3;width:auto;height:max(420px, calc(100vh - var(--chrome-lg)));height:max(420px, calc(100dvh - var(--chrome-lg)))}}.line{pointer-events:none;position:absolute}.halfway{background:var(--chalk);height:3px;margin-top:-1.5px;top:50%;left:0;right:0}.circle{aspect-ratio:1;border:3px solid var(--chalk);border-radius:50%;width:28%;top:50%;left:50%;transform:translate(-50%,-50%)}.spot{background:var(--chalk);border-radius:50%;width:8px;height:8px;top:50%;left:50%;transform:translate(-50%,-50%)}.box{border:3px solid var(--chalk);width:40%;height:11%;left:30%}.box.top{top:-3px}.box.bottom{bottom:-3px}.goal{pointer-events:none;background:repeating-linear-gradient(90deg,#ffffffb3 0 1px,#0000 1px 5px),#ffffff40;border:2px solid #fff;width:20%;height:8px;position:absolute;left:40%}.goal.top{border-top:0;top:0}.goal.bottom{border-bottom:0;bottom:0}.pitch.basketball{background:radial-gradient(#0000 55%,#00000040),repeating-linear-gradient(90deg,#00000012 0 1px,#0000 1px 7.1%),repeating-linear-gradient(0deg,#ffffff0d 0 12%,#0000000a 12% 24%),linear-gradient(#d9a066,#c98b50)}.basketball .circle{width:24%}.hoop-end,.goal-end{pointer-events:none;position:absolute;inset:0}.hoop-end.bottom,.goal-end.bottom{transform:scaleY(-1)}.hoop-end .three{aspect-ratio:1;border:3px solid var(--chalk);border-radius:50%;width:90%;top:5.6%;left:50%;transform:translate(-50%,-50%)}.hoop-end .key{border:3px solid var(--chalk);background:#962d1473;width:33%;height:21%;top:-3px;left:33.5%}.hoop-end .free-throw{aspect-ratio:1;border:3px solid var(--chalk);clip-path:inset(50% 0 0);border-radius:50%;width:24%;top:21%;left:50%;transform:translate(-50%,-50%)}.backboard{background:#fff;width:20%;height:4px;position:absolute;top:3.5%;left:40%;box-shadow:0 1px 2px #0006}.hoop{aspect-ratio:1;border:3px solid #f26b1d;border-radius:50%;width:7%;position:absolute;top:5.6%;left:50%;transform:translate(-50%,-50%)}.pitch.handball{background:radial-gradient(#0000 55%,#00000040),repeating-linear-gradient(0deg,#00000008 0 1px,#0000 1px 3px),linear-gradient(#2f72b8,#2966a6)}.centre-mark{background:var(--chalk);width:3px;height:4%;top:50%;left:50%;transform:translate(-50%,-50%)}.goal-end .area{border:3px solid var(--chalk);background:#e8913a;border-top:0;border-radius:0 0 40% 40%/0 0 100% 100%;width:75%;height:15%;top:-3px;left:50%;transform:translate(-50%)}.goal-end .free-throw{border:3px dashed var(--chalk);border-top:0;border-radius:0 0 43% 43%/0 0 100% 100%;width:105%;height:22.5%;top:-3px;left:50%;transform:translate(-50%)}.goal-end .seven{background:var(--chalk);width:5%;height:3px;top:17.5%;left:47.5%}.goal-end .goal{border-top:0;width:15%;top:0;left:42.5%}.pitch-count{color:#ffffffe6;text-shadow:0 1px 2px #0009;pointer-events:none;font-size:12px;font-weight:700;position:absolute;bottom:14px;right:10px}.token{width:72px;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:2px;display:flex}.pitch .token{transition:left .25s,top .25s;position:absolute;transform:translate(-50%,-50%)}.shirt-wrap{width:44px;height:41px;position:relative}.shirt{width:100%;height:100%;fill:var(--shirt);stroke:var(--shirt-dark);stroke-width:2px;filter:drop-shadow(0 3px 2px #0006)}.shirt-wrap:after{content:"";pointer-events:none;background:radial-gradient(70% 55% at 30% 25%,#fff6,#0000 70%),linear-gradient(#0000 60%,#0000001f);position:absolute;inset:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 60'%3E%3Cpath d='M22 2 L10 6 L1 18 L10 26 L14 22 L14 58 L50 58 L50 22 L54 26 L63 18 L54 6 L42 2 Q32 10 22 2 Z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 60'%3E%3Cpath d='M22 2 L10 6 L1 18 L10 26 L14 22 L14 58 L50 58 L50 22 L54 26 L63 18 L54 6 L42 2 Q32 10 22 2 Z'/%3E%3C/svg%3E") 50%/contain no-repeat}.initials{text-align:center;color:var(--shirt-ink);text-shadow:0 1px 1px var(--shirt-ink-shadow);font-size:14px;font-weight:800;position:absolute;top:14px;left:0;right:0}.name{color:#222;white-space:nowrap;text-overflow:ellipsis;background:linear-gradient(#fff,#e6e6e6);border-radius:999px;max-width:100%;padding:1px 6px;font-size:12px;font-weight:700;overflow:hidden;box-shadow:0 1px 2px #0006}.time,.spell{font-variant-numeric:tabular-nums;color:var(--led);background:#0a0a0acc;border-radius:4px;padding:0 5px;font-family:Courier New,ui-monospace,monospace;font-size:12px;font-weight:700}.spell{color:#9fe39c;font-size:11px}.token.selected{animation:1s ease-in-out infinite bob}.token.selected .shirt{stroke:#ffe14d;stroke-width:4px;filter:drop-shadow(0 0 6px #ffe14d)}.token.selected .name{background:linear-gradient(#fff6b8,#ffe14d)}@media (width>=600px){.token{width:88px}.shirt-wrap{width:52px;height:49px}.initials{font-size:16px;top:17px}.name{font-size:13px}}@keyframes bob{0%,to{translate:0}50%{translate:0 -3px}}@media (prefers-reduced-motion:reduce){.pitch .token{transition:none}.token.selected,main.slide-from-right,main.slide-from-left{animation:none}.tab,.tab-thumb{transition:none}}.token.most .time{color:#fff;background:#d9480f;box-shadow:0 0 0 2px #fff}.token.most:not(.selected) .shirt{filter:drop-shadow(0 0 5px #ff7a2e)drop-shadow(0 3px 2px #0006)}.token.least .time{color:#fff;background:#1c64d6;box-shadow:0 0 0 2px #fff}.token.least:not(.selected) .shirt{filter:drop-shadow(0 0 5px #4d9bff)drop-shadow(0 3px 2px #0006)}.token.keeper .shirt{fill:var(--keeper);stroke:var(--keeper-dark)}.token.keeper .initials{color:var(--keeper-ink);text-shadow:0 1px 1px var(--keeper-ink-shadow)}.token.keeper-spot .shirt{fill:color-mix(in srgb, var(--keeper) 18%, transparent);stroke:var(--keeper);stroke-width:2.5px;stroke-dasharray:5 4;filter:none}.keeper-spot .shirt-wrap:after{display:none}.keeper-spot .name{opacity:.8}.pitch-cancel{z-index:2;position:absolute;top:8px;left:50%;transform:translate(-50%)}.pitch-cancel:active{transform:translate(-50%,1px)}.bench-col{flex-direction:column;min-height:0;display:flex;position:relative}.plaque{z-index:1;white-space:nowrap;letter-spacing:.12em;text-transform:uppercase;color:#3a2a0c;text-shadow:0 1px #ffffff80;background:linear-gradient(#f3dc97,#c9a54c);border:1px solid #8c6d22;border-radius:4px;margin:0;padding:3px 10px;font-size:12px;position:absolute;top:0;left:50%;transform:translate(-50%,-40%);box-shadow:0 2px 3px #00000059}.bench{-webkit-tap-highlight-color:transparent;background:repeating-linear-gradient(0deg, #0000000d 0 2px, transparent 2px 23px), repeating-linear-gradient(90deg, transparent 0 30px, #00000040 30px 32px), linear-gradient(90deg, var(--wood-1), var(--wood-2));border:1px solid var(--wood-dark);border-radius:10px;flex:1;min-height:200px;position:relative;overflow:hidden;box-shadow:inset 1px 0 #ffffff4d,inset 0 -10px 12px -8px #00000073,0 6px 12px #0000004d}.bench-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;align-items:center;gap:6px;padding:20px 4px 12px;display:flex;position:absolute;inset:0;overflow-y:auto}.bench-empty{text-align:center;color:#fbe9cc;text-shadow:0 1px 1px #0009;margin:8px 4px;font-size:12px;font-weight:700}.empty{text-align:center;color:#555;font-size:14px}.clipboard{background:linear-gradient(var(--paper), var(--paper)) padding-box;border:10px solid #9b7442;border-top-width:16px;border-radius:12px;margin-top:26px;padding:14px 14px 16px;position:relative;box-shadow:0 6px 14px #0000004d,inset 0 0 0 1px #e2dccb}.clipboard:before{content:"";background:linear-gradient(#e9e9e9,#9a9a9a);border:1px solid #666;border-radius:6px 6px 3px 3px;width:90px;height:20px;position:absolute;top:-22px;left:50%;transform:translate(-50%);box-shadow:0 2px 3px #00000059}.panel h2{margin:0;font-size:18px;font-weight:800}.panel{max-width:560px;margin-left:auto;margin-right:auto}.add-form{gap:8px;margin:10px 0 8px;display:flex}.add-form input{min-width:0;font:inherit;background:#fff;border:1px solid #b9b19b;border-radius:8px;flex:1;padding:10px 12px;font-size:16px;box-shadow:inset 0 2px 3px #0000001f}.roster-list{margin:0;padding:0;list-style:none;position:relative}.roster-list li{background:var(--paper);border-bottom:1px solid #c9d6ea;align-items:center;gap:10px;min-height:44px;padding:0 4px;display:flex;position:relative}.roster-list li.moving{z-index:1;box-shadow:0 2px 8px #0003}.roster-list li.empty{justify-content:center}.present-check{accent-color:#2f8a2c;flex:none;width:22px;height:22px;margin:0}.roster-list li.absent .roster-name{color:#8a93a8}.roster-list li.absent .roster-time{opacity:.5}.roster-name{color:#1c3d8f;text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:Marker Felt,Comic Sans MS,Chalkboard SE,cursive;font-size:18px;overflow:hidden}.roster-time{font-variant-numeric:tabular-nums;color:#555;font-family:Courier New,ui-monospace,monospace;font-weight:700}.hint-text{color:#666;margin:4px 0 10px;font-size:13px}.panel-actions{justify-content:flex-end;margin-top:12px;display:flex}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.cup-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.cup-table th,.cup-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #c9d6ea;padding:6px}.cup-table td{color:#555;font-family:Courier New,ui-monospace,monospace;font-weight:700}.cup-table .col-name{text-align:left;color:#1c3d8f;background:var(--paper);text-overflow:ellipsis;max-width:120px;font-family:Marker Felt,Comic Sans MS,Chalkboard SE,cursive;font-size:16px;font-weight:400;position:sticky;left:0;overflow:hidden}.cup-table th.col-name{color:#444;font-family:inherit;font-size:13px;font-weight:700}.cup-table th{color:#444;font-size:13px}.cup-table .col-live{color:#2f8a2d}.cup-table .col-total{color:#222;background:#ffd54d40}.match-btn{font:inherit;color:#1c3d8f;cursor:pointer;background:linear-gradient(#fff,#ece6d4);border:1px solid #b9b19b;border-radius:6px;padding:3px 8px;font-weight:700;box-shadow:0 1px 2px #0003}.modal-backdrop{z-index:20;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{width:100%;max-width:440px;max-height:calc(100vh - 48px);margin:0;overflow-y:auto}.modal h3{margin:0 0 4px;font-size:18px}.edit-list{margin:0;padding:0;list-style:none}.edit-list li{border-bottom:1px solid #c9d6ea;align-items:center;gap:8px;padding:6px 0;display:flex}.time-input{color:#555;align-items:center;gap:4px;font-size:13px;display:flex}.time-input input{width:3.2em;font:inherit;text-align:right;background:#fff;border:1px solid #b9b19b;border-radius:6px;padding:6px;font-size:16px;box-shadow:inset 0 2px 3px #0000001f}.modal-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.modal-actions .spacer{flex:1}.ghost{animation:none}.ghost .shirt{filter:drop-shadow(0 10px 8px #00000073)}.ghost-on .shirt{stroke:#7df27a;stroke-width:3px}.ghost-off .shirt{opacity:.85}.toggle{cursor:pointer;border-top:1px solid #ddd6c4;align-items:flex-start;gap:10px;margin-top:14px;padding-top:12px;display:flex}.toggle input{accent-color:#2f8a2c;flex:none;width:22px;height:22px;margin:0}.toggle span{flex-direction:column;gap:2px;display:flex}.toggle small{color:#666;font-size:13px}.sport-picker{border-top:1px solid #ddd6c4;flex-direction:column;gap:10px;margin-top:14px;padding-top:12px;display:flex}.sport-picker>span{flex-direction:column;gap:2px;display:flex}.sport-picker small{color:#666;font-size:13px}.sports{border:1px solid #5d6166;border-radius:10px;display:flex;overflow:hidden}.sport{font:inherit;color:#3d4146;text-shadow:0 1px #fffc;cursor:pointer;-webkit-tap-highlight-color:transparent;background:linear-gradient(#fdfdfd,#d9dcdf);border:0;border-left:1px solid #8a8f94;flex:1;padding:8px 4px;font-size:14px;font-weight:700}.sport:first-child{border-left:0}.sport.active{color:#fff;text-shadow:0 -1px #0006;background:linear-gradient(#3c8f3a,#2c6a2a);box-shadow:inset 0 2px 4px #00000059}.shirt-picker{border-top:1px solid #ddd6c4;margin-top:14px;padding-top:12px}.shirt-picker-head{align-items:center;gap:10px;display:flex}.shirt-picker-head>span:first-child{flex-direction:column;flex:1;gap:2px;display:flex}.shirt-picker-head small{color:#666;font-size:13px}.shirt-preview{flex:none;gap:4px;display:flex}.mini-shirt{width:34px;height:32px;fill:var(--shirt);stroke:var(--shirt-dark);stroke-width:2px;filter:drop-shadow(0 2px 1px #0000004d)}.mini-shirt.keeper{fill:var(--keeper);stroke:var(--keeper-dark)}.swatches{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.swatch{cursor:pointer;-webkit-tap-highlight-color:transparent;border:2px solid #00000059;border-radius:50%;width:34px;height:34px;padding:0;position:relative;box-shadow:inset 0 2px 3px #ffffff59,0 1px 2px #0000004d}.swatch[aria-checked=true],.swatch.checked{border-color:#fff;box-shadow:0 0 0 3px #2b2b2b,0 2px 4px #00000059}.swatch-custom{background:conic-gradient(#e33,#ec3,#3c5,#3ce,#35e,#c3e,#e33);overflow:hidden}.swatch-custom input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.match-fields{grid-template-columns:auto 4.2em 1fr;align-items:end;gap:8px;margin:10px 0;display:grid}.match-fields>*{align-self:end}.match-fields label{flex-direction:column;gap:2px;min-width:0;display:flex}.match-fields small{color:#666;font-size:12px;font-weight:700}.match-fields input{width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #b9b19b;border-radius:8px;height:42px;padding:0 8px;font-size:16px;box-shadow:inset 0 2px 3px #0000001f}.mf-field input{text-align:center;text-transform:uppercase}@media (width<=480px){.match-fields{grid-template-columns:auto 4.2em}.mf-opponent{grid-column:1/-1}}.panel-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.match-list{margin:0;padding:0;list-style:none}.match-list li.empty{padding:10px 0}.match-row{width:100%;min-height:44px;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-bottom:1px solid #c9d6ea;align-items:center;gap:10px;padding:0 4px;display:flex}.mr-no{color:#888;flex:none;width:2.2em;font-size:13px;font-weight:700}.mr-kickoff,.mr-status{font-variant-numeric:tabular-nums;color:#555;flex:none;font-family:Courier New,ui-monospace,monospace;font-weight:700}.mr-opponent{color:#1c3d8f;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-family:Marker Felt,Comic Sans MS,Chalkboard SE,cursive;font-size:18px;overflow:hidden}.mr-field{text-align:center;color:#3a2a0c;background:linear-gradient(#f3dc97,#c9a54c);border-radius:4px;flex:none;min-width:2.6em;padding:1px 4px;font-size:13px;font-weight:800}.mr-field:empty{visibility:hidden}.mr-status{text-align:right;white-space:nowrap;text-overflow:ellipsis;width:68px;font-size:12px;overflow:hidden}.match-row.live .mr-status,.match-row.next .mr-status{font-family:inherit;font-size:11px}.match-row.played .mr-opponent{color:#8a93a8}.match-row.played .mr-status:before{content:"✓ ";color:#2f8a2c}.match-row.live .mr-status{color:#2f8a2c}.match-row.next{background:#ffd54d40}.match-row.next .mr-status{color:#8c6d22}.panel-head-actions{gap:6px;display:flex}.modal .match-fields{margin-top:12px}.import-error{color:#b52222;margin:0 0 10px;font-size:13px}.file-btn{display:inline-block}.file-btn input{display:none}.import-day{margin:12px 0 2px;font-size:14px}.import-day:first-letter{text-transform:uppercase}.import-row{cursor:pointer;align-items:center;gap:10px;width:100%;display:flex}.import-row input{accent-color:#2f8a2c;flex:none;width:20px;height:20px;margin:0}.modal .toggle{margin-top:4px}
