:root{font:16px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#142b49;background:#eef1f6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:13px 18px;border:0;border-radius:11px;background:#002a60;color:#fff;font-weight:650;text-decoration:none;cursor:pointer;min-height:46px}button:disabled{opacity:.4;cursor:default}.secondary{background:#e8edf5;color:#142b49}.quiet{background:transparent;color:#40536e;font-size:.875rem;padding:9px}.text-button{padding:0;min-height:0;background:none;color:#002a60;text-decoration:underline;font-size:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #c8102e;outline-offset:3px}header{display:flex;align-items:center;justify-content:space-between;padding:18px max(22px,calc((100vw - 1120px)/2));background:#fff;border-bottom:1px solid #d3d8e1}.brand{display:flex;align-items:center;gap:10px;font-size:1.6rem;font-weight:750;letter-spacing:-1px}.brand span{font-size:.65rem;letter-spacing:1.5px;margin-left:8px;color:#c1c9d6}main{max-width:1164px;padding:32px 22px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:20px}.eyebrow{font-size:.7rem;letter-spacing:1.5px;font-weight:700;color:#52647e}h1{font-size:2.4rem;line-height:1.2;letter-spacing:-1.2px;margin:8px 0 12px;font-weight:650}p{color:#52647e;margin:12px 0;line-height:1.65}.intro p{margin:0}.local{font-size:.8rem;padding:7px 12px;background:#e5eaf3;border-radius:25px;white-space:nowrap}.grid{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:22px}.card{border:1px solid #d3d8e1;background:#fff;border-radius:18px;padding:24px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}h2{font-size:1.1rem;margin:0;font-weight:650;display:flex;align-items:center;gap:10px}h3{font-size:1rem;margin:20px 0 10px}.step{font-size:.75rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;background:#e8edf5;color:#002a60;flex-shrink:0}.count{font-size:.8rem;color:#53647d;white-space:nowrap}.upload{border:1.5px dashed #7d8fa9;background:#f5f7fb;border-radius:12px;text-align:center;display:flex;align-items:center;flex-direction:column;padding:24px 12px;gap:5px;position:relative;cursor:pointer}.upload-symbol{font-size:1.7rem;line-height:1;margin-bottom:5px}.upload>span:last-of-type{font-size:.875rem;color:#52647e}.upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload:focus-within{outline:3px solid #c8102e}.hint{font-size:.875rem;color:#52647e;line-height:1.6}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{font-size:.875rem;font-weight:600;display:block;margin:12px 0 7px}input,select,textarea{width:100%;border:1px solid #bfc9d7;border-radius:9px;padding:12px;background:#fff;color:#142b49}label input,label select{margin-top:7px}textarea{resize:vertical;min-height:100px}#message{min-height:190px}.check{display:flex;align-items:center;gap:10px;font-weight:400}.check input{width:18px;height:18px;margin:0}.summary{background:#e8edf5;padding:13px;border-radius:9px;margin:15px 0;font-size:.875rem}#rejected{max-height:110px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:12px}.list-head{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.list-head h3{margin:0}ul{padding:0;margin:10px 0;list-style:none;max-height:290px;overflow:auto}li.number{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf0f5;padding:5px 0;font-variant-numeric:tabular-nums}.empty{padding:22px 5px;text-align:center;color:#314967;font-size:.95rem}.empty span{font-size:.875rem;color:#52647e}.sample{font-size:.8rem;color:#002a60;text-underline-offset:4px}.send-panel{border-top:1px solid #d3d8e1;margin-top:24px;padding-top:24px}#download,#run-shortcut{width:100%;margin:5px 0}details{border-top:1px solid #d3d8e1;margin-top:17px;padding-top:15px}summary{cursor:pointer;font-size:.9rem;font-weight:550}.manual{display:flex;gap:8px;flex-wrap:wrap}footer{display:flex;justify-content:space-between;gap:12px;color:#52647e;font-size:.75rem;padding:24px 0}#notice{background:#fff1cc;color:#654c13;border-radius:10px;padding:13px 16px;margin-bottom:20px;font-size:.9rem}dialog{width:min(700px,94vw);max-height:90dvh;border:1px solid #bfc9d7;border-radius:16px;padding:26px;color:#142b49}dialog::backdrop{background:#001b447d}dialog .section-head{position:sticky;top:-26px;background:white;padding-top:10px;padding-bottom:10px}dialog li{margin:15px 0;line-height:1.7;color:#40536e}code{background:#e8edf5;padding:2px 5px;border-radius:4px}dialog ol{padding-left:24px}[hidden]{display:none!important}@media(max-width:740px){header{padding:14px 18px}.brand span{font-size:.6rem;margin:0}.intro{display:block;margin-bottom:20px}h1{font-size:1.95rem}.intro p{font-size:.95rem}.local{display:inline-block;margin-top:14px}main{padding:23px 16px}.grid{grid-template-columns:1fr;gap:18px}.card{padding:19px;border-radius:14px}.upload{padding:20px 10px}.section-head{margin-bottom:15px}.fields{grid-template-columns:1fr}footer{display:block}footer span{display:block;margin-top:5px}dialog{padding:20px}dialog .section-head{top:-20px}dialog h2{font-size:1rem}}

.installer{margin:18px 0;padding:16px;background:#f0f3f8;border:1px solid #d3d8e1;border-radius:12px}.installer h3{margin:0 0 12px}#install-shortcut{width:100%}

#send-batch,#test-shortcut{width:100%;margin:6px 0}#setup-status{font-weight:650}.installer .hint a{color:#002a60}

.header-links{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.header-links a{color:#002a60;font-size:.875rem}.number-helper{margin-top:22px;scroll-margin-top:18px}#format-errors{white-space:pre-wrap;overflow-wrap:anywhere}.auth-wrap{max-width:540px;margin:40px auto}.auth-wrap h1{font-size:2rem}.auth-wrap fieldset{padding:0;border:0}.auth-wrap button{width:100%;margin-top:16px}@media(max-width:480px){header{gap:12px;align-items:flex-start}.brand span{display:none}.header-links{justify-content:flex-end;gap:10px}}

header{background:#002a60;border-bottom:5px solid #c8102e;color:white}header a,header .header-links a,header .quiet{color:white}.brand{color:inherit;text-decoration:none;font-size:1.4rem;letter-spacing:-.5px}.brand span{font-size:.65rem}.card{box-shadow:0 8px 28px #002a6008}button:not(.secondary):not(.quiet):not(.text-button),.button:not(.secondary){background:#c8102e;color:#fff}.step{background:#002a60;color:#fff}.local{border:1px solid #bec0c2}.upload{border-color:#889ab5}.auth-wrap{max-width:1040px;margin:46px auto;display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0 22px}.auth-court{position:relative;overflow:hidden;background:#002a60;color:white;padding:42px 34px;border-radius:20px 0 0 20px;border-top:6px solid #c8102e}.auth-court .eyebrow{color:#c8d2e0}.auth-court h2{display:block;font-size:2.8rem;line-height:1.12;letter-spacing:-1px;margin:28px 0 18px}.auth-court p{color:#d0d9e7;position:relative;z-index:1}.court-ball{font-size:110px;line-height:1.2;transform:rotate(-18deg);margin:22px 0}.court-points{display:grid;gap:14px;font-size:.95rem;position:relative;z-index:1}.auth-wrap>.card{border-radius:0 20px 20px 0;padding:34px;border-top:6px solid #bec0c2;min-width:0}.auth-wrap .auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}.auth-wrap .auth-tabs button{width:auto;margin:0;background:#e8edf5;color:#002a60}.auth-tabs button[aria-pressed=true]{background:#002a60;color:white}.auth-wrap h1{font-size:1.85rem;line-height:1.15}.auth-wrap .button{width:100%;margin-top:12px}.auth-wrap #mode-recover{width:auto;text-align:left;margin-top:8px;font-size:.875rem}#recovery-output{overflow-wrap:anywhere}.auth-wrap:not(:has(.auth-court)){display:block;max-width:580px}.auth-wrap:not(:has(.auth-court))>.card{border-radius:18px}@media(max-width:740px){.auth-wrap{display:block;margin:20px auto;padding:0 16px}.auth-court{padding:24px;border-radius:18px 18px 0 0}.auth-court h2{font-size:2rem;margin:16px 0 12px}.auth-court h2 br{display:none}.auth-court h2 br:after{content:' '}.auth-court h2{max-width:300px}.court-ball{position:absolute;right:12px;top:12px;font-size:80px;opacity:.16}.court-points{display:none}.auth-court p{margin-bottom:0}.auth-wrap>.card{padding:24px;border-radius:0 0 18px 18px}.brand{font-size:1.2rem}header>a:last-child{font-size:.875rem}}

.plan-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plan-choice{display:flex;align-items:flex-start;gap:10px;padding:16px 12px;border:2px solid #d3d8e1;border-radius:12px;cursor:pointer;margin:0}.plan-choice:has(input:checked){border-color:#c8102e;background:#fff4f5}.plan-choice input{width:18px;height:18px;margin:3px 0 0;flex:none}.plan-choice strong,.plan-choice small{display:block}.plan-choice small{font-size:.875rem;font-weight:400;color:#52647e}#plans legend{font-size:1rem;font-weight:650;margin-bottom:12px}#plan-total:empty{display:none}@media(max-width:360px){.plan-options{grid-template-columns:1fr}}

/* Signed-in home and shared corner navigation. */
header{position:relative;z-index:10}.corner-menu{position:relative;margin:0;padding:0;border:0;flex:none}.corner-menu summary{padding:11px 16px;border:1px solid #ffffff65;border-radius:10px;font-size:1rem;list-style:none}.corner-menu summary::-webkit-details-marker{display:none}.corner-menu[open] summary{background:#ffffff20}.corner-menu nav{position:absolute;right:0;top:calc(100% + 12px);width:min(280px,calc(100vw - 32px));background:white;box-shadow:0 18px 50px #001b4438;border:1px solid #d3d8e1;border-radius:14px;padding:10px;display:grid;gap:3px;animation:menu-down .18s ease-out}.corner-menu nav a,.corner-menu nav .quiet{display:block;text-align:left;color:#002a60;padding:13px;border-radius:8px;text-decoration:none;font-size:1rem;white-space:normal}.corner-menu nav a:hover,.corner-menu nav button:hover{background:#e8edf5}.dashboard{max-width:1120px;margin:auto;padding:30px 22px 60px}.home-hero{background:#002a60;color:white;border-radius:24px;padding:42px;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;border-bottom:7px solid #c8102e}.home-hero h1{font-size:clamp(2rem,4vw,3.5rem);overflow-wrap:anywhere;max-width:650px}.home-hero p{color:#d2ddeb;font-size:1.15rem}.home-hero .eyebrow{color:#c8d2e0;font-size:.875rem}.home-hero .button{margin-top:12px}.access-board{border-left:1px solid #ffffff40;padding-left:32px;display:flex;flex-direction:column;justify-content:center;min-width:0}.access-board strong{font-size:1.6rem;margin-top:10px}.access-board p{font-size:.875rem;overflow-wrap:anywhere}.home-ball{font-size:64px;line-height:1.3;margin-bottom:12px}.home-tools{margin:32px 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature-card{display:flex;flex-direction:column;padding:25px;border:1px solid #d3d8e1;border-radius:16px;background:white;color:#142b49;text-decoration:none;box-shadow:0 8px 28px #002a6008;transition:transform .15s,border-color .15s}.feature-card:hover{transform:translateY(-3px);border-color:#c8102e}.feature-card>span{font-size:2rem}.feature-card h3{font-size:1.15rem;margin:15px 0 0}.feature-card p{flex:1;margin:10px 0 22px}.feature-state{color:#a30c26;font-size:.875rem}.deposit-card{scroll-margin-top:22px;padding:30px}.deposit-card h2{font-size:1.7rem;margin:8px 0}.deposit-card fieldset{padding:0;border:0;margin:22px 0}.deposit-card .plan-options{grid-template-columns:repeat(4,1fr)}.deposit-card #pay{min-height:48px;width:100%}.payment-steps{display:flex;gap:30px;flex-wrap:wrap;padding-left:24px;color:#002a60;font-weight:600;margin:24px 0}.payment-steps li{padding-right:16px}.dashboard #logout{margin-top:20px}.dashboard #account-status:empty{display:none}:focus-visible{outline:3px solid #c8102e;outline-offset:4px}@keyframes menu-down{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:740px){.dashboard{padding:20px 16px 40px}.home-hero{padding:26px;grid-template-columns:1fr;gap:22px}.access-board{border-left:0;border-top:1px solid #ffffff40;padding:18px 0 0}.home-ball{font-size:42px}.feature-grid{grid-template-columns:1fr}.feature-card{padding:22px}.deposit-card{padding:22px}.deposit-card .plan-options{grid-template-columns:1fr 1fr}.home-tools .section-head{align-items:flex-start;flex-direction:column;gap:6px}.payment-steps{display:grid;gap:10px}.home-hero .button{width:100%}}@media(max-width:360px){.deposit-card .plan-options{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.corner-menu nav{animation:none}.feature-card{transition:none}}


.admin-card{margin-top:24px;scroll-margin-top:20px;border-top:5px solid #002a60}.admin-search{display:flex;gap:12px;align-items:center}.admin-search input{flex:1;min-width:0}.admin-search button{flex:none}.admin-card input[type=datetime-local]{max-width:360px}.admin-card h2{font-size:1.5rem;margin-top:8px}.admin-card #admin-grant{margin-top:12px}.admin-card #admin-status{font-weight:600}@media(max-width:480px){.admin-search{display:block}.admin-search button{margin-top:10px;width:100%}}
