:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172d27;background:#f4f5f0;font-synthesis:none;--ink:#102d24;--muted:#63776f;--line:#dce2d9;--accent:#d6ef8e;--orange:#d77b4a}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #719939;outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:36px;letter-spacing:-1.4px;line-height:1.12;font-weight:600}h2{font-size:25px;letter-spacing:-.6px;font-weight:600}h3{font-size:18px;font-weight:600}p{line-height:1.6}small,.hint{font-size:12px;line-height:1.6;color:var(--muted)}[hidden]{display:none!important}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;display:block;margin-bottom:14px}.brand{font-size:16px;font-weight:800;letter-spacing:1.6px;display:flex;align-items:center;gap:10px}.brand-icon{font-size:33px;font-weight:400;color:#8cb772}.primary,.secondary,.danger,.text-button{border:0;border-radius:7px;padding:12px 18px;font-weight:600;font-size:13px}.primary{background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:space-between;gap:20px}.primary:hover{background:#254f3b}.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.secondary:hover{background:#edf2e5}.danger{background:#fff0eb;color:#923c23}.text-button{padding:10px 0;background:none;color:inherit}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}label{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:8px;margin-bottom:19px}input,select{padding:13px;border:1px solid #cdd6cc;border-radius:6px;color:var(--ink);background:white;min-width:0}input::placeholder{color:#819087}.error{font-size:13px;color:#a73623;line-height:1.6}#notice{position:fixed;right:22px;bottom:24px;background:#102d24;color:white;padding:16px 24px;border-radius:8px;z-index:20;max-width:min(500px,90vw);box-shadow:0 8px 30px #0002}.auth-layout{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}.auth-story{background:#10231f;color:white;padding:48px 12%;position:relative;overflow:hidden}.auth-story .brand{margin-bottom:100px}.auth-story .eyebrow{color:var(--accent)}.auth-story h1{font-size:clamp(48px,5.3vw,88px);letter-spacing:-3px;position:relative;z-index:1}.auth-story em{font-style:normal;color:var(--accent)}.auth-story p{color:#b5c5b8;max-width:340px;position:relative;z-index:1}.auth-story small{display:block;margin-top:70px;color:#b5c5b8}.board-art{width:420px;height:420px;border:1px solid #a2c28c44;border-radius:50%;position:absolute;right:-220px;bottom:85px;box-shadow:0 0 0 38px #a2c28c08,0 0 0 39px #a2c28c25,0 0 0 85px #a2c28c05}.board-art:before,.board-art:after{content:"";position:absolute;background:#a2c28c22;left:0;right:0;height:1px;top:50%;transform:rotate(27deg)}.board-art:after{transform:rotate(-27deg)}.board-art i{position:absolute;inset:110px;border:20px solid #a2c28c18;border-radius:50%}.board-art b{position:absolute;inset:195px;background:#d6ef8e;border-radius:50%}.board-art span{position:absolute;top:-24px;left:48%;font-size:22px;color:#a2c28c}.auth-form{align-self:center;width:min(420px,80%);margin:60px auto}.auth-form h2{font-size:32px}.auth-form form{margin-top:36px}.auth-form .primary{width:100%;padding:16px}.auth-form .hint{margin-top:26px}#shell{display:flex;min-height:100vh}aside{width:230px;background:#10231f;color:#dce5da;padding:28px 22px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}aside .brand{font-size:13px;letter-spacing:1px;margin-bottom:58px}aside .eyebrow{color:#849d8d;padding-left:12px;font-size:9px}nav{display:flex;flex-direction:column;gap:6px}nav a{padding:13px 14px;border-radius:6px;font-size:15px;display:flex;gap:13px;align-items:center;color:#b5c8bd}nav a.active{background:#d6ef8e;color:#17372b}nav a:hover:not(.active){background:#ffffff0b}.sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar-bottom p{margin:22px 0 0;font-weight:600;font-size:14px}.sidebar-bottom button{font-size:11px;color:#b0c4b7}.connection{font-size:10px;color:#a9c28e;display:block}.connection:before{content:"";display:inline-block;width:6px;height:6px;background:currentColor;border-radius:50%;margin-right:7px}.workspace{margin-left:230px;width:calc(100% - 230px);padding:38px 5% 20px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:35px}header .eyebrow{font-size:9px;margin-bottom:9px;color:var(--muted)}header h1{margin:0;font-size:30px}.header-actions{display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;background:#e0e9cf;border:1px solid #ced9ba;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700}.hero{background:#183b2c;color:white;border-radius:12px;padding:32px 36px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:24px;position:relative;overflow:hidden}.hero h2{font-size:32px;max-width:520px;margin-bottom:12px}.hero p{color:#bfd0bd;max-width:540px;font-size:14px}.hero .eyebrow{color:var(--accent)}.hero .primary{background:var(--accent);color:var(--ink);white-space:nowrap}.hero:after{content:"◎";font-size:200px;color:#ffffff08;position:absolute;right:110px;pointer-events:none}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.metric,.card{background:white;border:1px solid var(--line);border-radius:10px;padding:22px}.metric span{font-size:11px;color:var(--muted);display:block}.metric strong{font-size:35px;display:block;font-weight:600;letter-spacing:-1px;margin:15px 0 7px}.metric small{font-size:10px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:30px 0 14px}.section-top h2{font-size:19px;margin:0}.section-top a{font-size:12px;color:#486442}.columns{display:grid;grid-template-columns:1.4fr 1fr;gap:22px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card p{font-size:13px}.card .eyebrow{color:var(--muted);font-size:9px}.empty{padding:32px;text-align:center;border:1px dashed #cad6c4;border-radius:9px;background:#f9faf5}.empty h3{margin-bottom:10px}.empty p{font-size:13px;max-width:420px;margin:0 auto 18px;color:var(--muted)}.badge{display:inline-block;border-radius:4px;padding:5px 8px;background:#edf3e4;color:#416031;font-size:10px;font-weight:700;letter-spacing:.3px}.badge.offline{background:#f3eee4;color:#8a6c39}.row{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid #e7ece3;padding:16px 0}.row:first-child{border-top:0}.row p{margin:0;font-size:13px}.row small{font-size:11px}.row strong{font-size:14px}.row a:hover{text-decoration:underline}.scoreboard{background:#122c23;color:white;border-radius:12px;padding:30px;margin-bottom:20px}.score-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.score-head .badge{background:#d6ef8e;color:#24442b}.scores{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.player-score{padding:20px;border:1px solid #ffffff15;border-radius:8px;background:#ffffff03}.player-score.active{border-color:#cfe890;background:#d6ef8e0c}.player-score h3{font-size:19px;color:#baceb9}.player-score.active h3{color:#e1f5bd}.score{font-size:clamp(64px,7vw,112px);line-height:1.1;letter-spacing:-5px;font-weight:600;margin:12px 0}.scoreboard .muted{color:#adbfad}.darts{display:flex;gap:7px;flex-wrap:wrap}.dart{background:#f3f6ec;border:1px solid #d9e2cf;border-radius:5px;padding:10px 14px;font-weight:700;font-size:13px;min-width:55px;text-align:center}.dart.missing{border-style:dashed;color:#8e8979;background:#faf8f2}.dart small{display:block;font-size:9px;font-weight:400}.visit{padding:17px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;flex-wrap:wrap}.visit-info{min-width:90px}.visit-info strong{font-size:13px;display:block}.visit-info small{font-size:10px}.visit .text-button{font-size:11px;color:#4c7042;margin-left:auto}.bracket{display:flex;gap:20px;overflow:auto;padding:8px 0 24px}.bracket-round{min-width:230px;flex:1}.bracket-match{background:white;border:1px solid var(--line);border-radius:8px;padding:16px;margin:15px 0}.bracket-match p{display:flex;justify-content:space-between;margin:8px 0;font-size:13px}.bracket-match .winner{font-weight:700;color:#4c702c}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:16px 12px;border-bottom:1px solid var(--line)}th{font-size:10px;font-weight:600;letter-spacing:1px;color:var(--muted)}.filters{display:flex;gap:12px;margin:14px 0;align-items:center;flex-wrap:wrap}.filters label{margin:0}.filters select{padding:8px 12px}.bar{display:flex;align-items:center;gap:14px;margin:13px 0;font-size:12px}.bar span{width:40px}.bar meter{width:100%;height:14px;accent-color:#6b9153}.bar b{min-width:25px}footer{display:flex;justify-content:space-between;margin-top:50px;border-top:1px solid var(--line);padding-top:18px;font-size:9px;letter-spacing:1.3px;color:#8a9b8c}dialog{border:1px solid var(--line);border-radius:12px;padding:30px;max-width:450px;width:90vw;color:var(--ink)}dialog::backdrop{background:#10231f99}dialog h2{font-size:23px}.screen-mode aside,.screen-mode header,.screen-mode footer{display:none}.screen-mode .workspace{margin:0;width:100%;padding:25px 4%}.screen-mode .score{font-size:clamp(100px,15vw,240px)}.screen-mode .player-score h3{font-size:32px}.screen-mode .scoreboard{padding:40px}.screen-mode .bracket-round{min-width:280px}.screen-mode .bracket-match p{font-size:20px}.exit-screen{position:fixed;right:20px;top:12px;z-index:5;opacity:.65}.screen-mode .exit-screen:hover{opacity:1}.split-form{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}@media(max-width:1000px){aside{width:190px;padding:25px 16px}.workspace{margin-left:190px;width:calc(100% - 190px);padding:28px 4%}.columns{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.metrics{gap:10px}.metric{padding:16px}.metric strong{font-size:30px}}@media(max-width:700px){.auth-layout{grid-template-columns:1fr}.auth-story{padding:30px 9%}.auth-story .brand{margin-bottom:40px}.auth-story h1{font-size:48px}.auth-story small{display:none}.auth-story p{max-width:75%;font-size:13px}.board-art{width:280px;height:280px;right:-190px;bottom:20px}.auth-form{margin:40px auto}.auth-form h2{font-size:26px}aside{position:static;width:100%;padding:15px}.workspace{margin:0;width:100%;padding:22px 16px}#shell{display:block}aside .brand{margin:0 0 15px;font-size:12px}aside .eyebrow,.sidebar-bottom{display:none}nav{flex-direction:row;overflow:auto;gap:4px}nav a{font-size:12px;white-space:nowrap;padding:10px}nav a span{font-size:11px}header{gap:10px}header h1{font-size:24px}.header-actions{gap:6px}.header-actions .avatar{display:none}.header-actions button{font-size:10px;padding:9px}.metrics{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.hero{padding:24px}.hero h2{font-size:27px}.scores{grid-template-columns:1fr 1fr}.scoreboard{padding:18px}.player-score{padding:15px}.score{font-size:65px;letter-spacing:-3px}.visit{gap:10px}.visit-info{min-width:65px}.dart{padding:9px;min-width:45px}.split-form{grid-template-columns:1fr}.screen-mode .score{font-size:90px}.screen-mode .scoreboard{padding:16px}}
