.darts-app{color:#eef3f4;background:radial-gradient(at 50% 35%,#213b45,#09151c 70%);min-height:100dvh;padding-bottom:24px;font:16px Arial,sans-serif}.darts-app *{box-sizing:border-box}.darts-app button,.darts-app input,.darts-app select{font:inherit;border:1px solid #5e7884;border-radius:8px;min-height:44px;padding:10px 14px}.darts-app button{color:#12232d;cursor:pointer;background:#f8d45b;font-weight:700}.darts-app button:disabled{opacity:.45;cursor:default}.darts-app input,.darts-app select{color:#fff;background:#102630;width:100%}.darts-app label{gap:8px;font-size:14px;display:grid}.darts-app a{color:#fff;text-decoration:none}.darts-app :focus-visible{outline-offset:3px;outline:3px solid #f8d45b}.darts-header{border-bottom:1px solid #35505d;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.darts-header b{color:#f8d45b}.darts-header nav{gap:20px;font-size:14px;display:flex}.darts-setup{background:#142b35;border:1px solid #42616c;border-radius:16px;gap:18px;max-width:440px;margin:36px auto;padding:28px;display:grid}.darts-setup h1{margin:0;font-size:38px}.darts-setup p{color:#b8cad1;margin:0}.dart-emblem{color:#f8d45b;font-size:64px;line-height:1}.join-room{border-top:1px solid #42616c;grid-template-columns:1fr auto;align-items:end;gap:12px;padding-top:18px;display:grid}.darts-top{flex-wrap:wrap;align-items:center;gap:12px;max-width:1250px;margin:auto;padding:16px 24px;display:flex}.darts-top h1{margin:0 auto 0 0;font-size:22px}.darts-top span{color:#b8cad1;font-size:14px}.darts-top button{color:#fff;background:#19343f;font-size:14px}.darts-play{grid-template-columns:240px minmax(250px,640px) 220px;gap:18px;max-width:1250px;margin:auto;padding:0 24px;display:grid}.darts-scores{align-content:start;gap:16px;display:grid}.ttt{border:1px solid #647a7e;border-radius:8px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.ttt>div{background:#142a33;border:1px solid #425963;justify-items:center;gap:2px;padding:8px;display:grid}.ttt b{color:#cbd8dc;font-size:14px}.ttt strong{color:#f8d45b;font-size:30px;line-height:1.1}.ttt small{color:#bacbd2;font-size:12px}.ttt .claimed{background:#294651}.player-scores{gap:8px;display:grid}.player-scores>div{background:#102631;border:1px solid #39545e;border-radius:8px;grid-template-columns:1fr auto;gap:5px;padding:12px;display:grid}.player-scores .active{border:2px solid #f8d45b}.player-scores b{overflow-wrap:anywhere;font-size:14px}.player-scores strong{color:#f8d45b;font-size:24px}.player-scores small{color:#a7c0cb;font-size:13px}.cricket-table{border-collapse:collapse;width:100%;font-size:14px}.cricket-table th,.cricket-table td{text-align:center;overflow-wrap:anywhere;border-bottom:1px solid #354d58;padding:8px 4px}.cricket-table td{color:#f8d45b;font-size:23px}.board-wrap{max-width:640px;margin:auto;position:relative;overflow:hidden}.board-wrap canvas{touch-action:none;width:100%;height:auto;display:block}.turn-message{text-align:center;background:#142c36;border-radius:8px;padding:12px;font-weight:700}.dart-counter{justify-content:center;align-items:center;gap:12px;margin:12px 0;display:flex}.dart-counter>span:not(:last-child){color:#f8d45b;font-size:26px}.dart-counter>span.spent{color:#50616b}.dart-counter>span:last-child{font-size:14px}.throw-panel{background:#142b35;border:1px solid #37545e;border-radius:12px;align-self:start;gap:16px;padding:18px;display:grid}.throw-panel h2{margin:0;font-size:18px}.throw-panel p{color:#c2d2d9;margin:0;font-size:14px;line-height:1.45}.throw-panel .pull-guide{color:#f8d45b;touch-action:none;background:radial-gradient(circle,#173c47 55%,#72a29f 57%,#173c47 61%);border:2px solid #7fa5aa;border-radius:50%;align-content:center;justify-items:center;width:150px;height:150px;margin:auto;display:grid}.pull-guide span{font-size:42px;line-height:1}.pull-guide.pulling{border-color:#f8d45b;box-shadow:0 0 20px #f8d45b40}.throw-panel progress{accent-color:#f8d45b;width:100%}.landing-label{gap:6px;font-size:14px;display:grid}.landing-label b{color:#f8d45b;font-size:22px}.landing-label small{color:#c2d2d9;font-size:13px}.darts-lobby{background:#142b35;border-radius:12px;max-width:440px;margin:40px auto;padding:24px}.darts-error{background:#562928;border:1px solid #e49883;border-radius:8px;max-width:1000px;margin:16px auto;padding:14px}.rules-toggle{margin:20px auto;display:block}.dart-rules{max-width:900px;margin:0 auto;padding:0 24px;line-height:1.6}.flying-dart{color:#82d7ff;pointer-events:none;font-size:50px;animation:.5s cubic-bezier(.2,.8,.5,1) forwards dart-flight;position:absolute;transform:translate(-50%,-50%)rotate(-55deg)}@keyframes dart-flight{0%{opacity:0;transform:translate(-50%,500%)scale(5)rotate(-55deg)}30%{opacity:1}to{opacity:1;transform:translate(-50%,-50%)scale(.6)rotate(-55deg)}}@media (max-width:1000px){.darts-play{grid-template-columns:190px minmax(240px,1fr);gap:12px}.throw-panel{grid-column:1/-1;grid-template-columns:1fr 150px 1fr;align-items:center}.throw-panel h2,.throw-panel>p:first-of-type{grid-column:1}.throw-panel .pull-guide{grid-area:1/2/4}.throw-panel .key-help{grid-column:1/-1}.throw-panel .landing-label{grid-area:1/3/3}}@media (max-width:600px){.darts-header,.darts-top{padding:12px}.darts-play{grid-template-columns:110px minmax(0,1fr);gap:8px;padding:0 10px}.ttt>div{padding:5px 1px}.ttt b{font-size:12px}.ttt strong{font-size:22px}.ttt small{font-size:12px}.player-scores>div{padding:8px;display:block}.player-scores b,.player-scores small{font-size:13px;display:block}.player-scores strong{font-size:22px}.cricket-table{font-size:12px}.cricket-table td{font-size:20px}.dart-range{align-self:start}.turn-message{padding:9px;font-size:14px}.dart-counter{flex-wrap:wrap;gap:6px}.dart-counter>span:last-child{text-align:center;width:100%}.throw-panel{grid-template-columns:1fr 110px;gap:10px;padding:12px}.throw-panel .pull-guide{grid-area:1/2/4;width:110px;height:110px}.throw-panel .landing-label{grid-area:auto/1}.throw-panel .key-help,.throw-panel>button:not(.pull-guide){grid-column:1/-1}.darts-setup{margin:24px 12px;padding:22px}.darts-error{margin:12px}.darts-lobby{margin:24px 12px}.cricket-table th{max-width:50px}.cricket-table th:not(:first-child){word-break:break-word}}@media (prefers-reduced-motion:reduce){.flying-dart{animation:none;transform:translate(-50%,-50%)scale(.6)rotate(-55deg)}}.darts-play{grid-template-columns:180px minmax(250px,640px) 230px;gap:12px}.cricket-strip{background:#122934;border:1px solid #45616e;border-radius:9px;grid-column:1/-1;overflow-x:auto}.cricket-strip table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:14px}.cricket-strip th,.cricket-strip td{text-align:center;border-bottom:1px solid #365360;padding:7px 4px}.cricket-strip th:first-child{text-align:left;overflow-wrap:anywhere;width:130px;padding-left:12px}.cricket-strip tbody td{color:#ffda64;font-size:21px}.cricket-strip tbody .active{background:#24404c}.throw-panel{flex-direction:column;gap:12px;padding:14px;display:flex}.throw-panel .power-gauge{width:100%;margin-top:2px;position:relative}.power-gauge svg{width:100%;display:block}.power-gauge strong{color:#f8d45b;font-size:22px;position:absolute;bottom:12%;left:50%;transform:translate(-50%)}.throw-panel .landing-label{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.throw-panel .landing-label b{font-size:20px}.throw-panel .gauge-throw{touch-action:manipulation;width:100%;min-height:50px;font-size:18px}.throw-panel .cancel-power{color:#fff;background:0 0;width:100%}.board-wrap canvas{touch-action:none;-webkit-user-select:none;user-select:none}.throw-panel button{touch-action:manipulation}.throw-panel h2,.throw-panel p{width:100%}.ttt strong{font-size:26px}@media (max-width:1000px) and (min-width:601px){.darts-play{grid-template-columns:150px minmax(240px,1fr) 190px;padding:0 12px}.throw-panel{grid-column:auto;padding:12px}.throw-panel .power-gauge{min-width:0}.throw-panel p{font-size:14px}}@media (max-width:600px){.darts-header{padding:8px 12px}.darts-header nav a{padding:5px}.darts-top{gap:8px;padding:8px 10px}.darts-top h1{font-size:18px}.darts-top button{min-height:36px;padding:6px 8px}.darts-play{grid-template-columns:1fr;gap:8px;padding:0 8px;display:grid}.cricket-strip{grid-column:1}.cricket-strip th,.cricket-strip td{padding:4px 1px;font-size:14px}.cricket-strip th:first-child{width:75px;padding-left:5px}.cricket-strip tbody td{font-size:19px}.darts-scores{grid-template-columns:125px minmax(0,1fr);align-items:start;gap:8px}.ttt>div{padding:3px 2px}.ttt strong{font-size:20px}.player-scores{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.player-scores>div{padding:6px}.dart-range{width:100%;min-width:0}.board-wrap{width:min(100%,43dvh);max-width:430px}.turn-message{padding:7px}.dart-counter{gap:8px;margin:5px 0}.dart-counter>span:last-child{width:auto}.dart-counter>span:not(:last-child){font-size:20px}.throw-panel{grid-template-columns:minmax(120px,1fr) minmax(110px,1fr);align-items:center;gap:8px;padding:8px 12px;display:grid}.throw-panel h2,.throw-panel>p:first-of-type{display:none}.throw-panel .power-gauge{grid-area:1/1/3;justify-self:center;max-width:210px}.power-gauge strong{font-size:20px}.throw-panel .landing-label{grid-area:1/2;gap:2px;display:grid}.throw-panel .gauge-throw{grid-row:2;min-height:50px;grid-column:2!important}.throw-panel .cancel-power{grid-column:2!important}.throw-panel .key-help{grid-column:1/-1;font-size:13px;line-height:1.35}.throw-panel>button:not(.gauge-throw):not(.cancel-power){grid-column:1/-1}}.darts-header{min-height:44px;padding:8px 16px}.darts-header>a:first-child{letter-spacing:.07em;font-weight:900}.darts-home{border:1px solid #587581;border-radius:7px;padding:6px 12px;font-size:14px}.darts-top{min-height:32px;padding:6px 16px}.darts-top .game-label{color:#b8cad1;font-size:14px;font-weight:400}.darts-top span{font-size:13px}.darts-play{grid-template-columns:160px minmax(250px,1fr) 210px;max-width:1400px}.board-wrap{max-width:780px}.dart-range{min-width:0}.darts-screensaver{z-index:9999;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;gap:24px;width:100%;height:100dvh;display:flex;overflow:hidden;color:#fff!important;background:radial-gradient(at 50% 40%,#244c61,#06121b 75%)!important;border:0!important;border-radius:0!important;position:fixed!important;inset:0!important}.darts-screensaver>strong{letter-spacing:.06em;z-index:1;font-size:clamp(30px,8vw,80px)}.darts-screensaver strong span{color:#ffda64}.saver-orbit{color:#ffda64;font-size:clamp(110px,25vw,230px);line-height:1;animation:8s ease-in-out infinite saver-float}.saver-caption{z-index:1;font-size:clamp(18px,4vw,28px);font-weight:400}.saver-return{color:#c6dce7;z-index:1;text-align:center;margin-top:32px;padding:0 20px;font-size:16px}@keyframes saver-float{0%,to{transform:translate(-12px,-10px)rotate(-8deg)}50%{transform:translate(12px,10px)rotate(8deg)}}@media (max-width:1000px) and (min-width:601px){.darts-play{grid-template-columns:125px minmax(240px,1fr) 180px}}@media (max-width:600px){.darts-header{min-height:38px;padding:5px 12px}.darts-top{min-height:24px;padding:4px 10px}.darts-play{grid-template-columns:1fr}.board-wrap{width:100%;max-width:500px}.darts-scores{grid-template-columns:110px minmax(0,1fr)}.ttt>div{padding:1px 2px}.ttt strong{font-size:18px}.ttt small{font-size:12px}.player-scores>div{padding:4px 6px}.throw-panel{z-index:5;position:sticky;bottom:0;box-shadow:0 -5px 18px #09151c88}.throw-panel .power-gauge{max-width:150px}.throw-panel .key-help{font-size:13px}.rules-toggle{margin:10px auto}.cricket-strip th,.cricket-strip td{padding:2px 1px}}@media (prefers-reduced-motion:reduce){.saver-orbit{animation:none}}.darts-app .darts-back{color:#fff;background:0 0;border-color:#587581;padding:6px 12px;font-size:14px}.throw-guide{color:#c2d2d9;justify-content:center;align-items:center;gap:12px;width:100%;font-size:14px;display:flex}.throw-guide b{color:#fff;font-weight:400}.finger-track{border-left:2px dashed #587581;width:48px;height:76px;padding-left:8px;position:relative;overflow:hidden}.throw-finger{color:#f8d45b;animation:2.8s ease-in-out infinite throw-finger-demo}@keyframes throw-finger-demo{0%,15%{opacity:1;transform:translateY(0)}55%{opacity:1;transform:translateY(34px)}75%{opacity:1;transform:translateY(0)}90%,to{opacity:.35;transform:translateY(0)}}@media (max-width:600px){.throw-panel .throw-guide{grid-area:2/2;justify-content:start}.throw-panel .finger-track{flex-shrink:0}}@media (prefers-reduced-motion:reduce){.throw-finger{animation:none}}.match-score{background:#122934;flex-wrap:wrap;gap:8px 18px;max-width:1400px;margin:auto;padding:6px 12px;font-size:14px;display:flex}.match-score strong{color:#f8d45b}.throw-panel .guide-toggle{color:#fff;background:0 0;grid-column:1/-1;min-height:36px;padding:6px 10px;font-size:14px}.throw-panel .key-help,.throw-panel{position:static}.board-wrap canvas{overscroll-behavior:contain}@media (max-width:600px){.throw-panel{grid-template-columns:1fr 1fr}.throw-panel .power-gauge{grid-row:2;max-width:110px}.throw-panel .landing-label{grid-row:2}.throw-panel .throw-guide{grid-area:auto/1/auto/-1}.match-score{padding:4px 10px}.board-wrap{max-width:min(100%,48dvh)}}.darts-app{padding-right:28px}.darts-scroll-rail{z-index:30;touch-action:none;background:#09151c99;border-radius:12px;flex-direction:column;align-items:center;width:26px;height:60dvh;display:flex;position:fixed;top:20dvh;right:0}.darts-app .darts-scroll-rail button{color:#c6dce7;background:0 0;border:0;width:26px;min-height:38px;padding:0;font-size:24px}.darts-scroll-rail button:first-child,.darts-scroll-rail button:last-child{transform:rotate(90deg)}.darts-scroll-rail>div{touch-action:none;cursor:ns-resize;flex:1;width:26px;margin:12px 0;position:relative}.darts-scroll-rail>div:before{content:"";background:#66808d55;border-radius:3px;width:3px;position:absolute;top:0;bottom:0;left:11px}.darts-scroll-rail>div>span{pointer-events:none;background:#c6dce7aa;border-radius:8px;width:9px;height:28px;position:absolute;left:8px;transform:translateY(-50%)}.last-dart{text-align:center;color:#ffda64;margin:4px 0 10px;font-size:14px}.player-scores>div small{grid-column:1/-1}.throw-results{color:#f8d45b;flex-wrap:wrap;justify-content:center;gap:6px 14px;padding:6px;font-size:13px;display:flex}.tic-help{color:#f8d45b;margin:0 0 5px;font-size:12px}.ttt small{text-align:center;font-size:10px}.flying-dart svg{filter:drop-shadow(3px 5px 3px #0008);width:32px;height:100px;display:block}.dart-range,.dart-range *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
