:root{color-scheme:dark;--bg:#102e25;--surface:#1b4031;--surface-2:#214735;--ink:#f4f1e5;--muted:#b3c6b7;--line:#416052;--teal:#deede0;--teal-dark:#214735;--cream:#e8ead2;--danger:#ffb5ac;--warning:#ddb77e;--radius:13px;--max:760px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
.history-result{display:grid;justify-items:center;gap:4px;min-width:0}.history-outcome{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:650;line-height:1.35;white-space:nowrap}.history-outcome.win{color:#b8d5a3}.history-outcome.loss{color:var(--danger)}.history-outcome-dot{width:7px;height:7px;flex:none;border-radius:50%;background:currentColor;box-shadow:0 0 5px currentColor}.history-card .match-card-bottom{flex-wrap:wrap}.history-card .match-card-bottom>span{min-width:0;overflow-wrap:anywhere}
*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.55;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-touch-callout:default}a{color:var(--teal);text-underline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}input:disabled,select:disabled{opacity:.7}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,6vw,3.5rem);line-height:1.08;letter-spacing:-.045em;font-weight:780;margin-bottom:16px}h2{font-size:1.5rem;line-height:1.2;letter-spacing:-.025em;margin-bottom:16px}h3{font-size:1.1rem;line-height:1.35;margin-bottom:10px}p{margin-bottom:16px}small{font-size:.82rem}img,svg{max-width:100%}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}hr{border:0;border-top:1px solid var(--line);margin:24px 0}[hidden]{display:none!important}.muted,.hint{color:var(--muted)}.hint{font-size:.88rem;line-height:1.5;margin:8px 0 0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.73rem;font-weight:750;color:var(--teal);margin-bottom:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;top:8px;left:8px;padding:12px;background:var(--cream);color:var(--bg);transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{max-width:var(--max);margin:auto;padding:calc(22px + env(safe-area-inset-top)) 24px 22px;display:flex;align-items:center;gap:16px;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;min-width:0}.brand img{flex:none;border-radius:12px}.brand>span{display:grid}.brand-venue{font-size:.88rem;font-weight:600;letter-spacing:.01em}.brand-title{font-size:1.24rem;letter-spacing:-.03em;font-weight:800;line-height:1.15}.account-link{min-height:44px;max-width:160px;padding:10px 4px;text-align:right;font-size:.85rem;overflow-wrap:anywhere}.connection{padding:12px 24px;text-align:center;background:#463f2f;color:var(--warning);font-size:.9rem}.connection button{margin-left:8px}.notice-wrap{max-width:var(--max);margin:auto;padding:0 24px}.notice-wrap:empty{display:none}.notice{margin-top:18px;border:1px solid var(--teal);background:var(--teal-dark);padding:14px 16px;border-radius:12px;display:flex;align-items:flex-start;gap:12px}.notice p{margin:0;flex:1;overflow-wrap:anywhere}.notice.error{border-color:#bb8b76;background:#42332d;color:var(--danger)}.notice button{flex:none;margin:-4px -4px -4px 0}.text-button{border:0;background:none;color:inherit;min-height:44px;padding:8px 10px;text-decoration:underline;text-underline-offset:4px;font-weight:650}.close-button{min-width:44px;min-height:44px;border:0;background:none;color:inherit;font-size:1.4rem;line-height:1}
main{max-width:var(--max);margin:0 auto;padding:40px 24px 48px;min-height:65vh}main:focus{outline:none}.page-heading{margin-bottom:28px}.page-heading p:last-child{margin-bottom:0}.page-heading h1{font-size:clamp(2rem,5vw,2.7rem)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-heading h2{margin:0}.section-heading small{color:var(--muted)}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center;margin-bottom:44px;padding:12px 0 36px;border-bottom:1px solid var(--line)}.hero h1{max-width:540px}.hero .lead{color:var(--muted);max-width:430px;font-size:1.06rem}.hero-note{font-size:.8rem;color:var(--muted);margin:12px 0 0}.score-sheet{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transform:rotate(-2deg);background:var(--surface)}.sheet-heading{padding:16px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.sheet-heading img{width:36px;height:36px}.sheet-line{display:flex;gap:20px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.sheet-line:last-child{border:0}.sheet-line b{font-size:1.8rem;line-height:1;color:var(--teal);font-variant-numeric:tabular-nums;font-weight:500}.sheet-line strong{display:block;font-weight:650;font-size:.95rem}.sheet-line small{color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:48px;border:1px solid var(--line);border-radius:9px;padding:12px 20px;color:var(--ink);background:var(--surface-2);text-decoration:none;font-weight:700;line-height:1.3;transition:background-color .15s,border-color .15s;max-width:100%;text-align:center;overflow-wrap:anywhere}.btn:hover{background:#414a40;border-color:#7a8777}.btn.primary{background:var(--teal);border-color:var(--teal);color:#173b32}.btn.primary:hover{background:#b9e5d9}.btn.cream{background:var(--cream);color:#2b2d26;border-color:var(--cream)}.btn.danger{border-color:#ba8b77;color:var(--danger);background:#42332d}.btn.small{min-height:44px;padding:10px 14px;font-size:.88rem}.btn.full{width:100%}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.actions>.primary{margin-left:auto}.actions.compact{margin-top:12px}.actions.compact>.primary{margin-left:0}.back-link{display:inline-flex;gap:8px;align-items:center;min-height:44px;text-decoration:none;font-size:.88rem;margin:-16px 0 20px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;min-width:0}.panel+.panel{margin-top:24px}.narrow{max-width:780px;margin:auto}.empty-state{padding:40px 24px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}.empty-state h1,.empty-state h2,.empty-state h3{color:var(--ink)}.empty-state p:last-child{margin-bottom:0}.empty-state .eyebrow{color:var(--teal)}.loading{display:flex;align-items:center;gap:12px;color:var(--muted);padding:24px 0}.loading:before{content:"";width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--teal);border-radius:50%;animation:turn 1s linear infinite;flex:none}@keyframes turn{to{transform:rotate(360deg)}}.row-list{display:grid;gap:14px}.match-card{display:block;color:var(--ink);text-decoration:none;padding:20px 22px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.match-card:hover{border-color:var(--teal)}.match-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;flex-wrap:wrap}.match-card-meta{font-size:.78rem;color:var(--muted)}.teams-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;align-items:center}.teams-row .team:last-child{text-align:right}.team{font-weight:700;overflow-wrap:anywhere}.team small{display:block;font-size:.72rem;color:var(--muted);font-weight:500;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}.score{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:750;font-size:1.5rem;letter-spacing:.04em}.vs{color:var(--muted);font-size:.76rem;font-weight:500}.match-card-bottom{margin-top:12px;font-size:.8rem;color:var(--muted);display:flex;justify-content:space-between;gap:12px}.match-card-bottom .attention{color:var(--teal);font-weight:650}.badge{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;line-height:1.35;border:1px solid var(--line);border-radius:5px;padding:5px 8px;color:var(--ink)}.badge.pending{color:var(--warning);border-color:#8a7854;background:#3d3b2e}.badge.confirmed{color:var(--teal);border-color:#5c8375;background:#2b3f35}.badge.disputed{color:var(--danger);border-color:#956f60;background:#42352e}.badge.void{color:var(--muted)}.badge.playing{color:var(--ink);border-color:#85907f}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 30px;gap:10px}.steps li{padding-top:12px;border-top:3px solid var(--line);color:var(--muted);font-size:.78rem}.steps li.active{color:var(--teal);border-color:var(--teal)}.steps li.complete{border-color:#789d8e}.steps span{display:block;font-weight:750;font-size:.9rem;margin-top:2px}.field{display:block;margin-bottom:20px;min-width:0}.field>span,.field>label,label.field-label{display:block;font-weight:650;font-size:.88rem;margin-bottom:8px}.field input,.field select,.field textarea,input.control,select.control,textarea.control{display:block;width:100%;min-height:48px;padding:12px 13px;border:1px solid #778173;border-radius:8px;background:#142f25;color:var(--ink);min-width:0}.field textarea{min-height:100px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#a3aca0}.field small{display:block;color:var(--muted);margin-top:7px}.field input:invalid:not(:placeholder-shown){border-color:#a49780}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .field{margin-bottom:0}.form-grid+.field,.form-grid+.form-grid{margin-top:20px}fieldset{border:0;margin:0 0 26px;padding:0;min-width:0}legend{font-size:1rem;font-weight:700;margin-bottom:12px;padding:0}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.choices.disciplines{grid-template-columns:repeat(5,1fr)}.choice{position:relative;min-height:82px;padding:16px 12px;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;background:#1b4031;color:var(--ink);text-align:left}.choice strong{font-size:.93rem}.choice small{color:var(--muted);font-size:.75rem}.choice[aria-pressed="true"]{border:2px solid var(--teal);padding:15px 11px;background:var(--teal-dark);color:var(--ink)}.choice[aria-pressed="true"]:after{content:"✓";position:absolute;top:5px;right:8px;font-size:.8rem;color:var(--teal)}.choice[aria-pressed="true"] small{color:#c4d8cb}.choices.variants{grid-template-columns:1fr 1fr}.variants .choice{min-height:130px;justify-content:flex-start;padding-top:20px}.variants .choice[aria-pressed="true"]{padding-top:19px}.variants .choice small{line-height:1.5}.team-panel{border:1px solid var(--line);border-radius:10px;padding:20px;background:#1b4031}.team-panel h3{color:var(--teal)}.team-panel .field:last-child{margin-bottom:0}.summary-list{margin:0}.summary-list>div{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.summary-list>div:first-child{padding-top:0}.summary-list>div:last-child{border-bottom:0}.summary-list dt{color:var(--muted);font-size:.86rem}.summary-list dd{margin:0;font-weight:650;overflow-wrap:anywhere}.callout{padding:16px 18px;border-left:3px solid var(--teal);background:#263f35;border-radius:0 8px 8px 0;margin:20px 0;font-size:.9rem}.callout p:last-child{margin-bottom:0}.callout.warning{border-color:var(--warning);background:#3c3c2e;color:var(--warning)}.callout.error{border-color:var(--danger);background:#42342e;color:var(--danger)}.callout .btn{margin-top:10px}.auth-modes{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:24px}.auth-modes button{flex:1;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;background:none;color:var(--muted);padding:12px 8px;min-height:48px;font-weight:650}.auth-modes button[aria-pressed="true"]{color:var(--teal);border-bottom-color:var(--teal)}.auth-panel{max-width:500px;margin:auto}.pin-field{letter-spacing:.25em;font-variant-numeric:tabular-nums}.auth-intro{text-align:center;margin-bottom:28px}.auth-intro h1{font-size:2.3rem}.auth-note{font-size:.8rem;color:var(--muted);text-align:center;margin-top:18px}
.match-title{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.match-title h1{margin:0}.match-meta{display:flex;gap:8px 18px;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.scoreboard{padding:30px 26px;background:#1e241f;border:1px solid var(--line);border-radius:var(--radius);margin:24px 0}.scoreboard .teams-row{gap:20px}.scoreboard .score{font-size:clamp(2rem,7vw,3.8rem);color:var(--cream);letter-spacing:-.01em}.scoreboard .team{font-size:1.18rem}.score-caption{font-size:.8rem;color:var(--muted);text-align:center;margin:18px 0 0}.scoreboard .confirmed-time{text-align:center;color:var(--teal);font-size:.83rem;margin:16px 0 0}.result-block{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.result-block h3{font-size:.85rem;color:var(--muted);margin:0 0 12px}.result-block .score{font-size:1.5rem}.round-summary{display:flex;gap:8px;flex-wrap:wrap;list-style:none;margin:12px 0 0;padding:0}.round-summary li{font-size:.8rem;padding:5px 9px;border:1px solid var(--line);border-radius:5px}.result-editor{margin-top:24px}.result-editor h2{margin-bottom:10px}.score-inputs{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:16px;align-items:end;margin-top:22px}.score-inputs .field{margin:0}.score-inputs .field input{font-size:2rem;text-align:center;font-variant-numeric:tabular-nums;padding:10px}.score-inputs .separator{padding-bottom:14px;text-align:center;color:var(--muted)}.round-row{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(0,1fr) 44px;gap:10px;align-items:end;margin-bottom:16px}.round-row .field{margin:0}.round-row .field>span{font-size:.75rem;overflow-wrap:anywhere}.round-number{min-height:48px;display:flex;align-items:center;font-variant-numeric:tabular-nums;color:var(--muted);font-size:.82rem}.round-remove{border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);min-height:48px;min-width:44px;font-size:1.3rem}.round-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.derived-score{font-size:1rem;color:var(--teal);font-variant-numeric:tabular-nums}.editor-reason{margin-top:24px}.editor-validation{margin:16px 0 0;font-size:.88rem;color:var(--muted)}.editor-validation.invalid{color:var(--warning)}details{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}summary{min-height:44px;cursor:pointer;font-weight:650;padding:10px 0;color:var(--teal)}details>p{font-size:.9rem;color:var(--muted)}.admin-panel{margin-top:24px}.activity-list{list-style:none;margin:0;padding:0}.activity-list li{border-top:1px solid var(--line);padding:14px 0;font-size:.88rem}.activity-list time{display:block;color:var(--muted);font-size:.78rem}.activity-list p{margin:6px 0 0}
.filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:end}.filters .field{flex:1;min-width:140px;margin-bottom:0}.filters>.btn{flex:none}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;min-width:460px}th,td{padding:16px 12px;text-align:left;border-bottom:1px solid var(--line);font-size:.88rem}th{color:var(--muted);font-size:.72rem;letter-spacing:.04em;font-weight:650;text-transform:uppercase;background:#1b4031}td:first-child,th:first-child{padding-left:20px}td:last-child,th:last-child{padding-right:20px}tbody tr:last-child td{border-bottom:0}td.numeric,th.numeric{text-align:right}.player-name{font-weight:700;overflow-wrap:anywhere;max-width:210px}.player-name small{display:block;font-size:.72rem;color:var(--muted);font-weight:400;margin-top:3px}.own-row{background:#214735}.place{font-size:1.15rem;font-weight:700;color:var(--cream)}.rank-label{font-size:.78rem;white-space:nowrap}.placement-label{display:block;font-size:.72rem;color:var(--muted);margin-top:3px}.table-caption{margin:14px 0 24px;font-size:.8rem;color:var(--muted)}abbr[title]{text-decoration:none}.profile-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.profile-header h1{overflow-wrap:anywhere;margin-bottom:8px}.profile-header p{margin:0}.rating-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:36px}.rating-card{padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.rating-card h3{font-size:.85rem;color:var(--muted)}.rating-card .rank{font-size:1.35rem;font-weight:750;color:var(--cream);margin:8px 0}.rating-card .protection{min-height:20px;font-size:.75rem;color:var(--teal);margin:10px 0}.rating-card progress{width:100%;height:5px;display:block;margin:12px 0;accent-color:var(--teal)}progress::-webkit-progress-bar{background:var(--line);border-radius:4px}progress::-webkit-progress-value{background:var(--teal);border-radius:4px}progress::-moz-progress-bar{background:var(--teal);border-radius:4px}.stats{display:grid;grid-template-columns:repeat(3,1fr);padding-top:14px;border-top:1px solid var(--line);margin-top:16px;gap:8px}.stats span{display:block;font-size:.7rem;color:var(--muted)}.stats b{font-size:1rem;font-weight:650;font-variant-numeric:tabular-nums}.help{max-width:780px;margin-top:36px;scroll-margin-top:24px}.help h2{margin-bottom:20px}.help details{margin-top:0;padding:8px 0}.help details:last-child{border-bottom:1px solid var(--line)}.help details p{margin:8px 0 16px}.install-row{padding:20px 0;margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line)}.install-row p{margin:0;font-size:.85rem;color:var(--muted)}.install-row strong{display:block;color:var(--ink);font-size:.95rem}.site-footer{max-width:var(--max);margin:auto;padding:22px 24px calc(112px + env(safe-area-inset-bottom));display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.76rem;border-top:1px solid var(--line)}.site-footer a{color:var(--muted)}.bottom-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);padding:8px max(16px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#0c251d;border-top:1px solid var(--line)}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;gap:3px;text-decoration:none;color:var(--muted);font-size:.74rem;font-weight:650;border-radius:8px;position:relative}.bottom-nav a[aria-current="page"]{color:var(--teal);background:#1b4031}.bottom-nav a[aria-current="page"]:before{content:"";width:24px;height:2px;background:var(--teal);position:absolute;top:0}.noscript{padding:24px;max-width:var(--max);margin:auto;color:var(--warning)}
@media(min-width:1000px){.bottom-nav{left:50%;right:auto;transform:translateX(-50%);width:460px;border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0}.site-header{padding-top:28px}.rating-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.rating-card{padding:18px}.hero{gap:80px}.score-sheet{margin:10px 10px 0 0}}
@media(max-width:700px){main{padding:28px 18px 36px}.site-header{padding:calc(16px + env(safe-area-inset-top)) 18px 16px;gap:12px}.brand{gap:9px}.brand img{width:40px;height:40px}.brand-venue{font-size:.78rem}.brand-title{font-size:1.12rem}.account-link{font-size:.77rem;max-width:100px}.notice-wrap{padding:0 18px}.notice{padding:12px}.hero{grid-template-columns:1fr;gap:24px;padding:4px 0 28px;margin-bottom:30px}.hero h1{font-size:2.8rem;max-width:350px}.hero .lead{font-size:.97rem;max-width:320px}.hero .btn{width:100%;max-width:380px}.score-sheet{transform:none}.sheet-heading{padding:12px 16px}.sheet-heading img{width:28px;height:28px}.sheet-line{padding:12px 16px;gap:16px}.sheet-line b{font-size:1.4rem}.sheet-line small{font-size:.74rem}.sheet-line strong{font-size:.88rem}.panel{padding:20px 18px}.choices.disciplines{grid-template-columns:repeat(3,1fr)}.choices.disciplines .choice:last-child{grid-column:span 2}.choices{gap:8px}.choice{padding:14px 10px;min-height:86px}.choice[aria-pressed="true"]{padding:13px 9px}.choice strong{font-size:.83rem}.choice small{font-size:.72rem}.form-grid{gap:16px}.teams-grid{grid-template-columns:1fr}.team-panel{padding:16px}.summary-list>div{grid-template-columns:100px 1fr;gap:12px}.section-heading h2{font-size:1.28rem}.section-heading small{font-size:.72rem}.match-card{padding:16px}.teams-row{gap:10px}.team{font-size:.9rem}.score{font-size:1.28rem}.match-card-bottom{font-size:.74rem}.match-card-meta{font-size:.72rem}.scoreboard{padding:24px 16px}.scoreboard .teams-row{gap:10px}.scoreboard .team{font-size:1rem}.scoreboard .team small{font-size:.65rem}.scoreboard .score{font-size:2.25rem}.score-inputs{gap:10px}.score-inputs .field>span{font-size:.8rem;overflow-wrap:anywhere}.round-row{grid-template-columns:25px minmax(0,1fr) minmax(0,1fr) 44px;gap:8px}.round-row .field input{padding:10px}.rating-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rating-card{padding:16px}.rating-card:last-child{grid-column:span 2}.rating-card .rank{font-size:1.15rem}.profile-header{align-items:flex-start}.profile-header .btn{padding:10px 12px;font-size:.8rem}.filters{gap:12px}.filters .field{min-width:130px}th,td{padding:14px 10px}td:first-child,th:first-child{padding-left:14px}td:last-child,th:last-child{padding-right:14px}.site-footer{padding:20px 18px calc(108px + env(safe-area-inset-bottom));flex-direction:column;gap:8px}.empty-state{padding:28px 16px}.variants .choice{min-height:160px}.steps{gap:8px}.steps li{font-size:.67rem}.steps span{font-size:.76rem}.actions{gap:10px}.actions>.primary{flex:1}.page-heading{margin-bottom:24px}}
tbody th{background:none;text-transform:none;letter-spacing:normal;color:var(--ink);font-size:.88rem}.profile-header>div{min-width:0}.notice-wrap{overflow-wrap:anywhere}
.brand{min-height:44px}.site-footer a,.auth-note a,.callout>a{display:inline-flex;align-items:center;min-height:44px}
.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.bottom-nav a{min-width:0}
.rules-disciplines{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.rules-selected{margin-bottom:24px}.rules-source{font-size:.86rem;color:var(--muted);line-height:1.8}.rules-source-link{display:inline-flex;align-items:center;min-height:44px;font-size:.88rem}.rules-origin h2{font-size:1.25rem}
.match-rules-button{position:fixed;z-index:21;right:max(18px,env(safe-area-inset-right));bottom:calc(86px + env(safe-area-inset-bottom));background:var(--cream);border-color:var(--cream);color:#242724;box-shadow:0 3px 12px #191d1a;min-height:48px}.match-rules-button:hover{background:#f4f0e6}.has-match-rules main{padding-bottom:112px}
body.rules-modal-open{overflow:hidden}.rules-dialog{padding:0;border:1px solid var(--line);border-radius:16px;width:calc(100% - 48px);max-width:1080px;height:calc(100vh - 48px);height:calc(100dvh - 48px);max-height:960px;background:var(--bg);color:var(--ink);overflow:hidden}.rules-dialog[open]{display:flex;flex-direction:column}.rules-dialog::backdrop{background:rgba(9,16,12,.8)}.rules-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;padding-top:max(18px,env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--surface);flex:none}.rules-dialog-header>div{min-width:0}.rules-dialog-header .eyebrow{margin-bottom:4px;font-size:.67rem}.rules-dialog-header h2{font-size:1.15rem;margin:0;overflow-wrap:anywhere}.rules-dialog-header .btn{flex:none;min-width:96px}.rules-dialog-content{padding:22px;overflow:auto;overscroll-behavior:contain;min-height:0;flex:1;padding-bottom:max(22px,env(safe-area-inset-bottom))}.rules-agreements{padding:18px;border:1px solid #6c9f8c;border-radius:10px;background:#263f35;margin-bottom:24px}.rules-agreements p:last-child{margin-bottom:0}.rules-agreements h3{font-size:1.12rem}.rules-agreements .eyebrow{color:var(--teal)}.rules-original p{font-size:.86rem;color:var(--muted)}.rules-original .eyebrow{color:var(--teal)}.rules-original .hint{margin-top:12px}.rules-external{width:100%;background:var(--cream);color:#242724;border-color:var(--cream)}.rules-pdf{margin-top:18px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}.rules-frame{display:block;border:0;width:100%;height:65vh;height:65dvh;min-height:320px;background:var(--surface)}
@media(min-width:1000px){.bottom-nav{width:520px}.match-rules-button{right:max(24px,calc((100vw - 1072px)/2));bottom:calc(90px + env(safe-area-inset-bottom))}}
@media(max-width:700px){.rules-disciplines{grid-template-columns:repeat(2,minmax(0,1fr))}.rules-dialog{width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.rules-dialog-header{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));gap:10px}.rules-dialog-header h2{font-size:1rem}.rules-dialog-header .btn{min-width:88px}.rules-dialog-content{padding:18px max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.rules-agreements{padding:16px}.rules-agreements .eyebrow{font-size:.65rem}.rules-external{font-size:.82rem}.rules-original h3{font-size:1rem}}
@media(max-width:700px){main,.site-header,.site-footer{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.loading:before{border-color:var(--teal)}}

.account-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:50%}.account-controls .account-link{max-width:100%;text-align:right}.account-controls .text-button{font-size:.8rem}.invite-choice{border:1px solid var(--teal);border-radius:10px;padding:20px;margin:24px 0 28px;background:var(--teal-dark)}.own-identity{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:20px 0;padding:16px;background:#142f25;border-radius:10px}.own-identity p{margin:0}.lobby-roster{list-style:none;padding:0;margin:0 0 16px}.lobby-roster li{padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.invite-share{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.invite-qr{display:block;width:240px;height:240px;max-width:100%;padding:12px;background:#fff;border-radius:10px;margin:20px auto;image-rendering:pixelated}.own-lobbies{margin-top:36px}.install-steps{padding-left:24px}.install-steps li{margin:16px 0;padding-left:4px}@media(max-width:480px){.account-controls{max-width:48%;gap:0}.account-controls .account-link{font-size:.75rem}.account-controls .text-button{padding:8px 0}.site-header{gap:10px}.brand{gap:8px}.brand img{width:38px;height:38px}.brand-venue{font-size:.75rem}.brand-title{font-size:1.1rem}.invite-share .actions>.btn{flex:1 1 100%}}

.lobby-panel>.section-heading{align-items:flex-start;flex-wrap:wrap}.lobby-panel>.section-heading>div{min-width:0;flex:1 1 220px}.lobby-panel h1{font-size:clamp(1.75rem,6vw,2.5rem);overflow-wrap:anywhere}.invite-qr{height:auto;aspect-ratio:1}

.lobby-panel>.section-heading>.btn{white-space:nowrap;flex-shrink:0}

.install-help .page-heading h1{font-size:clamp(1.9rem,6vw,2.65rem)}
.install-platforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0 18px}
.install-platform-choice{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:92px;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;font:inherit}
.install-platform-choice strong{font-size:1.1rem}.install-platform-choice span{font-size:.8rem;color:var(--muted)}
.install-platform-choice[aria-pressed="true"]{border-color:var(--teal);background:var(--teal-dark);box-shadow:inset 0 0 0 1px var(--teal)}
.install-platform-choice:focus-visible{outline:2px solid var(--cream);outline-offset:4px}
.install-guide h2{font-size:1.35rem}.install-guide .install-steps{margin:24px 0;padding-left:26px}
.install-guide .install-steps li{padding-left:7px;line-height:1.65}.install-guide .install-steps li::marker{color:var(--teal);font-weight:750}
.install-finish{padding-top:18px;border-top:1px solid var(--line);margin-bottom:12px}
@media(max-width:400px){.install-platform-choice{padding:14px 12px}.install-platform-choice span{font-size:.73rem}}

/* Approved A: the actual app uses the calm dark-green café scoreboard, with real data. */
.site-header{padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:16px;min-height:78px}
.brand img{border-radius:50%;width:35px;height:35px}.brand-venue{font-size:.75rem}.brand-title{font-size:1.2rem}
.account-controls{max-width:46%;gap:0;align-items:flex-end;flex-direction:column}
.account-link{min-height:28px;padding:2px 0;max-width:180px;font-size:.72rem}
.account-controls .text-button{min-height:28px;padding:3px 0;font-size:.66rem}
main{padding-top:25px}
.eyebrow{color:var(--warning)}
.btn.primary,.btn.cream{background:var(--cream);border-color:var(--cream);color:#173a2a}
.btn.primary:hover,.btn.cream:hover{background:#f4f1e5;border-color:#f4f1e5}
.bottom-nav{background:#0c251d}
.bottom-nav a[aria-current="page"]{background:transparent;color:var(--ink)}
.bottom-nav a[aria-current="page"]:before{top:auto;bottom:1px;width:14px;height:2px;background:var(--warning)}
.home-screen{max-width:520px;margin:0 auto}
.home-greeting{display:flex;align-items:center;justify-content:space-between;gap:16px}
.home-greeting>div{min-width:0}.home-greeting .eyebrow{font-size:.65rem;letter-spacing:.14em;margin:0 0 7px}
.home-greeting h1{font-size:30px;line-height:1.05;letter-spacing:-.05em;margin:0 0 8px;overflow-wrap:anywhere}
.home-greeting p:last-child{font-size:.82rem;color:var(--muted);margin:0}
.home-eight{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:50%;background:radial-gradient(circle at center,#faf9f3 0 13px,#111214 13.5px);color:#111214;font:800 18px/1 Arial,Helvetica,sans-serif;box-shadow:inset 0 0 0 1px #5c675f}
.home-profile-strip{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) 44px;gap:12px;padding:18px 0;margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-profile-strip>div{display:grid;gap:5px;align-content:start;min-width:0}
.home-profile-strip>div+div{padding-left:16px;border-left:1px solid var(--line)}
.home-profile-strip span{font-size:.6rem;font-weight:800;letter-spacing:.08em;color:var(--muted)}
.home-profile-strip strong{font-size:1.05rem;line-height:1.25;letter-spacing:-.025em;overflow-wrap:anywhere}
.home-profile-strip small{color:var(--muted);font-size:.7rem}
.home-profile-strip>a{display:grid;place-items:center;align-self:center;min-width:44px;min-height:44px;color:var(--ink);font-size:23px;text-decoration:none}
.home-start-actions{display:grid;grid-template-columns:1.14fr 1fr;gap:9px;margin:21px 0 25px}
.home-start,.home-join{display:flex;align-items:center;min-height:57px;border-radius:10px;text-decoration:none;font-size:.87rem;font-weight:800;line-height:1.3;gap:8px}
.home-start{justify-content:space-between;padding:12px 15px;background:var(--cream);color:#173a2a}
.home-start:hover{background:#f4f1e5}.home-start>span:last-child{font-size:22px;font-weight:500}
.home-join{padding:9px 12px;border:1px solid var(--line);color:var(--ink)}
.home-join svg{width:24px;height:24px;flex:none}.home-join small{display:block;font-size:.64rem;color:var(--muted);font-weight:600;margin-top:3px}
.home-section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 11px}
.home-section-heading h2{font-size:1.08rem;margin:0;letter-spacing:-.025em}
.home-section-heading .text-button{font-size:.7rem;min-height:44px;padding:4px 0;text-decoration:none;color:var(--muted)}
.home-match-row{display:flex;align-items:center;gap:12px;min-height:78px;padding:12px;margin-bottom:8px;border-radius:11px;background:#214735;color:var(--ink);text-decoration:none}
.home-match-row.needs-confirmation{border:1px solid var(--line);background:transparent}
.home-row-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid #809f8d;border-radius:50%;color:var(--warning);font-size:15px}
.home-row-copy{display:grid;gap:3px;min-width:0;flex:1}
.home-row-copy small{font-size:.6rem;letter-spacing:.06em;font-weight:800;color:var(--warning)}
.home-row-copy strong{font-size:.89rem;line-height:1.3}
.home-row-copy>span{font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}
.home-chevron{font-size:25px;color:var(--muted)}
.home-empty{padding:18px 0;color:var(--muted);font-size:.83rem}
.home-empty h3{font-size:1rem;color:var(--ink);margin:0 0 5px}.home-empty p{margin:0 0 12px}
.home-screen .install-row{padding:8px 0;margin-top:16px;border-top:1px solid var(--line)}
.home-screen .install-row p{font-size:.72rem}.home-screen .install-row strong{font-size:.83rem}
.home-screen .install-row .btn{border:0;background:transparent;padding:10px 0;color:var(--ink);font-size:.73rem}
.home-screen .hint{font-size:.7rem}.home-screen .own-lobbies{margin-top:24px}
body.view-home #active-resume{display:none}
.live-heading .eyebrow{font-size:.62rem;margin:0 0 7px}
.live-title-line{display:flex;align-items:center;justify-content:space-between;gap:12px}
.live-title-line h1{font-size:28px;line-height:1.05;letter-spacing:-.05em;margin:0}
.live-heading>p:last-child{margin:9px 0 0;font-size:.82rem}
.live-mode-line{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 12px}
.live-mode-line>span{padding:7px 9px;background:var(--surface);border-radius:6px;color:var(--ink);font-size:.72rem;font-weight:750}
.live-scoreboard{padding:18px 15px 14px;background:#0a241b;border:0;border-radius:13px;margin:0 0 20px}
.live-score-pair{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);grid-template-rows:auto 18px auto;gap:8px}
.live-score-side{display:contents}.live-score-side>*{min-width:0;text-align:center;justify-self:center}.live-score-side:first-child>*{grid-column:1}.live-score-side:last-child>*{grid-column:3}
.live-score-side strong{grid-row:1;font-size:1rem;align-self:center;line-height:1.2;overflow-wrap:anywhere;max-width:100%}
.live-score-side small{grid-row:2;color:#adc1b0;font-size:.69rem}
.live-score-side b{grid-row:3;font-size:76px;line-height:1.05;letter-spacing:-.06em;font-weight:750;font-variant-numeric:tabular-nums;margin-top:10px}
.live-score-divider{grid-row:3;grid-column:2;align-self:end;text-align:center;padding-bottom:22px;font-size:30px;color:#9cb6a5}
.live-scoreboard .score-caption{font-size:.7rem;color:#b3cbb8;margin:8px 0 0}
.live-match .back-link{margin-bottom:20px}
.live-match>.panel,.live-match>.result-editor{border-radius:12px}
.join-entry .panel{margin-top:24px}
@media(max-width:700px){
  main{padding:25px 22px 36px}.site-header{padding-left:22px;padding-right:22px;gap:10px}
  .site-footer{padding-left:22px;padding-right:22px}
  .brand{gap:9px}.brand img{width:35px;height:35px}
  .brand-venue{font-size:.7rem}.brand-title{font-size:1.18rem}
  .account-controls{max-width:43%;gap:0}.account-controls .account-link{font-size:.68rem}
  .account-controls .text-button{font-size:.63rem}
  .home-profile-strip{gap:9px}.home-profile-strip>div+div{padding-left:12px}
  .home-start{padding-left:12px;padding-right:12px}
  .home-join{padding-left:10px;padding-right:10px}
}
@media(max-width:370px){.home-profile-strip strong{font-size:.96rem}.home-row-copy small{font-size:.56rem}.home-start,.home-join{font-size:.81rem}}
