:root{--bg:#f6f5ef;--surface:#fffefa;--ink:#172d28;--muted:#53665f;--brand:#145c50;--brand-deep:#104b41;--brand-soft:#e5eee7;--line:#cdd5ca;--sand:#f2e6ce;--gold:#745314;--error:#9a302c;--radius:20px;color:var(--ink);background:var(--bg);color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{-webkit-text-size-adjust:100%;text-size-adjust:100%;min-width:320px;margin:0;font-size:20px;line-height:1.45}button,input,select,a{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button,a,input,select{touch-action:manipulation}button{border:0}button:disabled{cursor:default}a{color:inherit;text-decoration:none}svg{flex-shrink:0;display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:4px;outline:4px solid #b37e16}h1:focus{outline:none}h1,h2,p{margin:0}h1{letter-spacing:-.045em;overflow-wrap:anywhere;margin:6px 0 28px;font-size:clamp(32px,8vw,40px);font-weight:800;line-height:1.15}h2{letter-spacing:-.025em;margin-bottom:18px;font-size:23px;line-height:1.2}p{line-height:1.5}small{font-size:16px}strong{font-weight:750}input,select{background:#fff;border:2px solid #aab8ab;border-radius:13px;min-width:0;max-width:100%;min-height:64px}input{width:100%;padding:14px 16px;font-size:22px}input::placeholder{color:#69776e;opacity:1}select{padding:10px 34px 10px 14px;font-size:24px;font-weight:750}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:12px;padding:0}button:disabled:not(.select-player){opacity:.5}button:active:not(:disabled),a.btn:active{transform:translateY(2px)}.skip{z-index:50;background:#fff;padding:14px;position:fixed;top:-100px;left:10px}.skip:focus{top:10px}.app-shell{flex-direction:column;max-width:560px;min-height:100svh;margin:auto;display:flex}.app-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:94px;padding:18px 22px;display:flex}.brand{background:0 0;align-items:center;gap:9px;min-height:52px;padding:0;display:flex}.brand>span{letter-spacing:-1.7px;font-size:31px;font-weight:850}.brand-dot{color:var(--brand);font-size:38px}.back-button{border:1.5px solid var(--line);background:var(--surface);border-radius:12px;justify-content:center;align-items:center;gap:5px;min-height:52px;padding:8px 10px;font-size:16px;font-weight:750;display:flex}main{flex:1;padding:26px 22px 36px}.app-footer{padding:20px 22px max(20px, env(safe-area-inset-bottom));color:#64736a;letter-spacing:1.5px;justify-content:center;align-items:center;gap:12px;font-size:12px;display:flex}.app-footer>span:first-child{letter-spacing:-.6px;font-size:17px;font-weight:850}.footer-line{background:#bcc8bd;width:1px;height:13px}.stack{flex-direction:column;gap:14px;display:flex}.stack.tight{gap:10px}.full{width:100%}.center{text-align:center}.section{margin-top:32px}.section-small{margin-top:20px}.eyebrow{letter-spacing:.1em;color:var(--muted);margin:0 0 14px;font-size:17px}.btn{text-align:center;letter-spacing:.015em;border:2px solid #0000;border-radius:15px;justify-content:center;align-items:center;gap:12px;min-height:68px;padding:17px 18px;font-size:19px;font-weight:800;line-height:1.2;display:inline-flex}.primary{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 4px #0e4037}.secondary{background:var(--surface);color:var(--brand-deep);border-color:#aebdb0;box-shadow:0 3px #dbe1d6}.danger{background:var(--error);color:#fff}.subtle-danger{color:var(--error);background:0 0;border-color:#d2aaa3}.small{border-radius:12px;flex-shrink:0;min-height:56px;padding:12px 14px;font-size:16px}.choice{text-align:left;background:var(--brand);border:2px solid var(--brand);border-radius:var(--radius);color:#fff;grid-template-columns:64px 1fr 28px;align-items:center;gap:14px;width:100%;min-height:128px;padding:24px 20px;display:grid;box-shadow:0 5px #0e4037}.choice strong{letter-spacing:-.6px;font-size:30px;line-height:1.1;display:block}.choice small{margin-top:8px;line-height:1.4;display:block}.choice-icon{background:#ffffff16;border:1px solid #ffffff30;border-radius:18px;place-items:center;width:64px;height:64px;display:grid}.profiles-choice{background:var(--surface);color:var(--brand-deep);border-color:#abbba9;box-shadow:0 5px #dbe1d6}.profiles-choice .choice-icon{background:var(--brand-soft);border-color:#cbd9ca}.competition-choice{background:var(--sand);color:#563c14;border-color:#caba94;box-shadow:0 5px #dfd2b5}.competition-choice .choice-icon{background:#fcf5e6;border-color:#d8c598}.home-heading{padding:12px 0 10px}.hello{color:var(--muted);font-size:23px}.home-heading h1{margin:2px 0 32px}.home-choices{gap:22px}.home-choices .choice{min-height:154px}.home-choices .choice strong{font-size:34px}.welcome{text-align:center;padding:30px 0 12px}.welcome-mark{background:var(--brand-soft);width:156px;height:156px;color:var(--brand);border-radius:42px;place-items:center;margin:0 auto 24px;display:grid;transform:rotate(-5deg)}.welcome-mark>svg{transform:rotate(5deg)}.welcome h1{margin-bottom:44px;font-size:58px}.welcome-actions{gap:20px;display:grid}.welcome-actions .btn{min-height:80px;font-size:24px}.error{color:#7c221e;background:#fff0e9;border:2px solid #bf786c;border-radius:15px;margin:16px 0;padding:18px;font-size:20px}.error .btn{margin-top:14px;font-size:16px}.loading{text-align:center;color:var(--muted);padding:40px 0}.empty{color:var(--muted);padding:24px 4px;font-size:20px}.empty .btn{margin-top:18px}.avatar{width:52px;height:52px;color:var(--brand-deep);letter-spacing:-.5px;background:#e6e9df;border-radius:50%;flex-shrink:0;place-items:center;font-size:20px;font-weight:800;display:grid}.avatar-own{background:var(--brand);color:#fff}.person-row{text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:16px;align-items:center;gap:14px;width:100%;min-height:92px;margin-bottom:10px;padding:16px;display:flex}.person-name{overflow-wrap:anywhere;flex:1;min-width:0;font-size:22px;font-weight:750}.person-name small{letter-spacing:.06em;color:var(--muted);margin-top:4px;font-size:13px;font-weight:750;display:block}.own-row{background:var(--brand-soft);border-color:#a8bba8;margin-bottom:24px}.own-row .person-name small{color:var(--brand)}.search{background:#fff;border:2px solid #aab8ab;border-radius:14px;align-items:center;gap:10px;margin:24px 0 30px;padding-left:14px;display:flex}.search input{background:0 0;border:0;min-height:64px;padding-left:0;font-size:20px}.search:focus-within{outline-offset:3px;outline:4px solid #b37e16}.search input:focus-visible{outline:0}.count{color:var(--muted);margin-left:5px;font-size:17px;font-weight:600}.request-card{background:var(--surface);border:2px solid #b7c5b2;border-radius:18px;margin-bottom:14px;padding:18px}.person-summary{overflow-wrap:anywhere;align-items:center;gap:14px;margin-bottom:18px;display:flex}.two-buttons{grid-template-columns:1fr 1fr;gap:12px;display:grid}.search-result{flex-wrap:wrap;gap:10px;padding:14px 12px}.search-result>.person-name{font-size:20px}.search-result .avatar{width:42px;height:42px;font-size:17px}.profile-heading{text-align:center;margin:10px 0 30px}.profile-heading>.avatar{width:86px;height:86px;margin:0 auto 18px;font-size:32px}.profile-heading h1{margin-bottom:20px}.tabs{border:1px solid var(--line);background:#e7eadd;border-radius:15px;grid-template-columns:1fr 1fr;gap:5px;margin:24px 0;padding:5px;display:grid}.tabs button{color:#465c50;background:0 0;border-radius:10px;min-height:56px;padding:10px 6px;font-size:17px;font-weight:800}.tabs button[aria-pressed=true]{background:var(--surface);color:var(--brand-deep);box-shadow:0 2px 5px #172d2818}.stats{background:var(--surface);border:1px solid var(--line);border-radius:18px;grid-template-columns:repeat(3,1fr);padding:22px 8px;display:grid}.stats>div{border-right:1px solid var(--line);flex-direction:column;align-items:center;gap:4px;display:flex}.stats>div:last-child{border-right:0}.stats strong{letter-spacing:-1px;font-size:32px;line-height:1.2}.stats span{color:var(--muted);font-size:16px}.result-row{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;align-items:center;gap:12px;width:100%;padding:20px 2px;display:flex}.result-row>span{flex:1}.result-row>span strong{font-size:18px;display:block}.result-row>span small{color:var(--muted);margin-top:3px;display:block}.result-score{white-space:nowrap;font-size:28px}.result-score>small{color:var(--muted);margin-left:2px;font-size:15px;font-weight:500}.privacy-note{color:var(--muted);align-items:center;gap:10px;margin:32px 0 20px;font-size:17px;display:flex}.account-actions{margin-top:36px}.private-state{color:var(--muted);flex-direction:column;align-items:center;gap:16px;padding:36px 0;display:flex}.field{font-size:21px;font-weight:650;display:block}.field input,.field select{width:100%;margin-top:9px;display:block}.field small{color:var(--muted);font-size:16px;font-weight:500}.privacy-control{margin-top:12px}.privacy-control p{color:var(--muted);margin:16px 0 12px;font-size:17px}.privacy-control .btn{font-size:18px}.select-player{background:var(--surface);border:2px solid var(--line);text-align:left;border-radius:16px;align-items:center;gap:12px;width:100%;min-height:88px;padding:15px 14px;display:flex}.select-player strong{overflow-wrap:anywhere;flex:1;min-width:0;font-size:22px}.select-player .avatar{width:44px;height:44px;font-size:18px}.checkbox{background:#fff;border:2px solid #8b9e8a;border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.selected{border-color:var(--brand);box-shadow:inset 4px 0 0 var(--brand);background:#e3eee2}.selected .checkbox{background:var(--brand);border-color:var(--brand);color:#fff}.selected .checkbox svg{width:23px;height:23px}.select-player:disabled{color:var(--ink);opacity:1}.you{color:var(--brand);background:#ffffff9c;border-radius:7px;padding:5px 8px;font-size:14px;font-weight:800}.sticky-actions{z-index:5;padding:18px 8px max(18px, env(safe-area-inset-bottom));background:linear-gradient(#f6f5eff0,#f6f5ef 35%);border-top:1px solid #d9dfd3;gap:14px;margin:26px -8px -12px;display:grid;position:sticky;bottom:0}.button-count{border:1px solid #ffffff7d;border-radius:50%;place-items:center;width:30px;height:30px;font-size:18px;display:grid}.brief{color:var(--muted);margin-bottom:20px;font-size:20px}.order-row{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:14px 0;display:flex}.order-row select{flex-shrink:0;width:82px}.order-row strong{overflow-wrap:anywhere;font-size:24px}.round-heading{letter-spacing:.025em;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:17px;display:flex}.round-heading strong{color:var(--ink);font-size:24px}.round-progress{gap:5px;margin:14px 0 26px;display:flex}.round-progress span{background:#dce2d5;border-radius:3px;flex:1;height:6px}.round-progress span.done{background:var(--brand)}.round-progress span.current{background:#b58a31}.scoring-player{justify-content:center;align-items:center;gap:12px;min-height:76px;margin-bottom:22px;display:flex}.scoring-player h1{text-align:center;margin:0;font-size:clamp(29px,8vw,40px)}.turn-number{background:var(--sand);color:#674619;border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:27px;font-weight:800;display:grid}.score-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.score-button{aspect-ratio:1.06;background:var(--surface);min-height:100px;color:var(--brand-deep);font-variant-numeric:tabular-nums;border:2px solid #acbca8;border-radius:19px;place-items:center;font-size:clamp(44px,14vw,62px);font-weight:800;line-height:1;display:grid;box-shadow:0 5px #d5ddcf}.score-button.ten{aspect-ratio:auto;color:#fff;background:var(--brand);border-color:var(--brand);grid-column:1/-1;min-height:112px;font-size:66px;box-shadow:0 5px #0e4037}.score-button:disabled{opacity:.7!important}.recorded-score{color:var(--brand);justify-content:center;align-items:center;gap:20px;padding:24px 0 36px;display:flex}.recorded-score strong{letter-spacing:-5px;font-size:112px;font-weight:800;line-height:1}.recorded-score svg{width:44px;height:44px}.review-title{text-align:center;margin:12px 0 22px;font-size:29px}.score-table{border:1px solid var(--line);background:var(--surface);border-radius:17px;overflow:hidden}.table-head,.score-row{grid-template-columns:42px minmax(0,1fr) 84px;align-items:center;gap:10px;padding:14px;display:grid}.table-head{color:#53654e;background:#e8ecdf;font-size:14px;font-weight:700}.table-head>span:last-child{text-align:center}.score-row{border-top:1px solid var(--line);min-height:92px}.score-row>strong{overflow-wrap:anywhere;font-size:21px;line-height:1.25}.player-number{color:var(--muted);text-align:center;font-size:21px}.score-row select{background:#f4f6ec;border-radius:11px;width:84px;min-height:58px;padding:8px 20px 8px 10px;font-size:27px}.table-points{text-align:center;color:var(--brand-deep);font-variant-numeric:tabular-nums;font-size:31px;font-weight:800}.round-select{margin-bottom:24px}.live-label{color:var(--brand);white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.live-label i,.live-dot{background:#25754f;border-radius:50%;flex-shrink:0;width:9px;height:9px;display:block}.live-totals{margin-top:30px}.live-totals h2{font-size:21px}.finish-symbol,.event-symbol{background:var(--brand-soft);width:88px;height:88px;color:var(--brand);border-radius:50%;place-items:center;margin:8px auto 24px;display:grid}.big-result{text-align:center;color:var(--brand);flex-direction:column;padding:16px 0 28px;display:flex}.big-result>strong{letter-spacing:-6px;font-size:108px;font-weight:800;line-height:1}.big-result>span{color:var(--muted);margin-top:10px;font-size:24px}.game-page>.full+.full{margin-top:16px}.continue-card{background:var(--brand-soft);text-align:left;border:2px solid #b1c4ad;border-radius:16px;align-items:center;gap:14px;width:100%;margin-bottom:12px;padding:20px 16px;display:flex}.continue-card>span:not(.live-dot){flex:1;min-width:0}.continue-card strong{font-size:19px;display:block}.continue-card small{color:var(--muted);overflow-wrap:anywhere;margin-top:5px;font-size:16px;display:block}.active-games h2{font-size:21px}.event-card{background:var(--surface);text-align:left;border:1.5px solid #c9cbb8;border-radius:17px;align-items:center;gap:12px;width:100%;margin-bottom:14px;padding:20px 16px;display:flex}.event-card>span:nth-child(2){flex:1;min-width:0}.event-card strong{overflow-wrap:anywhere;font-size:22px;line-height:1.2;display:block}.event-card small{color:var(--muted);margin:9px 0;font-size:16px;display:block}.event-icon{color:var(--gold)}.badge{background:var(--sand);color:#634c21;letter-spacing:.025em;border-radius:7px;padding:7px 9px;font-size:12px;font-weight:800;line-height:1.3;display:inline-block}.badge-green{background:var(--brand-soft);color:var(--brand-deep)}.event-heading{text-align:center}.event-symbol{background:var(--sand);color:var(--gold)}.event-heading h1{margin-bottom:20px}.event-heading p{color:var(--muted);margin-bottom:14px;font-size:21px}.event-heading{margin-bottom:28px}.registered{background:var(--brand-soft);min-height:64px;color:var(--brand);border:1.5px solid #a7bea0;border-radius:14px;justify-content:center;align-items:center;gap:10px;font-size:20px;font-weight:800;display:flex}.participant-count{text-align:center;color:var(--muted);margin:20px 0}.busy{pointer-events:none;opacity:.65}dialog{background:var(--bg);width:440px;max-width:calc(100% - 32px);color:var(--ink);border:0;border-radius:22px;padding:26px;box-shadow:0 20px 80px #0004}dialog::backdrop{background:#142b25b8}dialog h2{overflow-wrap:anywhere;margin-bottom:28px;font-size:27px;line-height:1.25}@media (width<=359px){.app-header{padding:14px 16px}main{padding:22px 16px 30px}.choice{grid-template-columns:52px 1fr 24px;gap:10px;min-height:112px;padding:20px 14px}.choice-icon{border-radius:15px;width:52px;height:58px}.choice-icon svg{width:36px;height:36px}.choice strong{font-size:26px}.home-choices .choice strong{font-size:29px}.choice.competition-choice strong{font-size:24px}.home-choices .choice{min-height:140px}.score-grid{gap:11px}.score-button{border-radius:16px;min-height:88px}.score-button.ten{min-height:100px}.table-head,.score-row{grid-template-columns:30px minmax(0,1fr) 76px;gap:6px;padding:12px 10px}.score-row select{width:76px}.score-row>strong{font-size:20px}.person-row{gap:10px;padding:14px 12px}.person-name{font-size:20px}.search-result>.avatar{display:none}.btn{font-size:17px}.stats strong{font-size:29px}.stats span{font-size:15px}.select-player{gap:9px;padding:13px 10px}.select-player strong{font-size:20px}.select-player .avatar{width:38px;height:38px;font-size:16px}.you{padding:4px;font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width>=600px){.app-shell{border-inline:1px solid var(--line);background:var(--bg);box-shadow:0 0 80px #233e2d07}body{background:#e8ece2}.welcome{padding-top:40px}}@media (height<=650px){.game-page .round-progress{margin:10px 0 14px}.scoring-player{min-height:56px;margin-bottom:14px}}@media (height<=550px){.app-header{min-height:68px;padding-block:8px}main{padding-top:12px}.game-page .round-progress{margin:6px 0 10px}.scoring-player{min-height:42px;margin-bottom:10px}.score-grid{gap:10px}.score-button{aspect-ratio:auto;height:80px;min-height:80px}.score-button.ten{height:88px;min-height:88px}}.score-row select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='%23145c50' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:12px 8px;padding-right:26px}.stats span{font-size:17px}
