:root{--t-card-width: 252px;--navy: #163a6b;--navy-deep: #0d2749;--blue: #1f5aa6;--yellow: #f5c400;--yellow-soft: #ffe56a;--sand: #fff8e8;--ink: #12233f;--muted: #5b6d86;--line: #d9e2ef;color:var(--ink);background:var(--navy-deep);font-family:Outfit,system-ui,sans-serif;line-height:1.45}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#163a6bf0,#0d2749eb),repeating-linear-gradient(90deg,transparent 0 46px,rgba(245,196,0,.08) 46px 48px),#0d2749}h1,h2,.brand span,.stage-number,.circuit-tag{font-family:Oswald,Outfit,sans-serif;letter-spacing:.04em;text-transform:uppercase}h1{margin:.2rem 0 1.2rem;font-size:clamp(2rem,4vw,3rem);color:#fff}.card h1,.auth-card h1{color:var(--navy);font-size:2rem}h2{margin-top:0}a{color:var(--blue)}button,input,select,textarea{font:inherit;font-size:16px}button{background:var(--yellow);color:var(--navy-deep);border:0;border-radius:999px;padding:.75rem 1.15rem;cursor:pointer;font-weight:700}button:disabled{opacity:.45;cursor:not-allowed}button.secondary{background:var(--navy);color:#fff}button.linkish,.linkish{background:none;color:inherit;padding:0;font-weight:600}.app-frame{min-height:100vh}.topbar{display:flex;align-items:center;gap:1.5rem;padding:.85rem 1.5rem;padding-top:max(.85rem,env(safe-area-inset-top));padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));background:var(--yellow);color:var(--navy-deep);box-shadow:0 8px 0 var(--navy)}.topbar nav{display:flex;gap:.4rem}.topbar nav a{color:var(--navy);text-decoration:none;font-weight:700;padding:.4rem .8rem;border-radius:999px}.topbar nav a.active{background:var(--navy);color:var(--yellow)}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;font-weight:700;font-size:1.15rem}.brand img{width:58px;height:58px;object-fit:cover;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #fff}.brand small{display:block;font-family:Outfit,sans-serif;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;opacity:.75}.session{margin-left:auto;display:flex;gap:.8rem;align-items:center;font-weight:600}.avatar{display:inline-grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--yellow);font-weight:700;overflow:hidden;flex:0 0 auto}.avatar-sm{width:28px;height:28px;font-size:.75rem}.avatar-md{width:40px;height:40px}.avatar-lg{width:72px;height:72px;font-size:1.6rem}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-button{background:none;padding:0;border-radius:50%}.person-cell,.person-chip,.pair-people,.photo-picker{display:flex;align-items:center;gap:.45rem}.pair-people{flex-wrap:wrap}.stage-people{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;list-style:none}.person-chip{background:#fff;border:2px solid #e4ebf4;border-radius:999px;padding:.2rem .45rem .2rem .15rem}.chip-remove{background:none;color:var(--muted);padding:0 .25rem;min-width:1.4rem;line-height:1;font-size:1.2rem}.chip-remove:hover{color:#8a2b1c}.chip-remove:disabled{opacity:.4}.card.is-loading{position:relative;pointer-events:none}.card.is-loading:after{content:attr(data-loading);position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#f7f3ead1;color:var(--navy-deep);font-weight:700;border-radius:16px;z-index:2}.loading-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:40;pointer-events:none;overflow:hidden;opacity:0}.loading-bar.is-on{opacity:1}.loading-bar span{display:block;height:100%;width:35%;background:var(--yellow);animation:loading-slide .9s ease-in-out infinite}@keyframes loading-slide{0%{transform:translate(-120%)}to{transform:translate(380%)}}.page-loading{display:grid;justify-items:center;gap:.75rem;padding:2.4rem 1rem;color:#fff}.page-loading p{margin:0;font-weight:700}.spinner{width:2rem;height:2rem;border:3px solid rgba(245,196,0,.28);border-top-color:var(--yellow);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.section-head h2{margin:0}.roster-count{margin:0;color:var(--navy)}.roster-picker{display:grid;gap:.75rem;margin:.85rem 0 1rem}.roster-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.roster-stats article{background:#fff;border:2px solid #e4ebf4;border-radius:14px;padding:.7rem .85rem;color:var(--navy)}.roster-stats small{display:block;font-size:.78rem;font-weight:700;color:var(--muted)}.roster-stats strong{display:block;margin-top:.1rem;font-size:1.7rem;line-height:1.1}.roster-tools{display:flex;gap:.65rem;align-items:end;flex-wrap:wrap}.roster-search{flex:1 1 12rem;display:grid;gap:.3rem;margin:0;font-size:.85rem;font-weight:700;color:var(--navy)}.roster-list{max-height:18rem;overflow:auto;margin:0;padding:0;list-style:none;display:grid;gap:.35rem;background:#fff;border:2px solid #e4ebf4;border-radius:14px;padding:.4rem}.roster-list label{display:flex;align-items:center;gap:.55rem;margin:0;padding:.45rem .55rem;border-radius:10px;font-weight:600;color:var(--navy)}.roster-list input{width:auto;margin:0}.roster-list label.is-checked{background:#fff3c2}.person-chip.is-self,.pair-grid>li.is-self-pair,tr.is-self td{background:#fff3c2}.person-chip.is-self{border:1px solid var(--yellow);border-radius:999px;padding:.12rem .45rem .12rem .12rem;font-weight:700;color:var(--navy)}.pair-grid{display:grid;grid-template-columns:1fr;gap:.45rem;margin:.9rem 0 0;padding:0;list-style:none}.pair-grid>li{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:.55rem;min-height:3rem;padding:.45rem .7rem;background:#fff;border:1px solid var(--line);border-radius:14px}.pair-grid>li.is-self-pair{border-color:#f0c400}.pair-index{font-family:Oswald,Outfit,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--navy);min-width:1.5rem}.pair-avatars{display:flex;align-items:center}.pair-avatars .avatar{box-shadow:0 0 0 2px #fff}.pair-avatars .avatar+.avatar{margin-left:-.35rem}.pair-grid>li.is-self-pair .pair-avatars .avatar{box-shadow:0 0 0 2px #fff3c2}.pair-names{display:flex;flex-wrap:wrap;align-items:center;gap:.28rem .35rem;min-width:0;font-weight:650;color:var(--navy);line-height:1.25}.pair-sep{color:var(--muted);font-weight:500}.fold-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.fold-actions button{padding:.55rem .95rem;font-size:.9rem}.count-pill{display:inline-grid;place-items:center;min-width:1.45rem;height:1.45rem;padding:0 .4rem;border-radius:999px;background:var(--navy);color:#fff;font-size:.72rem;font-weight:800}@media(min-width:640px){.pair-grid{grid-template-columns:1fr 1fr}}.self-tag{font-style:normal;background:var(--navy);color:var(--yellow);font-size:.65rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.12rem .4rem}.self-name{color:var(--navy);font-weight:800}.pair-slot:has(.is-self),.t-row:has(.self-name){background:#fff8d6;box-shadow:inset 3px 0 0 var(--yellow)}.t-card:has(.self-name){border-color:var(--yellow)}.event-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-top:.8rem}.event-photo{margin:0;display:grid;gap:.4rem}.event-photo-open{padding:0;border-radius:12px;overflow:hidden;background:#fff}.event-photo img,.photo-viewer img{width:100%;height:140px;object-fit:cover;display:block}.photo-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#0d2749e0;border-radius:0;display:grid;place-items:center;padding:1.5rem}.photo-viewer img{width:auto;height:auto;max-width:min(960px,100%);max-height:90vh;object-fit:contain;border-radius:12px}.shell{max-width:1240px;margin:0 auto;padding:1.5rem 1.25rem 3rem;padding-left:max(1.25rem,env(safe-area-inset-left));padding-right:max(1.25rem,env(safe-area-inset-right));padding-bottom:max(3rem,env(safe-area-inset-bottom))}.shell:has(.bracket-board){max-width:none;width:100%}.circuit-tag{display:inline-block;margin:0 0 .35rem;padding:.2rem .7rem;background:var(--yellow);color:var(--navy-deep);border-radius:999px;font-size:.75rem}.card{background:var(--sand);border-radius:18px;padding:1.15rem 1.2rem;box-shadow:0 12px #0d274940;margin-bottom:1.1rem;border:2px solid rgba(245,196,0,.35)}.card.compact h2,.via-card h2{margin-top:0}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:1rem;background:radial-gradient(circle at top,var(--yellow) 0 220px,transparent 221px),var(--navy-deep)}.auth-card{width:min(440px,100%)}.auth-brand{display:grid;justify-items:center;text-align:center;margin-bottom:.8rem}.auth-brand img{width:92px;height:92px;border-radius:50%;object-fit:cover;background:#fff}label,fieldset{display:grid;gap:.35rem;margin:.7rem 0;border:0;padding:0}input,select,textarea{width:100%;border:2px solid var(--line);border-radius:12px;padding:.7rem .75rem;background:#fff}textarea{min-height:10rem;resize:vertical;line-height:1.4}.quick-created{margin:.4rem 0 0;padding-left:1.1rem}.quick-created li+li{margin-top:.25rem}.check{display:flex;align-items:center;gap:.5rem}.check input{width:auto}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--blue);margin-bottom:.2rem;font-weight:700}.error,.notice{background:#fde8e4;color:#8a2b1c;padding:.7rem .8rem;border-radius:10px}.notice{background:#fff3d6;color:#6d4f12}.athlete-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0 0 1.2rem}.athlete-total{background:#fff;border-radius:16px;padding:.85rem 1rem;color:var(--navy);border:2px solid #e4ebf4;box-shadow:0 8px 20px #0814281f}.athlete-total small{display:block;font-family:Outfit,system-ui,sans-serif;font-size:.78rem;font-weight:700;color:var(--muted);text-transform:none;letter-spacing:0}.athlete-total strong{display:block;margin-top:.15rem;font-size:2rem;line-height:1.1;color:var(--navy)}.modality-menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:.75rem;margin:0 0 1.2rem}button.modality-card{display:grid;justify-items:center;gap:.35rem;padding:.85rem .6rem .75rem;border-radius:16px;background:#fff;color:var(--navy);border:2px solid #e4ebf4;box-shadow:0 8px 20px #0814281f;font-family:Outfit,system-ui,sans-serif;font-weight:700;text-transform:none}.modality-card strong,.modality-card small{font-family:Outfit,system-ui,sans-serif;letter-spacing:0;text-transform:none;text-align:center}.modality-card small{font-size:.72rem;font-weight:600;color:var(--muted);line-height:1.25;max-width:9.5rem}.modality-icon{width:52px;height:52px;border-radius:50%;background:#eef3f9;display:grid;place-items:center}.modality-icon svg{width:40px;height:40px}button.modality-card.is-selected{border-color:var(--yellow);background:#fffdf3;box-shadow:0 0 0 3px #f5c40047}.modality-card.is-soon{opacity:.72}.toolbar{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}.toolbar label{display:flex;align-items:center;gap:.65rem;margin:0;color:#fff;font-weight:700}.toolbar input{width:6.5rem}.toolbar a{color:var(--yellow-soft);font-weight:700}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:1rem;background:#0812249e}.modal-card{width:min(520px,100%);max-height:min(90vh,720px);overflow:auto;background:#fff;border-radius:18px;padding:1.1rem 1.15rem 1.2rem;box-shadow:0 20px 50px #08142859}.modal-card h2{color:var(--navy)}.modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.8rem}.draw-reveal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:1rem;background:#081224d6}.draw-reveal-card{width:min(520px,100%);max-height:min(92vh,840px);overflow:auto;background:var(--sand);border:3px solid var(--yellow);border-radius:22px;padding:1.2rem 1.15rem 1.3rem;text-align:center;box-shadow:0 18px #0d274959}.draw-reveal-card h2{margin:.15rem 0 .2rem}.draw-pool{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;min-height:2rem;margin:.85rem 0 1rem;padding:0;list-style:none}.draw-pool .avatar{opacity:.55}.draw-pool-empty{margin:.6rem 0 1rem;color:var(--muted);font-size:.9rem}.draw-stage{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.55rem;min-height:8.4rem;margin-bottom:1rem}.draw-plus{color:var(--navy);font-size:1.5rem;font-weight:800}.draw-slot{display:grid;justify-items:center;gap:.35rem;min-height:7.2rem}.draw-slot.is-filled{animation:draw-pop .45s cubic-bezier(.18,1.4,.32,1)}.draw-slot-empty{display:grid;place-items:center;width:72px;height:72px;border:3px dashed var(--line);border-radius:50%;color:var(--muted);font-size:1.5rem;font-weight:800}.draw-slot.is-waiting .draw-slot-empty{border-color:var(--yellow);animation:draw-pulse .9s ease-in-out infinite}@keyframes draw-pop{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes draw-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.draw-locked{display:grid;gap:.4rem;margin:0;padding:0;list-style:none;text-align:left}.draw-locked-item{display:flex;align-items:center;gap:.4rem;padding:.4rem .65rem;background:#fff;border-radius:12px;color:var(--navy);font-weight:650;animation:draw-pop .4s ease}.draw-locked-item .avatar+.avatar{margin-left:-.35rem;box-shadow:0 0 0 2px #fff}.draw-actions{margin-top:1rem}@media(prefers-reduced-motion:reduce){.draw-slot.is-filled,.draw-locked-item,.draw-slot.is-waiting .draw-slot-empty{animation:none}}.pair-edit-modal{width:min(640px,100%)}.pair-edit-list{margin:.85rem 0 0;padding:0;list-style:none;display:grid;gap:.55rem}.pair-edit-list li{display:grid;grid-template-columns:1.6rem minmax(0,1fr) auto minmax(0,1fr);gap:.45rem;align-items:center}.pair-edit-index{font-weight:800;color:var(--navy);text-align:center}.home-ranking{margin:0 0 1.4rem}.home-ranking-title{color:#fff;margin:0 0 .7rem;font-size:1.35rem}.ranking-board{display:grid;gap:1rem}.grid-2,.grid-3{display:grid;gap:.8rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.cards{display:grid;gap:1rem}.sponsors-card{margin-top:1.6rem;overflow:hidden;text-align:center}.sponsors-card h2,.sponsors-card p{font-family:Outfit,system-ui,sans-serif;letter-spacing:0;text-transform:none}.sponsors-card .muted{margin:-.25rem 0 1rem}.sponsors-marquee{display:flex;overflow:hidden;width:100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.sponsors-track{display:flex;flex:0 0 auto;animation:sponsor-scroll 32s linear infinite}.sponsors-set{display:flex;flex:0 0 auto;align-items:center;gap:.45rem;margin:0;padding:0 .22rem;list-style:none}@keyframes sponsor-scroll{0%{transform:translate(0)}to{transform:translate(-100%)}}@media(prefers-reduced-motion:reduce){.sponsors-track{animation:none}}.sponsors-row li{background:#fff;border:1px solid var(--line);border-radius:16px;flex:0 0 4.7rem;width:4.7rem;min-width:4.7rem;min-height:74px;padding:.35rem .3rem;display:grid;place-items:center}.sponsors-row img{display:block;height:40px;width:auto;max-width:100%;object-fit:contain}.stage-card{text-decoration:none;color:inherit;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center}.stage-number{width:72px;height:72px;display:grid;place-items:center;background:var(--navy);color:var(--yellow);border-radius:16px;font-size:1.7rem}.stage-card p{margin:.2rem 0 0}.badge{background:var(--yellow);color:var(--navy-deep);border-radius:999px;padding:.35rem .7rem;font-size:.75rem;font-weight:700;text-transform:uppercase}.stage-hero{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1rem;color:#fff}.hero-actions{display:flex;flex-direction:column;align-items:end;gap:.5rem}.stage-hero p,.shell>p{margin:.25rem 0 0;color:#d5e4f7}.stage-hero a,.shell>p a{color:var(--yellow-soft)}.table-wrap{overflow:auto;background:var(--sand);border-radius:16px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.75rem .9rem;border-bottom:1px solid var(--line)}.fold-card{padding-top:.9rem}.fold-summary{display:flex;align-items:center;justify-content:space-between;gap:.8rem;cursor:pointer;list-style:none;font-family:Outfit,system-ui,sans-serif;letter-spacing:0;text-transform:none}.fold-summary::-webkit-details-marker,.fold-summary::marker{display:none}.fold-summary>span:first-child{display:flex;align-items:center;gap:.45rem}.fold-summary>span:first-child:before{content:"▸";color:var(--navy);font-size:.8rem}.fold-card[open] .fold-summary>span:first-child:before{content:"▾"}.fold-own{display:flex;align-items:center;gap:.4rem;min-width:0;overflow:hidden;color:var(--navy);font-size:.88rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.fold-card .pair-grid{margin-top:.85rem}.bracket-board h2{color:var(--navy);font-family:Outfit,system-ui,sans-serif;letter-spacing:0;text-transform:none}.view-toggle{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.game-list section+section{margin-top:1.4rem;padding-top:1rem;border-top:1px dashed var(--line)}.game-list .match-card{margin-top:.7rem;max-width:420px}.match-card,.round-label,.pair-slot{font-family:Outfit,system-ui,sans-serif;letter-spacing:0;text-transform:none}.match-card{width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.match-card header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .7rem;background:#eef3f9;color:var(--navy);font-size:.78rem;font-weight:700}.match-card.play-on_court{border-color:var(--yellow);box-shadow:0 0 0 2px #f5c40073}.match-card.play-on_court header{background:var(--yellow);color:var(--navy-deep)}.match-card.play-done{opacity:.78}.court-pill{background:var(--navy);color:var(--yellow);border-radius:999px;padding:.1rem .5rem;font-size:.7rem}.match-card.play-on_court .court-pill{background:var(--navy-deep)}.pair-stack{display:grid}.pair-slot{display:block;width:100%;text-align:left;border:0;border-radius:0;background:#fff;color:var(--ink);padding:.55rem .7rem;font-weight:600;border-top:1px solid var(--line)}.pair-slot.is-winner{background:#fff6cc;color:var(--navy)}.pair-slot.is-loser{color:var(--muted);font-weight:500}.pair-slot.is-pickable{cursor:pointer}.pair-slot.is-pickable:hover{background:#fff3c2}.undo-result{width:100%;border-radius:0;background:transparent;color:var(--blue);font-size:.78rem;padding:.4rem .7rem;text-align:left}.card.bracket-board.is-wide{display:flex;flex-direction:column;min-height:calc(100vh - 9rem)}.bracket-scroll{flex:1;min-height:24rem;overflow:auto;overscroll-behavior:contain;background:#f5f7fb;border-radius:16px;padding:.9rem 1rem 1rem}.chave-board{display:flex;flex-direction:column;gap:1.1rem;width:max-content;min-width:100%;min-height:100%}.chave-top{display:flex;align-items:stretch;flex-wrap:nowrap;gap:1.2rem;min-width:max-content}.chave{background:#fff;border:1px solid #d7deea;border-radius:16px;padding:.75rem .9rem .9rem;flex:0 0 auto;min-width:max-content}.chave-losers{background:#f8f6fb}.chave-cross{background:#fff8dc;border-color:#ead48a;flex:0 0 auto}.chave-title{font-family:Outfit,system-ui,sans-serif;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .65rem;color:var(--navy)}.chave-row,.chave-round-wrap{display:flex;align-items:stretch;flex:0 0 auto}.chave-round{display:flex;flex-direction:column;flex:0 0 auto;width:var(--t-card-width, 252px);min-width:var(--t-card-width, 252px);align-self:stretch}.chave-round-title{margin:0 0 .45rem;min-height:1.7rem;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);background:#eef3f9;border-radius:8px;padding:.32rem .5rem;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chave-cross .chave-round-title{background:var(--yellow);color:var(--navy-deep)}.chave-slots,.chave-pipes{display:grid;grid-template-rows:repeat(var(--chave-rows, 1),8.2rem);min-height:calc(var(--chave-rows, 1) * 8.2rem);flex:0 0 auto}.chave-slot{display:flex;flex-direction:column;justify-content:center;align-items:stretch;min-height:0;padding:.2rem 0}.chave-gutter{display:flex;flex-direction:column;width:28px;flex:0 0 28px}.chave-gutter .chave-round-title{visibility:hidden;background:transparent}.chave-pipe{--chave-line: #2f9e6a;display:flex;flex-direction:column;position:relative;min-height:0}.chave-pipe.kids-skip:after{display:block;width:100%;left:0;right:0}.chave-bridge{position:relative;pointer-events:none}.chave-bridge:after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:#2f9e6a}.chave-pipe:after{content:"";position:absolute;top:50%;right:0;width:14px;height:2px;background:var(--chave-line)}.chave-pipe.kids-0:after{display:none}.chave-arm{position:relative;flex:1 1 0;min-height:0}.chave-arm:before{content:"";position:absolute;left:0;top:50%;width:14px;height:2px;background:var(--chave-line)}.chave-pipe.kids-1 .chave-arm:before{width:100%}.chave-pipe.kids-1:after{display:none}.chave-arm:first-child:not(:last-child):after,.chave-arm:last-child:not(:first-child):after,.chave-arm:not(:first-child):not(:last-child):after{content:"";position:absolute;left:13px;width:2px;background:var(--chave-line)}.chave-arm:first-child:not(:last-child):after{top:50%;bottom:0}.chave-arm:last-child:not(:first-child):after{top:0;height:50%}.chave-arm:not(:first-child):not(:last-child):after{top:0;bottom:0}.bracket-board-grid{display:flex;flex-direction:column;gap:1.4rem;min-width:min-content}.bracket-losers{padding-top:.2rem}.bracket-finals{display:flex;flex-wrap:wrap;align-items:start;gap:1.2rem 2rem;padding:1rem 1.15rem;background:#fff;border:1px solid #d7deea;border-radius:16px}.bracket-final-block{display:grid;gap:.65rem}.bracket-label,.bracket-board h2,.bracket-half h2,.bracket-finals h2{font-family:Outfit,system-ui,sans-serif;text-transform:none;letter-spacing:0;font-size:.95rem;font-weight:800;margin:0;color:var(--navy)}.t-tree{display:flex;flex-direction:column}.t-tree>.t-branch{height:calc(var(--leaves, 1) * 8.4rem)}.t-branch{display:flex;align-items:stretch}.t-kids,.t-join{align-self:stretch;height:100%}.t-kids{display:flex;flex-direction:column;flex:0 0 auto}.t-kids>.t-branch{flex:var(--leaves, 1) 1 0;min-height:0;width:100%}.t-leaf-line{display:none}.t-kids>.t-branch>.t-leaf-line{display:block;flex:1 1 auto;height:2px;align-self:center;background:#b4c0cf}.t-join{--t-line: #b4c0cf;width:36px;position:relative;flex:0 0 36px;display:flex;flex-direction:column}.t-join:after{content:"";position:absolute;left:17px;top:50%;width:19px;height:2px;background:var(--t-line)}.t-join.is-single:after{left:0;width:100%}.t-arm{--leaves: 1;flex:var(--leaves) 1 0;position:relative;min-height:0}.t-arm:before{content:"";position:absolute;left:0;top:50%;width:18px;height:2px;background:var(--t-line)}.t-arm.is-first:not(.is-last):after,.t-arm.is-last:not(.is-first):after,.t-arm:not(.is-first):not(.is-last):after{content:"";position:absolute;left:16px;width:2px;background:var(--t-line)}.t-arm.is-first:not(.is-last):after{top:50%;bottom:0}.t-arm.is-last:not(.is-first):after{top:0;height:50%}.t-arm:not(.is-first):not(.is-last):after{top:0;bottom:0}.t-join.is-single .t-arm:before,.t-join.is-single .t-arm:after{display:none}.t-node{display:flex;align-items:center;flex:0 0 auto;position:relative;z-index:1;padding:.4rem 0}.chave .t-card{width:var(--t-card-width, 252px);min-width:var(--t-card-width, 252px);flex:0 0 auto}.t-card{display:flex;flex-direction:column;width:var(--t-card-width, 252px);min-width:var(--t-card-width, 252px);min-height:86px;background:#fff;border:1px solid #d7deea;border-radius:12px;overflow:hidden;position:relative;box-shadow:0 1px 2px #12233f0a;font-family:Outfit,system-ui,sans-serif;letter-spacing:0;text-transform:none}.t-phase{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin:0;padding:.22rem .55rem .22rem .7rem;background:#eef3fa;color:var(--navy);font-size:.68rem;font-weight:800;letter-spacing:0;text-transform:none}.t-body{overflow:hidden}.t-card.play-done{border-color:#2f9e6a}.t-card.play-on_court{border-color:var(--yellow);box-shadow:0 0 0 2px #f5c40047}.t-court-pill{flex:0 0 auto;background:var(--yellow);color:var(--navy-deep);border-radius:999px;padding:.08rem .45rem;font-size:.62rem;font-weight:800;letter-spacing:0;white-space:nowrap}.t-row,button.t-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-height:36px;border:0;border-radius:0;background:transparent;color:#24324a;text-align:left;padding:.38rem .7rem;font-size:.86rem;font-weight:600}.t-card:not(:has(.t-phase)) .t-body .t-row:first-child{border-radius:12px 12px 0 0}.t-card:not(:has(.t-undo)) .t-body .t-row:last-child{border-radius:0 0 12px 12px}.t-row+.t-row{border-top:1px solid #edf1f6}.t-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-pending{color:var(--muted);font-weight:650;font-size:.78em;white-space:nowrap}.t-check{width:16px;height:16px;border-radius:50%;background:#2f9e6a;flex:0 0 16px;position:relative}.t-check:after{content:"";position:absolute;left:5px;top:3px;width:4px;height:7px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.t-row.is-loser{color:#8a97ab;font-weight:500}.t-row.is-pickable{cursor:pointer}.t-row.is-pickable:hover{background:#f4f8f6}button.t-undo{display:block;width:100%;border:0;border-top:1px solid #edf1f6;border-radius:0;background:#fafbfc;color:var(--muted);font-size:.7rem;font-weight:600;padding:.25rem .6rem}.winner{font-weight:700;color:var(--blue)}.award-list{padding-left:1.1rem}.award-list li{display:flex;justify-content:space-between;margin:.4rem 0}.award-list li:first-child strong{color:var(--blue)}@media(max-width:800px){.topbar,.stage-card,.stage-hero{display:grid;grid-template-columns:1fr}.topbar{gap:.65rem}.brand{font-size:1rem}.brand img{width:46px;height:46px}.session{margin-left:0}.session>span{display:none}h1{font-size:1.65rem}.modality-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.table-wrap{overflow-x:auto}button{min-height:44px}.auth-screen{padding:1rem .75rem 1.5rem;align-items:start}}body.is-tv{overflow:hidden}.tv-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;grid-template-areas:"top" "diagram" "bottom";grid-template-rows:auto minmax(0,1fr) auto;background:#f4f7fb;color:var(--ink)}.tv-sponsors{display:flex;justify-content:stretch;align-items:center;overflow:hidden;padding:.45rem 0;background:#fff;border-color:var(--yellow)}.tv-sponsors-top{grid-area:top;border-bottom:4px solid var(--yellow)}.tv-sponsors-bottom{grid-area:bottom;border-top:4px solid var(--yellow)}.tv-sponsors-row li{background:transparent;border:0;flex:0 0 6.2rem;width:6.2rem;min-width:6.2rem;min-height:0;padding:0;display:grid;place-items:center}.tv-sponsors-row img{display:block;height:44px;width:auto;max-width:100%;object-fit:contain}.tv-diagram{--t-card-width: 260px;grid-area:diagram;min-height:0;overflow:auto;padding:.8rem 1rem;display:grid;align-content:center}.tv-diagram .bracket-scroll{width:100%;height:100%;overflow:auto}.tv-diagram .chave-board,.tv-diagram .chave-top{min-width:max-content}.tv-diagram .chave{padding:.7rem .85rem .85rem}.tv-diagram .t-tree>.t-branch{height:calc(var(--leaves, 1) * 8rem)}.tv-diagram .t-row,.tv-diagram button.t-row{min-height:42px;font-size:.95rem}.tv-error{position:absolute;top:3.2rem;left:50%;z-index:3;max-width:min(32rem,calc(100% - 2rem));margin:0;transform:translate(-50%)}.tv-exit{position:absolute;top:.55rem;right:.7rem;z-index:2}
