@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap";.intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#2b1720,#101115 52%,#08090b);animation:intro-exit .45s 3.95s both}.intro-skip{position:absolute;top:28px;right:32px;z-index:2;border:1px solid #ffffff30;background:#10111580;color:#e9e4e5;padding:11px 15px;border-radius:6px;font-size:12px;gap:18px}.intro-skip:focus-visible{outline-color:#f2b7c0}.intro-stage{position:relative;width:min(940px,100vw);aspect-ratio:900/620}.volley-scene{display:block;width:100%;height:100%;overflow:visible}.volley-action{animation:volley-scene-out .35s 2.5s both}.volley-set{animation:volley-scene-out .5s 2.6s both}.volley-flight,.volley-player,.volley-leg-back,.volley-leg-front,.volley-shin-back,.volley-shin-front,.volley-arm-back,.volley-arm-front,.volley-head,.volley-boot-front,.volley-boot-back,.volley-elbow-front,.volley-elbow-back,.volley-wrist-front,.volley-wrist-back{transform-origin:0 0}.volley-shadow{transform-origin:430px 510px}.volley-impact{opacity:0}.intro-reveal{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate;animation:volley-crest-in .6s 2.85s both}.intro-reveal img{width:clamp(190px,30vw,280px);height:auto;filter:drop-shadow(0 20px 30px #0009)}.intro-reveal>span:not(.intro-caption){margin-top:17px;color:#fff;font:700 42px/1 var(--display)}.intro-reveal b{color:#df203d}.intro-caption{font-size:9px;letter-spacing:3px;color:#c1aeb6;margin-top:15px}.intro-crest-halo{position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#981e3933,transparent 65%);z-index:-1}.intro-replay{border:0;background:transparent;padding:0;color:var(--muted);font:inherit;letter-spacing:inherit;text-decoration:underline;text-underline-offset:3px}@keyframes volley-scene-out{to{opacity:0;filter:blur(5px)}}@keyframes volley-crest-in{0%{opacity:0;transform:translateY(20px) scale(.88);filter:blur(8px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes intro-exit{to{opacity:0;visibility:hidden}}@media(max-width:600px){.intro-stage{width:145vw;max-width:none;flex-shrink:0}.intro-skip{top:18px;right:18px}.intro-reveal img{width:210px}.intro-reveal>span:not(.intro-caption){font-size:36px}.intro-caption{font-size:8px}}@media(prefers-reduced-motion:reduce){.intro,.intro-replay{display:none}*,*:before,*:after{scroll-behavior:auto!important}}.sidebar-juggler{position:relative;display:grid;place-items:center;height:218px;flex-shrink:0;margin-top:20px;padding-top:10px;border-top:1px solid #ffffff12}.juggler-scene{display:block;width:100%;height:100%;max-width:180px;overflow:visible}.juggler-scene .juggler-ball,.juggler-scene .juggler-ball-spin{transform-origin:0 0}.juggler-toggle{position:absolute;right:0;bottom:3px;width:28px;height:28px;padding:0;border:1px solid #ffffff20;border-radius:50%;background:transparent;color:#a99da3}.juggler-toggle:hover{color:#fff;border-color:#ffffff50}@media(max-width:1000px){.sidebar-juggler{display:none}}:root{--black:#141416;--red:#c51d32;--burgundy:#501d2e;--accent:#ffb4be;--paper:#f6f5f5;--white:#fff;--ink:#242124;--muted:#746c73;--line:#e7e1e5;--soft:#f1edef;--red-soft:#fff0f2;--shadow:#14141688;--body:"DM Sans",sans-serif;--display:"Barlow Condensed",Impact,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px var(--body)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:disabled{opacity:.5;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(.94)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin-top:0}h1{font:700 clamp(38px,4.4vw,60px)/1 var(--display);text-transform:uppercase;margin-bottom:12px}h2{font:600 28px/1.1 var(--display);margin-bottom:0}h3{font:600 23px var(--display)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;color:var(--muted);margin-bottom:12px}.primary{background:var(--red);color:var(--white);border:0;border-radius:5px;padding:13px 20px;min-height:44px;font-size:13px;font-weight:600}.outline{background:var(--white);border:1px solid var(--line);border-radius:5px;padding:12px 17px;color:var(--ink)}.icon-button,.close{background:transparent;border:0;padding:7px;color:var(--muted)}.app{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:var(--black);color:var(--white);border-top:4px solid var(--burgundy);padding:29px 22px;display:flex;flex-direction:column;overflow-y:auto}.brand{display:flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none}.brand-crest{width:128px;height:128px;object-fit:contain}.brand-name{font:700 36px/1 var(--display);letter-spacing:-.3px}.brand-name b{color:var(--red)}.league-tag{text-align:center;font-size:9px;letter-spacing:1.7px;color:var(--accent);margin:17px 0 35px}.sidebar nav{display:grid;gap:8px}.sidebar nav button{background:transparent;border:0;border-radius:5px;color:var(--white);padding:14px;justify-content:flex-start;font-size:13px;opacity:.7}.sidebar nav button.active{opacity:1;background:var(--red);font-weight:700}.admin-nav{margin-top:auto;padding-top:40px;display:grid;gap:15px}.admin-nav a,.admin-nav button{font-size:11px;display:flex;gap:7px;align-items:center;text-decoration:none}.admin-nav button{justify-content:flex-start;background:none;border:0;color:var(--white);padding:0}main{margin-left:232px;width:calc(100% - 232px);max-width:1600px;padding:0 42px}header{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:10px;font-weight:600;letter-spacing:1.4px}.admin-badge{letter-spacing:0;color:var(--red);background:var(--red-soft);padding:7px 10px;border-radius:4px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:34px 0 27px}.subtitle{font-size:13px;color:var(--muted);margin:0;line-height:1.6}.stats{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:15px;margin-bottom:28px}.stats>div{display:flex;align-items:center;gap:16px;background:var(--white);border:1px solid var(--line);border-radius:7px;padding:20px}.stats>div>svg{color:var(--muted);flex-shrink:0}.stats p{margin:0;font-size:9px;letter-spacing:1px;color:var(--muted)}.stats strong{display:block;font:600 32px var(--display);letter-spacing:0;color:var(--ink);margin-top:5px}.stats .leaders{border-top:3px solid var(--red)}.leaders strong{font-size:23px}.leaders small{display:block;font:11px var(--body);margin-top:4px;color:var(--muted)}.panel{background:var(--white);border:1px solid var(--line);border-radius:7px;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:24px}.pill{font-size:10px;color:var(--muted);background:var(--paper);border:1px solid var(--line);padding:6px 8px;border-radius:4px;white-space:nowrap}.search{display:flex;align-items:center;gap:10px;color:var(--muted);margin:0 24px 20px;padding:10px 12px;max-width:340px;border:1px solid var(--line);border-radius:4px}.search input{border:0;background:transparent;min-width:0;width:100%;font-size:12px;color:var(--ink)}.desktop-table{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:center;white-space:nowrap}thead{background:var(--paper);font-size:9px;letter-spacing:.6px;color:var(--muted)}th{padding:14px 10px;font-weight:600}td{padding:15px 10px;border-top:1px solid var(--line)}th:nth-child(2){text-align:left}th:first-child,td:first-child{padding-left:22px}th:last-child,td:last-child{padding-right:22px}.points-heading{color:var(--red)}.player-cell{display:flex;align-items:center;gap:11px;text-align:left;font-weight:600;min-width:170px}.avatar{width:36px;height:36px;display:inline-grid;place-items:center;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--ink);font:600 15px var(--display);text-transform:uppercase}.player-cell small{display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:4px}.position{display:inline-grid;place-items:center;min-width:27px;height:27px;font-weight:600;color:var(--muted)}.leader-row .position{color:var(--white);background:var(--red);border-radius:50%}.leader-row{background:var(--red-soft)}.points{font:700 22px var(--display);color:var(--ink)}.performance{font-weight:600}.form{display:flex;justify-content:center;gap:4px;font-size:10px;color:var(--muted)}.form>span{display:grid;place-items:center;width:19px;height:22px;border-radius:3px;font-size:9px}.form .W{background:var(--black);color:var(--white)}.form .D{background:var(--soft);color:var(--muted)}.form .L{background:var(--red-soft);color:var(--red);border:1px solid var(--line)}.panel-footer{padding:17px 24px;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}.mobile-ranking{display:none}.empty{padding:40px 24px;text-align:center;color:var(--muted);font-size:13px}.roster{display:grid;grid-template-columns:1fr 1fr;padding:0 24px 20px;gap:0 30px}.roster-player{display:flex;align-items:center;gap:12px;padding:18px 0;border-top:1px solid var(--line)}.roster-player strong{font-size:13px}.roster-player small{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.roster-player>span:last-child{font-size:11px;color:var(--muted);margin-left:auto;white-space:nowrap}.matches{padding:0 24px}.match-card{padding:22px 0;border-top:1px solid var(--line)}.match-date{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.match-date .icon-button{margin-left:auto}.scoreline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;margin:22px 0}.scoreline>span{font:600 25px var(--display)}.scoreline>span:last-child{text-align:right}.scoreline b{font:700 38px var(--display);white-space:nowrap}.scoreline em{font-style:normal;font-size:23px;color:var(--muted);margin:0 12px}.lineups{display:grid;grid-template-columns:1fr 1fr;gap:30px;font-size:12px;color:var(--muted);line-height:1.7}.lineups p{margin:0}.lineups>div:last-child{text-align:right}.captain-label{display:flex;align-items:center;gap:6px;font-weight:600;color:var(--ink);margin-bottom:7px!important}.lineups>div:last-child .captain-label{justify-content:flex-end}.scoring-rules{margin-top:22px;border:1px solid var(--line);border-radius:6px;font-size:12px;color:var(--muted)}summary{cursor:pointer}.scoring-rules summary{padding:17px 20px;font-weight:600;color:var(--ink)}.scoring-rules>div{padding:0 20px 10px;line-height:1.7}.scoring-rules p{margin-bottom:10px}footer{display:flex;justify-content:space-between;gap:12px;padding:28px 0;font-size:9px;letter-spacing:1px;color:var(--muted)}.notice,.alert{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-radius:5px;background:var(--soft);border:1px solid var(--line);font-size:12px;line-height:1.6}.alert{background:var(--red-soft);color:var(--red)}.notice button,.alert button{background:transparent;border:0;color:inherit}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--shadow);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:10}.modal{position:relative;width:720px;max-width:100%;max-height:90vh;overflow:auto;padding:32px;background:var(--paper);border-radius:9px;box-shadow:0 20px 70px var(--shadow)}.modal h2{font-size:34px;margin-bottom:24px}.close{position:absolute;right:18px;top:18px}.modal>p{line-height:1.7}.modal>.primary{margin-top:15px}form{display:grid;gap:18px}label{display:grid;gap:8px;font-size:12px;font-weight:500}label small,fieldset>small{font-size:11px;color:var(--muted);font-weight:400;line-height:1.6}input,textarea,select{width:100%;min-width:0;border:1px solid var(--line);border-radius:4px;background:var(--white);padding:11px 12px;color:var(--ink)}textarea{resize:vertical;line-height:1.7}.form-hint{font-size:12px;color:var(--muted);line-height:1.7;margin:0}.upload-field{padding:16px;border:1px dashed var(--muted);border-radius:5px}.upload-field input{padding:0;border:0;background:transparent;font-size:12px}.selected-file{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;overflow-wrap:anywhere}.selected-file button{border:0;background:transparent;color:var(--red);font-size:11px}.team-inputs{display:grid;grid-template-columns:1fr 1fr;gap:18px}.team-inputs fieldset{min-width:0;display:grid;gap:14px;border:1px solid var(--line);border-radius:5px;padding:16px}.team-inputs legend{padding:0 7px;font-weight:600;font-size:12px}.form-actions{display:flex;justify-content:flex-end;gap:12px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:60px;padding:32px}.login-brand{background:var(--black);padding:32px;border-radius:10px;color:var(--white)}.login-brand .brand-crest{width:180px;height:180px}.login-card{width:360px;max-width:100%}.login-card h1{font-size:40px;text-transform:none}.login-card>p{color:var(--muted);font-size:13px;line-height:1.7}.login-card>a{display:flex;align-items:center;gap:7px;font-size:12px;margin-top:25px;text-decoration:none}@media(min-width:1500px){main{padding:0 64px}.page-heading{padding-top:45px}.stats{margin-bottom:34px}}@media(max-width:1100px){.sidebar{width:195px;padding:25px 17px}.brand-crest{width:112px;height:112px}.brand-name{font-size:32px}main{margin-left:195px;width:calc(100% - 195px);padding:0 26px}.stats>div{padding:17px 14px;gap:10px}.stats>div>svg{display:none}.stats .leaders strong{font-size:21px}.roster{grid-template-columns:1fr}}@media(max-width:1000px){.app{display:block}.sidebar{position:static;width:100%;padding:20px 18px 0;overflow:visible}.brand{gap:8px}.brand-crest{width:96px;height:96px}.brand-name{font-size:30px}.league-tag{font-size:8px;margin:12px 0 20px}.sidebar nav{display:flex;gap:8px;padding-bottom:16px}.sidebar nav button{flex:1;justify-content:center;gap:6px;padding:10px 5px;font-size:11px}.sidebar nav button svg{width:16px}.admin-nav{padding:0 0 16px;margin:0;display:flex;justify-content:space-between;gap:12px}main{margin:0;width:100%;padding:0 17px}header{height:50px;font-size:8px;letter-spacing:1px}.page-heading{padding:26px 0 23px;align-items:flex-start;flex-direction:column;gap:15px}h1{font-size:42px}.subtitle{font-size:12px}.page-heading .primary{width:100%}.stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.stats>div{padding:16px}.stats .leaders{grid-column:1/-1}.stats strong{font-size:28px}.stats .leaders strong{font-size:23px}.leaders small{display:inline;margin-left:10px}.panel-heading{padding:20px 16px;gap:8px}h2{font-size:25px}.pill{font-size:9px}.search{margin:0 16px 17px;max-width:none}.desktop-table{display:none}.mobile-ranking{display:block}.mobile-ranking details{border-top:1px solid var(--line)}.mobile-ranking summary{display:flex;align-items:center;gap:10px;padding:15px 12px;list-style:none}.mobile-ranking summary::-webkit-details-marker{display:none}.mobile-ranking .avatar{width:31px;height:31px;font-size:13px}.mobile-ranking .position{min-width:24px;height:24px;font-size:11px}.mobile-name{flex:1;font-size:12px;font-weight:600;min-width:0}.mobile-name small{display:block;font-size:10px;color:var(--muted);font-weight:400;margin-top:5px;line-height:1.5}.mobile-ranking summary>strong{font:700 25px var(--display);min-width:28px;text-align:right}.mobile-ranking summary>strong small{display:block;font:9px var(--body);color:var(--muted)}.mobile-detail{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 16px 18px 47px;font-size:11px}.mobile-detail>span{display:flex;justify-content:space-between;gap:8px;line-height:1.5}.mobile-detail>span:nth-last-child(-n+2){grid-column:1/-1}.panel-footer{font-size:10px;padding:15px 16px;line-height:1.6}.roster{padding:0 16px 16px;gap:0}.roster-player strong{font-size:12px}.matches{padding:0 16px}.match-date{font-size:11px}.scoreline{gap:10px;margin:18px 0}.scoreline>span{font-size:23px}.scoreline b{font-size:33px}.scoreline em{margin:0 5px}.lineups{font-size:11px;gap:20px}.captain-label{font-size:10px}.scoring-rules{font-size:11px}.scoring-rules summary{padding:15px}.scoring-rules>div{padding:0 15px 8px}footer{font-size:8px;padding:24px 0;letter-spacing:.5px}.modal-backdrop{padding:12px}.modal{padding:26px 18px;max-height:94vh}.modal h2{font-size:30px}.team-inputs{grid-template-columns:1fr}.form-actions{flex-wrap:wrap}.form-actions .primary{flex:1}.login-page{flex-direction:column;gap:28px;padding:30px 22px}.login-brand{padding:20px 32px}.login-brand .brand-crest{width:110px;height:110px}.login-card h1{font-size:35px}}.player-link{display:inline;border:0;background:none;color:var(--ink);padding:0;text-align:left;font:inherit;font-weight:600;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.player-link:hover{color:var(--red);text-decoration-color:var(--red)}.profile-jersey{font-size:13px;color:var(--muted);margin-top:-12px}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0 28px}.profile-stats>div{background:var(--white);border:1px solid var(--line);border-radius:5px;padding:14px}.profile-stats span{display:block;font-size:10px;color:var(--muted);line-height:1.5}.profile-stats strong{display:block;font:600 30px var(--display);margin-top:5px}.profile-stats>div:last-child{grid-column:span 3}.profile-game{border-top:1px solid var(--line);padding:17px 0}.profile-game>div{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.profile-game p{font-size:14px;margin:12px 0 7px}.profile-game small{font-size:11px;color:var(--muted)}.result-label{border-radius:4px;padding:5px 8px;background:var(--soft)}.result-label.win{background:var(--black);color:var(--white)}.result-label.loss{background:var(--red-soft);color:var(--red)}@media(max-width:700px){.profile-stats{gap:7px}.profile-stats>div{padding:11px}.profile-stats strong{font-size:27px}}.player-status{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.player-status>span{font-size:10px;line-height:1.5;padding:2px 6px;border-radius:3px;background:var(--soft);color:var(--muted)}.player-status>.player-away{background:var(--red-soft);color:var(--red)}.player-profile>.player-status{margin:0 0 20px}
