@charset "UTF-8";
:root{color-scheme:light;--bg:#f5f7f3;--surface:#fff;--text:#20352c;--muted:#5c6c62;--green:#145a43;--green-dark:#0d3d2e;--tint:#eaf3e9;--lime:#d8efb6;--border:#dce4dc;--danger:#a02f2f;--danger-bg:#fff0ed;--amber:#805200;--amber-bg:#fff5df;--radius:20px;--shadow:0 5px 22px #153d2910;--speed:150ms;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button,a{touch-action:manipulation}button{transition:background var(--speed),box-shadow var(--speed)}button:active:not(:disabled){filter:brightness(.94)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #40804c;outline-offset:3px}a{color:var(--green)}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.75rem,4vw,2.35rem);line-height:1.2;letter-spacing:-.045em}h2{font-size:1.1rem;letter-spacing:-.02em}h3{font-size:1rem}small,.small{font-size:.82rem}.muted{color:var(--muted)}.eyebrow{font-size:.72rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase}.icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 18px;border-radius:12px;border:1px solid transparent;font-weight:650;text-decoration:none;background:var(--green);color:#fff}.btn:hover{background:var(--green-dark)}.btn.secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn.secondary:hover{background:var(--tint)}.btn.ghost{background:transparent;color:var(--green)}.btn.ghost:hover{background:var(--tint)}.btn.danger{background:var(--danger-bg);color:var(--danger)}.btn.compact{min-height:44px;padding:8px 12px;font-size:.85rem}.icon-btn{display:inline-grid;place-items:center;min-width:46px;min-height:46px;border:1px solid var(--border);background:var(--surface);border-radius:12px;color:var(--text)}.icon-btn:hover{background:var(--tint)}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:grid;gap:16px}.stack.small-gap{gap:8px}.grow{flex:1;min-width:0}.pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:5px 10px;border-radius:999px;background:var(--tint);color:var(--green);font-size:.75rem;font-weight:650}.pill.warn{background:var(--amber-bg);color:var(--amber)}.pill.gray{background:#edf0eb;color:#56645a}.pill.red{background:var(--danger-bg);color:var(--danger)}.avatar{width:42px;height:42px;border-radius:50%;background:#eef2e8;color:var(--green);display:grid;place-items:center;font-size:.85rem;font-weight:750;flex-shrink:0}.avatar.mine{background:var(--lime)}.name{font-weight:650;overflow-wrap:anywhere}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.nowrap{white-space:nowrap}.skip-link{position:fixed;top:-80px;left:12px;z-index:100;background:var(--surface);padding:12px}.skip-link:focus{top:8px}.boot{min-height:85vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:var(--muted)}.loader{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.topbar{background:var(--surface);border-bottom:1px solid var(--border);padding:env(safe-area-inset-top) 24px 0}.topbar-inner{max-width:1120px;height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none}.brand-mark{height:46px;width:46px;border-radius:14px;display:grid;place-items:center;background:var(--green);color:var(--lime)}.brand-mark .icon{width:30px;height:30px}.brand strong{font-size:1.15rem;letter-spacing:-.035em}.brand small{display:block;color:var(--muted);font-size:.73rem}.account-button{border:0;background:transparent;border-radius:12px;padding:7px;min-height:48px;text-align:left;color:var(--text)}.account-button:hover{background:var(--bg)}.account-button .icon{width:16px}.account-name{font-size:.86rem;font-weight:650}.account-role{font-size:.72rem;color:var(--muted)}.shell{max-width:1120px;margin:auto;padding:32px 0 36px}.desktop-nav{display:flex;gap:6px;margin-bottom:30px;border-bottom:1px solid var(--border);padding-bottom:15px}.nav-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;border:0;border-radius:12px;background:transparent;color:var(--muted);font-weight:650;font-size:.88rem}.nav-button.active{background:var(--green);color:#fff}.nav-button:not(.active):hover{background:var(--tint);color:var(--green)}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:25px}.page-heading p{margin-top:8px;color:var(--muted);font-size:.9rem}.month-control{display:flex;gap:6px;align-items:center}.month-control input{width:172px;min-height:46px;background:var(--surface);border:1px solid var(--border);padding:8px 10px;border-radius:12px;font-size:.88rem;font-weight:600;color:var(--text)}.hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--green);color:#fff;border-radius:24px;padding:30px 32px;margin-bottom:22px}.hero .eyebrow{color:var(--lime);margin-bottom:10px}.hero h2{font-size:clamp(1.4rem,3vw,1.85rem);line-height:1.25;max-width:450px;letter-spacing:-.04em}.hero p{font-size:.85rem;max-width:420px;margin-top:10px;color:#e0eddf}.hero .btn{background:var(--lime);color:var(--green-dark);white-space:nowrap}.hero .btn:hover{background:#e5f6cf}.pitch-art{position:absolute;right:180px;top:-50px;width:260px;height:260px;opacity:.07;pointer-events:none;transform:rotate(25deg)}.pitch-art .icon{width:100%;height:100%}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px}.stat-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:.83rem}.stat-label .icon{color:var(--green)}.stat-number{font-size:1.9rem;line-height:1.25;letter-spacing:-.055em;font-weight:750;margin-top:12px;font-variant-numeric:tabular-nums}.stat-foot{font-size:.76rem;color:var(--muted);margin-top:5px}.grid-two{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:start}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-head{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border)}.card-head p{font-size:.78rem;color:var(--muted);margin-top:3px}.card-body{padding:20px 22px}.list-item{padding:16px 22px;border-bottom:1px solid #e9eee7;display:flex;align-items:center;gap:12px}.list-item:last-child{border-bottom:0}.list-item .right{margin-left:auto;text-align:right;flex-shrink:0}.list-item .right small{display:block;margin-top:3px}.card-foot{padding:12px 22px;border-top:1px solid var(--border);background:#fbfcfa}.progress-track{height:6px;border-radius:99px;background:#e7eddf;margin-top:16px;overflow:hidden}.progress-fill{height:100%;background:var(--green);border-radius:99px}.empty{padding:36px 24px;text-align:center;display:grid;justify-items:center;gap:10px}.empty .empty-mark{padding:13px;background:var(--tint);color:var(--green);border-radius:16px;margin-bottom:4px}.empty h3{font-size:1rem}.empty p{font-size:.85rem;color:var(--muted);max-width:330px}.empty .btn{margin-top:8px}.hint{font-size:.81rem;line-height:1.6;color:var(--muted);background:#eff3ea;border-radius:12px;padding:12px 15px}.hint .icon{width:17px;height:17px;margin-right:5px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-top p{font-size:.85rem;color:var(--muted);margin-top:5px}.section-spacer{margin-top:28px}.match-card{padding:22px;display:flex;align-items:flex-start;gap:18px}.date-tile{background:var(--tint);border-radius:14px;min-width:62px;min-height:70px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--green)}.date-tile strong{font-size:1.6rem;line-height:1.1;letter-spacing:-.06em}.date-tile small{font-size:.72rem;text-transform:uppercase}.match-card .name{font-size:1rem}.match-names{font-size:.83rem;color:var(--muted);margin-top:8px;line-height:1.7}.match-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:12px}.canceled{opacity:.72}.search{width:100%;max-width:350px;border:1px solid var(--border);border-radius:12px;padding:12px 15px;min-height:48px;background:var(--surface);color:var(--text)}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.person-card{padding:20px}.person-stats{display:flex;gap:20px;margin-top:18px;padding-top:15px;border-top:1px solid var(--border)}.person-stats strong{display:block;font-size:1.05rem}.person-stats small{color:var(--muted);font-size:.72rem}.person-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}.bottom-nav{display:none}.sync-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;color:var(--muted);font-size:.73rem}.sync-footer span{display:flex;align-items:center;gap:6px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.offline-banner{padding:12px 20px;background:var(--amber-bg);color:var(--amber);text-align:center;font-size:.85rem;border-bottom:1px solid #ecd5a4}.toast{position:fixed;z-index:100;bottom:30px;left:50%;transform:translateX(-50%);padding:13px 20px;border-radius:14px;background:var(--green-dark);color:#fff;box-shadow:0 6px 25px #0002;font-size:.88rem;max-width:calc(100% - 32px);width:max-content}.toast[hidden]{display:none}dialog{padding:0;border:1px solid var(--border);border-radius:22px;max-width:560px;width:calc(100% - 32px);max-height:calc(100dvh - 40px);color:var(--text);background:var(--surface);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#132c238c;backdrop-filter:blur(3px)}.dialog-head{position:sticky;top:0;z-index:1;background:var(--surface);padding:18px 22px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head h2{font-size:1.2rem}.dialog-body{padding:22px;display:grid;gap:18px}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:18px 22px;border-top:1px solid var(--border);background:#fcfdfa;position:sticky;bottom:0}.form-field{display:grid;gap:7px;font-size:.86rem;font-weight:600}.form-field small{color:var(--muted);font-size:.76rem;font-weight:400}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:48px;padding:11px 12px;border:1px solid #cdd8ce;border-radius:11px;background:var(--surface);color:var(--text);font-weight:400}.form-field textarea{min-height:84px;resize:vertical}.form-field input[readonly]{background:var(--bg)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-error{background:var(--danger-bg);color:var(--danger);border:1px solid #f0c5bf;padding:12px;border-radius:11px;font-size:.85rem}.form-error[hidden]{display:none}.check-row{display:flex;align-items:center;gap:12px;min-height:50px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;font-size:.88rem;cursor:pointer}.check-row:has(input:checked){background:var(--tint);border-color:#acc7a6}.check-row input{width:20px;height:20px;accent-color:var(--green);flex-shrink:0}.check-list{display:grid;gap:7px;max-height:290px;overflow-y:auto;padding:3px}.guest-entry{padding:14px;border:1px dashed #afc2ac;border-radius:14px;background:#f8fbf5}.auth-shell{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;max-width:1250px;margin:auto;align-items:center;padding:48px;gap:72px}.auth-copy .brand{margin-bottom:50px}.auth-copy h1{font-size:clamp(2.1rem,5vw,3.5rem);letter-spacing:-.055em;line-height:1.1;max-width:500px}.auth-copy h1 span{color:var(--green)}.auth-copy>p{color:var(--muted);margin-top:20px;max-width:390px;font-size:1rem;line-height:1.8}.auth-features{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.auth-features span{display:flex;align-items:center;gap:7px;font-size:.8rem;color:var(--green)}.auth-card{padding:32px;border-radius:24px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.auth-card h2{font-size:1.4rem;margin-bottom:7px}.auth-card>p{color:var(--muted);font-size:.86rem;margin-bottom:25px}.auth-card form{display:grid;gap:18px}.auth-card .btn{width:100%}.auth-note{text-align:center;margin-top:22px;font-size:.77rem;color:var(--muted)}.auth-note button{border:0;background:none;color:var(--green);padding:10px;min-height:44px;text-decoration:underline;font-size:inherit}.code-wrap{position:relative}.code-wrap input{padding-right:80px}.code-toggle{position:absolute;right:5px;top:3px;bottom:3px;padding:0 10px;border:0;background:transparent;color:var(--green);font-size:.75rem;border-radius:8px;min-width:65px}.audit-entry{border-left:2px solid var(--border);padding:0 0 22px 16px;margin-left:6px}.audit-entry:last-child{padding-bottom:0}.audit-entry .name{font-size:.87rem}.audit-entry time{font-size:.72rem;color:var(--muted)}.audit-entry>p{font-size:.85rem;margin-top:5px}.audit-entry details{margin-top:7px;font-size:.8rem;color:var(--muted)}.audit-entry summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--green)}.audit-detail{background:var(--bg);padding:12px;border-radius:10px;overflow-wrap:anywhere}.audit-detail dt{font-size:.74rem;color:var(--muted);margin-top:9px}.audit-detail dd{margin:3px 0;font-size:.82rem;color:var(--text)}.account-row{border:1px solid var(--border);padding:14px;border-radius:14px;display:grid;gap:12px}.account-row select{min-height:46px;padding:8px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text)}.account-row .form-field{font-size:.78rem}.break-anywhere{overflow-wrap:anywhere}.full-width{width:100%}[hidden]{display:none!important}
@media(max-width:1190px){.shell{margin:0 28px}}@media(max-width:850px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-shell{gap:32px;padding:32px}.auth-copy h1{font-size:2.6rem}.hero{padding:24px}.grid-two{gap:16px}.card-head,.card-body,.list-item{padding-left:18px;padding-right:18px}}@media(max-width:680px){.topbar{padding-left:18px;padding-right:18px}.topbar-inner{height:76px}.brand-mark{width:40px;height:40px;border-radius:12px}.brand strong{font-size:1.06rem}.brand small{font-size:.66rem}.account-button .account-label{display:none}.account-button{gap:5px}.account-button .avatar{width:38px;height:38px}.shell{margin:0;padding:24px 18px 120px}.desktop-nav{display:none}.page-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:20px}.page-heading p{font-size:.85rem}.month-control{width:100%}.month-control input{flex:1;width:auto;text-align:center}.month-control .icon-btn{min-height:44px}.hero{padding:24px 22px;align-items:flex-start;gap:20px;flex-direction:column;border-radius:20px;margin-bottom:16px}.hero h2{font-size:1.55rem}.hero p{font-size:.81rem}.hero .btn{width:100%;font-size:.86rem}.pitch-art{right:-28px;top:-15px;width:190px;height:190px;opacity:.07}.stats{gap:8px;margin-bottom:20px}.stat{padding:15px 11px;border-radius:15px}.stat-label{font-size:.7rem;gap:3px;align-items:flex-start}.stat-label .icon{width:16px;height:16px}.stat-number{font-size:1.43rem;margin-top:10px}.stat-foot{font-size:.65rem;line-height:1.45;min-height:1.8em}.grid-two{grid-template-columns:1fr}.card{border-radius:17px}.card-head{padding:16px}.card-body{padding:18px 16px}.card-head h2{font-size:1rem}.card-head .btn{font-size:.77rem;padding:8px;min-height:44px}.list-item{padding:14px 16px;gap:10px}.list-item .avatar{width:36px;height:36px;font-size:.75rem}.list-item .name{font-size:.85rem}.list-item .small{font-size:.72rem}.list-item .amount{font-size:.85rem}.list-item .right .pill{font-size:.68rem;padding:4px 7px}.bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;z-index:10;bottom:0;left:0;right:0;background:#fffffff5;border-top:1px solid var(--border);padding:7px 10px calc(7px + env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.bottom-nav .nav-button{flex-direction:column;gap:3px;min-height:56px;padding:6px 3px;border-radius:12px;font-size:.65rem}.bottom-nav .nav-button.active{background:var(--tint);color:var(--green)}.bottom-nav .icon{width:22px;height:22px}.toast{bottom:calc(88px + env(safe-area-inset-bottom));font-size:.81rem}.section-top{align-items:flex-start;gap:12px}.section-top h2{font-size:1rem}.section-top .btn{font-size:.78rem;padding:9px 12px}.match-card{padding:17px;gap:13px}.match-names{font-size:.79rem}.people-grid{gap:12px}.person-card{padding:16px}.person-card>.row{align-items:flex-start}.person-card .avatar{width:34px;height:34px;font-size:.71rem}.person-card .name{font-size:.85rem}.person-card .pill{font-size:.63rem;padding:3px 7px}.person-stats{gap:16px}.person-stats small{font-size:.65rem}.person-actions .btn{font-size:.72rem;padding:8px;min-height:44px}.auth-shell{min-height:100dvh;display:block;padding:30px 20px}.auth-copy .brand{margin-bottom:28px}.auth-copy h1{font-size:2.2rem;max-width:350px}.auth-copy>p{font-size:.88rem;margin-top:14px}.auth-features{gap:13px;margin-top:20px}.auth-card{margin-top:28px;padding:24px 20px}.auth-card h2{font-size:1.25rem}.auth-note{margin-top:16px}.sync-footer{font-size:.68rem}.sync-footer .footer-right{display:none}dialog{max-height:calc(100dvh - 20px);width:calc(100% - 20px);border-radius:18px}.dialog-head{padding:14px 17px}.dialog-body{padding:18px 17px}.dialog-footer{padding:14px 17px}.dialog-footer .btn{flex:1}.dialog-head h2{font-size:1.1rem}.form-field input,.form-field select,.form-field textarea{font-size:16px}.card-foot{padding:10px 16px}.empty{padding:28px 18px}.form-grid{gap:12px}.offline-banner{font-size:.78rem;padding:10px 16px}.search{max-width:none}}
.account-name,.account-role{display:block}.payment-progress{display:block;width:100%;height:7px;margin-top:14px;border:0;border-radius:99px;overflow:hidden;appearance:none;background:var(--tint);accent-color:var(--green)}.payment-progress::-webkit-progress-bar{background:var(--tint);border-radius:99px}.payment-progress::-webkit-progress-value{background:var(--green);border-radius:99px}.payment-progress::-moz-progress-bar{background:var(--green);border-radius:99px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-grid{align-items:start}.stat-label{min-height:2.8em}.stat-number{overflow-wrap:anywhere}.auth-features .icon{width:18px;height:18px}
@media(max-width:680px){.stat-foot,.stat-label,.bottom-nav .nav-button,.person-card .pill,.person-stats small,.brand small,.sync-footer{font-size:.75rem}.stat-label{min-height:3em}.people-grid .person-actions{gap:2px}}
@media(max-width:360px){.shell{padding-left:12px;padding-right:12px}.people-grid{grid-template-columns:1fr}.stat{padding:12px 9px}.stat-number{font-size:1.24rem}.stat-label .icon{display:none}.form-grid{grid-template-columns:1fr}.brand small{display:none}.list-item{padding-left:12px;padding-right:12px}.list-item .right .btn{padding:8px;font-size:.75rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.partia-panel{margin-bottom:24px}.activity-card{padding:24px;display:grid;gap:14px}.activity-featured{border-color:#a9c7a2;background:linear-gradient(130deg,#fff 65%,#eef5e6);margin-bottom:16px}.activity-card h2{font-size:1.4rem}.activity-top{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.activity-time{display:flex;gap:8px;flex-wrap:wrap;font-size:1rem}.attendance-total{display:flex;align-items:baseline;gap:10px}.attendance-total>strong{font-size:2.6rem;font-weight:750;color:var(--green);line-height:1.1;letter-spacing:-.05em}.attendance-total>span{font-size:.95rem;color:var(--muted)}.rsvp-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rsvp-buttons .btn{min-height:54px}.rsvp-selected{box-shadow:0 0 0 3px #d8efb6;border-color:var(--green)}.rsvp-own{margin-top:-5px}.attendance-details{border-top:1px solid var(--border);padding-top:3px}.attendance-details>summary{display:flex;gap:8px;align-items:center;justify-content:space-between;cursor:pointer;min-height:48px;font-size:.88rem;font-weight:600}.attendance-people{display:grid;gap:11px;padding:6px 0 12px}.attendance-people>.row{align-items:flex-start}.attendance-people>.row>span{overflow-wrap:anywhere}.response-positive{color:var(--green);font-weight:650}.party-announcements{padding:14px;border-radius:12px;background:var(--tint);display:grid;gap:8px;font-size:.88rem;overflow-wrap:anywhere}.activity-actions,.party-shortcuts{display:flex;gap:8px;flex-wrap:wrap}.party-shortcuts{margin:14px 0}.profile-nudge{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px dashed #b9ccb5;border-radius:14px;padding:16px;margin-top:14px;background:#f8fbf5}.profile-nudge strong{font-size:.9rem}.celebrations{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}.planned-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.planned-grid .activity-card{padding:20px}.planned-grid .rsvp-buttons{gap:6px}.planned-grid .rsvp-buttons .btn{padding:10px;font-size:.8rem}.partia-collections .card-body>p{margin-top:10px}.partia-panel .section-spacer{margin-bottom:18px}
@media(max-width:680px){.activity-card,.planned-grid .activity-card{padding:20px 16px;gap:12px}.activity-card h2{font-size:1.3rem}.activity-top>.small{font-size:.78rem}.activity-time{font-size:.94rem;gap:7px}.rsvp-buttons{gap:7px}.rsvp-buttons .btn{padding:10px 6px;min-height:54px;font-size:.82rem;gap:5px}.rsvp-buttons .icon{width:18px;height:18px}.planned-grid{grid-template-columns:1fr}.profile-nudge{align-items:flex-start}.profile-nudge .btn{flex-shrink:0}.party-shortcuts .btn{font-size:.78rem}.attendance-people .small{font-size:.78rem}.activity-actions .btn{font-size:.76rem;padding:8px}.attendance-total>span{font-size:.85rem}}

/* Platby sú hlavnou úlohou; doplnky sa otvárajú až na požiadanie. */
.payment-overview{margin-bottom:28px}.payment-totals{display:flex;flex-wrap:wrap;gap:10px 24px;padding:14px 22px;background:var(--bg);font-size:.86rem;border-bottom:1px solid var(--border)}.payment-totals strong{margin-left:5px;font-variant-numeric:tabular-nums}.payment-player{align-items:flex-start}.payment-coverage{font-size:.85rem;color:var(--green);margin-top:4px;overflow-wrap:anywhere}.payment-player .right{display:grid;justify-items:end;gap:8px}.payment-player .right .pill{white-space:normal;text-align:left}.payment-notice{display:flex;align-items:flex-start;gap:12px;padding:18px 20px;margin-bottom:20px;border:1px solid #d8bb79;border-radius:16px;background:var(--amber-bg);color:var(--amber);overflow-wrap:anywhere}.payment-notice>.icon{margin-top:3px}.payment-notice p{margin-top:6px;font-size:.88rem}.payment-notice-today{border:1px solid var(--danger);background:var(--danger-bg);color:var(--danger)}.next-football-heading{margin-bottom:14px}.activity-featured .attendance-total>strong{font-size:2rem}.party-extras>summary{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:48px;cursor:pointer;font-size:.86rem;color:var(--muted)}.party-extras .activity-actions{padding-top:8px}.party-extras{border-top:1px solid var(--border)}
@media(max-width:680px){.payment-overview .card-head{align-items:flex-start;flex-wrap:wrap}.payment-totals{padding:12px 16px;font-size:.8rem;gap:8px 18px}.payment-player .payment-coverage{font-size:.8rem}.payment-player>.avatar{display:none}.payment-player .right{max-width:110px}.payment-notice{padding:16px 14px}.payment-notice p{font-size:.85rem}.payment-player .right .btn{font-size:.8rem}}

/* Hráč má jednu obrazovku termínu, financie zostávajú v správe. */
.player-shell{max-width:720px;padding-bottom:28px}.player-shell .page-heading{margin-bottom:18px}.player-match{background:var(--surface)}.activity-featured .player-count{display:grid;justify-items:center;gap:2px;padding:8px 0 14px}.activity-featured .player-count>strong{font-size:5rem;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.06em}.player-count>span{font-size:1rem}.attendance-roster{border-top:1px solid var(--border);padding-top:18px}.attendance-roster h3{margin-bottom:8px}.response-row{padding:12px 0;border-bottom:1px solid var(--border)}.response-row:last-child{border-bottom:0}.response-row>.row{align-items:flex-start}.response-status{font-size:.85rem;text-align:right;flex-shrink:0;max-width:45%;overflow-wrap:anywhere}.response-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-top:5px;font-size:.78rem;color:var(--muted)}.response-meta>div{min-width:0;overflow-wrap:anywhere}.response-meta .btn{flex-shrink:0;font-size:.78rem}.response-history-entry{padding:14px 0;border-bottom:1px solid var(--border)}.response-history-entry time{font-size:.8rem;color:var(--muted)}.response-history-entry p{margin-top:6px}.heading-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.party-extras[hidden]{display:none}
@media(max-width:680px){.player-shell{padding-bottom:24px}.heading-controls{width:100%;justify-content:space-between}.heading-controls>.btn{order:2}.heading-controls>.month-control{width:100%}.heading-controls>.month-control input{flex:1;width:0}.player-match .rsvp-buttons .btn{flex-direction:column;gap:5px;padding:9px 4px;font-size:.82rem;min-height:64px}.activity-featured .player-count>strong{font-size:4.75rem}.response-status{font-size:.82rem}.response-meta{font-size:.78rem}}

.join-shell{width:100%;max-width:560px;margin:0 auto;padding:32px 20px}.join-shell>.brand{margin-bottom:24px}.join-shell h1{font-size:1.65rem;margin-bottom:10px}.join-shell .auth-card{margin-top:0}.join-shell .birthday-fields{margin:0;padding:0;border:0;min-width:0}.birthday-fields legend{font-weight:650;margin-bottom:10px;font-size:.9rem}.birthday-fields>p{margin-top:8px}.join-shell>.btn{margin-top:12px}.join-shell .hint{font-weight:400}.join-shell input,.join-shell select{font-size:16px}
@media(max-width:680px){.join-shell{padding:24px 16px}.join-shell .auth-card{padding:22px 18px}.join-shell h1{font-size:1.5rem}}

.time-change-notice{padding:16px;margin:14px 0;border:1px solid var(--amber);border-radius:12px;background:var(--amber-bg);color:var(--amber);overflow-wrap:anywhere}.time-change-notice>strong{display:flex;gap:8px;align-items:center}.time-change-notice p{margin-top:7px}.time-change-notice .btn{margin-top:12px}.monthly-rule{margin:18px 0}

/* Tri hlavné obrazovky a ovládanie palcom. */
.mobile-shell{max-width:720px;padding:16px 16px calc(96px + env(safe-area-inset-bottom))}.mobile-shell .page-heading{margin-bottom:12px}.mobile-shell .page-heading h1{font-size:1.25rem}.mobile-shell .page-heading p{margin-top:4px}.topbar-inner{gap:8px}.topbar-inner>.row{gap:6px}.topbar .icon-btn,.topbar .account-button{min-width:44px;min-height:44px}.topbar .brand small{font-size:.66rem}.mobile-main-nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--border)}.mobile-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:54px;border:0;border-radius:12px;background:transparent;color:var(--muted);font:inherit;font-size:.82rem;font-weight:650;cursor:pointer}.mobile-tab[aria-current="page"]{background:var(--tint);color:var(--green)}.mobile-tab .icon{width:22px;height:22px}.mobile-match{padding:16px}.mobile-match-head{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:14px}.mobile-match-head>div:first-child{min-width:0}.mobile-match h2{font-size:1.05rem;margin:4px 0}.mobile-match .activity-time{font-size:.88rem;margin:4px 0}.mobile-match .player-count{display:flex;flex-direction:column;gap:0;flex-shrink:0;padding:0;min-width:82px}.mobile-match.activity-featured .player-count>strong{font-size:3.75rem;letter-spacing:-.05em;line-height:1}.mobile-match .player-count>span{font-size:.72rem}.mobile-match .rsvp-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.mobile-match .rsvp-buttons .btn{display:flex;flex-direction:column;gap:5px;min-width:0;min-height:68px;padding:10px 4px;font-size:.85rem;line-height:1.2;white-space:normal}.mobile-match .rsvp-own{font-size:.78rem;margin:8px 0}.mobile-match .attendance-roster{padding-top:12px;margin-top:12px}.mobile-match .attendance-roster h3{font-size:.95rem;margin-bottom:10px}.coming-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.coming-player{display:flex;align-items:flex-start;gap:5px;padding:7px 8px;min-width:0;background:var(--bg);border-radius:8px;font-size:.82rem;overflow-wrap:anywhere}.coming-player .icon{width:16px;height:16px;flex-shrink:0;margin-top:2px}.all-responses{margin-top:10px}.all-responses>summary,.match-info>summary,.personal-payment-history>summary,.guide-trouble>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;cursor:pointer;font-size:.85rem;color:var(--muted)}.match-info p{font-size:.88rem;margin:8px 0}.mobile-match .activity-actions{display:flex;flex-wrap:wrap;gap:8px}.mobile-match .party-extras{margin-top:8px}.mobile-match .activity-actions .btn{min-height:44px}.compact-payment-notice{width:100%;align-items:center;text-align:left;font:inherit;font-size:.8rem;padding:10px 12px;margin:12px 0;cursor:pointer;gap:8px}.compact-payment-notice>.icon{width:18px;height:18px;flex-shrink:0;margin:0}.compact-payment-notice>span{flex:1}.mobile-match .time-change-notice{padding:12px;font-size:.85rem}.mobile-shell .sync-footer{margin-top:12px;padding:8px 0;font-size:.75rem}.personal-payment-card h2{margin-top:8px}.personal-payment-amount{font-size:3rem;font-weight:750;line-height:1.2;margin:12px 0}.personal-payment-card .payment-coverage{margin-top:12px}.personal-payment-history .stack{padding-top:12px}.calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.calendar-controls h2{font-size:1.1rem;text-transform:capitalize;text-align:center}.calendar-controls .icon-btn{min-width:44px;min-height:44px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekday{text-align:center;font-size:.8rem;color:var(--muted);padding:6px 0}.calendar-empty{display:grid;place-items:center;min-height:44px;color:var(--muted);font-size:.9rem}.calendar-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;min-height:46px;border:1px solid var(--green);background:var(--tint);color:var(--green);border-radius:9px;font:inherit;font-weight:700;cursor:pointer}.calendar-day>span{font-size:.55rem;line-height:1.2}.calendar-day[aria-pressed="true"]{background:var(--green);color:white}.calendar-day[aria-current="date"]{outline:2px solid var(--green);outline-offset:2px}.calendar-canceled{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.calendar-canceled[aria-pressed="true"]{background:var(--danger);color:white}.calendar-legend{margin:14px 0}.calendar-event{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:16px;text-align:left;font:inherit;color:var(--text);cursor:pointer;margin:10px 0}.calendar-event>span{display:grid;gap:6px;min-width:0;overflow-wrap:anywhere}.calendar-event>span>span{font-size:.85rem;color:var(--muted)}.calendar-event>.icon{flex-shrink:0}.guide-platforms{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.guide-platforms .btn{min-height:48px}.guide-steps{padding-left:24px;margin:12px 0 20px}.guide-steps li{padding-left:4px;margin:10px 0;line-height:1.5}.guide-trouble{margin-top:16px}.guide-trouble p{font-size:.9rem;line-height:1.5}.admin-shell{padding-bottom:96px}.mobile-shell .card-body{padding:20px}
@media(min-width:760px){.mobile-main-nav{left:50%;right:auto;width:720px;transform:translateX(-50%);border:1px solid var(--border);border-bottom:0;border-radius:16px 16px 0 0}.topbar-inner{max-width:1120px}.mobile-shell{margin:0 auto}.calendar-day{min-height:56px}}
@media(max-width:360px){.topbar .brand small{display:none}.topbar-inner{padding:10px 12px}.mobile-shell{padding-left:12px;padding-right:12px}.mobile-match{padding:12px}.mobile-match-head{gap:8px}.mobile-match .player-count{min-width:70px}.mobile-match.activity-featured .player-count>strong{font-size:3.25rem}.mobile-match .rsvp-buttons .btn{font-size:.78rem}.calendar-grid{gap:4px}.calendar-controls h2{font-size:1rem}.coming-players{gap:6px}.mobile-tab{font-size:.76rem}}

/* Vybraný návrh 2: tmavé ihrisko, limetková účasť. */
:root{color-scheme:dark;--bg:#09151f;--surface:#14222e;--text:#f5f7fb;--muted:#b3bfcd;--green:#b4fa3e;--green-dark:#c9ff70;--tint:#1b2c3a;--lime:#b4fa3e;--border:#344451;--danger:#ffb5ad;--danger-bg:#3d242a;--amber:#ffda8a;--amber-bg:#352d1d;--shadow:0 5px 22px #0002;background:var(--bg);color:var(--text)}body{background:var(--bg);color:var(--text)}.btn{color:#0a1720}.btn.secondary{background:#182835;color:var(--text);border-color:#42525f}.btn.secondary:hover{background:#223645}.btn.ghost{background:transparent;color:var(--green)}.btn.ghost:hover{background:var(--tint)}.brand-mark{background:var(--green);color:#0a1720}.topbar{background:var(--bg);border-bottom:0}.topbar-inner{max-width:720px;padding-top:12px;padding-bottom:12px}.topbar .brand small{display:none}.brand strong{font-size:1.3rem}.avatar,.avatar.mine{background:var(--green);color:#09151f}.account-button{background:transparent;border-color:transparent}.icon-btn{background:transparent;color:var(--text);border-color:var(--border)}.icon-btn:hover{background:var(--tint)}.nav-button.active{color:#09151f}.mobile-shell{padding-top:10px}.football-home>.page-heading{margin:0;min-height:0}.football-home>.page-heading>div:first-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.mobile-match{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;overflow:visible}.mobile-match-head{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin:0}.mobile-match-head>div:first-child{width:100%}.match-day-actions{display:flex;align-items:center;justify-content:center;gap:12px;margin:2px 0 12px}.match-day-actions>p{background:#142330;border:1px solid var(--border);border-radius:24px;padding:7px 13px;font-size:.8rem;line-height:1.3;color:var(--text)}.quick-payment{font-size:.8rem;min-height:44px;padding:8px 12px;white-space:nowrap;gap:6px}.quick-payment .icon{width:18px;height:18px}.mobile-match h2{font-size:1.5rem;line-height:1.2;text-align:center;margin:10px 0 12px;letter-spacing:-.025em}.mobile-match .activity-time{text-align:center;font-size:.95rem;margin:0;word-spacing:2px}.mobile-match .activity-time strong{color:#f0f5df}.mobile-match.activity-featured .player-count{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0;margin:0;gap:0}.mobile-match.activity-featured .player-count>strong{font-family:Impact,'Arial Black',system-ui,sans-serif;font-size:6rem;line-height:.95;font-weight:900;letter-spacing:-.055em;color:var(--green)}.mobile-match .player-count>span{font-size:1rem;color:var(--text);font-weight:650}.attendance-controls{position:relative;margin-top:0}.mobile-match .rsvp-buttons{gap:8px}.mobile-match .rsvp-buttons .btn{min-height:78px;padding:10px 4px;font-size:.95rem;border-radius:16px;box-shadow:none}.mobile-match .rsvp-buttons .btn .icon{width:26px;height:26px}.mobile-match .rsvp-buttons .rsvp-selected{background:var(--green);color:#09151f;border-color:var(--green)}.mobile-match .rsvp-own{margin:8px 0 0;font-size:.75rem;color:var(--muted)}.mobile-match .attendance-roster{margin-top:16px;padding-top:12px;border-color:var(--border)}.mobile-match .attendance-roster h3{font-size:1.05rem;margin-bottom:10px}.coming-players{gap:0 18px}.coming-player{background:transparent;border-radius:0;border-bottom:1px solid #243542;padding:8px 0;font-size:.87rem;line-height:1.25;gap:7px;align-items:center}.coming-player .icon{width:17px;height:17px;color:var(--green);margin:0}.all-responses>summary,.match-info>summary{color:var(--muted);font-size:.85rem;min-height:44px}.all-responses{margin-top:10px}.mobile-main-nav{background:#0a1722;border-color:#263744;padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.mobile-tab{color:#bdc8d6;border-radius:0;border-bottom:3px solid transparent}.mobile-tab[aria-current="page"]{background:transparent;color:var(--green);border-bottom-color:var(--green)}.mobile-tab .icon{width:24px;height:24px}.calendar-day[aria-pressed="true"]{color:#09151f}.calendar-canceled[aria-pressed="true"]{color:#33151a;background:var(--danger)}.calendar-event{color:var(--text)}.response-positive{color:var(--green)}.rsvp-selected{box-shadow:none}.dialog-head,.dialog-footer{background:var(--surface);color:var(--text)}dialog{background:var(--surface);color:var(--text);border-color:var(--border)}input,select,textarea{color:var(--text);background:#0c1a26;border-color:var(--border)}input::placeholder,textarea::placeholder{color:#97a7b7}.payment-totals,.card-foot,.audit-detail{background:#101f2b}.pill{background:var(--tint);color:var(--green)}.pill.warn{color:var(--amber);background:var(--amber-bg)}.pill.red{color:var(--danger);background:var(--danger-bg)}.skip-link:focus{background:var(--surface);color:var(--text)}.loader{border-color:var(--border);border-top-color:var(--green)}


@media(max-width:360px){.topbar{padding-left:8px;padding-right:8px}.topbar-inner{padding:10px 4px}.brand strong{font-size:1.15rem}.mobile-shell{padding-top:4px}.mobile-match{padding:0}.match-day-actions{gap:8px;margin-bottom:8px}.match-day-actions>p{font-size:.68rem;padding:7px 8px}.quick-payment{font-size:.72rem;padding:8px;gap:4px}.mobile-match h2{font-size:1.3rem;margin:6px 0 8px}.mobile-match .activity-time{font-size:.82rem}.mobile-match-head{gap:8px}.mobile-match.activity-featured .player-count>strong{font-size:4.5rem}.mobile-match .player-count>span{font-size:.85rem}.mobile-match .rsvp-buttons .btn{min-height:68px;font-size:.8rem}.coming-player{font-size:.78rem}.mobile-match .attendance-roster{margin-top:12px}.coming-players{gap:0 12px}}


/* Dolaďovanie proti zvolenému obrázku a kontrast tmavých formulárov. */
.hint,.party-announcements{background:var(--tint);color:var(--muted)}.topbar .icon-btn{border-color:transparent}.mobile-shell{padding-top:4px}.football-home .partia-panel{margin-top:0}.mobile-match.activity-featured .player-count>strong{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:7rem;line-height:.88;font-weight:950;letter-spacing:-.065em}.mobile-match .activity-time{display:flex;justify-content:center;align-items:center;gap:12px;word-spacing:0}.mobile-match .activity-time>span{display:inline-flex;align-items:center;gap:5px}.mobile-match .activity-time>span+span{padding-left:12px;border-left:1px solid var(--border)}.mobile-match .activity-time .icon{width:18px;height:18px}.mobile-match .rsvp-own{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:360px){.mobile-shell{padding-top:0}.mobile-match.activity-featured .player-count>strong{font-size:5rem}.mobile-match .activity-time{font-size:.8rem;gap:8px}.mobile-match .activity-time>span+span{padding-left:8px}.mobile-match .activity-time .icon{width:15px;height:15px}}
.bottom-nav{background:#0a1722;border-color:var(--border)}.nav-button{color:var(--muted)}.nav-button.active{background:var(--tint);color:var(--green)}.toast{background:var(--tint);color:var(--text);border:1px solid var(--border)}.pill.gray{background:#24313a;color:#c5d0dc}

.bank-shortcut{display:flex;align-items:center;gap:8px;min-height:44px;width:100%;margin:10px 0 0;padding:8px 10px;background:var(--tint);color:var(--text);border:1px solid var(--border);border-radius:10px;text-align:left;font-size:.85rem}.bank-shortcut>span{flex:1}.bank-shortcut>strong{color:var(--green);font-variant-numeric:tabular-nums}.bank-shortcut .icon{width:18px;height:18px}.bank-card{margin-bottom:18px}.bank-card h2{font-size:1.05rem}.bank-balance{font-size:2.3rem;font-weight:800;color:var(--green);margin:6px 0 10px;font-variant-numeric:tabular-nums}.bank-negative{color:var(--danger)}.bank-card>.small{margin-top:8px}.bank-card>.btn{margin-top:10px}.fund-actions{display:grid;gap:10px;grid-template-columns:1fr}.player-payment-entry{padding:12px 0;border-bottom:1px solid var(--border)}.player-payment-entry p{margin-top:6px;font-size:.88rem}.player-payment-entry .row{gap:10px;align-items:flex-start}.player-payment-entry .row>strong:first-child{min-width:0;overflow-wrap:anywhere}.player-payment-entry .row>strong:last-child{flex-shrink:0}.payment-player .grow>.btn{padding-left:0;min-height:44px}

.attendance-controls{margin-top:16px}.match-day-actions:has(.admin-home-actions){flex-direction:column;gap:10px}.admin-home-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.admin-home-actions .btn{min-height:44px;white-space:normal}.payment-arrears{display:grid;gap:2px;text-align:right;font-size:.78rem;margin:7px 0}.payment-arrears strong{font-size:1rem;color:var(--amber);font-variant-numeric:tabular-nums}.payment-list-note{margin:0 0 12px;line-height:1.4}.payments-roster{margin-bottom:20px}.payments-roster .payment-player .right{max-width:115px}.payments-roster .payment-coverage{font-size:.8rem}.payments-roster .payment-player{gap:10px}.payments-roster .payment-player .grow>.btn{font-size:.78rem}@media(max-width:360px){.admin-home-actions .btn{font-size:.7rem;padding:8px 5px}.admin-home-actions .icon{width:16px;height:16px}.payment-arrears strong{font-size:.95rem}}

.payment-summary{padding:16px}.payment-summary-bank{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--border)}.payment-summary-bank h2{font-size:.85rem;color:var(--muted);margin:0 0 5px}.payment-summary-bank>div>strong{font-size:1.9rem;color:var(--green);font-variant-numeric:tabular-nums}.payment-summary-bank>div>.bank-negative{color:var(--danger)}.payment-summary-totals{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:14px}.payment-summary-totals>div{display:grid;gap:5px}.payment-summary-totals span{font-size:.76rem;color:var(--muted)}.payment-summary-totals strong{font-size:1.2rem;font-variant-numeric:tabular-nums}.payment-list-heading{align-items:center}.payment-list-heading h2{font-size:1rem}.payment-list-heading p{font-size:.75rem}.payment-list-heading>.btn{min-height:44px;font-size:.8rem;padding:10px}.payment-summary-row{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:12px;width:100%;min-height:64px;padding:12px 14px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.payment-summary-row:last-child{border-bottom:0}.payment-summary-row:hover,.payment-summary-row:active{background:var(--tint)}.payment-summary-person{display:grid;gap:4px;min-width:0}.payment-summary-person>strong{font-size:.9rem;overflow-wrap:anywhere}.payment-summary-person>span{font-size:.75rem;color:var(--muted)}.payment-summary-status{display:grid;gap:3px;text-align:right;font-size:.75rem;color:var(--green)}.payment-summary-status.has-arrears{color:var(--amber)}.payment-summary-status>strong{font-size:.95rem;font-variant-numeric:tabular-nums}.payment-summary-row>.icon{width:16px;height:16px;color:var(--muted)}.payment-transactions{margin:16px 0}.payment-transactions>summary,.payment-explanation>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:12px 14px;cursor:pointer;font-size:.85rem}.payment-transactions-body>p{padding:0 14px 12px}.payment-explanation>summary{padding-left:0;padding-right:0;color:var(--muted)}.payment-explanation .monthly-rule{margin-top:0}.player-payment-summary{display:grid;gap:12px;margin-bottom:16px}.player-payment-summary>p{color:var(--muted)}.player-payment-summary .row{gap:12px;font-size:.88rem}.player-payment-summary .row>strong{white-space:nowrap}@media(max-width:360px){.payment-summary-row{gap:8px;padding:12px 10px}.payment-summary-person>strong{font-size:.85rem}.payment-summary-status{font-size:.7rem}.payment-list-heading{gap:8px}.payment-list-heading h2{font-size:.9rem}.payment-list-heading>.btn{font-size:.75rem}.payment-summary-bank{gap:8px}.payment-summary-bank .btn{font-size:.75rem}}

.reserve-caption{margin-top:12px;line-height:1.4}.reserve-pending{padding:10px 0}.reserve-pending .row{gap:8px}.reserve-pending .btn{min-height:44px}.reserve-pending p{margin-bottom:8px}

.owner-sign-in{margin-top:14px;min-height:48px;text-align:center}.auth-note button{min-height:44px}.auth-note{line-height:1.6}#owner-entry-form .form-field{margin-top:14px}

/* Keep participation first; phone setup stays below the match. */
.install-shortcut{display:flex;align-items:center;gap:4px;width:auto;padding:6px}.install-shortcut span{font-size:.7rem;white-space:nowrap}.topbar-inner>.row{gap:4px}.mobile-match .attendance-roster{margin-top:14px}.mobile-match .admin-home-actions{margin-top:14px}.mobile-match .bank-shortcut{margin-top:14px}.mobile-setup{margin:14px 0 0;padding:14px;border:1px solid var(--border);border-radius:14px}.mobile-setup>p{font-size:.85rem;font-weight:700;margin:0 0 10px}.mobile-setup-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.mobile-setup-actions .btn{min-height:48px;white-space:normal;padding:10px;font-size:.8rem}.mobile-setup>small{display:block;color:var(--muted);font-size:.75rem;line-height:1.5;margin-top:10px}.push-example{display:grid;gap:6px;padding:14px;background:var(--tint);border:1px solid var(--border);border-radius:12px}.push-example>span{font-size:.85rem;color:var(--muted)}@media(max-width:360px){.topbar-inner{gap:4px}.topbar-inner .brand{gap:6px}.install-shortcut{padding:4px}.install-shortcut .icon{width:16px;height:16px}.install-shortcut span{font-size:.65rem}.topbar-inner>.row{gap:0}}

.calendar-day .calendar-day-markers{display:flex;align-items:center;justify-content:center;gap:4px;min-height:17px}.calendar-birthday-marker{display:inline-flex;color:var(--amber)}.calendar-birthday-marker .icon{width:15px;height:15px}.calendar-day.calendar-birthday-only{color:var(--amber);border-color:var(--amber);background:var(--amber-bg)}.calendar-day.calendar-birthday-only[aria-pressed="true"]{color:#09151f;background:var(--amber)}.calendar-day[aria-pressed="true"] .calendar-birthday-marker{color:#09151f}.calendar-legend>span{display:inline-flex;align-items:center;gap:4px}.calendar-legend .icon{width:16px;height:16px;color:var(--amber)}.calendar-birthdays{margin:16px 0}.calendar-birthdays>h3{display:flex;align-items:center;gap:8px;font-size:1rem;margin-bottom:8px}.calendar-birthdays>h3>.icon{width:20px;height:20px;color:var(--amber)}.calendar-birthday-entry{display:grid;grid-template-columns:54px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:12px;min-height:52px;border:1px solid var(--border);border-radius:10px;margin:6px 0}.calendar-birthday-entry>time{font-size:.85rem;color:var(--amber);font-variant-numeric:tabular-nums;white-space:nowrap}.calendar-birthday-entry>strong{font-size:.9rem;overflow-wrap:anywhere}.calendar-birthday-entry>.icon{width:19px;height:19px;color:var(--amber)}.calendar-birthday-entry[aria-current="date"]{background:var(--amber-bg);border-color:var(--amber)}

.calendar-nameday-marker{display:inline-flex;color:#9bcaff}.calendar-nameday-marker .icon{width:15px;height:15px}.calendar-day.calendar-nameday-only{border-color:#9bcaff;background:#172b43;color:#b5d8ff}.calendar-day.calendar-nameday-only[aria-pressed="true"]{background:#9bcaff;color:#09151f}.calendar-day[aria-pressed="true"] .calendar-nameday-marker{color:#09151f}.calendar-namedays{margin:16px 0}.calendar-namedays>h3{display:flex;align-items:center;gap:8px;font-size:1rem;margin-bottom:8px}.calendar-namedays>h3>.icon{width:20px;height:20px;color:#9bcaff}.calendar-nameday-entry{display:grid;grid-template-columns:54px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:12px;min-height:52px;border:1px solid var(--border);border-radius:10px;margin:6px 0}.calendar-nameday-entry>time{font-size:.85rem;color:#b5d8ff;white-space:nowrap}.calendar-nameday-entry>strong{font-size:.9rem;overflow-wrap:anywhere}.calendar-nameday-entry>.icon{width:19px;height:19px;color:#9bcaff}.calendar-nameday-entry[aria-current="date"]{background:#172b43;border-color:#9bcaff}.players-directory{margin-top:18px;border:1px solid var(--border);border-radius:12px;overflow:hidden}.players-directory>summary{display:flex;align-items:center;gap:8px;min-height:52px;padding:12px;cursor:pointer;font-weight:650}.players-directory>summary>span{flex:1}.players-directory>summary>.icon{width:20px;height:20px}.directory-next{padding:0 12px 12px}.directory-player{display:grid;grid-template-columns:minmax(0,1fr) minmax(70px,auto) 16px;gap:10px;align-items:center;width:100%;min-height:58px;padding:12px;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.directory-player:hover{background:var(--tint)}.directory-player>strong{font-size:.9rem;overflow-wrap:anywhere}.directory-status{text-align:right;font-size:.78rem;max-width:110px}.directory-player>.icon{width:16px;height:16px}.player-public-next{display:grid;gap:8px;margin:16px 0}.player-public-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.player-public-stats>div{display:grid;gap:6px;padding:14px;background:var(--tint);border-radius:12px}.player-public-stats strong{font-size:1.8rem;color:var(--green)}.player-public-stats span{font-size:.8rem;color:var(--muted)}.player-public-details{margin:16px 0}.player-public-details>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--border);font-size:.88rem}.player-public-details dt{color:var(--muted)}.player-public-details dd{margin:0;text-align:right;overflow-wrap:anywhere}

.calendar-day{padding:4px 1px;min-width:0}.calendar-day .calendar-day-markers{gap:1px}.calendar-day-markers .icon{width:12px;height:12px}

.registration-consent{margin:14px 0}.registration-consent>.check-row{align-items:flex-start;min-height:48px;cursor:pointer;line-height:1.5;padding:10px 0;gap:12px}.registration-consent>.check-row>input{flex:0 0 20px;margin-top:3px}.registration-consent>.check-row>span{min-width:0;font-size:.88rem}.privacy-notice>summary{min-height:48px;display:flex;align-items:center;padding:8px 0;color:var(--green);text-decoration:underline;cursor:pointer;font-size:.86rem}.privacy-notice>summary::after{content:"＋";margin-left:auto;padding-left:10px}.privacy-notice[open]>summary::after{content:"−"}.privacy-information{font-size:.88rem;line-height:1.6;overflow-wrap:anywhere}.privacy-information h3{font-size:.95rem;margin:14px 0 5px}.privacy-information p{margin:0 0 12px}.privacy-information a{color:var(--green);text-underline-offset:3px}

.mobile-main-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.simple-player-list{border:1px solid var(--border);border-radius:12px;overflow:hidden}.simple-player-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:56px;padding:14px 12px;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer}.simple-player-row:last-child{border-bottom:0}.simple-player-row>strong{min-width:0;overflow-wrap:anywhere;font-size:.92rem}.simple-player-row>.icon{flex:0 0 18px;width:18px;height:18px}.simple-player-row:hover{background:var(--tint)}.registered-players .directory-player:first-child{border-top:0}.player-list-actions{justify-content:flex-end;margin-bottom:12px}

.registration-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.install-offer{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.install-offer p{font-size:.9rem}.registration-request{padding:16px;border:1px solid var(--border);border-radius:12px}.registration-email{overflow-wrap:anywhere}.registration-request button{min-height:44px}

.registration-pending>button{margin-top:8px}.registration-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:16px;border:1px solid var(--border);border-radius:12px}
.registration-install{margin:0 0 24px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--tint)}.registration-install .guide-steps{margin:12px 0;padding-left:20px}.registration-install .guide-steps li{margin-bottom:8px}.registration-install>p:last-child{margin-bottom:0}
