:root{font-family:Microsoft YaHei,Noto Sans SC,sans-serif;color:#15231f;background:#f2f4ee;font-synthesis:none;--ink: #13241f;--forest: #073b2e;--deep: #052a22;--green: #0d5a43;--mint: #c9f36a;--lime: #ddff75;--paper: #f7f8f3;--line: #dce2da;--muted: #6c7b75;--danger: #b53333;--num: "DIN Alternate", "Bahnschrift", "Arial Narrow", sans-serif}*{box-sizing:border-box}html{min-width:320px;background:var(--paper)}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(201,243,106,.65);outline-offset:2px}h1,h2,h3,h4,p{margin-top:0}.eyebrow{color:#577069;font:700 11px/1 var(--num);letter-spacing:.17em;text-transform:uppercase}.eyebrow.light{color:#a4c0b7}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:0 19px;border:1px solid transparent;border-radius:4px;cursor:pointer;font-weight:700;transition:.2s ease}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.6;transform:none}.button.primary{color:#07251c;background:var(--mint);box-shadow:0 8px 20px #34633d1f}.button.primary:hover{background:var(--lime)}.button.secondary{color:var(--forest);border-color:#cbd5cd;background:#fff}.button.ghost{border-color:transparent;background:transparent}.button.bright{color:var(--deep);background:var(--lime)}.button.wide{width:100%;min-height:52px}.button.small{min-height:36px;padding-inline:13px;font-size:12px}.icon-button{width:38px;height:38px;border:1px solid var(--line);background:transparent;border-radius:50%;cursor:pointer;font-size:24px;line-height:1}.field{display:grid;gap:8px}.field>span,.check-field>span{color:#56665f;font-size:12px;font-weight:700}.field input,.field select,.team-config-row input,.team-config-row select{width:100%;height:46px;padding:0 13px;color:var(--ink);border:1px solid #cfd8d1;border-radius:4px;background:#fff;transition:.2s ease}.field input:focus,.field select:focus,.team-config-row input:focus,.team-config-row select:focus{border-color:var(--green);box-shadow:0 0 0 3px #0d5a4317;outline:none}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-grid .span-2{grid-column:span 2}.form-grid.compact{gap:14px}.form-error{margin:14px 0 0;padding:10px 12px;color:#8e2525;border-left:3px solid #d65555;background:#fff0ed;font-size:13px}.appear{animation:reveal .36s ease both}@keyframes reveal{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.login-page{display:grid;grid-template-columns:1.25fr .75fr;min-height:100vh;background:#f6f7f1;overflow:hidden}.brand-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:48px clamp(44px,7vw,112px);color:#fff;background:radial-gradient(circle at 15% 10%,#12533e 0,transparent 35%),linear-gradient(140deg,#083b2e,#05271f 72%);isolation:isolate}.brand-panel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.07;background-image:repeating-linear-gradient(118deg,transparent 0 44px,#fff 45px 46px)}.brand-mark,.public-logo{display:grid;place-items:center;width:62px;height:62px;color:var(--deep);background:var(--lime);border-radius:4px 20px 4px 4px;font:900 31px/1 serif;transform:rotate(-2deg)}.brand-mark small,.public-logo small{position:absolute;margin:34px 0 0 37px;padding:2px 4px;color:var(--lime);background:var(--deep);font:700 9px/1 sans-serif}.brand-panel h1{margin:18px 0 24px;max-width:690px;font-family:STZhongsong,SimSun,serif;font-size:clamp(42px,5vw,78px);font-weight:700;line-height:1.12;letter-spacing:-.05em}.brand-panel h1 em{color:var(--lime);font-style:normal}.brand-panel>div>p:last-child{max-width:510px;color:#bdd0c9;font-size:16px;line-height:1.8}.brand-panel footer{display:flex;gap:15px;color:#89a69d;font-size:12px;letter-spacing:.06em}.brand-panel footer i{color:var(--mint)}.court-lines{position:absolute;inset:15% auto auto 7%;z-index:2;width:48%;aspect-ratio:1.8;opacity:.12;border:1px solid #dfff9a;pointer-events:none;transform:perspective(600px) rotateX(63deg) rotate(-9deg)}.court-lines:before,.court-lines:after,.court-lines i{content:"";position:absolute;background:#dfff9a}.court-lines:before{top:50%;left:0;width:100%;height:1px}.court-lines:after{top:0;left:50%;width:1px;height:100%}.court-lines i:nth-child(1),.court-lines i:nth-child(2){top:0;width:1px;height:100%}.court-lines i:nth-child(1){left:16%}.court-lines i:nth-child(2){right:16%}.court-lines i:nth-child(3){top:23%;left:0;width:100%;height:1px}.login-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,7vw,104px);background:#f7f8f3}.login-panel form{width:min(390px,100%);margin:auto}.login-panel h2{margin:13px 0 8px;color:var(--forest);font-family:STZhongsong,serif;font-size:33px}.login-panel form>p:not(.eyebrow,.form-error){margin-bottom:34px;color:var(--muted);font-size:14px}.login-panel .field{margin-bottom:19px}.login-panel>small{margin:0 auto;color:#8c9994;font-size:10px;letter-spacing:.1em}.admin-shell{min-height:100vh;background:#f1f3ed}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;flex-direction:column;width:232px;padding:27px 18px 20px;color:#dbe8e3;background:var(--deep)}.admin-brand{display:flex;align-items:center;gap:12px;padding:0 10px 27px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-brand>span,.public-brand>span{display:grid;place-items:center;width:38px;height:38px;color:var(--deep);background:var(--mint);border-radius:3px 12px 3px 3px;font-family:serif;font-size:22px;font-weight:900}.admin-brand div,.public-brand div{display:grid;gap:2px}.admin-brand b,.public-brand b{font-family:STZhongsong,serif;font-size:18px;letter-spacing:.16em}.admin-brand small,.public-brand small{color:#749188;font:600 8px/1 var(--num);letter-spacing:.19em}.sidebar nav{display:grid;gap:6px;padding:26px 0 18px}.sidebar button{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;color:#98afa7;border:0;border-radius:3px;background:transparent;cursor:pointer;text-align:left;font-size:13px}.sidebar button:hover,.sidebar button.active{color:#fff;background:#ffffff13}.sidebar button.active{box-shadow:inset 3px 0 var(--mint)}.nav-icon{width:19px;color:var(--mint);font:700 17px/1 var(--num);text-align:center}.sidebar-tournaments{flex:1;min-height:0;overflow:hidden;border-top:1px solid rgba(255,255,255,.08);padding-top:18px}.sidebar-tournaments>small{display:block;padding:0 12px 9px;color:#57756b;font:700 9px/1 var(--num);letter-spacing:.15em}.sidebar-tournaments button i{flex:none;width:6px;height:6px;border-radius:50%;background:#61736d}.sidebar-tournaments button i.dot-in_progress{background:var(--mint);box-shadow:0 0 0 4px #c9f36a1f}.sidebar-tournaments button i.dot-published{background:#e4b14a}.sidebar-tournaments button span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sidebar footer{border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.sidebar footer>small{display:flex;align-items:center;gap:7px;padding:10px 13px 0;color:#4f7065;font:700 8px/1 var(--num);letter-spacing:.13em}.sidebar footer>small i{width:5px;height:5px;border-radius:50%;background:var(--mint)}.admin-main{min-height:100vh;margin-left:232px}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:103px;padding:22px clamp(24px,4vw,58px);border-bottom:1px solid #dce2da;background:#f7f8f3e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar p{margin-bottom:8px}.topbar h1{margin:0;color:var(--forest);font-family:STZhongsong,serif;font-size:27px}.top-actions{display:flex;gap:10px}.dashboard-content,.event-content{width:min(1420px,100%);margin:auto;padding:34px clamp(24px,4vw,58px) 64px}.hero-summary{position:relative;display:flex;align-items:end;justify-content:space-between;min-height:230px;padding:42px 48px;overflow:hidden;color:#fff;border-radius:6px;background:linear-gradient(120deg,#073b2e,#0b4b39)}.hero-summary:after{content:"";position:absolute;top:-150%;right:-4%;width:38%;height:400%;border:1px solid rgba(220,255,137,.35);transform:rotate(19deg);box-shadow:0 0 0 42px #ffffff06,0 0 0 88px #ffffff05}.hero-summary h2{margin:11px 0 8px;font-family:STZhongsong,serif;font-size:37px;line-height:1.2}.hero-summary p:last-child{margin:0;color:#9fb9b0;font-size:13px}.hero-number{z-index:1;display:grid;padding-right:8%;text-align:right}.hero-number b{color:var(--mint);font:800 72px/.9 var(--num)}.hero-number span{color:#9eb5ad;font-size:11px;letter-spacing:.1em}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0}.summary-grid article{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;min-height:112px;padding:23px 25px;overflow:hidden;border:1px solid #dde3db;border-radius:5px;background:#fff}.summary-grid article:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--mint)}.summary-grid article>span{color:#60716a;font-size:12px;font-weight:700}.summary-grid article b{grid-row:span 2;font:800 41px/1 var(--num);color:var(--forest)}.summary-grid article small{color:#a0aaa6;font:700 8px/1 var(--num);letter-spacing:.16em}.panel{border:1px solid #dce2da;border-radius:5px;background:#fff}.panel>header,.tournament-list>header{display:flex;align-items:center;justify-content:space-between;padding:23px 26px;border-bottom:1px solid #e2e6e0}.panel>header h3,.tournament-list>header h3{margin:0 0 5px;color:var(--forest);font-size:16px}.panel>header p,.tournament-list>header p{margin:0;color:#89958f;font-size:11px}.tournament-row{display:grid;grid-template-columns:58px 1fr 75px 94px 28px;align-items:center;width:100%;min-height:81px;padding:10px 22px;border:0;border-bottom:1px solid #edf0ec;background:transparent;cursor:pointer;text-align:left;transition:.2s ease}.tournament-row:hover{background:#f8faf5}.date-block{display:grid;width:42px;padding:5px 0;border-right:1px solid #dfe5df;text-align:center}.date-block b{color:var(--green);font:800 22px/1 var(--num)}.date-block small{margin-top:3px;color:#8b9892;font-size:9px}.tournament-info{display:grid;gap:6px}.tournament-info b{color:var(--forest);font-size:14px}.tournament-info small{color:#82908a;font-size:11px}.participant-count{display:flex;align-items:baseline;gap:3px}.participant-count b{font:700 21px/1 var(--num)}.participant-count small{color:#87948f}.status-pill{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-width:64px;padding:5px 9px;border-radius:30px;color:#66716d;background:#edf0ed;font-size:10px;font-style:normal;font-weight:700}.status-pill.status-in_progress{color:#07553e;background:#dbf5c9}.status-pill.status-published{color:#785717;background:#fff0c8}.status-pill.status-completed{color:#385d80;background:#e1edf5}.status-pill.status-archived{color:#686868;background:#e8e8e8}.row-arrow{color:var(--green);font-size:18px;transition:.2s}.tournament-row:hover .row-arrow{transform:translate(3px)}.empty-state{display:grid;place-items:center;padding:60px 20px;text-align:center}.empty-state>span{display:grid;place-items:center;width:48px;height:48px;color:var(--green);border:1px dashed #a9b8b0;border-radius:50%;font-size:25px}.empty-state h3{margin:15px 0 5px}.empty-state p{color:var(--muted);font-size:13px}.event-banner{display:flex;align-items:center;justify-content:space-between;min-height:94px;padding:20px 27px;border:1px solid #dbe1db;border-radius:5px;background:#fff}.event-meta{display:flex;align-items:center;gap:15px;color:#718079;font-size:11px}.event-meta>span:not(.status-pill){padding-left:15px;border-left:1px solid #dce2dc}.event-progress{display:flex;align-items:center;gap:17px;min-width:260px}.event-progress>div{display:grid;text-align:right}.event-progress b{color:var(--forest);font:800 25px/1 var(--num)}.event-progress span{color:#8d9994;font-size:9px}.event-progress>i{display:block;width:130px;height:5px;overflow:hidden;border-radius:3px;background:#e5eae5}.event-progress>i span{display:block;height:100%;background:var(--mint)}.warning-banner{display:flex;gap:13px;margin-top:11px;padding:10px 15px;color:#705819;border-left:3px solid #eabf47;background:#fff6d7;font-size:11px}.section-tabs{display:flex;gap:26px;margin:22px 0 17px;border-bottom:1px solid #d7ddd7}.section-tabs button{padding:13px 1px;border:0;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:12px;font-weight:700}.section-tabs button.active{color:var(--green);border-color:var(--green)}.overview-columns{display:grid;grid-template-columns:1fr 310px;gap:15px}.roster{max-height:456px;overflow:auto}.roster>div{display:grid;grid-template-columns:32px minmax(120px,1fr) 1fr 38px 38px;align-items:center;min-height:53px;padding:0 24px;border-bottom:1px solid #edf0ed}.roster>div>span{color:#a0aaa5;font:700 10px var(--num)}.roster b{font-size:12px}.roster small{color:#87938e;font-size:10px}.roster i,.roster em{justify-self:center;color:#0b684c;font:700 9px var(--num);font-style:normal}.roster em{color:#79622e}.action-panel{padding-bottom:18px}.action-card{display:flex;align-items:center;gap:13px;width:calc(100% - 32px);min-height:68px;margin:13px 16px 0;padding:10px 13px;border:1px solid #dce2dc;border-radius:4px;background:#fafbf8;cursor:pointer;text-align:left}.action-card>span{display:grid;place-items:center;width:35px;height:35px;color:var(--green);border-radius:50%;background:#edf5e9;font-size:18px}.action-card div{display:grid;gap:5px}.action-card b{font-size:12px}.action-card small{color:#8a9691;font-size:9px}.action-card.accent{color:#eaffaf;border-color:var(--forest);background:var(--forest)}.action-card.accent>span{color:var(--forest);background:var(--mint)}.action-card.accent small{color:#9fb7ae}.text-danger{margin:18px 22px 0;padding:0;color:#a33;border:0;background:none;cursor:pointer;font-size:10px;text-decoration:underline}.groups-grid,.public-standings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.standings-card,.public-standings-grid>article{overflow:hidden;border:1px solid #dce2dc;border-radius:5px;background:#fff}.standings-card>header,.public-standings-grid>article>header{display:flex;align-items:center;gap:14px;padding:19px 22px;border-bottom:1px solid #e2e7e2}.standings-card>header>span,.public-standings-grid>article>header>span{display:grid;place-items:center;width:38px;height:38px;color:var(--forest);background:var(--mint);font:800 19px var(--num)}.standings-card h3,.public-standings-grid>article>header h3{margin:0 0 4px;font-size:14px}.standings-card small,.public-standings-grid>article>header small{color:#84918c;font-size:9px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:11px}th{padding:11px 13px;color:#82908a;background:#f7f9f5;font-size:9px;text-align:center}th:nth-child(2),td:nth-child(2){text-align:left}td{padding:12px 13px;border-top:1px solid #edf0ed;text-align:center;white-space:nowrap}tr.qualify td:first-child b{display:inline-grid;place-items:center;width:23px;height:23px;color:var(--forest);border-radius:50%;background:var(--mint)}td i{display:block;color:#a33;font-size:8px;font-style:normal}.console-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.console-toolbar>div{display:flex;padding:3px;border:1px solid #d8ded8;border-radius:4px;background:#fff}.console-toolbar button{padding:7px 15px;border:0;border-radius:3px;background:transparent;cursor:pointer;font-size:10px}.console-toolbar button.active{color:#fff;background:var(--green)}.console-toolbar small{color:#87948f;font-size:10px}.match-card-grid,.public-match-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.match-card{position:relative;overflow:hidden;border:1px solid #dce2dc;border-radius:4px;background:#fff;transition:.2s ease}.match-card.clickable{cursor:pointer}.match-card.clickable:hover{border-color:#94b3a3;transform:translateY(-2px);box-shadow:0 10px 25px #0f3a2c14}.match-card>header{display:flex;align-items:center;gap:10px;padding:8px 12px;color:#89958f;border-bottom:1px solid #edf0ed;background:#fafbf8;font:700 8px var(--num);letter-spacing:.05em}.match-card>header i{margin-left:auto;color:#6f7c76;font-style:normal}.match-card.state-completed>header i{color:#0b7252}.match-side{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:43px;padding:8px 12px;border-bottom:1px solid #edf0ed}.match-side b{overflow:hidden;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.match-side>span{color:#77847e;font:700 11px var(--num)}.match-side.winner{box-shadow:inset 3px 0 var(--mint)}.match-side.winner b{color:#075b42}.match-card>footer{padding:5px 12px;color:#a26c25;background:#fff8e5;font-size:8px}.empty-inline{padding:28px;color:#89958f;border:1px dashed #cbd4cc;border-radius:4px;text-align:center;font-size:11px}.bracket-panel{padding:24px;overflow:hidden}.round-tabs{display:none}.bracket{display:grid;grid-template-columns:repeat(var(--rounds),minmax(210px,1fr));gap:34px;min-width:calc(var(--rounds) * 230px);overflow-x:auto;padding:3px 3px 20px}.bracket-round>header{display:flex;align-items:center;gap:10px;margin-bottom:18px}.bracket-round>header>span{color:#b4beb8;font:800 28px var(--num)}.bracket-round>header div{display:grid}.bracket-round>header b{font-size:11px}.bracket-round>header small{color:#929d98;font-size:8px}.round-matches{display:flex;flex-direction:column;justify-content:space-around;height:100%;gap:22px}.bracket-node{position:relative}.bracket-node:after{content:"";position:absolute;top:50%;left:100%;width:35px;border-top:1px solid #b9c5be}.bracket-round:last-child .bracket-node:after{display:none}.match-card.compact .match-side{min-height:37px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:22px;background:#031b15b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-panel{width:min(840px,100%);max-height:calc(100vh - 44px);overflow:auto;border-radius:7px;background:#f8f9f5;box-shadow:0 30px 80px #0000004d;animation:modal-in .25s ease both}@keyframes modal-in{0%{opacity:0;transform:scale(.98) translateY(8px)}}.wizard-head,.score-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid #dce2db}.wizard-head h2,.score-dialog h2{margin:7px 0 0;color:var(--forest);font-family:STZhongsong,serif;font-size:24px}.stepper{display:grid;grid-template-columns:repeat(5,1fr);margin:0;padding:17px 28px;border-bottom:1px solid #e0e5df;list-style:none}.stepper li{position:relative;display:flex;align-items:center;gap:7px;color:#9ba59f;font-size:9px}.stepper li:after{content:"";position:absolute;top:11px;right:12px;left:70px;border-top:1px solid #d8ded8}.stepper li:last-child:after{display:none}.stepper span{z-index:1;display:grid;place-items:center;width:23px;height:23px;border:1px solid #cfd7d0;border-radius:50%;background:#f8f9f5;font:700 9px var(--num)}.stepper li.active,.stepper li.done{color:var(--green)}.stepper li.active span,.stepper li.done span{color:var(--deep);border-color:var(--mint);background:var(--mint)}.wizard-body{min-height:385px;padding:30px 34px}.wizard-actions{display:flex;justify-content:space-between;padding:17px 28px;border-top:1px solid #dce2db}.input-prefix{display:flex;align-items:center;height:46px;overflow:hidden;border:1px solid #cfd8d1;border-radius:4px;background:#fff}.input-prefix small{padding-left:12px;color:#84918b}.input-prefix input{border:0}.section-intro{display:flex;align-items:start;justify-content:space-between;margin-bottom:15px}.section-intro h3{margin:0 0 6px;color:var(--forest);font-size:17px}.section-intro p{margin:0;color:#7d8984;font-size:11px}.team-import{width:100%;min-height:210px;resize:vertical;padding:14px;color:#d9ece5;border:0;border-radius:4px;outline:none;background:var(--deep);font:12px/1.9 var(--num)}.parsed-strip{display:flex;align-items:center;gap:7px;margin-top:10px;overflow:hidden}.parsed-strip span{color:#65756e;font-size:10px}.parsed-strip b,.parsed-strip i{flex:none;padding:4px 7px;color:#426258;border-radius:20px;background:#e7eee8;font-size:9px;font-style:normal}.config-card{margin-bottom:13px;padding:18px 20px;border:1px solid #dae1da;border-radius:4px;background:#fff}.config-card h4{display:flex;align-items:center;gap:9px;margin-bottom:15px;font-size:12px}.config-card h4 span{color:#779087;font:700 10px var(--num)}.score-rule{display:flex;align-items:center}.score-rule input{min-width:0}.score-rule em{color:#89968f;padding:0 7px;font-style:normal}.check-field{display:flex;align-items:center;gap:8px;padding-top:24px}.team-config-list{max-height:315px;overflow:auto;border:1px solid #dce2dc;background:#fff}.team-config-row{display:grid;grid-template-columns:35px 1fr 110px 110px;align-items:center;gap:12px;min-height:61px;padding:7px 13px;border-bottom:1px solid #edf0ed}.team-index{color:#9ba7a1;font:700 10px var(--num)}.team-config-row b{font-size:11px}.team-config-row label{display:grid;grid-template-columns:34px 1fr;align-items:center;color:#7f8d87;font-size:8px}.team-config-row input,.team-config-row select{height:34px;padding:0 7px;font-size:10px}.confirm-sheet{position:relative;min-height:300px;padding:34px;overflow:hidden;color:#e5f0ec;border-radius:5px;background:var(--deep)}.confirm-sheet:after{content:"";position:absolute;right:-50px;bottom:-90px;width:280px;height:180px;border:1px solid rgba(207,255,118,.25);transform:rotate(-14deg);box-shadow:0 0 0 35px #ffffff05}.confirm-sheet h3{margin:10px 0 28px;color:#fff;font-family:STZhongsong,serif;font-size:30px}.confirm-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;max-width:600px;background:#ffffff1f}.confirm-metrics div{display:grid;gap:7px;padding:17px;background:#0a352a}.confirm-metrics b{color:var(--mint);font:700 18px var(--num)}.confirm-metrics span,.confirm-sheet>p{color:#91aaa1;font-size:9px}.confirm-sheet>p{max-width:560px;margin-top:24px;line-height:1.7}.score-dialog{width:min(560px,100%)}.versus{display:grid;grid-template-columns:1fr 50px 1fr;align-items:center;padding:25px 30px;text-align:center}.versus div{display:grid;gap:6px}.versus small{color:#91a099;font:700 9px var(--num)}.versus b{font-size:15px}.versus i{color:#8b9892;font:800 12px var(--num);font-style:normal}.result-types{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 30px 20px}.result-types input{position:absolute;opacity:0}.result-types span{display:block;padding:10px;border:1px solid #d7ded8;border-radius:3px;cursor:pointer;text-align:center;font-size:10px}.result-types input:checked+span{color:var(--forest);border-color:var(--green);background:#edf6e9;font-weight:700}.game-scores{padding:17px 30px;border-block:1px solid #e1e6e1;background:#fff}.game-scores>div{display:grid;grid-template-columns:1fr 70px 20px 70px;align-items:center;margin-bottom:9px}.game-scores span{font-size:10px}.game-scores input{width:70px;height:38px;border:1px solid #d4dcd5;border-radius:3px;text-align:center}.game-scores em{color:#89968f;text-align:center;font-style:normal}.game-scores p{margin:14px 0 0;color:#89958f;font-size:9px}.winner-pick{display:grid;gap:11px;padding:20px 30px;border-block:1px solid #e1e6e1;background:#fff}.winner-pick>span{color:#7a8882;font-size:10px}.winner-pick label{display:flex;align-items:center;gap:8px;font-size:12px}.score-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:18px 26px}.loading-bar{position:fixed;inset:0 0 auto 232px;z-index:200;height:3px;overflow:hidden;background:#c9f36a33}.loading-bar:after{content:"";display:block;width:35%;height:100%;background:var(--mint);animation:loading 1s ease infinite}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(300%)}}.toast{position:fixed;right:24px;bottom:24px;z-index:300;max-width:360px;padding:13px 17px;color:#e9f8f2;border-left:3px solid var(--mint);border-radius:3px;background:var(--deep);box-shadow:0 12px 35px #0003;font-size:11px;animation:reveal .2s ease}.toast.error{border-color:#ef6b61}.screen-center{display:grid;place-items:center;align-content:center;min-height:100vh;gap:14px;color:#71817a}.loader-ring{width:32px;height:32px;border:3px solid #dce4dd;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.public-page{min-height:100vh;background:#f5f6f1}.public-header{display:flex;align-items:center;justify-content:space-between;height:70px;padding:0 clamp(20px,5vw,78px);color:#e5f1ec;background:var(--deep)}.public-brand{display:flex;align-items:center;gap:10px}.public-brand>span{width:34px;height:34px;font-size:19px}.public-brand b{color:#fff;font-size:16px}.live-status{display:flex;align-items:center;gap:8px;color:#aac0b8;font-size:10px;letter-spacing:.08em}.live-status i{width:7px;height:7px;border-radius:50%;background:#769188}.live-status i.pulse{background:var(--mint);box-shadow:0 0 #c9f36a80;animation:pulse 1.8s infinite}@keyframes pulse{70%{box-shadow:0 0 0 7px #c9f36a00}}.refresh-button{display:flex;gap:7px;color:#aac0b8;border:0;background:none;cursor:pointer;font-size:10px}.public-hero{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;min-height:330px;padding:50px clamp(20px,6vw,94px);overflow:hidden;color:#fff;background:radial-gradient(circle at 87% -20%,#17664d 0,transparent 42%),linear-gradient(120deg,#083c2f,#062a23)}.public-hero:after{content:"";position:absolute;inset:auto -3% -75% auto;width:37%;aspect-ratio:1;border:1px solid rgba(214,255,117,.25);border-radius:50%;box-shadow:0 0 0 45px #ffffff05,0 0 0 90px #ffffff04}.public-hero-copy{z-index:1}.public-hero-copy h1{max-width:850px;margin:13px 0 26px;font-family:STZhongsong,serif;font-size:clamp(34px,5vw,64px);line-height:1.14;letter-spacing:-.04em}.public-hero-copy>div{display:flex;gap:22px;color:#a9c0b8;font-size:11px}.public-hero-stats{z-index:1;display:flex;align-items:center;gap:clamp(16px,3vw,42px);padding-bottom:6px}.public-hero-stats div{display:grid;gap:7px;text-align:center}.public-hero-stats b{color:var(--mint);font:800 34px/1 var(--num)}.public-hero-stats span{color:#9ab2aa;font-size:9px;white-space:nowrap}.public-hero-stats>i{width:1px;height:39px;background:#ffffff26}.hero-court-lines{position:absolute;inset:-35% -2% auto auto;width:53%;aspect-ratio:1.9;opacity:.09;border:1px solid var(--lime);transform:rotate(12deg)}.hero-court-lines:before,.hero-court-lines:after,.hero-court-lines i{content:"";position:absolute;background:var(--lime)}.hero-court-lines:before{left:50%;top:0;width:1px;height:100%}.hero-court-lines:after{top:50%;left:0;width:100%;height:1px}.hero-court-lines i:nth-child(1),.hero-court-lines i:nth-child(2){top:0;width:1px;height:100%}.hero-court-lines i:nth-child(1){left:18%}.hero-court-lines i:nth-child(2){right:18%}.hero-court-lines i:nth-child(3),.hero-court-lines i:nth-child(4){left:0;width:100%;height:1px}.hero-court-lines i:nth-child(3){top:20%}.hero-court-lines i:nth-child(4){bottom:20%}.public-tabs{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:repeat(4,1fr);padding:0 clamp(20px,6vw,94px);border-bottom:1px solid #dce2dc;background:#fafbf7f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.public-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;min-height:65px;color:#718079;border:0;border-bottom:3px solid transparent;background:none;cursor:pointer;font-size:12px;font-weight:700}.public-tabs button small{color:#a6b0ab;font:700 9px var(--num)}.public-tabs button.active{color:var(--green);border-color:var(--green)}.public-tabs button.disabled{opacity:.35;pointer-events:none}.public-content{width:min(1440px,100%);min-height:460px;margin:auto;padding:48px clamp(20px,6vw,94px) 80px}.public-section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.public-section-head p{margin-bottom:8px}.public-section-head h2{margin:0;color:var(--forest);font-family:STZhongsong,serif;font-size:29px}.public-section-head>span{color:#83908a;font-size:9px}.public-section-head button{color:var(--green);border:0;background:none;cursor:pointer;font-size:10px;font-weight:700}.pulse-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.next-matches,.recent-results{border:1px solid #dce2dc;border-radius:5px;background:#fff}.next-matches>header,.recent-results>header{display:flex;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e2e7e2}.next-matches h3,.recent-results h3{margin:0;font-size:13px}.next-matches header span,.recent-results header span{color:#82908a;font:700 9px var(--num)}.next-matches>div{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:13px}.result-row{display:grid;grid-template-columns:45px 1fr 54px 1fr;align-items:center;min-height:52px;padding:0 17px;border-bottom:1px solid #edf0ed;font-size:10px}.result-row>span{color:#8a9791}.result-row b:last-child{text-align:right}.result-row b.muted{color:#9aa49f;font-weight:500}.result-row strong{color:var(--green);font:800 14px var(--num);text-align:center}.group-peek{margin-top:54px}.group-peek-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.group-peek-grid article{overflow:hidden;border:1px solid #dce2dc;border-radius:4px;background:#fff}.group-peek-grid header{display:flex;align-items:center;gap:11px;padding:13px;border-bottom:1px solid #e3e7e3}.group-peek-grid header>span{display:grid;place-items:center;width:32px;height:32px;color:var(--forest);background:var(--mint);font:800 15px var(--num)}.group-peek-grid header div{display:grid}.group-peek-grid header b{font-size:11px}.group-peek-grid header small{color:#89958f;font-size:8px}.group-peek-grid ol{margin:0;padding:0;list-style:none}.group-peek-grid li{display:grid;grid-template-columns:24px 1fr auto;align-items:center;min-height:39px;padding:0 13px;border-bottom:1px solid #edf0ed;font-size:9px}.group-peek-grid li span{color:#99a39f;font:700 9px var(--num)}.group-peek-grid li em{color:#63746d;font-style:normal}.public-standings-grid article>header{padding:22px}.public-standings-grid article>header>span{width:44px;height:44px;font-size:22px}.public-standings-grid table{font-size:12px}.public-standings-grid td{height:52px}.public-standings-grid tr.qualified{box-shadow:inset 3px 0 var(--mint)}.public-standings-grid td:first-child span{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;font:700 11px var(--num)}.public-standings-grid tr.qualified td:first-child span{background:var(--mint)}.public-standings-grid td:nth-child(2) b,.public-standings-grid td:nth-child(2) small{display:block}.public-standings-grid td:nth-child(2) small{margin-top:3px;color:#b1443f}.public-bracket .bracket-wrap{padding:25px;border:1px solid #dce2dc;border-radius:5px;background:#fff}.schedule-round{margin-bottom:35px}.schedule-round>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #dce2dc}.schedule-round>header span{color:var(--forest);font-size:13px;font-weight:700}.schedule-round>header small{color:#89958f;font-size:9px}.public-footer{display:flex;align-items:center;justify-content:space-between;padding:30px clamp(20px,6vw,94px);color:#829b92;background:var(--deep);font-size:9px}.public-footer p{margin:0}.public-footer a{text-decoration:underline}.public-landing{position:relative;display:flex;align-items:center;min-height:100vh;padding:8vw;overflow:hidden;color:#fff;background:radial-gradient(circle at 70% 30%,#146149 0,transparent 38%),var(--deep)}.public-landing section{z-index:1}.public-landing h1{margin:30px 0 22px;font-family:STZhongsong,serif;font-size:clamp(45px,8vw,100px);line-height:1.05;letter-spacing:-.06em}.public-landing h1 em{color:var(--lime);font-style:normal}.public-landing section>p:not(.eyebrow){max-width:520px;margin-bottom:30px;color:#a9beb7;line-height:1.8}.landing-court{position:absolute;right:-8%;width:55%;aspect-ratio:1.8;border:1px solid rgba(220,255,117,.17);transform:perspective(800px) rotateY(-27deg) rotate(-8deg);box-shadow:0 0 0 60px #ffffff04,0 0 0 120px #ffffff03}.public-error{display:grid;place-items:center;align-content:center;min-height:100vh;color:#9eb7ae;background:var(--deep);text-align:center}.public-error span{color:var(--mint);font:800 90px var(--num)}.public-error h1{color:#fff;font-family:STZhongsong,serif}.public-error a{color:var(--mint);text-decoration:underline}.screen-center.dark{color:#a8bdb6;background:var(--deep)}.shuttle-loader{display:grid;place-items:center;width:56px;height:56px;color:var(--deep);border-radius:50% 50% 50% 12%;background:var(--mint);font-family:serif;font-size:25px;animation:shuttle 1.2s ease-in-out infinite}@keyframes shuttle{50%{transform:translateY(-8px) rotate(10deg)}}@media(max-width:1100px){.login-page{grid-template-columns:1fr 430px}.brand-panel{padding:40px}.sidebar{width:196px}.admin-main{margin-left:196px}.loading-bar{left:196px}.match-card-grid,.public-match-grid,.group-peek-grid{grid-template-columns:repeat(2,1fr)}.public-hero{grid-template-columns:1fr}.public-hero-stats{margin-top:35px}.pulse-grid{grid-template-columns:1fr}.next-matches>div{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.login-page{display:block;background:var(--deep)}.brand-panel{min-height:41vh;padding:28px 24px 45px}.brand-panel h1{margin:28px 0 15px;font-size:39px}.brand-panel>div>p:last-child,.brand-panel footer{display:none}.brand-mark{width:48px;height:48px;font-size:25px}.login-panel{min-height:59vh;padding:36px 24px;border-radius:22px 22px 0 0}.login-panel h2{font-size:27px}.sidebar{position:fixed;inset:auto 0 0;z-index:50;display:grid;grid-template-columns:1fr 1fr;width:auto;height:64px;padding:7px 14px;background:#052a22f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.admin-brand,.sidebar-tournaments,.sidebar footer{display:none}.sidebar nav{display:grid;grid-template-columns:1fr 1fr;padding:0;gap:5px}.sidebar button{justify-content:center;padding:7px;font-size:10px}.sidebar button.active{box-shadow:inset 0 -2px var(--mint)}.admin-main{margin:0;padding-bottom:64px}.topbar{min-height:82px;padding:15px 18px}.topbar .eyebrow{display:none}.topbar h1{font-size:20px}.top-actions .secondary{display:none}.top-actions .button{min-height:39px;padding:0 13px;font-size:10px}.dashboard-content,.event-content{padding:18px 14px 36px}.hero-summary{min-height:190px;padding:27px}.hero-summary h2{font-size:29px}.hero-number{display:none}.summary-grid{grid-template-columns:repeat(3,1fr);gap:7px}.summary-grid article{display:flex;flex-direction:column;align-items:flex-start;min-height:90px;padding:14px}.summary-grid article b{order:-1;font-size:28px}.summary-grid article small{display:none}.summary-grid article>span{font-size:9px}.tournament-row{grid-template-columns:48px 1fr 61px 22px;padding:7px 10px}.participant-count{display:none}.tournament-info small{max-width:140px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.status-pill{min-width:54px;padding:4px 6px;font-size:8px}.event-banner{display:grid;gap:17px;padding:16px}.event-meta{flex-wrap:wrap;gap:8px}.event-meta>span:not(.status-pill){padding-left:8px}.event-progress{min-width:0}.event-progress>i{flex:1}.section-tabs{gap:0;overflow-x:auto}.section-tabs button{flex:1;min-width:86px;font-size:10px}.overview-columns,.groups-grid,.public-standings-grid,.match-card-grid,.public-match-grid{grid-template-columns:1fr}.console-toolbar small{display:none}.modal-backdrop{padding:0;align-items:end}.modal-panel{max-height:94vh;border-radius:15px 15px 0 0}.wizard-head,.score-dialog>header{padding:18px}.stepper{padding:12px 18px}.stepper b,.stepper li:after{display:none}.stepper li{justify-content:center}.wizard-body{min-height:360px;padding:22px 18px}.form-grid{grid-template-columns:1fr;gap:14px}.form-grid .span-2{grid-column:auto}.team-config-row{grid-template-columns:28px 1fr 80px 80px;gap:6px}.team-config-row label{grid-template-columns:1fr}.team-config-row label>span{display:none}.confirm-sheet{padding:24px}.confirm-metrics{grid-template-columns:1fr}.confirm-metrics div{padding:10px}.game-scores{padding:15px 18px}.game-scores>div{grid-template-columns:1fr 60px 15px 60px}.game-scores input{width:60px}.loading-bar{left:0}.public-header{height:60px;padding:0 16px}.refresh-button span{display:none}.public-hero{min-height:330px;padding:42px 20px 30px}.public-hero-copy h1{font-size:37px}.public-hero-copy>div{display:grid;gap:8px}.public-hero-stats{justify-content:space-between;gap:10px}.public-hero-stats b{font-size:28px}.public-tabs{padding:0}.public-tabs button{min-height:58px;gap:4px;font-size:10px}.public-tabs button small{display:none}.public-content{padding:33px 14px 55px}.public-section-head h2{font-size:25px}.public-section-head>span{display:none}.next-matches>div{grid-template-columns:1fr}.group-peek-grid{grid-template-columns:1fr 1fr}.group-peek-grid article:nth-child(n+5){display:none}.result-row{grid-template-columns:34px 1fr 45px 1fr;padding:0 10px}.public-bracket .bracket-wrap{padding:13px}.round-tabs{display:flex;overflow-x:auto;margin-bottom:14px;border-bottom:1px solid #dce2dc}.round-tabs button{flex:1;min-width:110px;padding:10px;border:0;border-bottom:2px solid transparent;background:none;font-size:10px}.round-tabs button.active{color:var(--green);border-color:var(--green)}.round-tabs small{display:block;margin-top:3px;color:#929d98;font-size:8px}.bracket{display:block;min-width:0;overflow:visible;padding:0}.bracket-round{display:none}.bracket-round.mobile-active{display:block}.bracket-round>header{display:none}.bracket-node:after{display:none}.round-matches{gap:10px}.public-footer{padding:24px 17px}.public-footer p{display:none}.public-landing{align-items:flex-start;padding:50px 25px}.public-landing h1{margin-top:65px;font-size:53px}.landing-court{right:-50%;top:35%;width:120%}}.player-chips{display:flex;flex-wrap:wrap;gap:7px 6px;min-width:210px;white-space:normal}.player-chips>span{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-width:60px;min-height:26px;overflow:hidden;padding:4px 7px 4px 10px;color:#293c35;border:1px solid #dfe6e0;border-radius:4px;background:#f8faf7;font-size:11px;font-weight:500;white-space:nowrap}.player-chips>span:before{position:absolute;inset:0 auto 0 0;width:3px;background:#aab7b1;content:""}.player-chips>span.gender-male:before{background:#7899aa}.player-chips>span.gender-female:before{background:#bb8891}.player-chips>span i{color:#6c7b75;font:700 10px/1 var(--num);font-style:normal}.player-chips>span.gender-male i{color:#46687a}.player-chips>span.gender-female i{color:#845860}.player-chips>em{color:#9a5148;font-size:11px;font-style:normal}.action-list>button:disabled{color:#9aa6a0;cursor:not-allowed;background:#f7f8f6}.action-list>button:disabled small{color:#9aa6a0}.config-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.config-card-head h4{margin:0}.tie-event-config>p{margin:8px 0 14px;color:#65766f;font-size:12px}.tie-event-list{display:grid;gap:7px}.tie-event-list>div{display:grid;grid-template-columns:28px minmax(120px,1fr) 150px 76px 32px;align-items:center;gap:7px}.tie-event-list>div>b{display:grid;place-items:center;width:25px;height:25px;color:var(--forest);border-radius:50%;background:var(--mint);font:800 10px var(--num)}.tie-event-list input,.tie-event-list select{min-width:0;height:36px;padding:0 9px;color:var(--ink);border:1px solid #cfd8d1;border-radius:3px;background:#fff;font-size:11px}.tie-event-list>div>span{color:#62736c;font-size:10px}.tie-event-list>div>button,.player-editor>div>button{display:grid;place-items:center;width:30px;height:30px;color:#9b4740;border:1px solid #ead8d5;border-radius:3px;background:#fff6f4;cursor:pointer}.tie-event-list>div>button:disabled{color:#b7bfbb;border-color:#e3e7e3;background:#f4f6f3;cursor:not-allowed}.team-roster-config{display:grid;gap:11px;max-height:430px;overflow:auto;padding-right:4px}.team-roster-config>article{overflow:hidden;border:1px solid #d9e1da;border-radius:4px;background:#fff}.team-roster-config>article>header{display:grid;grid-template-columns:32px minmax(130px,1fr) 105px 120px;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid #e6ebe6;background:#f5f8f3}.team-roster-config>article>header>div{display:grid;gap:3px}.team-roster-config>article>header b{color:var(--forest);font-size:13px}.team-roster-config>article>header small{color:#6b7b74;font-size:10px}.team-roster-config>article>header label{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:4px;color:#65766f;font-size:10px}.team-roster-config>article>header input,.team-roster-config>article>header select{min-width:0;width:100%;height:34px;padding:0 6px;border:1px solid #ced8d0;border-radius:3px;background:#fff;font-size:11px}.player-editor{display:grid;gap:6px;padding:10px 12px}.player-editor>div{display:grid;grid-template-columns:minmax(130px,1fr) 82px 100px 30px;gap:7px}.player-editor input,.player-editor select{min-width:0;height:34px;padding:0 8px;color:var(--ink);border:1px solid #d4dcd5;border-radius:3px;background:#fff;font-size:11px}.player-editor .add-player{justify-self:start;padding:5px 2px;color:var(--green);border:0;background:transparent;cursor:pointer;font-size:11px;font-weight:700}.rubber-preview{border-top:1px solid #e7ece7;background:#fbfcf9}.rubber-preview>div{display:grid;grid-template-columns:66px minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;min-height:32px;padding:5px 10px;border-bottom:1px solid #eef1ed}.rubber-preview>div:last-child{border-bottom:0}.rubber-preview span{color:#315148;font-size:10px;font-weight:700}.rubber-preview b{overflow:hidden;color:#687871;font-size:9px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.rubber-preview b:last-child{text-align:right}.rubber-preview i{color:#85621c;font:700 9px var(--num);font-style:normal;white-space:nowrap}.team-match-dialog{width:min(820px,100%)}.team-match-dialog>header,.rubber-score-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 26px 18px;border-bottom:1px solid #dce2db}.team-match-dialog h2,.rubber-score-dialog h2{margin:7px 0 4px;color:var(--forest);font-family:STZhongsong,serif;font-size:25px}.team-match-dialog header p,.rubber-score-dialog header p{margin:0;color:#697a73;font-size:11px}.team-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) 130px minmax(0,1fr);align-items:center;gap:18px;padding:22px 27px;color:#fff;background:linear-gradient(115deg,var(--deep),#0b4b39)}.team-scoreboard>div{display:grid;gap:5px}.team-scoreboard>div:last-child{text-align:right}.team-scoreboard small{color:#9eb8ae;font-size:10px}.team-scoreboard>div b{font-size:17px}.team-scoreboard>div.winner b{color:var(--mint)}.team-scoreboard>strong{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:9px;text-align:center}.team-scoreboard>strong span{color:var(--mint);font:800 34px var(--num)}.team-scoreboard>strong i{color:#7e9a8f;font-style:normal}.team-scoreboard>strong small{grid-column:1/-1}.rubber-list{display:grid;gap:9px;max-height:470px;padding:15px 20px;overflow:auto}.rubber-list>article{overflow:hidden;border:1px solid #dce3dd;border-radius:4px;background:#fff}.rubber-list>article>header{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #e7ece7;background:#f6f8f4}.rubber-list>article>header>span{display:grid;place-items:center;width:27px;height:27px;color:var(--forest);border-radius:50%;background:#e2eee0;font:800 10px var(--num)}.rubber-list>article.completed>header>span{background:var(--mint)}.rubber-list>article>header>div{display:grid;gap:2px}.rubber-list>article>header b{font-size:12px}.rubber-list>article>header small{color:#75857e;font-size:9px}.rubber-list>article>header em{margin-left:auto;color:#08704f;font-size:10px;font-style:normal;font-weight:700}.rubber-lineup{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;padding:10px 14px}.rubber-lineup p{display:grid;gap:3px;margin:0}.rubber-lineup p:last-child{text-align:right}.rubber-lineup p>span{color:#74847d;font-size:9px}.rubber-lineup p>b{font-size:12px}.rubber-lineup p.winner>b{color:#075b42}.rubber-lineup>i{color:#9aa6a0;font:800 9px var(--num);font-style:normal;text-align:center}.rubber-list>article>footer{display:flex;align-items:center;justify-content:space-between;min-height:39px;padding:5px 12px;border-top:1px solid #edf0ed;background:#fbfcfa}.rubber-list>article>footer>span{color:#5f7069;font:700 10px var(--num)}.rubber-list>article>footer button{display:inline-flex;align-items:center;gap:3px;padding:6px 8px;color:var(--green);border:1px solid #bed2c5;border-radius:3px;background:#f1f7ee;cursor:pointer;font-size:10px;font-weight:700}.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px;border-top:1px solid #dce2db}.dialog-actions>span{color:#64756e;font-size:11px}.rubber-score-dialog{width:min(720px,100%)}.lineup-editor{display:grid;grid-template-columns:1fr 36px 1fr;align-items:center;gap:11px;padding:17px 24px;border-bottom:1px solid #e0e6e0}.lineup-editor>i{color:#809088;font:800 10px var(--num);font-style:normal;text-align:center}.lineup-editor>section{display:grid;gap:8px}.lineup-editor section>header{display:grid;gap:3px}.lineup-editor section:last-child>header{text-align:right}.lineup-editor small{color:#7c8b85;font-size:9px}.lineup-editor b{color:var(--forest);font-size:13px}.lineup-editor label{display:grid;grid-template-columns:55px 1fr;align-items:center;gap:6px}.lineup-editor label>span{color:#63746d;font-size:10px}.lineup-editor select{min-width:0;height:38px;padding:0 8px;color:var(--ink);border:1px solid #ccd7cf;border-radius:3px;background:#fff;font-size:11px}.rubber-score-dialog .result-types{padding-top:16px}.rubber-game-scores{padding:14px 24px 17px;border-block:1px solid #e1e6e1;background:#fff}.rubber-game-scores>header,.rubber-game-scores>div{display:grid;grid-template-columns:1fr 90px 90px;align-items:center;gap:9px}.rubber-game-scores>header{padding-bottom:7px;color:#687871;font-size:10px;text-align:center}.rubber-game-scores>header span{text-align:left}.rubber-game-scores>div{min-height:45px;border-top:1px solid #edf0ed}.rubber-game-scores>div span{color:#596b64;font-size:11px}.rubber-game-scores input{width:90px;height:36px;border:1px solid #cfd9d1;border-radius:3px;text-align:center}.rubber-game-scores p{margin:10px 0 0;color:#65766f;font-size:10px}.rubber-winner-pick{display:grid;gap:9px;padding:18px 24px;border-block:1px solid #e1e6e1;background:#fff}.rubber-winner-pick>span{color:#65766f;font-size:11px}.rubber-winner-pick label{display:flex;align-items:center;gap:7px;font-size:12px}.rubber-score-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:16px 22px}@media(max-width:760px){.tie-event-list>div{grid-template-columns:25px minmax(95px,1fr) 105px 28px}.tie-event-list>div>span{display:none}.team-roster-config>article>header{grid-template-columns:27px 1fr 70px 78px;gap:6px}.team-roster-config>article>header label{grid-template-columns:1fr}.team-roster-config>article>header label>span{display:none}.player-editor>div{grid-template-columns:minmax(95px,1fr) 66px 72px 30px;gap:5px}.player-chips{min-width:190px}.team-scoreboard{grid-template-columns:1fr 86px 1fr;gap:8px;padding:18px 14px}.team-scoreboard>strong span{font-size:28px}.team-scoreboard>div b{font-size:13px}.rubber-list{padding:11px}.rubber-lineup{grid-template-columns:1fr 28px 1fr;padding-inline:10px}.rubber-list>article>footer{align-items:flex-start;gap:7px}.rubber-list>article>footer>span{padding-top:6px}.dialog-actions{align-items:flex-start}.dialog-actions>span{max-width:210px}.lineup-editor{grid-template-columns:1fr;padding:14px 18px}.lineup-editor>i{display:none}.lineup-editor section:last-child>header{text-align:left}.rubber-game-scores{padding-inline:18px}.rubber-game-scores>header,.rubber-game-scores>div{grid-template-columns:1fr 72px 72px}.rubber-game-scores input{width:72px}}.tie-button{margin-left:auto;padding:6px 9px;color:#8a6214;border:1px solid #ead18e;border-radius:3px;background:#fff8dc;cursor:pointer;font-size:9px;font-weight:700}body{font-size:15px}.field>span,.check-field>span{font-size:13px}.sidebar button{font-size:14px}.topbar h1{font-size:30px}.tournament-info b,.roster b{font-size:14px}.tournament-info small,.roster small,.event-meta,.console-toolbar small{font-size:12px}.section-tabs button{font-size:14px}.panel>header h3,.tournament-list>header h3{font-size:18px}.panel>header p,.tournament-list>header p{font-size:12px}.summary-grid article>span{font-size:13px}.match-card>header{font-size:10px}.match-side b{font-size:13px}.match-side>span{font-size:13px}.match-card>footer{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:30px;font-size:10px}.match-action{margin-left:auto;padding:5px 8px;color:#07563f;border:1px solid #b8d7c7;border-radius:3px;background:#eff8eb;cursor:pointer;font-size:10px;font-weight:800}.match-action:hover{color:#fff;border-color:var(--green);background:var(--green)}.roster>div{grid-template-columns:32px minmax(130px,1fr) minmax(120px,1fr) 42px 94px}.roster em{min-width:52px;padding:4px 6px;border-radius:20px;background:#fff3cf;text-align:center}.roster em.unassigned{color:#78837e;background:#edf0ed}.action-panel{padding-bottom:20px}.export-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 16px 0}.export-actions .button{min-height:39px;padding-inline:8px;font-size:11px}.fixture-section{display:grid;gap:16px}.fixture-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:25px 28px;color:#edf8f3;border-radius:5px;background:linear-gradient(115deg,var(--deep),var(--green))}.fixture-toolbar h2{margin:7px 0 6px;font-family:STZhongsong,serif;font-size:28px}.fixture-toolbar span{color:#a9c1b8;font-size:12px}.fixture-toolbar>div:last-child{display:flex;gap:8px}.fixture-group{overflow:hidden;border:1px solid #dce2dc;border-radius:5px;background:#fff}.fixture-group>header{display:flex;align-items:center;gap:15px;padding:18px 22px;border-bottom:1px solid #e2e7e2}.fixture-group>header>span{display:grid;place-items:center;width:42px;height:42px;color:var(--forest);background:var(--mint);font:800 21px var(--num)}.fixture-group h3{margin:0 0 5px;color:var(--forest);font-size:16px}.fixture-group small{color:#7f8d87;font-size:11px}.fixture-group .match-card-grid{padding:15px}.matrix-wrap{overflow-x:auto;padding:16px 18px 13px;border-bottom:1px solid #e2e7e2;background:#fcfdf9}.group-matrix{min-width:560px;border-collapse:collapse;font-size:11px;table-layout:fixed}.group-matrix caption{padding:0 0 11px;color:var(--forest);font-size:14px;font-weight:800;text-align:left}.group-matrix th,.group-matrix td{width:48px;height:39px;padding:0;border:1px solid #cdd8d0;text-align:center}.group-matrix thead th{color:#315146;background:#edf4ea;font:800 11px var(--num)}.group-matrix thead th:nth-child(2){width:118px;font-family:inherit}.group-matrix tbody>tr>th:first-child{color:#5b7067;background:#f4f7f2;font:800 11px var(--num)}.group-matrix tbody>tr>th:nth-child(2){width:118px;padding:0 8px;color:#1d3c31;background:#fff;text-align:left;font-size:11px}.group-matrix tbody>tr>th:nth-child(2) span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.group-matrix td.diagonal{position:relative;color:#a8b4ad;background:linear-gradient(to top right,transparent calc(50% - .5px),#b7c7bd 50%,transparent calc(50% + .5px))}.group-matrix td.unused{color:#c6d0c9;background:#f7f9f6}.group-matrix td.active{background:#eff8eb}.group-matrix td.active.winner{background:#dff4c8}.group-matrix td button{width:100%;height:100%;color:#0a5d44;border:0;background:transparent;cursor:pointer;font:800 11px var(--num)}.group-matrix td button:hover{color:#fff;background:var(--green)}.group-matrix td button:disabled{color:#55786b;cursor:default}.matrix-wrap>p{margin:10px 0 0;color:#7e8d86;font-size:10px}.matrix-wrap>p i{display:inline-block;width:8px;height:8px;margin-right:4px;border-radius:2px;background:#dff4c8}.group-matrix thead th:nth-last-child(-n+3),.group-matrix .matrix-stat,.group-matrix .matrix-rank{width:52px}.group-matrix .matrix-stat{color:#274f40;background:#f4f8f1;font:800 12px var(--num)}.group-matrix .matrix-stat.positive{color:#08714f;background:#e2f5d6}.group-matrix .matrix-stat.negative{color:#a13b34;background:#fff1ee}.group-matrix .matrix-rank{color:#073b2e;background:#dff4c8;font:900 13px var(--num)}.public-group-fixtures{padding:16px;border-top:1px solid #e3e7e3;background:#fafbf8}.public-group-fixtures h4{margin:0 0 11px;color:var(--forest);font-size:13px}.public-group-fixtures>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.public-group-fixtures .match-card>header{font-size:9px}.roster .roster-head{position:sticky;top:0;z-index:2;min-height:38px;color:#60736b;border-bottom:1px solid #dbe3dc;background:#f3f7f1;font-size:11px;font-weight:800}.roster .roster-head>span,.roster .roster-head>small,.roster .roster-head>i,.roster .roster-head>em{color:#60736b;font:800 10px var(--num);font-style:normal;letter-spacing:.04em}.roster .roster-head>b{color:#60736b;font-size:11px}.roster .roster-head>em{min-width:0;padding:0;border-radius:0;background:transparent;text-align:center}.progression-section{overflow:hidden;border:1px solid #dce2dc;border-radius:5px;background:#fff}.progression-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:27px 30px 22px;border-bottom:1px solid #e2e7e2}.progression-head h2{margin:7px 0 6px;color:var(--forest);font-family:STZhongsong,serif;font-size:29px}.progression-head>div:first-child>span{color:#77857f;font-size:12px}.progression-legend{display:flex;align-items:center;gap:8px;color:#64746d;font-size:11px;white-space:nowrap}.progression-legend b{color:var(--green);font-size:20px}.group-dot{width:9px;height:9px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px #ecf6e7}.progression-canvas{display:grid;grid-template-columns:minmax(270px,.68fr) 70px minmax(530px,1.32fr);min-height:420px;padding:24px;background:linear-gradient(90deg,#fafcf8,#fafcf8 34%,#fff 34%)}.qualification-sources,.knockout-route{min-width:0}.qualification-sources>header,.knockout-route>header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.qualification-sources>header>span,.knockout-route>header>span{color:#b3beb8;font:800 24px var(--num)}.qualification-sources>header div,.knockout-route>header div{display:grid;gap:2px}.qualification-sources>header b,.knockout-route>header b{color:var(--forest);font-size:13px}.qualification-sources>header small,.knockout-route>header small{color:#89958f;font-size:10px}.source-groups{display:grid;gap:10px}.source-group{overflow:hidden;border:1px solid #d9e3da;border-radius:4px;background:#fff}.source-group>header{display:flex;align-items:center;gap:9px;padding:9px 11px;color:var(--forest);background:#f1f7ed;font-size:12px}.source-group>header>span{display:grid;place-items:center;width:25px;height:25px;background:var(--mint);font:800 13px var(--num)}.source-group>header b{font-size:12px}.source-group ol{display:grid;gap:1px;margin:0;padding:0;list-style:none;background:#edf1ed}.source-group li{display:grid;grid-template-columns:22px 1fr auto;align-items:center;min-height:35px;gap:8px;padding:0 10px;background:#fff}.source-group li em{display:grid;place-items:center;width:19px;height:19px;color:#547168;border-radius:50%;background:#e9f1e9;font:800 10px var(--num);font-style:normal}.source-group li b{overflow:hidden;color:#1b322b;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.source-group li small{color:#8c9792;font-size:9px}.progression-arrow{position:relative;display:grid;place-items:center;align-content:center;gap:6px;color:#739085}.progression-arrow:before{content:"";position:absolute;top:10%;bottom:10%;left:50%;border-left:1px dashed #c9d7ce}.progression-arrow span,.progression-arrow i{z-index:1;background:#fff}.progression-arrow span{padding:3px 5px;font-size:9px}.progression-arrow i{padding:0 4px;color:var(--green);font-size:35px;font-style:normal}.knockout-route{padding-left:4px}.knockout-route .bracket-wrap{min-height:310px}.knockout-route .bracket{min-width:0;grid-template-columns:repeat(var(--rounds),minmax(185px,1fr));gap:24px}.knockout-only{padding:24px}.knockout-only>p{color:#718079;font-size:13px}.signature-bracket{position:relative;min-height:calc(var(--slots) * 60px + 56px);overflow:auto;padding-bottom:20px;background-image:linear-gradient(#f2f6f2 1px,transparent 1px),linear-gradient(90deg,#f2f6f2 1px,transparent 1px);background-size:100% 30px,36px 100%}.signature-bracket .bracket-round{min-height:calc(var(--slots) * 60px)}.signature-bracket .round-matches{display:grid;grid-template-rows:repeat(var(--slots),minmax(30px,1fr));min-height:calc(var(--slots) * 60px);gap:0}.signature-bracket .bracket-node{display:flex;align-items:center;min-height:0}.signature-bracket .bracket-node .match-card{width:100%}.signature-bracket .bracket-round:not(:last-child) .bracket-node:after{width:24px;border-color:#789488}.signature-bracket .bracket-round:not(:first-child) .bracket-node{position:relative}.signature-bracket .bracket-round:not(:first-child) .bracket-node:before{content:"";position:absolute;left:-24px;width:24px;height:50%;border-top:1px solid #789488;border-left:1px solid #789488;transform:translateY(-50%)}.signature-bracket .bracket-round:last-child .bracket-node .match-card{border:2px solid #8db747;box-shadow:0 0 0 4px #c9f36a2e}.app-icon{display:block;flex:none}.icon-button{display:grid;place-items:center}.admin-shell{color:#1b2b26;font-size:14px}.admin-shell .eyebrow{font-size:10px;opacity:.82}.admin-shell .button{gap:8px;font-size:13px;font-weight:650;transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.admin-shell .button:hover{transform:none}.admin-shell .sidebar button{font-size:13px;font-weight:500}.admin-shell .nav-icon{display:grid;place-items:center;width:20px}.admin-shell .topbar{position:sticky;top:0;z-index:14;min-height:88px;padding-block:17px}.admin-shell .topbar h1{font-size:27px}.dashboard-content,.event-content{padding-top:25px}.hero-summary{min-height:178px;padding:30px 38px}.hero-summary h2{margin-top:8px;font-size:32px}.hero-number b{font-size:58px}.summary-grid article{min-height:96px;padding:18px 21px}.summary-grid article>span{font-size:12px;font-weight:600}.summary-grid article b{font-size:36px}.panel>header,.tournament-list>header{padding:18px 21px}.panel>header h3,.tournament-list>header h3{font-size:17px;font-weight:700}.panel>header p,.tournament-list>header p{color:#66766f;font-size:12px}.list-toolbar{display:flex;align-items:center;gap:8px}.search-control{display:flex;align-items:center;gap:8px;min-width:230px;min-height:40px;padding:0 11px;color:#60726a;border:1px solid #cfd8d1;border-radius:4px;background:#fff}.search-control:focus-within{color:var(--green);border-color:var(--green);box-shadow:0 0 0 3px #0d5a4314}.search-control input{min-width:0;width:100%;padding:0;color:var(--ink);border:0;outline:0;background:transparent;font-size:12px}.list-toolbar select,.filter-field select{min-height:40px;padding:0 30px 0 10px;color:#344841;border:1px solid #cfd8d1;border-radius:4px;background-color:#fff;font-size:12px}.tournament-row{min-height:72px;transition:background-color .2s ease}.tournament-info b{font-size:14px;font-weight:650}.tournament-info small{color:#66766f;font-size:12px}.date-block small{font-size:11px}.status-pill{font-size:11px;font-weight:650}.event-banner{min-height:82px;padding:17px 22px}.event-meta{color:#5f7069;font-size:12px}.event-progress span{font-size:11px}.section-tabs{gap:7px;margin:18px 0 15px;padding:4px;overflow-x:auto;border:1px solid #d7ddd7;border-radius:5px;background:#ffffffb8}.section-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:1;min-width:max-content;min-height:40px;padding:0 13px;border:0;border-radius:3px;color:#52645d;font-size:12px;font-weight:600;white-space:nowrap}.section-tabs button:hover{color:var(--forest);background:#f0f4ef}.section-tabs button.active{color:#fff;border:0;background:var(--green)}.section-tabs button b{display:inline-grid;place-items:center;min-width:21px;height:20px;padding:0 5px;color:#52645d;border-radius:10px;background:#e5ebe5;font:700 10px var(--num)}.section-tabs button.active b{color:var(--forest);background:var(--mint)}.overview-columns{grid-template-columns:minmax(0,1fr) 330px;gap:14px}.header-count{color:#586a63;font-size:12px;font-weight:600}.roster-table-wrap{max-height:456px;overflow:auto}.roster-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.roster-table thead{position:sticky;top:0;z-index:2}.roster-table th{height:40px;padding:0 14px;color:#566a62;border-bottom:1px solid #d9e2db;background:#f2f6f1;font-size:12px;font-weight:650;text-align:left}.roster-table th:first-child,.roster-table td:first-child{width:60px;text-align:center}.roster-table th:nth-child(5),.roster-table th:nth-child(6),.roster-table td:nth-child(5),.roster-table td:nth-child(6){width:82px;text-align:center}.roster-table td{height:49px;padding:8px 14px;color:#5d6e67;border:0;border-bottom:1px solid #edf1ed;text-align:left;white-space:nowrap}.roster-table tbody tr:hover td{background:#fafcf8}.roster-table td:first-child{color:#89968f;font:600 11px var(--num)}.roster-table td b{color:var(--forest);font-size:13px;font-weight:650}.seed-badge,.group-badge{display:inline-flex;align-items:center;justify-content:center;min-width:37px;padding:4px 7px;border-radius:20px;font:700 10px var(--num);font-style:normal}.seed-badge{color:#075c43;background:#e3f4dc}.group-badge{color:#72581b;background:#fff1c9}.group-badge.unassigned{color:#65736e;background:#e9eeea}.action-panel{padding-bottom:16px}.action-primary-wrap{padding:15px 15px 7px}.action-primary{display:grid;grid-template-columns:38px 1fr 18px;align-items:center;gap:11px;width:100%;min-height:76px;padding:13px 14px;color:#effbe8;border:1px solid var(--forest);border-radius:5px;background:var(--forest);cursor:pointer;text-align:left;transition:background-color .2s ease,box-shadow .2s ease}.action-primary:hover{background:#0b4a39;box-shadow:0 9px 24px #073b2e1f}.action-primary>span,.action-complete>span{display:grid;place-items:center;width:38px;height:38px;color:var(--forest);border-radius:50%;background:var(--mint)}.action-primary>div,.action-complete>div{display:grid;gap:4px;min-width:0}.action-primary b,.action-complete b{font-size:13px}.action-primary small{color:#b7cbc4;font-size:12px}.action-complete{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:11px;min-height:70px;padding:12px 14px;color:#40534b;border:1px solid #dbe3dc;border-radius:5px;background:#f7faf5}.action-complete>span{color:#507161;background:#e4eee3}.action-complete small{color:#71817a;font-size:11px}.action-list{margin:5px 15px 0;border-top:1px solid #e4e9e4}.action-list>button{display:grid;grid-template-columns:20px 1fr 16px;align-items:center;gap:10px;width:100%;min-height:58px;padding:9px 4px;color:#315146;border:0;border-bottom:1px solid #edf0ed;background:transparent;cursor:pointer;text-align:left}.action-list>button:hover{color:var(--green);background:#fafcf8}.action-list>button>span{display:grid;gap:3px}.action-list b{font-size:13px;font-weight:650}.action-list small{color:#65766f;font-size:12px}.export-actions{padding-top:12px}.export-actions .button{min-height:38px;font-size:11px}.groups-grid{gap:14px}.standings-card>header{padding:16px 19px}.standings-card h3{font-size:15px}.standings-card small{color:#65766f;font-size:11px}.standings-card table{font-size:12px}.standings-card th{font-size:11px;font-weight:650}.standings-card td{padding-block:11px}.tie-button{min-height:34px;padding:0 11px;font-size:11px}.fixture-toolbar{padding:21px 24px}.fixture-toolbar h2{font-size:25px}.fixture-toolbar .eyebrow{color:#b7cec5}.fixture-toolbar span{font-size:12px}.match-card-grid{gap:10px}.match-card{transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.match-card.clickable:hover{transform:none;box-shadow:0 7px 18px #0f3a2c12}.match-card>header{padding:9px 12px;color:#66766f;font-size:11px}.match-side b,.match-side>span{font-size:12px}.match-card>footer{font-size:11px}.match-action{display:inline-flex;align-items:center;gap:3px;min-height:30px;font-size:11px;font-weight:650}.console-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:13px}.console-head h2{margin:0 0 5px;color:var(--forest);font-family:STZhongsong,serif;font-size:25px}.console-head p{margin:0;color:#62736c;font-size:12px}.console-head>span{color:#74837d;font-size:12px;white-space:nowrap}.console-head>span b{color:var(--forest);font:800 22px var(--num)}.console-filterbar{display:grid;grid-template-columns:auto minmax(190px,1fr) auto auto auto;align-items:end;gap:9px;margin-bottom:13px;padding:11px;border:1px solid #d8dfd9;border-radius:5px;background:#fff}.status-segment{display:flex;align-items:center;min-height:40px;padding:3px;border:1px solid #d5ddd6;border-radius:4px;background:#f5f7f3}.status-segment button{min-height:32px;padding:0 13px;border:0;border-radius:3px;background:transparent;cursor:pointer;font-size:11px;font-weight:600}.status-segment button.active{color:#fff;background:var(--green)}.match-search{min-width:0}.filter-field{display:grid;gap:5px}.filter-field>span{color:#66766f;font-size:10px;font-weight:600}.filter-field select{min-width:94px}.ranking-dialog{width:min(620px,100%)}.ranking-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;padding:23px 26px 19px;border-bottom:1px solid #dce2db}.ranking-dialog h2{margin:7px 0 5px;color:var(--forest);font-family:STZhongsong,serif;font-size:24px}.ranking-dialog header p{margin:0;color:#65766f;font-size:12px}.ranking-list{display:grid;gap:7px;max-height:420px;margin:0;padding:17px 22px;overflow:auto;list-style:none}.ranking-list li{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;min-height:61px;padding:8px 10px;border:1px solid #dfe5df;border-radius:4px;background:#fff}.ranking-list li>strong{display:grid;place-items:center;width:30px;height:30px;color:var(--forest);border-radius:50%;background:var(--mint);font:800 13px var(--num)}.ranking-list li>div:nth-child(2){display:grid;gap:4px;min-width:0}.ranking-list b{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.ranking-list span{color:#6a7a73;font-size:11px}.rank-move-actions{display:flex;gap:5px}.rank-move-actions button{display:grid;place-items:center;width:34px;height:34px;color:var(--green);border:1px solid #ccd8d0;border-radius:4px;background:#f8faf6;cursor:pointer}.rank-move-actions button:hover:not(:disabled){color:#fff;border-color:var(--green);background:var(--green)}.rank-move-actions button:disabled{color:#b8c1bc;cursor:not-allowed}.ranking-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:16px 22px;border-top:1px solid #dce2db}.score-dialog>header p{margin:5px 0 0;color:#697a73;font-size:11px}.score-dialog .versus{background:#f4f7f2}.result-types span{min-height:40px;font-size:11px}.game-scores span{font-size:12px}.game-scores p{color:#65766f;font-size:11px}.dialog-error{margin:0;padding:11px 30px;color:#8e2525;border-top:1px solid #f0d7d2;background:#fff0ed;font-size:12px}.toast{font-size:12px}.admin-shell .stepper li{font-size:11px}.admin-shell .stepper span{font-size:10px}.admin-shell .section-intro p{color:#65766f;font-size:12px}.admin-shell .parsed-strip span{font-size:11px}.admin-shell .parsed-strip b,.admin-shell .parsed-strip i{font-size:10px}.admin-shell .config-card h4{font-size:13px}.admin-shell .team-config-row b{font-size:12px}.admin-shell .team-config-row label{font-size:10px}.admin-shell .team-config-row input,.admin-shell .team-config-row select{font-size:11px}.admin-shell .confirm-metrics span,.admin-shell .confirm-sheet>p{font-size:11px}@media(max-width:760px){body{font-size:16px}.sidebar button,.section-tabs button{font-size:11px}.roster>div{grid-template-columns:26px minmax(110px,1fr) 40px 68px;gap:5px;padding:0 12px}.roster small{display:none}.roster em{min-width:0;font-size:9px}.fixture-toolbar{display:grid;padding:21px 18px}.fixture-toolbar h2{font-size:25px}.fixture-toolbar>div:last-child{display:grid;grid-template-columns:1fr 1fr}.fixture-group>header{padding:15px}.fixture-group .match-card-grid{padding:10px}.export-actions{grid-template-columns:1fr}.public-group-fixtures>div{grid-template-columns:1fr}.roster .roster-head>small{display:none}.roster .roster-head{font-size:9px}.progression-head{display:grid;padding:20px 17px}.progression-head h2{font-size:25px}.progression-legend{font-size:10px}.progression-canvas{display:grid;grid-template-columns:1fr;gap:17px;padding:15px;background:#fff}.progression-arrow{display:flex;min-height:32px}.progression-arrow:before{top:50%;right:0;bottom:auto;left:0;border-top:1px dashed #c9d7ce;border-left:0}.progression-arrow span{margin-left:auto}.progression-arrow i{font-size:28px}.knockout-route{padding-left:0}.knockout-route .bracket{min-width:0}.matrix-wrap{padding:13px 10px}.group-matrix{min-width:480px}.group-matrix th,.group-matrix td{width:41px;height:36px}.group-matrix thead th:nth-child(2),.group-matrix tbody>tr>th:nth-child(2){width:100px}.signature-bracket{min-height:0;background:none}.signature-bracket .bracket-round{min-height:0}.signature-bracket .round-matches{display:flex;min-height:0}.signature-bracket .bracket-node:before,.signature-bracket .bracket-node:after{display:none}}@media print{.sidebar,.topbar,.event-banner,.event-lifecycle,.warning-banner,.section-tabs,.loading-bar,.toast,.modal-backdrop{display:none!important}.admin-main{margin:0!important}.event-content{width:100%;padding:0!important}.event-content>:not(.fixture-section):not(.bracket-panel){display:none!important}.fixture-toolbar{color:#111;background:#fff;border:0;padding:0 0 16px}.fixture-toolbar>div:last-child,.match-action{display:none!important}.fixture-group{break-inside:avoid;margin-bottom:16px;border-color:#999}.fixture-group .match-card-grid{grid-template-columns:repeat(3,1fr)}.match-card{break-inside:avoid}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:1100px){.console-filterbar{grid-template-columns:auto minmax(180px,1fr) repeat(3,auto)}.status-segment{grid-column:span 2;width:fit-content}.overview-columns{grid-template-columns:minmax(0,1fr) 300px}}@media(max-width:760px){.admin-shell{font-size:14px}.admin-shell .topbar{min-height:76px}.dashboard-content,.event-content{padding-top:14px}.hero-summary{min-height:160px;padding:24px}.tournament-list>header{display:grid;gap:13px}.list-toolbar{display:grid;grid-template-columns:1fr 112px;width:100%}.search-control{min-width:0}.section-tabs{gap:4px;margin-block:14px}.section-tabs button{flex:none;min-width:84px;min-height:39px;padding-inline:10px;font-size:11px}.section-tabs button b{min-width:19px;height:18px;font-size:9px}.overview-columns{grid-template-columns:1fr}.roster-table{min-width:650px}.roster-table th,.roster-table td{padding-inline:11px}.action-primary-wrap{padding:12px 12px 5px}.action-list{margin-inline:12px}.export-actions{padding-inline:12px}.console-head{align-items:start}.console-head h2{font-size:23px}.console-filterbar{grid-template-columns:1fr 1fr;align-items:end}.status-segment,.match-search{grid-column:1 / -1;width:100%}.status-segment button{flex:1}.filter-field:last-child{grid-column:1 / -1}.filter-field select{width:100%}.ranking-dialog>header{padding:19px 18px 16px}.ranking-list{padding:13px}.ranking-list li{grid-template-columns:31px minmax(0,1fr) auto;gap:7px}.ranking-list span{white-space:normal}.ranking-dialog>footer{padding:14px}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.stepper-mobile-status{display:none}.wizard .field>span,.wizard .check-field>span{color:#53655d;font-size:13px;font-weight:600}.wizard .section-intro p,.wizard .config-card-head p,.wizard .stage-rule-section header p{color:#65766f;font-size:13px;line-height:1.55}.wizard .field input,.wizard .field select,.wizard .input-prefix{height:42px}.wizard input[aria-invalid=true],.wizard select[aria-invalid=true],.wizard textarea[aria-invalid=true],.wizard .input-prefix.invalid{border-color:#c64b43;box-shadow:0 0 0 3px #c64b4314}.field-error{display:block;color:#a43b35;font-size:12px;font-weight:500;line-height:1.35}.field-error.standalone{margin-top:8px}.wizard-body{padding:24px 28px}.template-import-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:13px 15px;border:1px solid #d6dfd7;border-radius:4px;background:#f2f6f1}.template-import-bar>div:first-child{display:grid;gap:4px;min-width:0}.template-import-bar b{color:var(--forest);font-size:13px;font-weight:650}.template-import-bar span{overflow:hidden;color:#61736b;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.template-import-actions{display:flex;align-items:center;gap:7px;flex:none}.template-import-actions .button{gap:6px;padding-inline:11px;font-weight:600}.manual-import-label{display:flex;align-items:baseline;gap:9px;margin:0 0 7px}.manual-import-label b{color:#52655d;font-size:13px;font-weight:600}.manual-import-label span{color:#71817a;font-size:12px}.stage-config-panel{margin-bottom:12px;overflow:hidden;border:1px solid #d8e0d9;border-radius:4px;background:#fff}.stage-rule-section{padding:15px 18px 17px}.stage-rule-section+.stage-rule-section{border-top:1px solid #e4e9e4}.stage-rule-section>header{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px}.stage-rule-section>header>span{flex:none;padding-top:2px;color:#658078;font:700 11px var(--num)}.stage-rule-section h4{margin:0 0 2px;color:var(--ink);font-size:13px;font-weight:650}.stage-rule-section header p{margin:0}.stage-rule-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;gap:10px}.stage-rule-grid.knockout{grid-template-columns:1.35fr 1fr 1fr 1fr}.compact-check{min-height:42px;padding-top:24px;white-space:nowrap}.compact-check input{flex:none}.tie-event-config{padding:0;overflow:hidden}.tie-event-config .config-card-head{padding:14px 18px 12px}.tie-event-config .config-card-head>div{min-width:0}.tie-event-config .config-card-head h4{margin:0 0 2px;font-weight:650}.tie-event-config .config-card-head p{margin:0}.tie-event-table-wrap{overflow-x:auto;border-top:1px solid #e1e7e1}.tie-event-table-wrap.invalid{border-top-color:#d7aaa6}.tie-event-table{width:100%;min-width:650px;border-collapse:collapse;table-layout:fixed}.tie-event-table th{height:34px;padding:0 8px;color:#60726a;border-bottom:1px solid #dce4dd;background:#f2f6f1;font-size:12px;font-weight:600;text-align:left}.tie-event-table th:first-child,.tie-event-table td:first-child{width:56px;text-align:center}.tie-event-table th:nth-child(3),.tie-event-table td:nth-child(3){width:160px}.tie-event-table th:nth-child(4),.tie-event-table td:nth-child(4){width:92px}.tie-event-table th:last-child,.tie-event-table td:last-child{width:54px;text-align:center}.tie-event-table td{min-height:48px;padding:6px 8px;border-bottom:1px solid #edf1ed;vertical-align:top}.tie-event-table tbody tr:last-child td{border-bottom:0}.tie-event-table tbody tr:hover td{background:#fbfcf9}.tie-event-table td:first-child b{display:inline-grid;place-items:center;width:27px;height:27px;color:var(--forest);border-radius:50%;background:var(--mint);font:750 10px var(--num)}.tie-event-table input,.tie-event-table select{width:100%;min-width:0;height:36px;padding:0 9px;color:var(--ink);border:1px solid #cfd8d1;border-radius:3px;background:#fff;font-size:12px}.tie-event-table td>span{display:inline-flex;align-items:center;min-height:36px;color:#566a62;font-size:12px}.tie-event-table td>button,.player-editor>div>button{display:inline-grid;place-items:center;width:38px;height:38px;padding:0;color:#9b4740;border:1px solid #e7d0cd;border-radius:4px;background:#fff6f4;cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.tie-event-table td>button:hover:not(:disabled),.player-editor>div>button:hover{color:#fff;border-color:#a94740;background:#a94740}.tie-event-table td>button:disabled{color:#aeb8b3;border-color:#e1e6e1;background:#f4f6f3;cursor:not-allowed}.tie-event-config>.field-error{margin:0;padding:9px 18px;border-top:1px solid #f0d4d1;background:#fff4f2}.player-editor>div{grid-template-columns:minmax(130px,1fr) 82px 100px 38px;align-items:start}.player-name-field{display:grid;gap:3px}.team-roster-config>article>header label .field-error{grid-column:1 / -1}.event-lifecycle{display:grid;gap:9px;margin-top:11px;padding:11px;border:1px solid #d9e1da;border-radius:5px;background:#fff}.lifecycle-track{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;overflow:hidden;border-radius:3px;background:#dfe5df}.lifecycle-track>div{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 13px;color:#7a8781;background:#f4f6f2}.lifecycle-track>div>span{display:grid;place-items:center;flex:none;width:23px;height:23px;border:1px solid #cbd4cc;border-radius:50%;font:700 10px var(--num)}.lifecycle-track>div>b{font-size:12px;font-weight:600}.lifecycle-track>div.done{color:#315c4d;background:#e9f2e5}.lifecycle-track>div.done>span{border-color:#a9c49f;background:#d7eacb}.lifecycle-track>div.active{color:#fff;background:var(--green)}.lifecycle-track>div.active>span{color:var(--deep);border-color:var(--mint);background:var(--mint)}.event-lifecycle>p{margin:0;color:#5d6f67;font-size:12px;line-height:1.5}.section-tabs button.locked,.section-tabs button:disabled{color:#8a9690;background:#f0f2ef;cursor:not-allowed}.section-tabs button.locked:hover,.section-tabs button:disabled:hover{color:#8a9690;background:#f0f2ef}.section-tabs button.locked .app-icon{color:#9ba59f}.rubber-section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 20px 10px}.rubber-section-head>div{display:grid;gap:3px}.rubber-section-head b{color:var(--forest);font-size:14px;font-weight:650}.rubber-section-head span{color:#64766e;font-size:12px}.rubber-section-head em{flex:none;padding:4px 8px;color:#496158;border-radius:20px;background:#e7eee7;font:700 11px var(--num);font-style:normal}.rubber-access-notice{display:flex;align-items:center;gap:9px;margin:0 20px 2px;padding:10px 12px;color:#725917;border-left:3px solid #d7aa39;background:#fff6d9;font-size:12px;line-height:1.45}.rubber-list>article>footer button{min-height:38px;padding:0 12px;font-size:12px;font-weight:650}.rubber-list>article>footer button:hover:not(:disabled){color:#fff;border-color:var(--green);background:var(--green)}.rubber-list>article>footer button:disabled{color:#7b8983;border-color:#d8dfd9;background:#f0f3ef;cursor:not-allowed}.rubber-list>article>header>em{display:grid;grid-template-columns:auto auto;align-items:center;gap:6px;padding:5px 9px;color:#075c43;border-radius:20px;background:#dff2d7;font-size:12px;font-weight:700}.rubber-list>article>header>em small{color:#597067;font-size:9px;font-weight:600}.rubber-lineup{min-height:59px;padding:12px 14px}.rubber-lineup p>span{color:#657870;font-size:11px}.rubber-lineup p>b{color:#243b33;font-size:14px}.rubber-list>article>footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-height:72px;padding:9px 12px}.rubber-result-score{display:flex;align-items:center;gap:15px;min-width:0}.rubber-game-total{display:grid;flex:none;gap:2px;min-width:66px;padding-right:14px;border-right:1px solid #dce4dd}.rubber-game-total>span,.rubber-result-empty>span{color:#687970;font-size:10px;font-weight:600}.rubber-game-total>strong{display:flex;align-items:baseline;gap:6px;color:var(--forest)}.rubber-game-total>strong b{font:800 25px/1 var(--num)}.rubber-game-total>strong i{color:#8a9892;font-style:normal}.rubber-game-breakdown{display:flex;align-items:center;gap:7px;min-width:0;overflow-x:auto}.rubber-game-breakdown>span{display:grid;flex:none;gap:2px;min-width:58px;padding:5px 8px;border:1px solid #dce3dd;border-radius:3px;background:#fff}.rubber-game-breakdown small{color:#73827c;font-size:9px}.rubber-game-breakdown b{color:#203b32;font:750 15px var(--num)}.rubber-game-breakdown b i{padding-inline:3px;color:#91a099;font-style:normal}.rubber-result-empty{display:grid;gap:4px}.rubber-result-empty>b{color:#60726a;font-size:13px;font-weight:600}.rubber-preview i{padding:3px 6px;color:#594510;border-radius:3px;background:#fff0bd;font-size:11px}@media(max-width:760px){.wizard .stepper{display:none}.stepper-mobile-status{display:flex;align-items:center;gap:9px;margin:0;padding:11px 18px;color:#52655d;border-bottom:1px solid #dce3dc;background:#f3f6f1;font-size:13px}.stepper-mobile-status b{color:var(--forest);font:750 11px var(--num)}.stepper-mobile-status span{font-weight:600}.wizard-body{padding:18px}.wizard .field input,.wizard .field select,.wizard .input-prefix{height:44px}.template-import-bar{display:grid;gap:11px;padding:12px}.template-import-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.template-import-actions .button{min-height:42px}.template-import-actions .button:last-of-type{grid-column:1 / -1}.manual-import-label{display:grid;gap:3px}.wizard .section-intro p,.wizard .config-card-head p,.wizard .stage-rule-section header p{font-size:12px}.stage-rule-section{padding:14px}.stage-rule-grid,.stage-rule-grid.knockout{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-check{padding-top:24px}.tie-event-config .config-card-head{align-items:flex-start;padding:13px 14px 11px}.tie-event-config .config-card-head .button{flex:none}.tie-event-table{min-width:590px}.tie-event-table input,.tie-event-table select{height:44px}.tie-event-table td>button,.player-editor>div>button{width:44px;height:44px}.player-editor>div{grid-template-columns:minmax(105px,1fr) 68px 76px 44px;align-items:start}.event-lifecycle{padding:8px}.lifecycle-track{min-width:480px}.event-lifecycle{overflow-x:auto}.event-lifecycle>p{position:sticky;left:0;min-width:calc(100vw - 46px)}.rubber-section-head{align-items:flex-start;padding:13px 14px 9px}.rubber-section-head span{font-size:11px}.rubber-access-notice{margin-inline:14px}.rubber-list>article>footer button{min-height:44px;padding-inline:10px}.rubber-list>article>footer{grid-template-columns:1fr;gap:10px}.rubber-list>article>footer button{width:100%;justify-content:center}.rubber-result-score{align-items:stretch;gap:10px}.rubber-game-total{min-width:57px;padding-right:10px}.rubber-game-total>strong b{font-size:22px}}@media(max-width:420px){.stage-rule-grid,.stage-rule-grid.knockout{grid-template-columns:1fr 1fr}.tie-event-config .config-card-head{display:grid}.tie-event-config .config-card-head .button{justify-self:start}}.public-page{font-size:15px}.public-page .eyebrow,.public-page .live-status,.public-page .refresh-button{font-size:12px}.public-page .public-hero-copy>div{font-size:13px}.public-page .public-hero-stats span{font-size:11px}.public-page .public-tabs button{font-size:14px;font-weight:650}.public-page .public-tabs button small{font-size:10px}.public-page .public-section-head>span,.public-page .public-section-head button{font-size:12px}.public-page .next-matches h3,.public-page .recent-results h3{font-size:15px}.public-page .next-matches header span,.public-page .recent-results header span{font-size:11px}.public-page .result-row{min-height:56px;font-size:12px}.public-page .result-row strong{font-size:16px}.public-page .group-peek-grid header b{font-size:13px}.public-page .group-peek-grid header small{font-size:11px}.public-page .group-peek-grid li{min-height:42px;font-size:12px}.public-page .group-peek-grid li span,.public-page .group-peek-grid li em{font-size:11px}.public-page .public-standings-grid>article>header h3{font-size:16px}.public-page .public-standings-grid>article>header small{font-size:12px}.public-page .public-standings-grid table{font-size:13px}.public-page .public-standings-grid th{font-size:11px}.public-page .public-standings-grid td:nth-child(2) small{font-size:11px}.public-page .public-group-fixtures h4{font-size:15px}.public-page .match-card>header{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 11px;font-size:12px;letter-spacing:.02em}.public-page .match-card>header>.match-group-label{display:inline-flex;align-items:center;width:auto;height:auto;min-height:25px;padding:3px 8px;color:#075b42;border-radius:3px;background:#dff4c8;font:750 12px/1 var(--num);white-space:nowrap}.public-page .match-card>header>.match-round-label{display:block;width:auto;height:auto;min-width:0;color:#4f625a;background:transparent;font:700 12px/1.2 var(--num);white-space:nowrap}.public-page .match-card>header>.match-status-label{flex:none;margin-left:auto;font-size:11px;letter-spacing:0}.public-page .match-side{min-height:48px;padding:9px 12px}.public-page .match-side b,.public-page .match-side>span{font-size:13px}.public-page .rubber-preview>div{min-height:38px;padding:7px 10px}.public-page .rubber-preview span{font-size:12px}.public-page .rubber-preview b,.public-page .rubber-preview i{font-size:11px}.public-page .schedule-round>header span{font-size:14px}.public-page .schedule-round>header small{font-size:11px}.public-page .public-footer{font-size:11px}@media(max-width:760px){.public-page .public-tabs button{font-size:12px}.public-page .public-section-head h2{font-size:27px}.public-page .group-peek-grid{grid-template-columns:1fr}.public-page .public-group-fixtures .match-card>header{font-size:12px}.public-page .round-tabs button{font-size:12px}.public-page .round-tabs small{font-size:10px}}.qr-dialog{width:min(920px,100%)}.qr-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 28px 20px;border-bottom:1px solid var(--line);background:#fff}.qr-dialog>header p{margin-bottom:8px}.qr-dialog>header h2{margin-bottom:5px;color:var(--forest);font-family:STZhongsong,serif;font-size:25px}.qr-dialog>header span{color:#65766f;font-size:13px}.qr-mode-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;padding:12px 28px;border-bottom:1px solid var(--line);background:#e2e7e1}.qr-mode-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:8px 14px;color:#687872;border:0;background:#f5f7f3;cursor:pointer;transition:color .18s ease,background-color .18s ease}.qr-mode-tabs button:hover{color:var(--forest);background:#fff}.qr-mode-tabs button.active{color:#082d23;background:var(--mint)}.qr-mode-tabs button>span{display:grid;gap:2px;text-align:left}.qr-mode-tabs b{font-size:13px}.qr-mode-tabs small{font-size:10px;font-weight:500;opacity:.75}.qr-dialog-body{display:grid;grid-template-columns:330px minmax(0,1fr);min-height:410px}.qr-preview-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:30px;color:#a9c0b7;background:var(--deep)}.qr-image-wrap{display:grid;place-items:center;width:260px;aspect-ratio:1;padding:13px;border-radius:5px;background:#fff;box-shadow:0 18px 44px #00000038}.qr-image-wrap img{display:block;width:100%;height:100%}.qr-scan-hint{display:flex;align-items:center;gap:8px;font-size:12px}.qr-scan-hint i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px #c9f36a1a}.qr-config-panel{display:flex;flex-direction:column;gap:17px;padding:30px 32px;background:#fbfcf8}.qr-config-panel h3{margin:9px 0 7px;color:var(--forest);font-size:21px}.qr-config-panel p{margin:0;color:#5d6e67;font-size:13px;line-height:1.65}.qr-access-badge{display:inline-flex;padding:4px 8px;color:#315249;border-radius:3px;background:#e3ebe4;font:700 10px var(--num);letter-spacing:.08em}.qr-access-badge.mode-audience{color:#07583f;background:#dff2d7}.qr-access-badge.mode-player{color:#6e5011;background:#fff0bd}.qr-access-badge.mode-scoring{color:#fff;background:var(--green)}.qr-config-panel .field{margin:0}.qr-config-panel .field input,.qr-config-panel .field select{height:44px}.qr-origin-field small{color:#73827c;font-size:11px;line-height:1.45}.qr-security-note,.qr-network-warning{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;color:#4f645b;border-left:3px solid #88a798;background:#edf3ee;font-size:12px;line-height:1.5}.qr-network-warning{color:#73571b;border-left-color:#d8aa32;background:#fff6d8}.qr-security-note .app-icon,.qr-network-warning .app-icon{flex:none;margin-top:1px}.qr-link-box{overflow:hidden;padding:10px 12px;color:#65766f;border:1px solid #dce3dc;border-radius:4px;background:#fff;font:500 11px/1.45 var(--num)}.qr-link-box span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-actions{display:flex;gap:10px;margin-top:auto}.qr-actions .button{flex:1}.player-page{min-height:100vh;color:#15251f;background:#eef2eb}.player-topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:58px;padding:0 clamp(16px,4vw,44px);color:#d8e9e2;background:#052a22f7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.player-topbar>a{display:inline-flex;align-items:center;gap:7px;justify-self:start;font-size:13px;font-weight:650}.player-topbar>button{display:grid;place-items:center;justify-self:end;width:40px;height:40px;color:#d8e9e2;border:1px solid #49685e;border-radius:50%;background:transparent;cursor:pointer}.player-topbar>button.rotating .app-icon{animation:player-spin .7s linear infinite}@keyframes player-spin{to{transform:rotate(360deg)}}.player-hero{position:relative;display:flex;align-items:end;justify-content:space-between;gap:30px;min-height:255px;padding:46px clamp(20px,7vw,90px) 38px;overflow:hidden;color:#fff;background:var(--forest)}.player-hero:before{position:absolute;inset:-80px -5% auto auto;width:min(54vw,650px);aspect-ratio:2 / 1;border:1px solid rgba(201,243,106,.18);content:"";transform:rotate(-8deg)}.player-hero:after{position:absolute;right:15%;bottom:0;width:1px;height:86%;background:#c9f36a33;content:""}.player-hero>div{position:relative;z-index:1}.player-group-mark{display:inline-flex;margin:13px 0 8px;padding:5px 9px;color:#072c21;border-radius:3px;background:var(--mint);font-size:12px;font-weight:750}.player-hero h1{margin:0 0 8px;font-family:STZhongsong,serif;font-size:clamp(36px,5vw,58px);letter-spacing:-.03em}.player-hero>div>p:last-child{margin:0;color:#afc7be;font-size:14px}.player-progress-ring{display:grid;place-items:center;align-content:center;width:132px;height:132px;flex:none;border:1px solid rgba(201,243,106,.4);border-radius:50%;box-shadow:inset 0 0 0 8px #c9f36a0a}.player-progress-ring b{color:var(--mint);font:800 42px/1 var(--num)}.player-progress-ring span{margin-top:7px;color:#b5cac3;font-size:11px}.player-content{width:min(1180px,100%);margin:auto;padding:24px clamp(14px,4vw,42px) 64px}.player-stat-strip{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);margin-top:-48px;margin-bottom:24px;border:1px solid #d8e0d8;background:#fff;box-shadow:0 18px 40px #0e342817}.player-stat-strip>div{display:grid;gap:7px;min-height:94px;padding:20px 24px;border-right:1px solid #e3e8e3}.player-stat-strip>div:last-child{border-right:0}.player-stat-strip span{color:#65766f;font-size:12px}.player-stat-strip b{color:var(--forest);font:800 26px var(--num)}.player-section{margin-top:22px;overflow:hidden;border:1px solid #d8e0d8;border-radius:5px;background:#fff}.player-section>header{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:19px 22px;border-bottom:1px solid #e1e7e1}.player-section>header p{margin-bottom:7px}.player-section>header h2{margin:0;color:var(--forest);font-size:19px}.player-section>header>span{color:#6d7d76;font-size:11px}.player-match-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.player-match-list .match-card{box-shadow:0 6px 18px #0c30250a}.player-page .match-card>header{min-height:40px;font-size:12px}.player-page .match-side{min-height:49px}.player-page .match-side b,.player-page .match-side>span{font-size:13px}.player-page .rubber-preview>div{min-height:39px}.player-page .rubber-preview span{font-size:12px}.player-page .rubber-preview b{font-size:11px}.player-two-column{display:grid;grid-template-columns:1fr 1fr;gap:22px}.player-roster{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#e7ebe7}.player-roster article{display:flex;align-items:center;gap:12px;min-height:66px;padding:11px 15px;background:#fff}.player-roster article>span{display:grid;place-items:center;width:34px;height:34px;flex:none;color:var(--forest);border-radius:50%;background:#e5f2dd;font-weight:750}.player-roster article>div{display:grid;gap:3px}.player-roster b{font-size:13px}.player-roster small{color:#76857f;font-size:11px}.player-standing{margin:0;padding:0;list-style:none}.player-standing li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;min-height:50px;padding:0 18px;border-bottom:1px solid #edf0ed}.player-standing li:last-child{border-bottom:0}.player-standing li.self{color:var(--forest);box-shadow:inset 3px 0 var(--mint);background:#f2f8ed}.player-standing li>span{color:#75837d;font:750 12px var(--num)}.player-standing li b{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.player-standing li em{color:#65756e;font-size:11px;font-style:normal}.player-empty{display:grid;place-items:center;align-content:center;grid-column:1 / -1;gap:7px;min-height:150px;color:#698079;border:1px dashed #cad5cc;background:#fafbf8}.player-empty b{color:var(--forest);font-size:14px}.player-empty span{font-size:12px}.player-empty.compact{min-height:90px;border:0}.player-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:72px;padding:0 clamp(20px,7vw,90px);color:#8fa99f;background:var(--deep);font-size:11px}.player-footer b{color:#d9e7e2}@media(max-width:760px){.qr-dialog{max-height:96vh}.qr-dialog>header{padding:18px}.qr-dialog>header h2{font-size:22px}.qr-dialog>header span{display:none}.qr-mode-tabs{padding:8px 12px}.qr-mode-tabs button{gap:6px;min-height:52px;padding:7px 6px}.qr-mode-tabs .app-icon{display:none}.qr-mode-tabs b{font-size:12px}.qr-dialog-body{grid-template-columns:1fr}.qr-preview-panel{padding:20px}.qr-image-wrap{width:min(220px,68vw)}.qr-config-panel{padding:22px 18px 26px}.qr-actions{position:sticky;bottom:0;padding-top:8px;background:#fbfcf8}.qr-actions .button{padding-inline:10px;font-size:12px}.player-topbar{padding:0 14px}.player-topbar .live-status{font-size:11px}.player-hero{align-items:flex-start;min-height:245px;padding:35px 20px 72px}.player-hero h1{font-size:38px}.player-progress-ring{width:94px;height:94px}.player-progress-ring b{font-size:31px}.player-progress-ring span{font-size:9px}.player-content{padding:0 12px 45px}.player-stat-strip{grid-template-columns:repeat(2,1fr);margin-top:-48px}.player-stat-strip>div{min-height:78px;padding:14px 16px}.player-stat-strip>div:nth-child(2){border-right:0}.player-stat-strip>div:nth-child(-n+2){border-bottom:1px solid #e3e8e3}.player-stat-strip b{font-size:23px}.player-section>header{padding:16px}.player-section>header h2{font-size:18px}.player-match-list{grid-template-columns:1fr;padding:10px}.player-two-column{grid-template-columns:1fr;gap:0}.player-roster{grid-template-columns:1fr}.player-footer{display:grid;justify-content:start;padding:16px 20px}}@media(prefers-reduced-motion:reduce){.player-topbar>button.rotating .app-icon{animation:none}}.brand-manager{display:grid;gap:18px}.brand-manager-head{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:25px 28px;color:#edf8f3;border-radius:5px;background:linear-gradient(115deg,#052a22,#0d5a43)}.brand-manager-head p{margin-bottom:8px;color:#b7cec5}.brand-manager-head h2{margin:0 0 7px;font-family:STZhongsong,serif;font-size:28px}.brand-manager-head span{color:#b6cbc3;font-size:13px}.brand-manager-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.65fr);align-items:start;gap:16px}.brand-editor-panel,.brand-live-preview{overflow:hidden;border:1px solid #d8e0d9;border-radius:5px;background:#fff}.brand-editor-panel>header,.brand-live-preview>header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:16px 20px;border-bottom:1px solid #e1e7e1}.brand-editor-panel>header h3,.brand-live-preview>header h3{margin:0 0 4px;color:var(--forest);font-size:16px}.brand-editor-panel>header p{margin:0;color:#687970;font-size:12px}.brand-editor-panel>header>span,.brand-live-preview>header>span{flex:none;padding:5px 9px;color:#52675e;border-radius:20px;background:#edf2ed;font-size:11px}.brand-live-preview>header p{margin-bottom:6px}.brand-editor-list{display:grid}.brand-editor-row{position:relative;display:grid;grid-template-columns:112px minmax(190px,1fr) minmax(230px,.85fr) 36px;align-items:start;gap:14px;padding:17px 18px;border-bottom:1px solid #e8ece8}.brand-editor-row:last-child{border-bottom:0}.brand-logo-editor{display:grid;gap:7px}.brand-logo-editor>div{display:grid;place-items:center;width:100%;height:68px;overflow:hidden;padding:7px;border:1px solid #dce3dc;border-radius:4px;background:#fff}.brand-logo-editor>div.empty{color:#7a8b83;border-style:dashed;background:#f7f9f6;font-size:12px;font-weight:650}.brand-logo-editor img{width:100%;height:100%;object-fit:contain}.brand-logo-editor label{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;color:#245a48;border:1px solid #cbd7ce;border-radius:3px;background:#f8faf7;cursor:pointer;font-size:10px;font-weight:700}.brand-logo-editor label:hover{border-color:#88a99a;background:#eff5ef}.brand-logo-editor input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.brand-fields,.brand-role-weight{display:grid;gap:11px}.brand-editor-row .field{gap:6px}.brand-editor-row .field>span{font-size:11px;font-weight:600}.brand-editor-row .field input,.brand-editor-row .field select{height:39px;font-size:12px}.brand-weight-field>span{display:flex;justify-content:space-between}.brand-weight-field>span b{color:var(--green);font:750 12px var(--num)}.brand-weight-field>div{display:grid;grid-template-columns:minmax(90px,1fr) auto;align-items:center;gap:9px;min-height:39px}.brand-weight-field input{height:auto!important;padding:0!important;accent-color:var(--green)}.brand-weight-field em{min-width:60px;padding:4px 6px;border-radius:3px;font-size:9px;font-style:normal;text-align:center}.brand-weight-field em.weight-core{color:#173f30;background:#dff2c7}.brand-weight-field em.weight-major{color:#5f4c19;background:#fff0c5}.brand-weight-field em.weight-standard{color:#607169;background:#edf1ed}.brand-delete{display:grid;place-items:center;width:36px;height:36px;margin-top:20px;color:#9a4e49;border:1px solid #ead0ce;border-radius:4px;background:#fff8f7;cursor:pointer}.brand-delete:hover{color:#fff;border-color:#a94c45;background:#a94c45}.brand-row-error{grid-column:2 / -1;margin:-5px 0 0}.brand-empty{display:grid;place-items:center;align-content:center;gap:8px;min-height:330px;padding:30px;text-align:center}.brand-empty>span{display:grid;place-items:center;width:42px;height:42px;color:var(--forest);border-radius:50%;background:#e7f3df}.brand-empty h3{margin:5px 0 0;color:var(--forest);font-size:15px}.brand-empty p{margin:0 0 8px;color:#6b7a74;font-size:12px}.brand-editor-panel>footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;padding:12px 18px;border-top:1px solid #dfe5df;background:#f7f9f5}.brand-editor-panel>footer>span{color:#6a7a73;font-size:11px}.brand-preview-groups{display:grid;gap:24px;padding:22px}.brand-preview-groups section{display:grid;gap:10px}.brand-preview-groups h4{margin:0;color:#687970;font-size:10px;font-weight:700;letter-spacing:.12em}.brand-preview-groups section>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.brand-preview-groups article{position:relative;display:grid;place-items:center;min-width:92px;min-height:54px;padding:9px;border:1px solid #e0e5e0;border-radius:3px;background:#fff}.brand-preview-groups article.weight-core{width:100%;min-height:88px}.brand-preview-groups article.weight-major{min-width:132px;min-height:70px}.brand-preview-groups article img{width:100%;height:45px;object-fit:contain}.brand-preview-groups article.weight-core img{height:60px}.brand-preview-groups article>span{color:#263e35;font-size:12px;font-weight:700;text-align:center}.brand-preview-groups article small{position:absolute;right:4px;bottom:3px;color:#9aa59f;font:650 8px var(--num)}.brand-preview-placeholder{display:grid;grid-template-columns:repeat(3,1fr);align-content:center;gap:8px;min-height:330px;padding:30px}.brand-preview-placeholder i{height:58px;border:1px dashed #d1d9d2;border-radius:3px;background:#fafbf9}.brand-preview-placeholder p{grid-column:1 / -1;margin:10px 0 0;color:#839089;font-size:11px;text-align:center}.public-title-presentation{display:inline-flex!important;align-items:center;width:fit-content;max-width:min(420px,90vw);margin-bottom:19px;padding:7px 13px 7px 10px;color:var(--forest)!important;border-left:4px solid var(--mint);border-radius:2px;background:#fffffff5;box-shadow:0 10px 28px #00000021}.public-title-presentation>span{color:#677970;font-size:9px;font-weight:700;letter-spacing:.08em;white-space:nowrap}.public-title-presentation img{width:auto;max-width:180px;height:42px;object-fit:contain}.public-title-presentation b{color:#173d31;font-size:15px}.public-brand-showcase{padding:48px clamp(20px,6vw,94px) 58px;border-top:1px solid #dde4dd;background:#fff}.public-brand-showcase>header{position:relative;display:grid;place-items:center;margin:0 auto 37px;text-align:center}.public-brand-showcase>header p{margin-bottom:9px}.public-brand-showcase>header h2{margin:0;color:var(--forest);font-family:STZhongsong,serif;font-size:27px}.public-brand-showcase>header span{margin-top:7px;color:#74827c;font-size:12px}.public-brand-groups{display:grid;gap:30px;width:min(1180px,100%);margin:auto}.public-brand-groups>section{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:24px}.public-brand-groups h3{margin:0;color:#61726a;font-size:11px;font-weight:650;letter-spacing:.08em;text-align:right}.public-brand-groups section>div{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-left:24px;border-left:1px solid #dfe5df}.public-brand-item{display:grid;place-items:center;width:150px;height:72px;padding:11px 14px;color:#294239;border:1px solid #e2e7e2;border-radius:3px;background:#fff;font-size:13px;font-weight:700;text-align:center;transition:border-color .18s ease,box-shadow .18s ease}a.public-brand-item:hover{border-color:#91ad9f;box-shadow:0 8px 22px #0b3e2d14}.public-brand-item.weight-major{width:190px;height:88px}.public-brand-item.weight-core{width:240px;height:106px;border-color:#cddace}.public-brand-item img{width:100%;height:100%;object-fit:contain}@media(max-width:1100px){.brand-manager-layout{grid-template-columns:1fr}.brand-live-preview{order:-1}.brand-preview-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-preview-groups article.weight-core{width:auto}}@media(max-width:760px){.brand-manager-head{display:grid;padding:21px 18px}.brand-manager-head h2{font-size:25px}.brand-manager-head .button{width:100%}.brand-editor-row{grid-template-columns:92px minmax(0,1fr) 36px;gap:11px;padding:14px}.brand-logo-editor{grid-row:span 1}.brand-fields{grid-column:2}.brand-role-weight{grid-column:1 / -1;grid-template-columns:1fr}.brand-delete{grid-column:3;grid-row:1;margin-top:0}.brand-row-error{grid-column:1 / -1}.brand-editor-panel>footer{position:sticky;bottom:64px;z-index:5;display:grid}.brand-editor-panel>footer .button{width:100%}.brand-preview-groups{grid-template-columns:1fr;padding:17px}.public-title-presentation{display:flex!important;grid-template-columns:none!important;gap:10px!important;margin-bottom:16px}.public-title-presentation img{max-width:145px;height:36px}.public-brand-showcase{padding:38px 14px 45px}.public-brand-showcase>header{margin-bottom:28px}.public-brand-showcase>header h2{font-size:24px}.public-brand-groups{gap:25px}.public-brand-groups>section{grid-template-columns:1fr;gap:10px}.public-brand-groups h3{text-align:left}.public-brand-groups section>div{gap:7px;padding:10px 0 0;border-top:1px solid #dfe5df;border-left:0}.public-brand-item{flex:1 1 105px;width:auto;min-width:105px;height:64px;padding:9px}.public-brand-item.weight-major{flex-basis:140px;width:auto;height:76px}.public-brand-item.weight-core{flex-basis:100%;width:100%;height:90px}}.print-title,.print-knockout{display:none}.dialog-form-fields{min-width:0;margin:0;padding:0;border:0}.modal-panel{overscroll-behavior:contain}.modal-panel[inert]{pointer-events:none}.modal-panel:focus{outline:none}.modal-panel>header h2,.topbar h1,.public-hero h1{overflow-wrap:anywhere}button,a,input,select,textarea{touch-action:manipulation}button:disabled{cursor:not-allowed}.refresh-notice{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0;padding:12px 20px;background:#fff3d6;color:#684f17;font-size:13px;line-height:1.6}.refresh-notice button{min-height:36px;padding:5px 12px;border:1px solid #9c854e;border-radius:4px;color:inherit;background:transparent;cursor:pointer}.public-error>.button{margin:12px}.brand-manager-layout>*,.brand-fields,.brand-role-weight{min-width:0}.brand-editor-panel{container-type:inline-size}.brand-editor-row{grid-template-columns:96px minmax(0,1fr) minmax(180px,.85fr) 40px}.brand-editor-row .field>span,.brand-editor-panel>footer>span,.brand-editor-panel>header>span,.brand-live-preview>header>span,.brand-preview-groups h4,.public-brand-groups h3,.public-title-presentation>span{font-size:13px;font-weight:500}.brand-editor-row .field input,.brand-editor-row .field select{font-size:14px}.brand-logo-editor label{min-height:36px;font-size:12px;font-weight:500}.brand-logo-editor label:focus-within{outline:2px solid var(--green);outline-offset:2px}.brand-weight-field em,.brand-preview-groups article small{font-size:12px}.brand-preview-groups article{padding-bottom:22px}.brand-preview-groups article small{color:#62716a}.brand-delete{width:40px;height:40px}.brand-manager-head>div{min-width:0}.brand-manager-head span{line-height:1.7}.public-title-presentation{gap:12px}.public-brand-item{overflow-wrap:anywhere}.public-page .rubber-preview b,.public-page .rubber-preview i,.public-page .schedule-round>header small,.public-page .public-footer{font-size:12px}.roster-table td,.table-scroll td{font-variant-numeric:tabular-nums}.group-matrix button:disabled{opacity:1;color:inherit;cursor:default}.match-card-grid>.match-card,.public-match-grid>.match-card{content-visibility:auto;contain-intrinsic-size:auto 220px}@container (max-width: 720px){.brand-editor-row{grid-template-columns:96px minmax(0,1fr) 40px}.brand-fields{grid-column:2}.brand-role-weight{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.brand-delete{grid-column:3;grid-row:1;margin-top:0}.brand-row-error{grid-column:1 / -1}}@media(max-width:760px){.brand-role-weight{grid-template-columns:1fr}.brand-delete,.rank-move-actions button{min-width:44px;min-height:44px}.brand-editor-row{grid-template-columns:80px minmax(0,1fr) 44px;padding:12px;gap:9px}.brand-editor-panel>footer{position:static}.modal-backdrop{padding-bottom:max(12px,env(safe-area-inset-bottom))}.modal-panel input:not([type=checkbox]):not([type=radio]),.modal-panel select,.brand-editor-row .field input,.brand-editor-row .field select{font-size:16px}.modal-panel>footer{flex-wrap:wrap}}@media print{.event-content>.print-title,.print-knockout{display:block!important}.bracket-panel{padding:0;overflow:visible}.signature-bracket{display:block;min-width:0;min-height:0;background:none}.signature-bracket .bracket-round{display:block!important;min-height:0;break-before:page}.signature-bracket .bracket-round>header{display:flex}.signature-bracket .bracket-round:first-child{break-before:auto}.signature-bracket .round-matches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:12px;min-height:0}.signature-bracket .bracket-node{grid-row:auto!important}.signature-bracket .bracket-node:before,.signature-bracket .bracket-node:after{display:none!important}.match-card-grid>.match-card,.public-match-grid>.match-card{content-visibility:visible;contain-intrinsic-size:none}.round-tabs,.event-lifecycle,.match-action,.toast,.loading-bar{display:none!important}.signature-bracket{overflow:visible}}.draw-preview-dialog,.history-dialog{width:min(1120px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}.draw-preview-dialog>header,.history-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px;border-bottom:1px solid var(--line, #d8e2dc)}.draw-preview-dialog h2,.history-dialog h2{font-size:22px;margin:8px 0}.draw-preview-dialog p,.history-dialog p{font-size:13px;line-height:1.7}.draw-preview-body,.history-body{padding:24px;min-width:0}.draw-preview-body>section+section{margin-top:24px}.draw-preview-body h3{font-size:16px;margin-bottom:12px}.workflow-strip{margin:16px 24px;padding:12px 16px;background:#eff5ed;border-left:3px solid #3e755f;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px;line-height:1.6}.workflow-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 24px 16px}.rubber-score-dialog>footer{flex-wrap:wrap;gap:8px}.result-reason{margin:16px 24px}.result-reason textarea{padding:10px;width:100%;resize:vertical;border:1px solid #becdc3;border-radius:4px;font:inherit}.history-entry{border-bottom:1px solid #d8e2dc;padding:16px 0}.history-entry:first-child{padding-top:0}.history-entry>header{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;font-size:14px}.history-entry small{font-size:12px;color:#526a60}.history-entry h3{font-size:14px;font-weight:500;margin:12px 0}.history-entry dl{display:grid;grid-template-columns:55px minmax(0,1fr);gap:8px;font-size:13px;line-height:1.7}.history-entry dd{margin:0;overflow-wrap:anywhere}.history-entry dt{color:#526a60}.state-in_progress .match-status-label{color:#006747;font-weight:700}.state-paused .match-status-label{color:#885800}.export-actions .button{font-size:13px;min-height:40px}.toast{pointer-events:none}body:has(.modal-backdrop) .toast{top:12px;bottom:auto}.rubber-preview i{max-width:150px;white-space:normal;overflow-wrap:anywhere;text-align:center}@media(max-width:600px){.draw-preview-dialog,.history-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.draw-preview-body,.history-body,.draw-preview-dialog>header,.history-dialog>header{padding:16px}.workflow-actions .button,.rubber-score-dialog>footer .button{min-height:44px}.workflow-actions{padding-inline:16px}}.court-manager{display:grid;gap:20px}.court-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.court-heading h2,.court-heading h3{margin:0 0 6px}.court-heading p,.court-settings p{font-size:13px;line-height:1.6;margin:0;color:#526961}.court-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:12px 0}.court-status-grid article{border:1px solid #ccdcd3;border-left:4px solid #6f9787;border-radius:6px;padding:14px;background:#f5faf6;min-width:0}.court-status-grid header{display:flex;justify-content:space-between;gap:12px;align-items:center}.court-status-grid strong{font-size:20px;overflow-wrap:anywhere}.court-status-grid span,.court-status-grid p{font-size:13px;line-height:1.6}.court-status-grid p{margin:8px 0 0;overflow-wrap:anywhere}.court-status-grid .court-occupied{border-left-color:#96731b;background:#fff8e8}.court-status-grid .court-disabled{border-left-color:#84918c;background:#f0f2f1}.court-settings{border-block:1px solid #d7e1db;padding:16px 0}.court-settings summary{cursor:pointer;font-weight:600;padding:4px 0}.court-settings fieldset{border:0;padding:16px 0 0;display:grid;gap:12px;min-width:0}.court-settings fieldset>button{justify-self:start}.court-edit-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 20px}.court-edit-list>div{display:flex;align-items:end;gap:10px}.court-edit-list label:first-child{flex:1;min-width:0}.court-edit-list label span,.court-match-row label>span{display:block;font-size:13px;margin-bottom:5px}.court-edit-list input:not([type=checkbox]),.court-match-row select{width:100%;min-height:40px;border:1px solid #baccc1;border-radius:4px;padding:8px;background:#fff;color:#143e31}.court-enabled{display:flex;gap:6px;align-items:center;min-height:40px;white-space:nowrap;font-size:14px}.court-enabled input{width:16px;height:16px}.court-feedback{padding:12px;background:#f4f7f3;border-left:3px solid #6f9787;font-size:14px;margin:0}.court-match-row{border:1px solid #d7e1db;border-radius:6px;overflow:hidden}.court-match-row>header{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:16px;background:#f4f7f3}.court-match-row>header>div{flex:1;min-width:160px}.court-match-row small{display:block;margin-top:5px;font-size:13px;color:#526961}.court-rubber-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;border-top:1px solid #e1e8e3}.court-match-row select{min-width:160px;max-width:100%}.court-match-row>button{margin:12px 16px}.match-court{padding:8px 12px;margin:0;background:#eef5ed;color:#174b3a;font-size:14px;font-weight:600;overflow-wrap:anywhere}.rubber-court{display:block;font-size:12px;line-height:1.5;color:#436657}@media(max-width:600px){.court-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.court-status-grid header{flex-wrap:wrap;gap:4px}.court-edit-list{grid-template-columns:1fr}.court-heading>.field{width:100%}.court-rubber-row{flex-wrap:wrap}.court-rubber-row label{width:100%}.court-match-row>header>div{flex-basis:100%}.court-manager button,.court-manager select,.court-manager input:not([type=checkbox]){min-height:44px}}.schedule-planner{display:grid;gap:16px;border:1px solid #cddcd1;background:#f8fbf7;padding:20px;border-radius:6px}.schedule-planner h3,.schedule-planner h4{margin:0;color:#123c2e}.schedule-controls{display:flex;gap:16px;align-items:end;flex-wrap:wrap;padding-block:8px}.schedule-controls>label:not(.court-enabled){display:grid;gap:5px;min-width:150px;font-size:13px;color:#456053}.schedule-controls input[type=number]{min-height:42px;width:100%;border:1px solid #baccc1;border-radius:4px;padding:8px;background:#fff;color:#143e31}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:12px;margin:10px 0}.schedule-item{display:grid;gap:8px;align-content:start;border:1px solid #d2dfd5;border-top:4px solid #92ab83;padding:14px;background:#fff;min-width:0}.schedule-item.confirmed{border-top-color:#0a6344;background:#f4faf2}.schedule-item>span{font-size:12px;font-weight:700;color:#44705b}.schedule-item b,.schedule-item strong{font-size:15px;overflow-wrap:anywhere}.schedule-item strong{color:#0b4a36}.schedule-item button{justify-self:start;margin-top:5px}.schedule-note{margin:0;color:#536a5f;font-size:13px;line-height:1.6}.schedule-waiting{border-top:1px solid #d5e2d8;padding-top:12px}.schedule-waiting summary{cursor:pointer;font-weight:600}.schedule-waiting ul{list-style:none;padding:0;margin:12px 0;display:grid;gap:4px}.schedule-waiting li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e2e9e3;padding:9px 0;font-size:13px}.schedule-waiting li span{color:#61736b;text-align:right}.schedule-order{list-style:none;padding:0;margin:10px 0;max-height:320px;overflow:auto}.schedule-order li{align-items:center}.schedule-order li span{text-align:left;color:#183d2d}.schedule-order li div{display:flex;flex-shrink:0;gap:5px}.schedule-order li button{min-width:38px;min-height:38px;border:1px solid #c6d7cb;background:#fff;color:#0a4c35;cursor:pointer}.public-schedule-queue{margin:20px 0}@media(max-width:600px){.schedule-planner{padding:14px}.schedule-controls>label:not(.court-enabled){flex:1;min-width:120px}.schedule-controls button{width:100%}.schedule-waiting li{display:grid;gap:3px}.schedule-waiting li span{text-align:left}}
