@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/plus-jakarta-sans-cyrillic-ext-wght-normal.1p5eg27ho_atv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/plus-jakarta-sans-vietnamese-wght-normal.2gl4mcd5dm2h_.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/plus-jakarta-sans-latin-ext-wght-normal.362mv560wxbnh.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/plus-jakarta-sans-latin-wght-normal.1nsast9qgxif8.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--font:"Plus Jakarta Sans Variable","Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--ink:#0e1b36;--ink-2:#34425e;--muted:#6b7a93;--faint:#93a0b6;--bg:#f3f6fc;--surface:#fff;--surface-2:#f7f9fe;--line:#e2e8f3;--line-2:#d3dcec;--blue:#1f6bff;--blue-600:#1456e6;--blue-700:#0f45bd;--blue-50:#eaf1ff;--blue-100:#d8e5ff;--cyan:#17b5f0;--danger:#c62f3d;--danger-bg:#fff3f4;--danger-line:#ffd0d4;--r-sm:10px;--r-md:14px;--r-lg:20px;--shadow-sm:0 1px 2px #0e1b3610,0 2px 8px #0e1b3606;--shadow-md:0 2px 4px #0e1b360a,0 14px 34px -12px #1f50c82e;--shadow-lg:0 4px 10px #0e1b360d,0 28px 60px -20px #1f50c847;font-family:var(--font);color:var(--ink);background:var(--bg);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}*{box-sizing:border-box}body{background:radial-gradient(900px 420px at 88% -120px,#1f6bff1f,transparent 70%), radial-gradient(700px 380px at -8% -80px,#17b5f01a,transparent 70%), var(--bg);background-repeat:no-repeat;min-height:100vh;margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{cursor:pointer}button{color:inherit}a{color:inherit;text-decoration:none}button:disabled{opacity:.55;cursor:wait}:focus-visible{outline-offset:3px;outline:3px solid #1f6bff59}::selection{background:#1f6bff2e}.site-header{z-index:30;-webkit-backdrop-filter:saturate(1.6)blur(14px);background:#fffc;border-bottom:1px solid #e2e8f3b3;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:20px;max-width:1280px;margin:auto;padding:14px 32px;display:flex}.brand{letter-spacing:-.045em;color:var(--ink);align-items:center;gap:12px;font-size:25px;font-weight:800;display:flex}.brand-mark{filter:drop-shadow(0 6px 10px #1f6bff40);width:38px;height:40px}.brand b{background:linear-gradient(95deg,var(--cyan),var(--blue) 55%,var(--blue-700));color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:800}.arena-location{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:12px;padding:8px 16px 8px 10px;display:flex}.arena-location>svg{color:var(--blue);background:var(--blue-50);border-radius:50%;flex-shrink:0;width:34px;height:34px;padding:7px}.arena-location strong,.arena-location span{display:block}.arena-location strong{letter-spacing:-.01em;font-size:14px;font-weight:700;line-height:1.2}.arena-location span{color:var(--muted);margin-top:2px;font-size:12px;font-weight:500}.gallery-main{max-width:1280px;margin:auto;padding:32px}.gallery-filters{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);align-items:center;gap:12px;margin:0 0 30px;padding:12px;display:flex}.filter-control{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);align-items:center;gap:14px;width:300px;height:64px;padding:0 18px;transition:border-color .18s,box-shadow .18s,background .18s,transform .18s;display:flex;position:relative}.gallery-filters .filter-control:hover{background:#fff;border-color:#b9cdf3}.gallery-filters .filter-control:focus-within,.court-trigger.is-open{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px #1f6bff1a}.gallery-filters .filter-control>svg:first-child{color:var(--blue);background:var(--blue-50);border-radius:11px;flex-shrink:0;width:36px;height:36px;padding:8px}.gallery-filters .filter-control>svg:last-child{color:var(--faint);pointer-events:none;flex-shrink:0}.filter-field{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.filter-label{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);font-size:10.5px;font-weight:700}.filter-control select,.filter-control input{width:100%;height:24px;color:var(--ink);cursor:pointer;letter-spacing:-.01em;background:0 0;border:0;outline:none;min-width:0;padding:0;font-size:14.5px;font-weight:600}.filter-control select{appearance:none;width:calc(100% + 32px);padding-right:32px}.date-input-wrap{height:24px;display:block;position:relative}.date-input-wrap .date-placeholder{color:var(--ink);letter-spacing:-.01em;pointer-events:none;font-size:14.5px;font-weight:600;position:absolute;top:3px;left:0}.date-filter:not(.filled) input{color:#0000}.date-filter:not(.filled) input::-webkit-datetime-edit{opacity:0}.date-filter input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.5;padding:3px}.gallery-filters .date-filter>.filter-field{pointer-events:auto;position:static}.filter-tools{align-items:center;gap:8px;margin-left:auto;padding:0 4px;display:flex}.clear-filters{color:var(--blue);background:0 0;border:0;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:700;transition:background .15s}.clear-filters:hover{background:var(--blue-50)}.icon-button{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);justify-content:center;align-items:center;padding:10px;transition:background .15s,border-color .15s,transform .15s;display:flex}.icon-button:hover{background:var(--surface-2);border-color:var(--line-2)}.gallery-filters .refresh-button{background:var(--blue-50);width:44px;height:44px;color:var(--blue);border-color:#0000;border-radius:13px}.gallery-filters .refresh-button:hover{background:var(--blue-100);transform:rotate(30deg)}.court-picker{flex-shrink:0;position:relative}.gallery-filters .court-trigger{text-align:left;cursor:pointer;width:300px}.court-value{letter-spacing:-.01em;color:var(--ink);font-size:14.5px;font-weight:600}.court-trigger>svg:last-child{transition:transform .2s}.court-trigger.is-open>svg:last-child{transform:rotate(180deg)}.court-options{z-index:20;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);background:#fff;padding:8px;animation:.16s ease-out pop;position:absolute;top:calc(100% + 10px);left:0;right:0}.court-option{text-align:left;width:100%;min-height:48px;color:var(--ink-2);background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:11px 12px;font-size:14px;font-weight:500;transition:background .15s;display:flex}.court-option:hover,.court-option:focus-visible{background:var(--surface-2);outline:none}.court-option.selected{background:var(--blue-50);color:var(--blue-600);font-weight:700}.court-option-icon{background:var(--surface-2);width:30px;height:30px;color:var(--faint);border-radius:9px;place-items:center;display:grid}.court-option.selected .court-option-icon{background:var(--blue-100);color:var(--blue)}.court-option>svg:last-child{margin-left:auto}.court-option:focus-visible{box-shadow:inset 0 0 0 2px var(--blue)}.court-picker:focus-within{z-index:21}@keyframes pop{0%{opacity:0;transform:translateY(-6px)scale(.985)}to{opacity:1;transform:none}}.results-summary{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.results-summary h1{letter-spacing:-.035em;margin:0;font-size:24px;font-weight:800}.results-summary>span{color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:7px 13px;font-size:13px;font-weight:600}.replay-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.replay-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;box-shadow:var(--shadow-sm);padding:14px;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,border-color .22s}.replay-card:hover{box-shadow:var(--shadow-lg);border-color:#c5d6f6;transform:translateY(-4px)}.card-heading{align-items:center;gap:13px;margin:2px 2px 14px;display:flex}.court-icon{background:var(--blue-50);width:44px;height:44px;color:var(--blue);border-radius:14px;place-items:center;display:grid}.card-heading h2{letter-spacing:-.025em;margin:0 0 3px;font-size:16.5px;font-weight:800}.card-heading time{color:var(--muted);font-size:13px;font-weight:500}.replay-thumbnail{aspect-ratio:16/9;border-radius:var(--r-md);isolation:isolate;background:#0d2152;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.thumbnail-video{object-fit:cover;opacity:0;width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0}.has-frame .thumbnail-video{opacity:1}.replay-thumbnail:hover .thumbnail-video{transform:scale(1.04)}.replay-thumbnail:after{content:"";pointer-events:none;background:linear-gradient(#06112e00 45%,#06112e99);position:absolute;inset:0}.court-placeholder{background:radial-gradient(120% 120% at 15% 0,#2f6bff 0%,#173a9a 45%,#0a1a4a 100%);place-items:center;display:grid;position:absolute;inset:0}.court-lines{border:2px solid #ffffff2e;border-radius:6px;position:absolute;inset:14% 9%}.court-lines:before{content:"";border-left:2px solid #ffffff2e;position:absolute;top:0;bottom:0;left:50%}.court-lines span{border:2px solid #ffffff2e;border-radius:50%;width:18%;height:46%;position:absolute;top:27%;left:41%}.placeholder-caption{z-index:1;color:#ffffffd9;letter-spacing:.01em;font-size:12px;font-weight:600;position:absolute;bottom:13px;left:14px}.thumbnail-play{z-index:2;width:58px;height:58px;color:var(--blue);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffeb;border-radius:50%;place-items:center;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .2s,color .2s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 28px #06112e66}.thumbnail-play svg{margin-left:3px}.replay-thumbnail:hover .thumbnail-play{background:var(--blue);color:#fff;transform:translate(-50%,-50%)scale(1.1)}.duration-badge{z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-variant-numeric:tabular-nums;background:#06112eb3;border-radius:8px;padding:4px 9px;font-size:12px;font-weight:700;position:absolute;bottom:10px;right:10px}.card-actions{gap:8px;margin-top:12px;display:flex}.action-button{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-md);letter-spacing:-.005em;white-space:nowrap;min-height:46px;color:var(--ink-2);justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;transition:background .16s,border-color .16s,transform .16s,box-shadow .16s;display:flex}.card-actions .action-button{flex:1;min-width:0;padding:10px 8px}.action-button svg{flex-shrink:0}.action-button:hover{background:var(--surface-2);border-color:var(--line-2)}.action-button:active{transform:scale(.98)}.primary{background:linear-gradient(180deg,#3b82ff,var(--blue-600));border-color:var(--blue-600);color:#fff;box-shadow:0 8px 18px -8px #1f6bffb3,inset 0 1px #ffffff40}.primary:hover{background:linear-gradient(180deg,#4a8cff,var(--blue));border-color:var(--blue-600);box-shadow:0 12px 22px -8px #1f6bffcc,inset 0 1px #ffffff40}.gallery-footer{color:var(--faint);justify-content:space-between;gap:12px;padding:36px 0 8px;font-size:12.5px;font-weight:500;display:flex}.gallery-main>.action-button{width:max-content;margin:28px auto 0}.empty-gallery{text-align:center;background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--r-lg);padding:84px 24px}.empty-icon{background:linear-gradient(145deg,var(--blue-50),#fff);border:1px solid var(--blue-100);width:76px;height:76px;color:var(--blue);box-shadow:var(--shadow-md);border-radius:24px;place-items:center;margin:0 auto 6px;display:grid}.empty-gallery h2{letter-spacing:-.035em;margin:18px 0 10px;font-size:23px;font-weight:800}.empty-gallery p{color:var(--muted);max-width:480px;margin:0 auto;font-size:14.5px;line-height:1.65}.empty-gallery .action-button{width:max-content;margin:26px auto 0}.gallery-alert{border:1px solid var(--danger-line);border-radius:var(--r-md);background:var(--danger-bg);color:var(--danger);justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:16px 20px;font-size:14px;font-weight:600;display:flex}.gallery-alert button{color:var(--danger);background:0 0;border:0;font-weight:700;text-decoration:underline}.skeleton-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px}.skeleton-heading,.skeleton-media,.skeleton-actions{border-radius:var(--r-md);background:linear-gradient(100deg,#eaf0fa 30%,#f6f9fe 50%,#eaf0fa 70%) 0 0/300% 100%;animation:1.4s linear infinite shimmer}.skeleton-heading{width:60%;height:44px;margin-bottom:14px}.skeleton-media{aspect-ratio:16/9}.skeleton-actions{height:46px;margin-top:12px}@keyframes shimmer{to{background-position:-300% 0}}.player-dialog{background:var(--surface);border:0;border-radius:24px;width:min(980px,94vw);max-height:92vh;padding:0;animation:.2s ease-out pop;overflow:auto;box-shadow:0 40px 100px -20px #06112e99}.player-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#06112ecc}.player-heading{justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.player-heading h2{letter-spacing:-.035em;margin:0 0 4px;font-size:21px;font-weight:800}.player-heading p{color:var(--muted);margin:0;font-size:14px;font-weight:500}.player-content video{background:#050b1c;width:100%;max-height:66vh;display:block}.player-footer{align-items:center;gap:10px;padding:16px 22px;display:flex}.player-footer>span{color:var(--muted);margin-right:auto;font-size:13.5px;font-weight:600}.player-error{color:var(--danger);padding:12px 22px;font-weight:600}.toast{background:var(--ink);color:#fff;z-index:50;border-radius:999px;align-items:center;gap:10px;max-width:90vw;padding:14px 20px;font-size:14px;font-weight:600;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 18px 44px -10px #0e1b3680}.toast svg{color:#5ee0a1}.share-link-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);width:min(420px,90vw);box-shadow:var(--shadow-lg);z-index:60;padding:18px;position:fixed;bottom:26px;right:26px}.share-link-panel>div{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.share-link-panel input{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);width:100%;color:var(--ink-2);padding:12px}@media (max-width:1150px){.gallery-filters{flex-wrap:wrap}.filter-control,.court-picker{flex:1;min-width:220px}.gallery-filters .court-trigger{width:100%}.replay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-tools{margin-left:0}}@media (max-width:650px){.header-inner{padding:12px 16px}.brand{gap:8px;font-size:21px}.brand-mark{width:30px;height:32px}.arena-location{gap:8px;padding:6px 12px 6px 8px}.arena-location>svg{width:28px;height:28px;padding:6px}.arena-location strong{font-size:13px}.arena-location span{font-size:11px}.gallery-main{padding:20px 14px}.gallery-filters{border-radius:18px;gap:10px;margin-bottom:22px;padding:10px}.gallery-filters .filter-control{width:100%;min-width:100%;height:62px}.court-picker{width:100%;min-width:100%}.filter-tools{justify-content:space-between;width:100%}.gallery-filters .refresh-button{margin-left:auto}.replay-grid{grid-template-columns:1fr;gap:16px}.results-summary{flex-direction:column;align-items:flex-start;gap:8px}.results-summary h1{font-size:21px}.gallery-footer{flex-direction:column}.player-footer{flex-wrap:wrap}.player-footer>span{width:100%}}@media (max-width:480px){.card-actions{gap:6px}.card-actions .action-button{gap:6px;padding:10px 4px;font-size:12px}.card-actions .action-button svg{width:16px;height:16px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
