:root{--navy:#101722;--carbon:#1a2330;--ink:#18212c;--muted:#66706d;--lime:#cdff3e;--paper:#f5f4ee;--white:#fff;--line:#dedfd5;--green:#34562c;--orange:#8b5422;--red:#a13b35;--mono:'Space Mono','Consolas',monospace;--body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--display:'Barlow Condensed','Arial Narrow','Impact',sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--body);background:var(--paper);color:var(--ink);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #678400;outline-offset:3px}svg{flex-shrink:0;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.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;left:16px;top:-60px;padding:10px;background:var(--lime);z-index:100}.skip-link:focus{top:10px}.wordmark{font-family:var(--display);font-weight:900;font-size:32px;line-height:1;letter-spacing:-1px}.wordmark span{display:block;font:9px var(--mono);letter-spacing:2px;margin-top:7px}.boot-screen{padding:80px}.sidebar{background:var(--navy);color:#c7cece;width:232px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:20;padding:30px 18px 18px}.sidebar .wordmark{color:var(--lime);padding-left:12px}.workspace-label{font:10px var(--mono);letter-spacing:1.6px;color:#7b8b94;margin:40px 12px 12px}.nav-link{display:flex;align-items:center;gap:13px;padding:12px 13px;margin:3px 0;border-radius:5px;font-weight:500;min-height:44px}.nav-link:hover{background:#202d3a;color:#fff}.nav-link.active{background:var(--lime);color:var(--navy);font-weight:700}.nav-link .count{margin-left:auto;font:11px var(--mono);opacity:.6}.sidebar-bottom{margin-top:auto;border-top:1px solid #2c3743;padding:18px 10px 0}.connection-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#b38a5f;margin-right:6px}.connection-note{font-size:11px;color:#98a5aa;line-height:1.7}.actor-row{display:flex;gap:10px;align-items:center;margin-top:18px}.avatar{width:34px;height:34px;border-radius:50%;background:#e4e8cf;color:var(--navy);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0}.actor-name{font-size:12px;font-weight:600;color:#fff}.actor-role{text-transform:capitalize;color:#92a0a7;font-size:10px}.signout{background:none;color:#a3afb4;border:0;padding:5px;margin-left:auto}.workspace{margin-left:232px;min-height:100vh}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 36px;background:var(--paper)}.facility{font-size:12px;font-weight:700;display:flex;align-items:center;gap:9px}.facility small{font-weight:400;color:var(--muted);display:block;font-size:10px}.topbar-right{display:flex;align-items:center;gap:18px}.global-search{position:relative;display:flex;align-items:center}.global-search svg{position:absolute;left:11px;width:16px;color:var(--muted)}.global-search input{padding:9px 10px 9px 34px;background:#eceee5;border:1px solid transparent;border-radius:4px;width:210px;font-size:11px}.environment{font:9px var(--mono);letter-spacing:.6px;color:#596445}.environment::before{content:'';display:inline-block;width:6px;height:6px;margin-right:6px;background:#71813a;border-radius:50%}.page{padding:30px 36px 50px;max-width:1650px;margin:auto}.eyebrow{font:10px var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.page-heading h1{font-family:var(--display);font-size:42px;line-height:1.1;letter-spacing:-1px;text-transform:uppercase;margin:0;font-stretch:condensed}.page-heading p{font-size:12px;color:var(--muted);margin:9px 0 0;max-width:700px}.heading-actions{display:flex;gap:8px;align-items:center;flex-shrink:0;padding-top:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:4px;background:transparent;min-height:39px;padding:9px 14px;font-size:11px;font-weight:700;line-height:1.3}.btn svg{height:15px;width:15px}.btn:hover{background:#e8eadf}.btn-primary{background:var(--navy);border-color:var(--navy);color:white}.btn-primary:hover{background:#293642}.btn-lime{background:var(--lime);border-color:var(--lime);color:var(--navy)}.btn-lime:hover{background:#b9ed21}.btn-danger{color:var(--red);border-color:#ddc0bc}.btn-small{min-height:30px;padding:6px 10px;font-size:10px}.btn-quiet{border-color:transparent;padding-left:0;padding-right:0}.link{color:#394d22;text-decoration:underline;text-underline-offset:3px;font-weight:600}.notice{display:flex;align-items:flex-start;gap:11px;border:1px solid #d5d9bd;background:#eeefdf;padding:13px 16px;border-radius:4px;font-size:11px;line-height:1.6;margin:0 0 23px}.notice svg{width:17px;height:17px;margin-top:1px}.notice strong{font-weight:700}.notice.error{background:#fff1ee;border-color:#e4beb5;color:#853930}.notice.success{background:#edf4e4;border-color:#c6d7b5;color:#3c592e}.notice.compact{padding:10px 13px;margin-bottom:16px}.notice .btn{margin-left:auto;flex-shrink:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:5px;background:#fbfbf6;margin-bottom:26px}.stat{padding:21px 23px;border-right:1px solid var(--line);position:relative}.stat:last-child{border-right:0}.stat-label{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:8px}.stat-value{font-family:var(--display);font-size:37px;line-height:1.3;font-weight:700;letter-spacing:-1px;margin-top:9px}.stat-foot{font:9px var(--mono);color:var(--muted);margin-top:4px}.stat-arrow{position:absolute;bottom:24px;right:23px;color:#889276}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:22px 0 13px}.section-heading h2{font-size:16px;letter-spacing:-.4px;margin:0}.section-heading p{font-size:11px;color:var(--muted);margin:3px 0 0}.section-heading .meta{font:9px var(--mono);color:var(--muted)}.grid-2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:24px}.grid-equal{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{background:#fbfbf7;border:1px solid var(--line);border-radius:5px;padding:21px}.panel h2{font-size:15px;margin:0 0 6px}.panel>p{font-size:11px;color:var(--muted);margin:0 0 15px}.panel-head{margin:-21px -21px 18px;padding:17px 21px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel-head h2{margin:0;font-size:14px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:5px;background:#fbfbf7}table{border-collapse:collapse;width:100%;text-align:left;font-size:11px}th{font:9px var(--mono);letter-spacing:.6px;text-transform:uppercase;color:var(--muted);white-space:nowrap;background:#eef0e7;padding:12px 16px}td{padding:15px 16px;border-top:1px solid var(--line);vertical-align:middle}td strong{font-size:11px;font-weight:650}tr:hover td{background:#f6f7ef}.subtext{font-size:10px;color:var(--muted);margin-top:3px}.mono{font-family:var(--mono)}.text-right{text-align:right}.nowrap{white-space:nowrap}.pill{display:inline-flex;align-items:center;gap:5px;border:1px solid #d9ded0;border-radius:20px;font-size:9px;font-weight:600;padding:3px 8px;white-space:nowrap;line-height:1.4;background:#edf0e5;color:#586345}.pill::before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor}.pill.warning{color:#8b5b2d;background:#f6ecdb;border-color:#e8d9bb}.pill.danger{color:#994e41;background:#f8e9e3;border-color:#ead3c9}.pill.dark{color:#54626b;background:#e8edef;border-color:#d9e0e3}.pill.lime{background:#dff5ac;color:#37502a;border-color:#cce292}.pill.neutral{background:#efefe9;color:#74766b;border-color:#dedfd4}.queue-row{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);align-items:center}.queue-row:last-child{border-bottom:0}.queue-number{font:14px var(--mono);width:33px;height:33px;display:grid;place-items:center;background:#eeefdf;border-radius:4px}.queue-content{flex:1}.queue-title{font-size:11px;font-weight:650}.queue-sub{font-size:10px;color:var(--muted);margin-top:2px}.activity-item{padding:12px 0 12px 20px;position:relative;border-left:1px solid #d8dccd;margin-left:4px}.activity-item::before{content:'';position:absolute;top:18px;left:-4px;width:7px;height:7px;border-radius:50%;background:#afb89a;border:2px solid var(--paper)}.activity-item strong{font-size:11px;font-weight:600}.activity-item p{font-size:10px;color:var(--muted);margin:3px 0}.activity-item time{font:9px var(--mono);color:#87917c}.empty{padding:32px 20px;text-align:center;color:var(--muted);font-size:12px}.empty svg{height:30px;width:30px;margin-bottom:8px}.empty strong{display:block;color:var(--ink);font-size:13px;margin-bottom:5px}.toolbar{display:flex;gap:10px;align-items:center;margin:18px 0}.toolbar select,.toolbar input{min-height:35px;font-size:11px}.toolbar .spacer{flex:1}.tabs{display:flex;gap:23px;border-bottom:1px solid var(--line);margin:6px 0 23px;overflow:auto}.tab{padding:12px 0;border-bottom:3px solid transparent;white-space:nowrap;font-size:11px;color:var(--muted);font-weight:600}.tab.active{color:var(--ink);border-bottom-color:#9fc52e}.league-title{display:flex;gap:13px;align-items:center}.league-icon{width:38px;height:38px;background:#e8eddb;display:flex;align-items:center;justify-content:center;border-radius:5px;color:#5d7133}.league-description{max-width:510px;font-size:10px;color:var(--muted);margin-top:4px;line-height:1.6}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:15px}.field label,.field-label{font-size:10px;font-weight:650;color:#44503d}.field small{color:var(--muted);font-size:10px}.field input,.field select,.field textarea,.toolbar input,.toolbar select{border:1px solid #cdd2c3;background:#fff;border-radius:3px;color:var(--ink);padding:9px 10px;max-width:100%;min-width:0}.field textarea{resize:vertical;min-height:90px}.field-inline{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkbox{display:flex;align-items:center;gap:9px;font-size:11px;margin:10px 0}.checkbox input{accent-color:#6d8724;width:16px;height:16px}.help{font-size:10px;color:var(--muted);line-height:1.6}.form-actions{display:flex;gap:8px;align-items:center;margin-top:18px}.divider{height:1px;background:var(--line);margin:20px 0}.blockers{margin:10px 0 0;padding-left:16px;font-size:11px;color:#7d582d}.blockers li{padding:4px 0}.detail-list{margin:0}.detail-list>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:10px 0;font-size:11px}.detail-list>div:last-child{border:0}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;text-align:right}.rule-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0}.rule-summary span{font:9px var(--mono);display:block;color:var(--muted);text-transform:uppercase;margin-bottom:4px}.rule-summary strong{font-size:12px}.match{background:#fbfbf7;border:1px solid var(--line);border-radius:5px;margin-bottom:13px;overflow:hidden}.match-meta{background:#edf0e5;padding:9px 16px;display:flex;justify-content:space-between;gap:12px;align-items:center;font:9px var(--mono);color:#66715d}.match-body{padding:18px 17px}.match-teams{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center}.match-team{font-weight:700;font-size:13px}.match-team:last-child{text-align:right}.match-team small{display:block;font-weight:400;font-size:10px;color:var(--muted);margin-top:4px}.match-versus{font:11px var(--mono);color:var(--muted)}.score-line{display:flex;gap:9px;justify-content:center;margin-top:16px;font:16px var(--mono)}.score-line span{background:#ecefe3;border:1px solid #d9dfce;border-radius:3px;padding:5px 10px}.match-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 17px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.match-details{padding:0 17px 17px}.match-details summary{padding:12px 0;cursor:pointer;font-weight:600;font-size:11px}.score-form{padding-top:12px}.games-input{display:flex;gap:16px;flex-wrap:wrap}.game-input{display:flex;gap:7px;align-items:center}.game-input>span{font:9px var(--mono);margin-right:3px;color:var(--muted)}.game-input input{width:65px;min-height:44px;font:20px var(--mono);text-align:center;padding:5px;border:1px solid #c6cebc;border-radius:3px}.game-input input:focus{background:#f6ffd9}.state-caption{font-size:10px;color:var(--muted);margin:10px 0}.bottom-nav{display:none}.player-shell{max-width:950px;margin:auto;min-height:100vh}.player-topbar{background:var(--navy);padding:20px 26px;display:flex;align-items:center;justify-content:space-between;color:#fff}.player-topbar .wordmark{color:var(--lime);font-size:27px}.player-topbar .actor-row{margin:0}.player-topbar .actor-name{font-size:11px}.player-page{padding:27px 26px 90px}.player-banner{background:var(--navy);color:#fff;border-radius:6px;overflow:hidden;padding:25px;margin-bottom:23px;position:relative}.player-banner::after{content:'';position:absolute;right:-30px;top:-35px;width:200px;height:200px;border:1px solid #3c4c45;transform:rotate(24deg);box-shadow:0 0 0 30px #ffffff03,0 0 0 60px #ffffff03;pointer-events:none}.player-banner .eyebrow{color:var(--lime);position:relative;z-index:1}.player-banner h2{font-family:var(--display);font-size:34px;line-height:1.2;text-transform:uppercase;margin:5px 0 15px;position:relative;z-index:1}.player-banner p{font-size:11px;color:#b1bebf;position:relative;z-index:1}.player-banner .btn{position:relative;z-index:1}.score-big{font-family:var(--display);font-size:48px;font-weight:800;letter-spacing:-1px}.player-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:#fbfbf7;border-radius:5px;margin-bottom:23px}.player-stat{padding:16px;text-align:center;border-right:1px solid var(--line)}.player-stat:last-child{border:0}.player-stat span{display:block;font:9px var(--mono);color:var(--muted);text-transform:uppercase}.player-stat strong{font-family:var(--display);font-size:29px}.member{display:flex;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.member:last-child{border:0}.member .avatar{width:38px;height:38px}.member strong{font-size:12px}.member small{font-size:10px;color:var(--muted);display:block}.date-badge{width:45px;text-align:center;background:#eef1e4;border-radius:4px;padding:8px;flex-shrink:0}.date-badge strong{display:block;font:22px var(--display);line-height:1}.date-badge span{font:8px var(--mono);text-transform:uppercase}.session-row{display:flex;gap:14px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.session-row:last-child{border:0}.session-content{flex:1}.session-content strong{font-size:12px}.session-content p{font-size:10px;color:var(--muted);margin:3px 0}.landing{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.landing-brand{background:var(--navy);color:#fff;display:flex;flex-direction:column;padding:50px 65px;position:relative;overflow:hidden}.landing-brand .wordmark{color:var(--lime)}.landing-brand h1{font-family:var(--display);font-size:clamp(52px,5.6vw,88px);line-height:.98;letter-spacing:-2px;text-transform:uppercase;margin:100px 0 22px;max-width:510px;z-index:1}.landing-brand h1 em{color:var(--lime);font-style:normal}.landing-brand p{max-width:380px;font-size:13px;color:#b6c1c5;z-index:1}.landing-footer{margin-top:auto;padding-top:70px;font:9px var(--mono);letter-spacing:1px;color:#84949a}.court-lines{position:absolute;width:460px;height:660px;border:1px solid #334438;right:-190px;top:30px;transform:rotate(24deg);pointer-events:none}.court-lines::before{content:'';position:absolute;inset:160px 0;border-top:1px solid #334438;border-bottom:1px solid #334438}.court-lines::after{content:'';position:absolute;width:1px;height:100%;background:#334438;left:50%}.landing-access{padding:65px min(7vw,90px);display:flex;flex-direction:column;justify-content:center}.landing-access h2{font-family:var(--display);text-transform:uppercase;font-size:37px;margin:4px 0 8px;letter-spacing:-1px}.landing-access>p{font-size:12px;color:var(--muted);margin:0 0 25px}.identity-button{display:flex;width:100%;text-align:left;align-items:center;gap:14px;padding:15px 17px;margin-bottom:9px;background:#fbfbf7;border:1px solid var(--line);border-radius:5px;color:var(--ink)}.identity-button:hover{background:#edf4dc;border-color:#b7c891}.identity-button strong{font-size:12px;display:block}.identity-button small{font-size:10px;color:var(--muted);display:block;margin-top:2px;text-transform:capitalize}.identity-button svg{margin-left:auto;width:16px}.landing-disclaimer{font-size:10px;color:var(--muted);margin-top:20px;line-height:1.7}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;border:1px solid #556046;padding:13px 21px;z-index:90;border-radius:5px;box-shadow:0 10px 25px #10172222;font-size:12px;max-width:calc(100vw - 35px);width:max-content}.toast.error{background:#783b32;border-color:#9d5c50}.upload-zone{border:1px dashed #aeb89d;background:#f0f3e7;padding:21px;border-radius:4px;margin:15px 0}.upload-zone input{max-width:100%;font-size:11px}.step-label{font:9px var(--mono);color:#758352;letter-spacing:1px}.check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.check-option{padding:10px 12px;background:#f0f2e9;border:1px solid var(--line);border-radius:3px;font-size:11px}.check-option input{accent-color:#6d8724;margin-right:6px}.muted{color:var(--muted)}.code-box{background:#e9ede1;padding:13px;font:10px var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:4px}.mobile-only{display:none}.loading{padding:70px 25px;text-align:center;color:var(--muted);font-size:12px}.loading::before{content:'';display:block;width:25px;height:25px;border:2px solid #d5dbc9;border-top-color:#748e35;border-radius:50%;margin:0 auto 15px;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1600px){.page{padding-top:40px}.page-heading h1{font-size:48px}.stat{padding:25px 28px}.stat-value{font-size:43px}}@media(max-width:1100px){.sidebar{width:200px;padding-left:12px;padding-right:12px}.workspace{margin-left:200px}.topbar{padding:0 24px}.page{padding:25px 24px}.grid-2{grid-template-columns:1.4fr 1fr;gap:18px}.global-search input{width:170px}.environment{display:none}.landing-brand{padding:45px}.landing-access{padding:45px}.tabs{gap:18px}.page-heading h1{font-size:35px}.heading-actions{flex-wrap:wrap;justify-content:flex-end}.topbar-right{gap:10px}}@media(max-width:800px){.sidebar{width:74px;padding:24px 8px 16px}.sidebar .wordmark{font-size:22px;padding:0;text-align:center;letter-spacing:-1px}.sidebar .wordmark span,.sidebar .wordmark .brand-word,.sidebar .nav-label,.sidebar .count,.sidebar .workspace-label,.sidebar .connection-note,.sidebar .actor-info,.sidebar .signout{display:none}.sidebar nav{margin-top:35px}.nav-link{justify-content:center;padding:12px 8px}.sidebar-bottom{padding:14px 0 0}.sidebar .actor-row{justify-content:center}.workspace{margin-left:74px}.topbar{height:68px;padding:0 20px}.page{padding:23px 20px}.grid-2,.grid-equal{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.page-heading h1{font-size:33px}.landing{grid-template-columns:1fr}.landing-brand{padding:30px 28px;min-height:300px}.landing-brand h1{margin:48px 0 15px;font-size:55px;max-width:500px}.landing-brand p{font-size:12px;margin:0}.landing-footer{padding-top:35px}.landing-access{padding:35px 28px}.landing-access h2{font-size:31px}.global-search{display:none}.page-heading{gap:12px}.heading-actions{max-width:180px}.topbar .facility{font-size:11px}}@media(max-width:520px){body{font-size:13px}.sidebar{width:58px;padding:23px 5px 15px}.sidebar .wordmark{font-size:19px}.sidebar .avatar{width:29px;height:29px;font-size:9px}.workspace{margin-left:58px}.topbar{padding:0 14px;height:62px}.topbar .facility svg{display:none}.topbar-right{display:none}.page{padding:22px 14px 40px}.page-heading{display:block;margin-bottom:20px}.page-heading h1{font-size:32px}.page-heading p{font-size:11px}.heading-actions{max-width:none;justify-content:flex-start;margin-top:15px}.stat{padding:16px 13px}.stat-value{font-size:31px}.stat-label{font-size:9px}.stat-foot{font-size:8px}.stat-arrow{right:13px;bottom:20px}.notice{padding:11px 12px;font-size:10px;gap:8px}.notice .btn{display:none}.panel{padding:16px}.panel-head{margin:-16px -16px 15px;padding:14px 16px}.section-heading h2{font-size:14px}.tabs{gap:20px;margin-bottom:20px}.tab{font-size:10px}.toolbar{flex-wrap:wrap}.toolbar .spacer{display:none}th{padding:11px 12px}td{padding:13px 12px}.field-inline{grid-template-columns:1fr;gap:0}.check-list{grid-template-columns:1fr}.rule-summary{grid-template-columns:1fr 1fr}.player-topbar{padding:20px 18px}.player-topbar .actor-info{display:none}.player-page{padding:23px 18px 95px}.player-page .page-heading h1{font-size:35px}.player-banner{padding:23px 21px}.player-banner h2{font-size:33px}.player-stats{margin-top:20px}.player-stat{padding:15px 8px}.player-stat span{font-size:8px}.player-stat strong{font-size:27px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:72px;background:var(--navy);border-top:1px solid #304034;z-index:40;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav a{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-width:65px;color:#a8b4b7;font-size:9px}.bottom-nav a.active{color:var(--lime)}.bottom-nav a svg{width:21px;height:21px}.player-shell .toast{bottom:85px}.match-body{padding:17px 13px}.match-teams{gap:10px}.match-team{font-size:12px}.match-team small{font-size:9px}.match-meta{padding:9px 13px;font-size:8px}.match-footer{padding:11px 13px;font-size:9px}.match-details{padding:0 13px 15px}.games-input{gap:10px;display:grid}.game-input input{width:74px;height:48px}.game-input>span{width:45px}.score-form .form-actions{flex-wrap:wrap}.mobile-only{display:block}.desktop-only{display:none}.toast{font-size:11px}.landing-brand h1{font-size:48px}.landing-access{padding:29px 24px}.environment{display:block;font-size:8px}.player-topbar .environment{display:none}}@media(min-width:521px){.bottom-nav{display:flex;position:sticky;bottom:0;justify-content:center;gap:40px;background:var(--navy);padding:12px 20px;z-index:40}.bottom-nav a{display:flex;align-items:center;gap:8px;color:#adb9ba;font-size:11px;padding:8px}.bottom-nav a.active{color:var(--lime)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media print{.sidebar,.topbar,.bottom-nav,.heading-actions,.btn,.notice,.score-form,.match-details,form,.toast,.player-topbar,.tabs,.toolbar{display:none!important}.workspace{margin:0}.page,.player-page{padding:0}.table-wrap,.panel,.match{break-inside:avoid;border-color:#999}.page-heading h1{font-size:27px}body{background:white;font-size:11px}.pill{color:#222!important;background:white!important}.print-caption{display:block}.page::after{content:'3rd Shot League Manager · Synthetic local lab · CourtReserve not connected · Internal league standings';display:block;font-size:9px;margin-top:20px}}

.queue-title,.queue-sub{display:block}.lab-entry{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:3px solid #9fbc44;background:#e9eddd;padding:16px 20px;margin-bottom:24px}.lab-entry strong,.lab-entry span{display:block}.lab-entry strong{font-size:12px;margin:5px 0 2px}.lab-entry div>span:last-child{font-size:10px;color:var(--muted)}.lab-entry .btn{flex-shrink:0}@media(max-width:800px){.lab-entry{flex-wrap:wrap;padding:14px 15px}.lab-entry .btn{min-height:38px}}@media print{.lab-entry{display:none}}
.login-button{width:100%;min-height:44px}.lab-identities{border-top:1px solid var(--line);padding-top:20px;margin-top:23px}.lab-identities>summary{font-size:12px;font-weight:650;cursor:pointer;padding:4px 0 12px}.lab-identities>summary .pill{margin-left:5px}.identity-list{max-height:380px;overflow:auto;padding-right:5px}.rule-format-box{padding:17px;background:#eef1e5;border:1px solid var(--line);border-radius:4px;margin:19px 0}.rule-format-box h2{font-size:13px}.rule-format-box .field:last-child{margin-bottom:0}.game-row[hidden]{display:none!important}.mlp-games{display:grid;grid-template-columns:1fr;gap:13px}.mlp-games .game-row{border:1px solid var(--line);background:#f0f3e8;padding:12px;border-radius:4px}.mlp-games .game-input>span:first-of-type{width:112px;font-size:10px;line-height:1.4}.game-lineup{font-size:10px;color:var(--muted);margin:8px 0 0;line-height:1.6}.game-lineup span{font:9px var(--mono);margin:0 6px}.dreambreaker-row{border-color:#b5c48d!important;background:#ebf4d4!important}.score-line{flex-wrap:wrap}.score-line small{display:block;font:8px var(--mono);text-align:center;max-width:95px;line-height:1.4;margin-bottom:3px}.outcome-form{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.outcome-form h3,.finals-panel h3{font-size:12px;margin:0 0 9px}.finals-panel{margin-bottom:24px}.finals-seeds{display:flex;flex-wrap:wrap;gap:9px;margin:8px 0 20px}.finals-seeds>span{font-size:10px;background:#ebefdf;padding:6px 9px;border-radius:3px}.finals-seeds b{margin-right:3px}.bracket-rounds{display:flex;gap:25px;overflow:auto;padding:6px 0 13px;align-items:stretch}.bracket-round{min-width:210px;flex:1}.bracket-round h3{font:10px var(--mono);text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin:0 0 13px}.bracket-slot{border:1px solid #cbd2bd;border-radius:4px;overflow:hidden;margin-bottom:14px;background:#f7f9f0;padding:12px}.bracket-slot .step-label{font-size:8px;display:block;margin-bottom:6px}.bracket-entrant{font-size:11px;padding:9px 1px;border-bottom:1px solid var(--line);line-height:1.6}.bracket-entrant:last-of-type{border-bottom:0}.bracket-slot .btn{margin:9px 6px 0 0}.tie-order{border:1px solid var(--line);padding:13px 15px;border-radius:4px;margin:18px 0;background:#f2f5e9}.tie-order>summary{cursor:pointer;font-size:11px;font-weight:600}.user-access-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.user-access-list>details>summary{cursor:pointer;display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:35px}.user-access-list>details>summary .mono{font-size:10px;color:var(--muted)}.user-access-list form{margin-top:20px}.finals-panel form{max-width:750px}.games-input .game-input>span:nth-last-of-type(1){min-width:auto}.game-input>input:disabled{opacity:.45}.panel>.panel{margin-top:18px}@media(max-width:800px){.user-access-list{grid-template-columns:1fr}.bracket-round{min-width:200px}.rule-format-box{padding:14px}}@media(max-width:520px){.mlp-games .game-input>span:first-of-type{width:75px;font-size:9px}.mlp-games .game-input input{width:61px;height:47px}.mlp-games .game-input{gap:6px}.game-lineup{font-size:9px}.rule-format-box{margin:15px -4px}.bracket-round{min-width:210px}.finals-seeds{gap:6px}.finals-seeds>span{font-size:9px}.identity-list{max-height:350px}.landing-access .notice{font-size:10px}.landing-access h2{font-size:31px}}@media print{.tie-order,.outcome-form,.user-access-list,.lab-identities{display:none!important}.bracket-rounds{overflow:visible}.finals-panel{break-inside:avoid}}
[hidden]{display:none!important}.team-edit{padding:11px 0;border-bottom:1px solid var(--line)}.team-edit>summary{font-size:10px;cursor:pointer;color:#53643e}.team-edit form{padding-top:12px}.panel+.panel{margin-top:18px}.finals-panel+.finals-panel{margin-top:0}

.connection-dot.verified{background:#a8cf5b}.directory-view-switch{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 18px}.cr-integration{margin-bottom:24px}.cr-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:4px;margin:18px 0}.cr-summary>div{padding:13px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.cr-summary>div:nth-child(3n){border-right:0}.cr-summary>div:nth-last-child(-n+3){border-bottom:0}.cr-summary span{font-size:10px;color:var(--muted);display:block}.cr-summary strong{display:block;margin-top:5px;font-size:22px}.cr-refresh-status{margin-top:12px!important}.source-evidence{margin-top:9px;max-width:420px}.source-evidence>summary{cursor:pointer;font-size:10px;color:#566a38}.source-evidence .table-wrap{margin-top:9px;max-width:420px}.source-evidence th,.source-evidence td{font-size:9px;padding:8px 10px}.financial-observation+.financial-observation{border-top:1px solid var(--line);margin-top:7px;padding-top:7px}@media(max-width:520px){.cr-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.cr-summary>div:nth-child(3n){border-right:1px solid var(--line)}.cr-summary>div:nth-child(2n){border-right:0}.cr-summary>div:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.cr-summary>div:nth-last-child(-n+2){border-bottom:0}.cr-integration .panel-head{gap:10px;flex-wrap:wrap}.cr-integration .detail-list>div{flex-wrap:wrap;gap:4px}.cr-integration .detail-list dd{max-width:100%;text-align:left}.source-evidence{max-width:240px}}@media print{.page::after{content:'3rd Shot League Manager · Local records · CourtReserve writes disabled · Internal league standings'}.cr-integration{display:none!important}}
.player-signin{border:1px solid var(--line);padding:18px;margin:18px 0}.player-signin .btn,.local-install .btn{min-height:44px}.local-install{margin-top:25px}.local-install p,.player-links p{overflow-wrap:anywhere}.local-install details,.player-enrollment{margin:17px 0;padding-top:12px;border-top:1px solid var(--line)}.local-install summary,.player-enrollment summary{cursor:pointer;font-weight:600;min-height:36px}.local-install .btn{margin:6px 8px 6px 0}.player-links select,.player-links input,.player-links textarea{max-width:100%;min-width:0}.player-links .table-wrap{margin-top:24px}.offline-page{max-width:650px;margin:0 auto;text-align:left}.offline-page h1{font-size:32px}.offline-page p{line-height:1.8}@media(max-width:520px){.player-signin{padding:14px}.local-install .btn{width:100%}.player-links .checkbox{align-items:flex-start}.player-links td{overflow-wrap:anywhere;max-width:180px}}@media print{.local-install,.player-links{display:none!important}}
.bottom-nav a{min-height:44px}.player-topbar .avatar,.player-topbar .signout{min-width:44px;min-height:44px}.player-page .btn{min-height:44px}.player-page .field input,.player-page .field select,.player-page .field textarea,.player-page .toolbar select{min-height:44px;font-size:16px}@media(max-width:520px){.player-page{padding-bottom:calc(95px + env(safe-area-inset-bottom))}.bottom-nav{height:calc(72px + env(safe-area-inset-bottom))}}
