@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-vietnamese-600-normal-A5AYRdjN.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-600-normal-CNlPk46_.woff)format("woff");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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-ext-600-normal-18ESti3H.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-600-normal-Clv9cIcR.woff)format("woff");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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff");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}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-vietnamese-700-normal-DYeBwlKR.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-700-normal-DhIzd8Tb.woff)format("woff");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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff)format("woff");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:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff");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}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.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{--ground:#f4f5f7;--surface:#fff;--ink:#0c0e12;--ink-2:#1b1f27;--ink-3:#3d4552;--muted:#5b6472;--faint:#7a8494;--hairline:#dde1e7;--line:#c5cbd4;--soft:#e6e9ee;--ball:#ffb020;--court-line:#9ba5b3;--display:"Barlow Condensed", "Arial Narrow", sans-serif;--body:"Inter Variable", Inter, system-ui, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ground);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.45}h1,h2,h3,p,ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}a{color:inherit;touch-action:manipulation;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.panel-label{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:15px;font-weight:600}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{border:1px solid var(--line);letter-spacing:.1em;text-transform:uppercase;height:26px;color:var(--ink-3);white-space:nowrap;border-radius:4px;align-items:center;padding:0 10px;font-size:11px;font-weight:600;display:inline-flex}.chip{border:1px solid var(--line);background:var(--ground);border-radius:8px;align-items:center;min-height:44px;padding:0 16px;font-size:14px;font-weight:500;transition:border-color .15s;display:inline-flex}.chip:hover{border-color:var(--ink)}.chip-list{flex-wrap:wrap;gap:8px;display:flex}.icon-button{width:44px;height:44px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--soft);color:var(--ink)}.segmented{background:var(--soft);border-radius:10px;flex-shrink:0;padding:4px;display:inline-flex}.segmented button{height:44px;color:var(--ink-3);border-radius:7px;padding:0 22px;font-size:14px;font-weight:500}.segmented button[aria-pressed=true]{background:var(--brand);color:#fff;font-weight:600}.page{max-width:1120px;margin:0 auto;padding:36px 36px 64px}.page-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:20px;display:flex}.page-title{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-size:clamp(40px,6vw,56px);font-weight:700;line-height:.95}.page-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.panel-section{flex-direction:column;gap:12px;display:flex}.teach-list{flex-direction:column;gap:10px;display:flex}.teach-list li{color:var(--ink-2);align-items:baseline;gap:16px;font-size:15px;line-height:1.4;display:flex}.teach-number{width:28px;font-family:var(--display);color:var(--faint);flex-shrink:0;font-size:26px;font-weight:700;line-height:1}.watch-list{flex-direction:column;gap:6px;display:flex}.watch-list li{color:var(--ink-2);padding-left:18px;font-size:15px;line-height:1.4;position:relative}.watch-list li:before{content:"";background:var(--ink);width:6px;height:6px;position:absolute;top:.5em;left:0}.not-found{flex-direction:column;align-items:flex-start;gap:14px;padding-top:96px;display:flex}.not-found-text{color:var(--muted);max-width:48ch}@media (width<=760px){.page{padding:20px 16px 40px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.shell{grid-template-columns:76px minmax(0,1fr);min-height:100dvh;display:grid}.rail{background:var(--surface);border-right:1px solid var(--hairline);flex-direction:column;align-items:center;gap:6px;height:100dvh;padding:16px 0;display:flex;position:sticky;top:0}.rail-brand{border-radius:10px;margin-bottom:14px}.rail-mark{object-fit:contain;width:48px;height:48px;display:block}.rail-link{letter-spacing:.06em;text-transform:uppercase;width:64px;min-height:60px;color:var(--muted);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.rail-link:hover{color:var(--ink)}.rail-link[aria-current=page]{background:var(--soft);color:var(--ink)}.rail-view{border:1px solid var(--line);color:var(--ink);margin-top:auto}.rail-view[data-side=player]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.shell-main{min-width:0}@media (width<=760px){.shell{grid-template-columns:minmax(0,1fr)}.rail{z-index:10;height:auto;padding:6px 12px calc(6px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--hairline);flex-direction:row;justify-content:center;gap:8px;position:fixed;inset:auto 0 0}.rail-brand{display:none}.rail-link{flex:1;max-width:180px;min-height:52px}.rail-view{margin-top:0}.shell-main{padding-bottom:calc(68px + env(safe-area-inset-bottom))}}.page-brand{align-items:center;gap:14px;display:flex}.page-logo{object-fit:contain;width:48px;height:48px;display:none}@media (width<=760px){.page-head{flex-wrap:wrap;gap:10px 24px}.page-brand{flex:1 0 100%}.page-logo{display:block}}.group{padding-top:36px}.group-label{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);align-items:center;gap:14px;font-size:16px;font-weight:600;display:flex}.group-label:after{content:"";background:var(--hairline);flex:1;height:1px}.scheme{padding-top:22px}.scheme+.scheme{padding-top:40px}.scheme-head{grid-template-columns:minmax(0,250px) minmax(0,1fr);align-items:baseline;gap:8px 32px;margin-bottom:18px;display:grid}.scheme-name{font-family:var(--display);text-transform:uppercase;font-size:32px;font-weight:700;line-height:1}.scheme-overview{color:var(--muted);text-wrap:pretty;max-width:66ch;font-size:15px}.play-grid{grid-template-columns:repeat(auto-fill,minmax(min(290px,100%),1fr));gap:16px;display:grid}.play-card{background:var(--surface);border:1px solid var(--hairline);border-radius:14px;flex-direction:column;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;overflow:hidden}.play-card:hover{border-color:var(--line);transform:translateY(-2px);box-shadow:0 14px 30px #0c0e121a}.play-card-thumb{aspect-ratio:16/10;border-bottom:1px solid var(--hairline);background:#e9ecf1}.play-card-thumb .diagram{width:100%;height:100%;display:block}.play-card-text{flex-direction:column;gap:8px;padding:16px 18px 18px;display:flex}.play-card-title{font-family:var(--display);text-transform:uppercase;font-size:25px;font-weight:700;line-height:1.05}.play-card-summary{color:var(--muted);text-wrap:pretty;font-size:14px}.play-card .tags{margin-top:4px}@media (width<=760px){.scheme-head{grid-template-columns:minmax(0,1fr)}}.play{flex-direction:column;min-height:100dvh;display:flex}.play-head{border-bottom:1px solid var(--hairline);align-items:center;gap:12px;min-height:92px;padding:14px 32px 14px 16px;display:flex}.play-heading{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.play-title-row{flex-wrap:wrap;align-items:center;gap:8px 18px;display:flex}.play-title{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-size:clamp(30px,4vw,40px);font-weight:700;line-height:1}.play-body{flex:1;grid-template-columns:minmax(0,1.9fr) minmax(320px,1fr);min-height:0;display:grid}.play-stage{min-width:0;padding:24px 28px}.stage{flex-direction:column;gap:22px;min-width:0;display:flex}.court-box{width:min(100%, calc((100dvh - 92px - 210px) * var(--ratio)));min-width:min(100%,320px);box-shadow:0 0 0 1px var(--hairline), 0 14px 30px #0c0e1214;border-radius:14px;margin:0 auto;position:relative;overflow:hidden}.court-box .diagram{width:100%;height:auto;display:block}.full-button{border:1px solid var(--line);background:#ffffffeb;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;bottom:10px;right:10px}.stage-title{font-family:var(--display);letter-spacing:.02em;text-transform:uppercase;font-size:20px;font-weight:700;line-height:1}.stage-full{z-index:100;padding:16px 24px calc(16px + env(safe-area-inset-bottom));background:var(--ground);justify-content:center;gap:16px;position:fixed;inset:0;overflow:auto}.stage.stage-full .court-box{width:min(100%, calc((100dvh - 190px) * var(--ratio)));flex-shrink:0}.stage-full .now{width:min(100%,1000px);margin:0 auto}.stage.stage-full .caption{min-height:2.7em;font-size:24px}.now{align-items:center;gap:28px;display:flex}.now-text{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.now-meta{align-items:center;gap:12px;display:flex}.bars{flex:1;gap:5px;min-width:0;display:flex}.bar{background:#d3d8df;border-radius:2px;flex:1 1 0;min-width:4px;max-width:30px;height:4px}.bar-done{background:var(--brand)}.bar-now{background:var(--accent)}.caption{text-wrap:pretty;min-height:2.7em;font-size:21px;font-weight:500;line-height:1.35}.transport{flex-shrink:0;align-items:center;gap:14px;display:flex}.round-button{border:1px solid var(--line);background:var(--surface);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .1s;display:flex}.round-button:active{transform:scale(.95)}.round-button-main{background:var(--accent);width:68px;height:68px;color:var(--on-accent);border:0;box-shadow:0 6px 16px #0c0e1229}.play-panel{background:var(--surface);border-left:1px solid var(--hairline);flex-direction:column;gap:22px;min-width:0;padding:24px 28px;display:flex}.panel-rule{border-top:1px solid var(--hairline);padding-top:22px}.say-list{flex-direction:column;gap:6px;font-size:15px;font-weight:600;line-height:1.4;display:flex}.panel-text{color:var(--ink-2);text-wrap:pretty;font-size:15px;line-height:1.5}.panel-note{color:var(--muted);align-items:center;gap:8px;margin-top:auto;padding-top:8px;font-size:13px;display:flex}.step-list{flex-direction:column;gap:4px;display:flex}.step-row{text-align:left;width:100%;min-height:52px;color:var(--ink-2);border-radius:10px;align-items:center;gap:16px;padding:8px 14px;font-size:16px;font-weight:500;transition:background-color .15s;display:flex}.step-row:hover{background:var(--ground)}.step-row[aria-current=step]{background:var(--brand);color:#fff}.step-number{width:28px;font-family:var(--display);color:var(--faint);flex-shrink:0;font-size:24px;font-weight:700;line-height:1}.step-row[aria-current=step] .step-number{color:#ffffff9e}.key{color:var(--muted);flex-wrap:wrap;gap:10px 22px;font-size:14px;display:flex}.key li{align-items:center;gap:8px;display:flex}.key-line path{fill:none;stroke:var(--accent);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.key-pass path{stroke:var(--brand);stroke-dasharray:5 5}@media (width<=900px){.play-head{flex-wrap:wrap;padding:12px 16px 12px 8px}.play-head .segmented{width:calc(100% - 8px);margin-left:8px}.play-head .segmented button{flex:1}.play-body{grid-template-columns:minmax(0,1fr)}.play-stage{padding:16px}.stage{gap:16px}.stage.stage-full .caption{font-size:20px}.court-box{width:100%}.now{flex-direction:column;align-items:stretch;gap:16px}.caption{font-size:19px}.transport{justify-content:center}.play-panel{border-left:0;border-top:1px solid var(--hairline);padding:20px 16px 28px}}@media (orientation:landscape) and (height<=520px){.stage.stage-full{flex-direction:row;align-items:center;gap:20px;padding:10px 16px}.stage.stage-full .court-box{width:min(62%, calc((100dvh - 20px) * var(--ratio)));margin:0}.stage.stage-full .now{flex-direction:column;flex:1;align-items:stretch;gap:14px;width:auto;min-width:0;margin:0}.stage.stage-full .now-meta{flex-wrap:wrap}.stage.stage-full .caption{font-size:17px}.stage.stage-full .transport{justify-content:center}}.filters{flex-wrap:wrap;gap:8px;padding:22px 0 6px;display:flex}.filter{border:1px solid var(--line);background:var(--surface);border-radius:22px;height:44px;padding:0 16px;font-size:14px;font-weight:500}.filter[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.drill-list{background:var(--surface);border:1px solid var(--hairline);border-radius:14px;flex-direction:column;margin-top:14px;display:flex;overflow:hidden}.drill-list li+li{border-top:1px solid var(--hairline)}.drill-row{align-items:center;gap:20px;min-height:76px;padding:14px 18px;transition:background-color .15s;display:flex}.drill-row:hover{background:var(--ground)}.drill-minutes{flex-shrink:0;align-items:baseline;gap:4px;width:58px;display:flex}.drill-minutes-number{font-family:var(--display);font-size:34px;font-weight:700;line-height:1}.drill-minutes-unit{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.drill-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.drill-row-name{font-family:var(--display);text-transform:uppercase;font-size:25px;font-weight:700;line-height:1.05}.drill-row-meta{color:var(--muted);font-size:14px}.drill-row .tags{justify-content:flex-end}.drill-row .icon{color:var(--faint);flex-shrink:0}.drill-head{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.back-link{min-height:44px;color:var(--muted);border-radius:8px;align-items:center;gap:6px;margin:-10px 0 6px -6px;padding:0 12px 0 6px;font-size:14px;font-weight:500;display:inline-flex}.back-link:hover{background:var(--soft);color:var(--ink)}.drill-head .tags{margin-top:10px}.facts{background:var(--hairline);border:1px solid var(--hairline);border-radius:14px;grid-template-columns:minmax(0,1fr);gap:1px;display:grid;overflow:hidden}.facts>div{background:var(--surface);grid-template-columns:104px minmax(0,1fr);align-items:baseline;gap:12px;padding:13px 18px;display:grid}.facts dt{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:15px;font-weight:600}.facts dd{font-size:16px;font-weight:500}.drill-body{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;margin-top:26px;display:grid}.drill-main,.drill-side{flex-direction:column;gap:28px;display:flex}.drill-stage{border-bottom:1px solid var(--hairline);padding-bottom:28px}.drill-stage .court-box{width:min(100%, calc((100dvh - 400px) * var(--ratio)))}.drill-stage .stage{gap:18px}.drill-stage .caption{min-height:5.4em;font-size:18px}.drill-setup{text-wrap:pretty;font-size:17px;line-height:1.45}@media (width<=760px){.drill-row{flex-wrap:wrap;gap:8px 14px}.drill-row .tags{justify-content:flex-start;width:100%;padding-left:72px}.drill-row .icon{display:none}.drill-body{flex-direction:column;gap:28px;display:flex}.drill-main,.drill-side{display:contents}.facts{order:-1}.drill-stage .court-box{width:100%}}.diagram{-webkit-user-select:none;user-select:none}.court-surround{fill:#e9ecf1}.court-glow-in{stop-color:#fff}.court-glow-out{stop-color:#f0f2f5}.court-paint{fill:#0c0e120b}.court-lines{fill:none;stroke:var(--court-line);stroke-width:2px}.court-board{stroke:var(--muted);stroke-width:3.5px}.court-rim{fill:none;stroke:var(--muted);stroke-width:2.4px}.ghost{fill:none;stroke:var(--court-line);stroke-width:1.8px;stroke-dasharray:4 5}.line path{fill:none;stroke-linecap:round;stroke-linejoin:round}.line-casing{stroke:#fff;stroke-width:8px}.line-stroke{stroke:var(--accent);stroke-width:3.6px}.line-head{fill:var(--accent);stroke:#fff;stroke-width:1.4px;stroke-linejoin:round}.line-pass .line-stroke,.line-shot .line-stroke{stroke:var(--brand);stroke-width:2.6px;stroke-dasharray:7 8}.line-shot .line-stroke{stroke-dasharray:1 7}.line-pass .line-head,.line-shot .line-head,.token-body{fill:var(--brand)}.token-label{fill:#fff;font-family:var(--display);text-anchor:middle;font-weight:700}.token-defense .token-body{fill:#fff;stroke:var(--brand);stroke-width:2.6px}.token-defense .token-label{fill:var(--brand)}.token-active .token-body{fill:var(--accent)}.token-defense.token-active .token-body{fill:#fff;stroke:var(--accent);stroke-width:3.6px}.token-defense.token-active .token-label{fill:var(--accent)}.token-faint .token-body{fill:#fff;stroke:var(--court-line);stroke-width:2px}.token-faint .token-label{fill:var(--faint)}.token-halo{fill:var(--accent);opacity:.26}.ball{fill:var(--ball);stroke:var(--ink);stroke-width:2px}.diagram-thumb .court-lines{stroke-width:3px}
