:root{--pb-bg:#080b0d;--pb-card:#11171a;--pb-card2:#151d21;--pb-line:#253036;--pb-text:#f6f8f7;--pb-muted:#8f9ba1;--pb-green:#b6ff3f;--pb-danger:#ff5b68}
.pb-app{min-height:100vh;background:radial-gradient(circle at 10% 0%,#18241b 0,transparent 35%),var(--pb-bg);color:var(--pb-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:0 16px 50px;box-sizing:border-box}.pb-app *{box-sizing:border-box}.pb-topbar,.pb-main,.pb-footer{max-width:980px;margin:auto}.pb-topbar{padding:24px 0 18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.pb-brand{font-weight:950;letter-spacing:-1.5px;font-size:34px}.pb-brand span{color:var(--pb-green)}.pb-brand small{font-size:10px;color:var(--pb-muted);margin-left:8px;letter-spacing:.2px}.pb-brand-small{font-size:22px}.pb-season-name{color:var(--pb-muted);font-size:13px;margin-top:4px}.pb-user{display:flex;align-items:center;gap:9px;font-size:13px}.pb-user a{color:var(--pb-muted);text-decoration:none;margin-left:5px}.pb-main{display:grid;gap:16px}.pb-card{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),var(--pb-card);border:1px solid var(--pb-line);border-radius:22px;padding:22px;box-shadow:0 15px 50px rgba(0,0,0,.22)}.pb-hero-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:16px}.pb-next{background:radial-gradient(circle at 100% 0%,rgba(182,255,63,.15),transparent 35%),var(--pb-card)}.pb-kicker{text-transform:uppercase;letter-spacing:1.6px;color:var(--pb-green);font-weight:800;font-size:11px}.pb-date{font-size:34px;font-weight:900;letter-spacing:-1.3px;margin:7px 0 18px;text-transform:capitalize}.pb-versus{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.pb-team{display:grid;grid-template-columns:auto auto 1fr;align-items:center}.pb-team .pb-avatar:nth-child(2){margin-left:-11px}.pb-team strong{grid-column:1/4;margin-top:9px;font-size:15px}.pb-vs{font-weight:950;color:var(--pb-muted);font-size:13px}.pb-avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#2b373c,#131a1d);border:2px solid #344047;color:#fff;font-weight:900;object-fit:cover}.pb-avatar-md{width:54px;height:54px;font-size:15px}.pb-avatar-sm{width:34px;height:34px;font-size:10px}.pb-attend{display:flex;gap:8px;margin-top:20px}.pb-btn{appearance:none;border:1px solid #354147;background:#1b2428;color:#fff;border-radius:12px;padding:11px 15px;font-weight:800;cursor:pointer;font-size:13px}.pb-btn:hover{transform:translateY(-1px)}.pb-btn-primary{background:var(--pb-green);color:#0a0d0e;border-color:var(--pb-green)}.pb-btn-ghost{background:transparent;color:var(--pb-muted)}.pb-btn-danger{border-color:rgba(255,91,104,.45);color:#ff8a94;background:rgba(255,91,104,.08)}.pb-btn-small{padding:8px 11px;font-size:12px}.pb-dinner{text-align:center;display:flex;flex-direction:column;justify-content:center}.pb-dinner-icon{font-size:42px;margin:10px}.pb-dinner h3{font-size:19px;margin:5px 0}.pb-dinner p{color:var(--pb-muted);margin:2px 0}.pb-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:12px}.pb-section-head h2{margin:3px 0 0;font-size:26px;letter-spacing:-.8px}.pb-section-head>span{font-size:12px;color:var(--pb-muted)}.pb-table{display:grid}.pb-row{display:grid;grid-template-columns:30px 42px 1fr 85px 85px;gap:10px;align-items:center;padding:13px 4px;border-top:1px solid var(--pb-line)}.pb-row:first-child{border-top:0}.pb-rank{font-size:18px;font-weight:900;color:var(--pb-muted)}.pb-player-name{display:flex;flex-direction:column}.pb-row>div:not(.pb-player-name):not(.pb-rank):not(.pb-avatar){display:flex;flex-direction:column;align-items:flex-end}.pb-row small{color:var(--pb-muted);font-size:10px;margin-top:2px}.pb-row strong{font-size:15px}.pb-score{font-size:24px;font-weight:950;letter-spacing:.2px}.pb-muted{color:var(--pb-muted);font-weight:500}.pb-status{display:inline-flex;margin:7px 0 12px;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900}.pb-status.pending{background:#342e17;color:#ffd968}.pb-status.disputed{background:#371b20;color:#ff8c96}.pb-status.approved{background:#17321e;color:#93eea5}.pb-match-list{display:grid}.pb-match-item{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--pb-line)}.pb-match-item:first-child{border-top:0}.pb-match-no{width:30px;height:30px;border:1px solid var(--pb-line);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--pb-muted);font-weight:900;font-size:12px}.pb-match-info{display:flex;flex-direction:column}.pb-match-info strong{font-size:14px}.pb-match-info strong span{color:var(--pb-muted);font-weight:600}.pb-match-info small{color:var(--pb-muted);margin-top:3px}.pb-mini-score{font-weight:900}.pb-score-form{display:none;background:var(--pb-card2);border:1px solid var(--pb-line);padding:14px;border-radius:14px;margin:0 0 10px 46px;gap:8px;align-items:center;flex-wrap:wrap}.pb-score-form.is-open{display:flex}.pb-set{display:flex;align-items:center;gap:5px}.pb-set span{font-size:11px;color:var(--pb-muted);margin-right:3px}.pb-set input{width:48px;background:#0b1012;border:1px solid var(--pb-line);color:white;border-radius:9px;padding:9px;text-align:center}.pb-inline-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.pb-inline-form input,.pb-auth input,.pb-auth select{background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:12px;padding:12px 13px;outline:none}.pb-admin p,.pb-empty p{color:var(--pb-muted)}.pb-footer{padding:22px 0;color:#69767c;text-align:center;font-size:11px}.pb-auth-wrap{max-width:430px;margin:0 auto;padding:9vh 0 40px}.pb-auth-wrap>.pb-brand{text-align:center;margin-bottom:20px}.pb-auth h1{font-size:34px;margin:7px 0 5px;letter-spacing:-1.3px}.pb-auth p{color:var(--pb-muted);margin-top:0}.pb-auth form{display:grid;gap:12px;margin-top:22px}.pb-auth label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#b9c1c5}.pb-alert,.pb-toast{border:1px solid rgba(255,91,104,.35);background:rgba(255,91,104,.08);color:#ff9ca4;border-radius:12px;padding:10px 12px;font-size:12px;font-weight:700}.pb-toast{max-width:980px;margin:0 auto 16px;border-color:rgba(182,255,63,.3);background:rgba(182,255,63,.07);color:#d5ff91}
@media(max-width:720px){.pb-app{padding:0 11px 35px}.pb-topbar{padding-top:17px}.pb-user span{display:none}.pb-hero-grid{grid-template-columns:1fr}.pb-card{padding:17px;border-radius:18px}.pb-date{font-size:28px}.pb-row{grid-template-columns:25px 36px 1fr 57px 60px}.pb-row .pb-avatar-sm{width:30px;height:30px}.pb-row small{font-size:9px}.pb-section-head h2{font-size:22px}.pb-section-head>span{display:none}.pb-score{font-size:18px}.pb-match-info strong{font-size:12px}.pb-score-form{margin-left:0}.pb-set{width:100%}.pb-set input{width:52px}.pb-inline-form{display:grid}.pb-inline-form>*{width:100%}.pb-brand{font-size:30px}}
.pb-confirmations{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}.pb-confirmations span{border:1px solid var(--pb-line);border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;color:var(--pb-muted)}.pb-confirmations span.yes{background:rgba(182,255,63,.08);border-color:rgba(182,255,63,.25);color:#d9ff9c}

/* v0.2.0 mobile/full-screen polish */
.pb-app{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));overflow-x:hidden}
.pb-topbar,.pb-main,.pb-footer,.pb-toast,.pb-season-tabs{width:100%;max-width:1040px}
.pb-season-tabs{margin:0 auto 16px;display:flex;gap:8px;overflow-x:auto;padding:2px 0 3px;scrollbar-width:none}.pb-season-tabs::-webkit-scrollbar{display:none}
.pb-season-tab{flex:0 0 auto;text-decoration:none;color:var(--pb-muted);border:1px solid var(--pb-line);background:#0d1214;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:850;display:inline-flex;align-items:center;gap:7px}.pb-season-tab i{font-style:normal;color:var(--pb-green);font-size:9px;text-transform:uppercase;letter-spacing:.8px}.pb-season-tab.is-active{color:#0b0e0f;background:var(--pb-green);border-color:var(--pb-green)}.pb-season-tab.is-active i{color:#304300}
.pb-inline-form input{min-width:0;max-width:100%;width:auto}.pb-inline-form input[type="date"]{appearance:none;-webkit-appearance:none;min-height:46px;background:#0b1012;color:var(--pb-text);color-scheme:dark}
.pb-auth input,.pb-auth select,.pb-inline-form input{font-size:16px}
@media(max-width:720px){
  .pb-app{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(34px,env(safe-area-inset-bottom))}
  .pb-topbar{gap:10px}.pb-brand.pb-brand-small{font-size:27px;white-space:nowrap}.pb-brand small{font-size:9px;margin-left:5px}.pb-season-name{font-size:12px}
  .pb-user{gap:7px;white-space:nowrap}.pb-user a{font-size:12px;margin-left:1px}
  .pb-card{padding:18px 16px}.pb-inline-form{grid-template-columns:1fr}.pb-inline-form input,.pb-inline-form button{width:100%;max-width:100%}
  .pb-date{line-height:1.05}.pb-team strong{font-size:13px}.pb-versus{gap:8px}.pb-avatar-md{width:48px;height:48px}
  .pb-season-tabs{margin-bottom:13px}
}

/* v0.2.1 profile + password recovery */
.pb-auth-link{display:inline-block;margin-top:18px;color:#b8c2c7;text-decoration:none;font-weight:700}.pb-auth-link:hover{color:#a9ff27}.pb-profile-main{max-width:760px}.pb-profile-card{padding:28px}.pb-profile-head{display:flex;align-items:center;gap:18px;margin-bottom:24px}.pb-profile-head h2{margin:3px 0 5px}.pb-profile-head p{margin:0;color:#8e9aa0}.pb-profile-form{display:grid;gap:14px}.pb-profile-divider{display:flex;align-items:center;gap:12px;margin:10px 0 2px;color:#7f8a90;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.pb-profile-divider:after{content:"";height:1px;background:#273239;flex:1}.pb-user a{white-space:nowrap}@media(max-width:640px){.pb-user span{display:none}.pb-user{gap:10px}.pb-user a{font-size:13px}.pb-profile-card{padding:20px}.pb-profile-head{align-items:flex-start}}

/* v0.2.3 avatar lightbox */
.pb-avatar-clickable{cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.pb-avatar-clickable:hover{transform:scale(1.05);border-color:var(--pb-green);box-shadow:0 0 0 3px rgba(182,255,63,.12)}.pb-avatar-clickable:focus-visible{outline:3px solid var(--pb-green);outline-offset:3px}.pb-avatar-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}.pb-avatar-modal.is-open{display:flex}.pb-avatar-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.86);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pb-avatar-modal-dialog{position:relative;z-index:1;width:min(86vw,620px);display:flex;flex-direction:column;align-items:center}.pb-avatar-modal-dialog img{display:block;width:min(82vw,580px);height:auto;max-height:78vh;object-fit:contain;border-radius:28px;border:3px solid var(--pb-green);background:#080b0d;box-shadow:0 22px 80px rgba(0,0,0,.6)}.pb-avatar-modal-close{position:absolute;top:-18px;right:-18px;width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,255,255,.25);background:#11171a;color:#fff;font-size:34px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;box-shadow:0 8px 30px rgba(0,0,0,.4)}.pb-avatar-modal-close:hover,.pb-avatar-modal-close:focus-visible{background:var(--pb-green);color:#080b0d;border-color:var(--pb-green);outline:none}.pb-avatar-modal-name{margin-top:12px;font-weight:900;font-size:16px;color:#fff}.pb-modal-open{overflow:hidden}@media(max-width:640px){.pb-avatar-modal{padding:18px}.pb-avatar-modal-dialog{width:92vw}.pb-avatar-modal-dialog img{width:88vw;border-radius:22px}.pb-avatar-modal-close{top:-14px;right:-6px;width:46px;height:46px}}


/* v0.2.5 winner highlighting */
.pb-team-winner{color:var(--pb-green)!important;font-weight:950!important;text-shadow:0 0 18px rgba(182,255,63,.12)}
.pb-team-loser{color:#829097!important;font-weight:650!important}
.pb-vs-inline{color:var(--pb-muted)!important;font-weight:600!important}
.pb-match-info strong .pb-team-winner{letter-spacing:-.1px}

/* v0.3.0 form, partner chemistry and Hall of Fame */
.pb-season-finale{display:flex;align-items:center;gap:18px;background:radial-gradient(circle at 0 50%,rgba(255,205,67,.13),transparent 32%),var(--pb-card);border-color:rgba(255,205,67,.32)}
.pb-season-finale h2{margin:3px 0 6px;font-size:28px}.pb-season-finale p{margin:0;color:var(--pb-muted)}.pb-finale-crown{font-size:48px;line-height:1}
.pb-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pb-form-player{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 13px;border:1px solid var(--pb-line);border-radius:14px;background:rgba(255,255,255,.018)}.pb-form-name{display:flex;flex-direction:column;min-width:0}.pb-form-name small{color:var(--pb-muted);font-size:10px;margin-top:2px}.pb-form-dots{display:flex;gap:5px}.pb-form-dots span{width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:950;border:1px solid var(--pb-line)}.pb-form-dots .win{background:rgba(182,255,63,.12);border-color:rgba(182,255,63,.34);color:var(--pb-green)}.pb-form-dots .loss{background:rgba(255,91,104,.08);border-color:rgba(255,91,104,.24);color:#ff8e98}
.pb-partner-list{display:grid}.pb-partner-row{display:grid;grid-template-columns:30px 62px 1fr auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid var(--pb-line)}.pb-partner-row:first-child{border-top:0}.pb-partner-rank{font-weight:950;color:var(--pb-muted);font-size:18px}.pb-partner-avatars{display:flex}.pb-partner-avatars .pb-avatar+ .pb-avatar{margin-left:-8px}.pb-partner-names{display:flex;flex-direction:column}.pb-partner-names small{color:var(--pb-muted);font-size:10px;margin-top:2px}.pb-partner-pct{font-size:22px;font-weight:950;color:var(--pb-green)}
.pb-hall-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pb-hall-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px 12px;border:1px solid rgba(255,205,67,.25);border-radius:16px;background:linear-gradient(180deg,rgba(255,205,67,.055),rgba(255,255,255,.01))}.pb-hall-card .pb-avatar{border-color:#b99434}.pb-hall-card strong{margin-top:9px;font-size:16px}.pb-hall-card>span{font-size:11px;color:#d7bd71;margin-top:3px}.pb-hall-card small{color:var(--pb-muted);margin-top:8px;font-size:9px}.pb-hall-crown{position:absolute;top:8px;right:10px;font-size:21px}
@media(max-width:720px){.pb-season-finale{align-items:flex-start}.pb-finale-crown{font-size:38px}.pb-season-finale h2{font-size:22px}.pb-form-grid{grid-template-columns:1fr}.pb-form-player{grid-template-columns:auto 1fr}.pb-form-dots{grid-column:2}.pb-hall-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pb-partner-row{grid-template-columns:24px 54px 1fr auto}.pb-partner-pct{font-size:18px}}

/* v0.3.2 – admin login statistics */
.pb-login-summary{display:grid;gap:10px;margin:14px 0 18px}.pb-login-player{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.035)}.pb-login-player>div{min-width:0;display:flex;flex-direction:column;gap:2px}.pb-login-player strong{font-size:15px}.pb-login-player span{font-size:12px;opacity:.68}.pb-login-player b{font-size:12px;white-space:nowrap;color:#a6ff58}.pb-login-recent{margin-top:8px}.pb-login-recent h3{margin:0 0 8px;font-size:15px}.pb-login-row{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:13px}.pb-login-row span{opacity:.7;text-align:right}.pb-muted{opacity:.65}@media(max-width:520px){.pb-login-player{grid-template-columns:auto minmax(0,1fr)}.pb-login-player>b{grid-column:2}.pb-login-row{align-items:flex-start;flex-direction:column;gap:2px}.pb-login-row span{text-align:left}}

/* v0.3.3 – samlet adminområde */
.pb-admin-link{color:var(--pb-green)!important;font-weight:900}.pb-admin-main{max-width:980px}.pb-admin-hero{display:flex;align-items:center;justify-content:space-between;gap:18px}.pb-admin-hero h1{margin:3px 0 5px;font-size:34px;letter-spacing:-1px}.pb-admin-hero p{margin:0;color:var(--pb-muted)}.pb-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pb-admin-form{display:grid;gap:12px;margin-top:16px}.pb-admin-form label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#b9c1c5}.pb-admin-form input,.pb-admin-form select{width:100%;min-width:0;max-width:100%;background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:12px;padding:12px 13px;outline:none;font-size:16px}.pb-admin-form input[type="date"]{appearance:none;-webkit-appearance:none;color-scheme:dark;min-height:46px}.pb-admin-season-list{margin-top:20px;padding-top:16px;border-top:1px solid var(--pb-line)}.pb-admin-season-list h3{font-size:14px;margin:0 0 8px}.pb-admin-season-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.06);font-size:13px}.pb-admin-season-row:first-of-type{border-top:0}.pb-admin-season-row a{color:var(--pb-green);text-decoration:none;font-weight:800}.pb-admin-status{display:inline-flex;border-radius:999px;padding:4px 8px;background:rgba(182,255,63,.1);color:var(--pb-green);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.5px}
@media(max-width:720px){.pb-admin-grid{grid-template-columns:1fr}.pb-admin-hero{align-items:flex-start;flex-direction:column}.pb-admin-hero .pb-btn{width:100%;text-align:center}.pb-admin-season-row{grid-template-columns:1fr auto}.pb-admin-season-row a{grid-column:1/3}.pb-user{flex-wrap:wrap;justify-content:flex-end;row-gap:4px}.pb-user .pb-avatar{flex:0 0 auto}}

/* v0.4.0 – private tournament builder */
.pb-tournaments-link{color:#fff!important;font-weight:900}.pb-tournaments-main{max-width:1040px}.pb-tournament-hero{display:flex;align-items:center;justify-content:space-between;gap:18px}.pb-tournament-hero h1{margin:3px 0 6px;font-size:34px;letter-spacing:-1px}.pb-tournament-hero p{margin:0;color:var(--pb-muted)}
.pb-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:4px}.pb-format-card{appearance:none;-webkit-appearance:none;text-align:left;border:1px solid var(--pb-line);background:rgba(255,255,255,.025);color:#fff;border-radius:17px;padding:16px;display:grid;grid-template-columns:auto 1fr;column-gap:11px;row-gap:4px;cursor:pointer;transition:.15s ease}.pb-format-card>span{font-size:27px;grid-row:1/3}.pb-format-card strong{font-size:15px}.pb-format-card small{color:var(--pb-muted);line-height:1.4;font-size:11px}.pb-format-card:hover,.pb-format-card.is-selected{border-color:rgba(182,255,63,.55);background:rgba(182,255,63,.07)}.pb-format-card.is-selected{box-shadow:inset 0 0 0 1px rgba(182,255,63,.2)}
.pb-tournament-form{display:grid;gap:14px}.pb-tournament-form label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#bdc5c9}.pb-tournament-form input,.pb-tournament-form select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:12px;padding:12px 13px;font-size:16px;outline:none}.pb-tform-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.pb-player-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pb-player-inputs label{padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:13px;background:rgba(255,255,255,.018)}.pb-format-help{padding:12px 14px;border-left:3px solid var(--pb-green);background:rgba(182,255,63,.055);border-radius:0 12px 12px 0;color:#c9d0d3;font-size:12px;line-height:1.45}.pb-choose-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pb-choose-grid>div{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--pb-line);border-radius:13px}.pb-choose-grid b{font-size:12px}.pb-choose-grid span{font-size:11px;color:var(--pb-green);font-weight:800;text-align:right}
.pb-my-tournaments{display:grid;gap:8px}.pb-my-tournament{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid var(--pb-line);border-radius:14px;text-decoration:none;color:#fff;background:rgba(255,255,255,.018)}.pb-my-tournament:hover{border-color:rgba(182,255,63,.4)}.pb-my-tournament .pb-t-icon{font-size:27px}.pb-my-tournament>div{display:flex;flex-direction:column;min-width:0}.pb-my-tournament strong{font-size:14px}.pb-my-tournament small{font-size:10px;color:var(--pb-muted);margin-top:3px}.pb-my-tournament>b{font-size:24px;color:var(--pb-green)}
.pb-tournament-table{display:grid}.pb-trow{display:grid;grid-template-columns:30px minmax(0,1fr) 55px 60px 52px;gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--pb-line);font-size:12px}.pb-trow:first-child{border-top:0}.pb-trow>b{font-size:17px;color:var(--pb-muted)}.pb-trow strong{font-size:14px}.pb-trow span{text-align:right}.pb-trow .positive{color:var(--pb-green);font-weight:900}.pb-trow .negative{color:#ff8993;font-weight:900}
.pb-tmatch-list{display:grid;gap:9px}.pb-tmatch{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--pb-line);border-radius:14px;background:rgba(255,255,255,.018)}.pb-court{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--pb-green)}.pb-tteams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center}.pb-tteams strong{font-size:12px}.pb-tteams span{font-size:10px;color:var(--pb-muted)}.pb-tscore{font-size:20px;font-weight:950;white-space:nowrap}.pb-t-score-form{display:grid;grid-template-columns:52px auto 52px auto;gap:6px;align-items:center}.pb-t-score-form input{width:52px;box-sizing:border-box;background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:9px;padding:9px 5px;text-align:center;font-size:16px}.pb-t-score-form b{color:var(--pb-muted)}.pb-t-winner{display:flex;align-items:center;gap:18px;border-color:rgba(255,205,67,.32);background:linear-gradient(135deg,rgba(255,205,67,.08),rgba(255,255,255,.015))}.pb-t-winner h2{margin:3px 0}
@media(max-width:720px){.pb-tournament-hero{align-items:flex-start;flex-direction:column}.pb-tournament-hero .pb-btn{width:100%;text-align:center}.pb-format-grid{grid-template-columns:1fr}.pb-tform-row{grid-template-columns:1fr 1fr}.pb-tform-row label:last-child{grid-column:1/3}.pb-player-inputs{grid-template-columns:1fr}.pb-choose-grid{grid-template-columns:1fr}.pb-tmatch{grid-template-columns:1fr;gap:7px}.pb-tteams{grid-template-columns:1fr auto 1fr}.pb-t-score-form{justify-content:start}.pb-tscore{justify-self:start}.pb-court{margin-bottom:1px}.pb-trow{grid-template-columns:24px minmax(0,1fr) 42px 50px 44px;gap:5px}.pb-trow strong{font-size:12px}}

/* v0.4.2 – scroll/tap score pickers for league + tournaments */
.pb-score-picker{appearance:auto;-webkit-appearance:menulist;width:58px;min-width:58px;height:44px;background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:10px;padding:0 8px;text-align:center;text-align-last:center;font-size:17px;font-weight:900;line-height:44px;color-scheme:dark;cursor:pointer}
.pb-score-picker:focus{outline:2px solid rgba(182,255,63,.5);outline-offset:1px;border-color:var(--pb-green)}
.pb-set .pb-score-picker{width:58px}.pb-t-score-form .pb-score-picker{width:58px;min-width:58px}
@media(max-width:720px){.pb-score-picker{height:48px;font-size:18px}.pb-set{justify-content:flex-start;gap:8px}.pb-set span{min-width:42px}.pb-t-score-form{grid-template-columns:58px auto 58px auto;gap:8px}}

/* v0.4.3: keep saved tournament match in view after submit */
.pb-tmatch { scroll-margin-top: 96px; }
.pb-tmatch:target { outline: 2px solid rgba(143, 214, 58, .55); outline-offset: 3px; }

/* v0.4.4 – tournament selection, history and deletion */
.pb-format-card:not(.is-selected){background:rgba(255,255,255,.025);border-color:var(--pb-line);box-shadow:none}
.pb-tournament-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.pb-tournament-actions form{margin:0}
.pb-btn-danger{background:rgba(255,80,90,.08)!important;border:1px solid rgba(255,90,100,.28)!important;color:#ff939b!important}
.pb-my-tournament-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.pb-my-tournament-row .pb-my-tournament{min-width:0}.pb-list-delete-form{margin:0}
.pb-icon-delete{width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,90,100,.22);background:rgba(255,90,100,.06);color:#ff939b;font-size:24px;line-height:1;cursor:pointer}
.pb-my-tournament-finished{opacity:.76}.pb-history-card{margin-top:20px}
#pbTournamentCreate[hidden]{display:none!important}
@media(max-width:720px){.pb-tournament-actions{width:100%}.pb-tournament-actions .pb-btn,.pb-tournament-actions form{flex:1}.pb-tournament-actions form .pb-btn{width:100%}}

/* v0.4.5 – languages + cleaner tournament delete */
.pb-text-delete{appearance:none;border:0;background:transparent;color:#ff6f79;font:inherit;font-size:13px;font-weight:850;padding:10px 7px;cursor:pointer;text-decoration:none;white-space:nowrap}
.pb-text-delete:hover{text-decoration:underline;color:#ff9097}
.pb-lang-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--pb-line);border-radius:10px;background:rgba(255,255,255,.025)}
.pb-lang-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:28px;padding:0 6px;border-radius:7px;color:var(--pb-muted)!important;text-decoration:none!important;font-size:10px!important;font-weight:900!important;letter-spacing:.4px}
.pb-lang-switch a.is-active{background:var(--pb-green);color:#0a0d0e!important}
@media(max-width:720px){.pb-lang-switch{order:20}.pb-lang-switch a{min-width:28px;height:27px;padding:0 5px}.pb-text-delete{padding:9px 4px}}

/* v0.4.6 – make tournament format names explicit and theme-proof */
.pb-format-card strong{
  display:block;
  color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
  font-weight:800 !important;
  line-height:1.2;
}
.pb-format-card small{
  display:block;
}

/* v0.4.8 remembered tournament players */
.pb-saved-player-hint{margin-top:10px;font-size:12px;line-height:1.4;color:var(--pb-muted,#94a3b8)}

/* v0.4.9 visual draw + seeding */
.pb-draw-setup{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:18px 0 12px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.035)}
.pb-draw-setup>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}.pb-draw-setup small{opacity:.72}
.pb-draw-mode{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.pb-draw-mode-btn{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:inherit;padding:9px 12px;border-radius:999px;font:inherit;font-weight:700;cursor:pointer}.pb-draw-mode-btn.is-active{background:#b7ff00;color:#091006;border-color:#b7ff00}
.pb-player-entry{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;align-items:end}.pb-player-entry .pb-seed-label{display:none}.pb-player-entry.show-seed{grid-template-columns:minmax(0,1fr) 92px}.pb-player-entry.show-seed .pb-seed-label{display:flex;flex-direction:column;gap:6px}.pb-seed-select{width:100%;min-height:44px}
.pb-draw-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}.pb-draw-actions small{opacity:.7}.pb-draw-actions .is-done{border-color:rgba(183,255,0,.55);color:#b7ff00}
.pb-draw-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.84);backdrop-filter:blur(8px)}.pb-draw-modal.is-open{display:flex}.pb-draw-stage{position:relative;width:min(620px,100%);max-height:92vh;overflow:auto;padding:28px 20px 22px;border-radius:24px;border:1px solid rgba(183,255,0,.28);background:linear-gradient(180deg,#161a18,#0d100f);text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.6)}
.pb-draw-close{position:absolute;right:12px;top:10px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#fff;font-size:30px;line-height:1;cursor:pointer}.pb-draw-machine{height:120px;margin:2px auto 12px;max-width:260px;border:2px solid rgba(183,255,0,.38);border-radius:60px 60px 28px 28px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 35%,rgba(183,255,0,.12),rgba(255,255,255,.02) 55%,transparent 70%)}.pb-draw-machine span{position:absolute;width:38px;height:38px;border-radius:50%;background:#d4ff58;color:#111;box-shadow:inset -5px -6px 0 rgba(0,0,0,.14)}.pb-draw-machine span:nth-child(1){left:25px;top:55px}.pb-draw-machine span:nth-child(2){left:70px;top:20px}.pb-draw-machine span:nth-child(3){left:112px;top:62px}.pb-draw-machine span:nth-child(4){left:156px;top:22px}.pb-draw-machine span:nth-child(5){left:198px;top:62px}.pb-draw-machine span:nth-child(6){left:94px;top:4px}.pb-draw-modal.is-open .pb-draw-machine span{animation:pbBallRoll 1.35s ease-in-out infinite alternate}.pb-draw-modal.is-open .pb-draw-machine span:nth-child(2n){animation-delay:-.5s}.pb-draw-modal.is-open .pb-draw-machine span:nth-child(3n){animation-delay:-.9s}@keyframes pbBallRoll{from{transform:translate(-9px,10px) rotate(0)}to{transform:translate(13px,-11px) rotate(180deg)}}
.pb-draw-reveal{margin:14px auto 8px;min-height:72px;display:flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:18px;background:rgba(183,255,0,.08);border:1px solid rgba(183,255,0,.18);font-size:clamp(25px,7vw,42px);font-weight:900;letter-spacing:-.03em}.pb-draw-reveal.is-pop{animation:pbReveal .3s ease}@keyframes pbReveal{0%{transform:scale(.82);opacity:.2}100%{transform:scale(1);opacity:1}}.pb-draw-progress{opacity:.62;font-size:13px;margin-bottom:14px}.pb-draw-results{display:grid;gap:8px;margin:10px 0 18px;text-align:left}.pb-drawn-team{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.045)}.pb-drawn-team>b{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#b7ff00}.pb-drawn-team span{font-weight:800}.pb-drawn-team em{font-style:normal;color:#b7ff00;margin:0 5px}.pb-drawn-team small{display:inline-block;margin:0 8px;opacity:.5;font-weight:600}.pb-draw-order{display:flex;flex-wrap:wrap;gap:7px}.pb-draw-order span{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.055)}.pb-draw-order b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#b7ff00;color:#10140d;font-size:11px}.pb-draw-order small{color:#b7ff00}.pb-draw-final-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.pb-modal-open{overflow:hidden}
@media(max-width:600px){.pb-draw-setup{align-items:flex-start;flex-direction:column}.pb-draw-mode{justify-content:flex-start}.pb-player-entry.show-seed{grid-template-columns:minmax(0,1fr) 86px}.pb-draw-stage{padding:22px 14px 18px;border-radius:20px}.pb-draw-machine{height:95px;max-width:220px}.pb-drawn-team{grid-template-columns:64px 1fr}}
@media(prefers-reduced-motion:reduce){.pb-draw-machine span,.pb-draw-reveal.is-pop{animation:none!important}}


/* v0.5.0 – cleaner live draw close button and fixed-team VS layout */
.pb-draw-close{
  position:absolute!important;right:14px!important;top:14px!important;
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  padding:0!important;margin:0!important;border:1px solid rgba(255,255,255,.16)!important;
  border-radius:50%!important;background:#202623!important;color:#f3f6f4!important;
  font-family:Arial,sans-serif!important;font-size:25px!important;font-weight:400!important;line-height:34px!important;
  display:grid!important;place-items:center!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;
}
.pb-draw-close:hover,.pb-draw-close:focus-visible{background:#2a312d!important;border-color:rgba(183,255,0,.55)!important;color:#b7ff00!important;outline:none!important}
.pb-draw-matchup{margin:12px 0 18px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.025);text-align:center}
.pb-draw-match-label{margin-bottom:9px;font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.48)}
.pb-draw-team-card{padding:13px 12px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.04)}
.pb-draw-team-card.is-complete{border-color:rgba(183,255,0,.28);background:rgba(183,255,0,.055)}
.pb-draw-team-card small{display:block;margin-bottom:4px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#b7ff00}
.pb-draw-team-card strong{display:block;font-size:20px;line-height:1.25;color:#fff}.pb-draw-team-card em{font-style:normal;color:#b7ff00;margin:0 5px}
.pb-draw-vs{display:flex;align-items:center;justify-content:center;gap:10px;margin:9px 0;font-size:16px;font-weight:1000;letter-spacing:.12em;color:#b7ff00}
.pb-draw-vs:before,.pb-draw-vs:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(183,255,0,.38))}.pb-draw-vs:after{background:linear-gradient(90deg,rgba(183,255,0,.38),transparent)}
@media(max-width:600px){.pb-draw-close{right:10px!important;top:10px!important}.pb-draw-team-card strong{font-size:18px}}

/* v0.5.1 – format advisor */
.pb-format-advisor .pb-section-head p{max-width:720px;margin-top:7px;color:var(--pb-muted);line-height:1.45}
.pb-advisor-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.pb-advisor-inputs label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:850}.pb-advisor-inputs select{width:100%;min-height:48px}
.pb-advisor-summary{margin:14px 0 10px;padding:11px 13px;border-radius:13px;background:rgba(183,255,0,.06);border:1px solid rgba(183,255,0,.14);color:var(--pb-muted);font-size:12px}.pb-advisor-summary strong{color:#fff}
.pb-advisor-results{display:grid;gap:10px}.pb-advisor-result{appearance:none;width:100%;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;padding:14px;border:1px solid var(--pb-line);border-radius:16px;background:rgba(255,255,255,.025);color:inherit;cursor:pointer;font:inherit}.pb-advisor-result:hover{border-color:rgba(183,255,0,.3);background:rgba(183,255,0,.035)}.pb-advisor-result.is-best{border-color:rgba(183,255,0,.42);background:rgba(183,255,0,.055)}
.pb-advisor-icon{font-size:24px}.pb-advisor-result div{min-width:0}.pb-advisor-result strong{display:block;color:#fff;font-size:16px}.pb-advisor-result p{margin:4px 0 5px;color:var(--pb-muted);font-size:12px;line-height:1.35}.pb-advisor-result small{display:block;color:#b7ff00;font-size:11px;line-height:1.4}.pb-advisor-result>b{font-size:24px;color:#b7ff00}.pb-advisor-best,.pb-advisor-rank{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:6px 8px;border-radius:999px;font-size:9px;font-weight:950;letter-spacing:.08em}.pb-advisor-best{background:#b7ff00;color:#0b1009}.pb-advisor-rank{min-width:34px;background:rgba(255,255,255,.07);color:var(--pb-muted)}
@media(max-width:650px){.pb-advisor-inputs{grid-template-columns:1fr 1fr}.pb-advisor-inputs label:last-child{grid-column:1/-1}.pb-advisor-result{grid-template-columns:auto minmax(0,1fr) auto}.pb-advisor-best,.pb-advisor-rank{grid-column:1/-1;justify-self:start}.pb-advisor-icon{font-size:21px}}


/* v0.5.2 – cleaner tournament format cards + readable duration */
.pb-format-card{
  grid-template-columns:38px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto;
  align-items:start!important;
  justify-items:stretch!important;
  column-gap:12px!important;
  row-gap:5px!important;
  padding:15px 16px!important;
}
.pb-format-card>span{
  grid-column:1!important;
  grid-row:1/4!important;
  align-self:start!important;
  justify-self:center!important;
  font-size:25px!important;
  line-height:1.15!important;
}
.pb-format-card strong,
.pb-format-card small,
.pb-format-card .pb-format-estimate{
  grid-column:2!important;
  justify-self:start!important;
  text-align:left!important;
  width:100%;
  min-width:0;
}
.pb-format-card strong{
  grid-row:1!important;
  font-size:16px!important;
  line-height:1.22!important;
  margin:0!important;
}
.pb-format-card small{
  grid-row:2!important;
  font-size:12px!important;
  line-height:1.38!important;
  margin:0!important;
}
.pb-format-card .pb-format-estimate{
  grid-row:3!important;
  display:block!important;
  margin:4px 0 0!important;
  padding-top:7px!important;
  border-top:1px solid rgba(255,255,255,.07);
  color:#b6ff3f!important;
  opacity:.9!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-style:normal!important;
  font-weight:800!important;
}
@media(max-width:720px){
  .pb-format-grid{gap:10px!important}
  .pb-format-card{
    grid-template-columns:34px minmax(0,1fr)!important;
    column-gap:10px!important;
    padding:14px!important;
  }
  .pb-format-card>span{font-size:23px!important}
  .pb-format-card strong{font-size:15px!important}
  .pb-format-card small{font-size:11.5px!important}
  .pb-format-card .pb-format-estimate{font-size:10.5px!important}
}

/* v0.5.3 — reliable player-name suggestions on iOS */
.pb-player-entry{position:relative}
.pb-player-suggestions{position:absolute;left:0;right:0;top:calc(100% - 4px);z-index:80;background:#101619;border:1px solid rgba(190,255,44,.35);border-radius:14px;padding:6px;box-shadow:0 14px 34px rgba(0,0,0,.45);max-height:230px;overflow:auto}
.pb-player-suggestion{display:block;width:100%;border:0;background:transparent;color:#fff;text-align:left;padding:11px 12px;border-radius:9px;font:inherit;cursor:pointer}
.pb-player-suggestion:hover,.pb-player-suggestion:focus{background:rgba(190,255,44,.12);outline:none}
.pb-player-suggestion.is-used{opacity:.5}
.pb-draw-court{display:grid;gap:10px}
.pb-draw-ready{text-align:center;color:#befe2c;font-weight:800;font-size:.85rem;letter-spacing:.02em}
@media(max-width:640px){.pb-player-suggestions{position:absolute}.pb-draw-team-card strong{font-size:1rem}.pb-draw-vs{font-size:1.2rem}}

/* v0.5.4 – format guide handoff */
.pb-advisor-transfer{display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap;margin:12px 0 4px;padding:11px 14px;border:1px solid rgba(173,255,47,.28);border-radius:14px;background:rgba(173,255,47,.07);font-size:14px}.pb-advisor-transfer strong{color:#b8ff32}.pb-advisor-transfer span{color:var(--pb-muted,#9da8ad)}

/* v0.5.5 – draw controls stay in reach */
.pb-draw-next-wrap{
  position:sticky;
  top:0;
  z-index:8;
  display:flex;
  justify-content:center;
  padding:6px 0 10px;
  margin:0 0 4px;
  background:linear-gradient(180deg,#0f1311 72%,rgba(15,19,17,0));
}
.pb-draw-next-wrap .pb-btn{min-width:220px;box-shadow:0 8px 26px rgba(0,0,0,.3)}
.pb-draw-modal.has-drawn .pb-draw-machine{
  height:48px;
  max-width:190px;
  margin-bottom:4px;
  opacity:.7;
  transition:height .2s ease,max-width .2s ease,opacity .2s ease;
}
.pb-draw-modal.has-drawn .pb-draw-machine span{width:24px;height:24px}
.pb-draw-modal.has-drawn .pb-draw-machine span:nth-child(1){left:24px;top:17px}
.pb-draw-modal.has-drawn .pb-draw-machine span:nth-child(2){left:55px;top:5px}
.pb-draw-modal.has-drawn .pb-draw-machine span:nth-child(3){left:86px;top:18px}
.pb-draw-modal.has-drawn .pb-draw-machine span:nth-child(4){left:118px;top:6px}
.pb-draw-modal.has-drawn .pb-draw-machine span:nth-child(5){left:148px;top:18px}
.pb-draw-modal.has-drawn .pb-draw-machine span:nth-child(6){left:74px;top:2px}
.pb-draw-modal.has-drawn #pbDrawTitle{margin:.25rem 0 .4rem;font-size:1.35rem}
.pb-draw-modal.has-drawn .pb-kicker{font-size:.68rem}
.pb-draw-modal.has-drawn .pb-draw-reveal{min-height:56px;margin:8px auto 4px;font-size:clamp(22px,5vw,34px);padding:8px 14px}
.pb-draw-modal.has-drawn .pb-draw-progress{margin-bottom:4px}
.pb-draw-results{margin-top:4px}
@media(max-width:600px){
  .pb-draw-stage{padding-top:16px}
  .pb-draw-next-wrap{top:-1px;padding-top:4px}
  .pb-draw-next-wrap .pb-btn{width:100%;min-width:0;max-width:320px}
  .pb-draw-matchup{margin:7px 0 10px;padding:9px}
  .pb-draw-team-card{padding:9px 10px}
  .pb-draw-team-card small{margin-bottom:2px;font-size:10px}
  .pb-draw-team-card strong{font-size:1rem}
  .pb-draw-vs{margin:5px 0;font-size:1rem}
}


/* v0.5.7 – discreet profile close button + contextual format examples */
.pb-avatar-modal-close{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  max-width:34px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:50%!important;
  background:rgba(9,13,15,.78)!important;
  color:#fff!important;
  font-family:Arial,sans-serif!important;
  font-size:23px!important;
  font-weight:400!important;
  line-height:30px!important;
  display:grid!important;
  place-items:center!important;
  box-shadow:0 3px 12px rgba(0,0,0,.34)!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
}
.pb-avatar-modal-close:hover,.pb-avatar-modal-close:focus-visible{
  background:rgba(23,30,27,.96)!important;
  border-color:rgba(183,255,0,.6)!important;
  color:#b7ff00!important;
  outline:none!important;
}
.pb-format-card .pb-format-estimate{
  white-space:normal!important;
}
@media(max-width:640px){
  .pb-avatar-modal-close{top:8px!important;right:8px!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;font-size:21px!important;line-height:28px!important}
}

/* v0.5.7 – keep all profile avatars perfectly circular */
.pb-app img.pb-avatar,
.pb-app .pb-avatar-clickable,
.pb-app .pb-hall-card img.pb-avatar,
.pb-app .pb-partner-avatars img.pb-avatar,
.pb-app .pb-row img.pb-avatar,
.pb-app .pb-team img.pb-avatar,
.pb-app .pb-profile-head img.pb-avatar{
  border-radius:9999px!important;
  overflow:hidden!important;
  object-fit:cover!important;
  object-position:center!important;
  aspect-ratio:1/1!important;
  clip-path:circle(50% at 50% 50%);
  -webkit-clip-path:circle(50% at 50% 50%);
  flex:0 0 auto;
}
.pb-app img.pb-avatar-md{width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;max-width:54px!important;max-height:54px!important}
.pb-app img.pb-avatar-sm{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;max-width:34px!important;max-height:34px!important}
@media(max-width:720px){
  .pb-app .pb-row img.pb-avatar-sm{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;max-width:30px!important;max-height:30px!important}
}

/* v0.6.1 – large tournament level groups */
.pb-pool-label{display:none;min-width:110px}
.pb-player-entry.show-pool .pb-pool-label{display:flex}
.pb-player-entry.show-pool .pb-seed-label{display:none}
.pb-pool-select{min-width:86px}
.pb-pool-title{margin:22px 0 10px;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:#b9ff27}
.pb-pool-title:first-of-type{margin-top:4px}
@media(max-width:640px){
  .pb-draw-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  .pb-draw-mode-btn{width:100%;min-width:0}
  .pb-player-entry.show-pool{grid-template-columns:minmax(0,1fr) 112px}
}

/* v0.6.2 extra / guest matches */
.pb-extra-hero h1{margin:.2rem 0 .35rem}.pb-extra-hero p{margin:0;max-width:760px;color:var(--pb-muted,#9aa39d);line-height:1.45}
.pb-extra-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:16px;align-items:start}
.pb-extra-form{display:grid;gap:14px}.pb-extra-form>label,.pb-extra-pair label{display:grid;gap:6px;font-size:.78rem;color:var(--pb-muted,#9aa39d);font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.pb-extra-form input[type=date],.pb-extra-form select,.pb-add-guest input{width:100%;max-width:100%;box-sizing:border-box;min-height:46px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#111713;color:#fff;padding:0 12px;font-size:16px}
.pb-extra-team{padding:13px;border:1px solid rgba(190,255,0,.14);border-radius:15px;background:rgba(190,255,0,.035)}.pb-extra-team>strong{display:block;margin-bottom:9px;color:#c6ff00}.pb-extra-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pb-extra-vs{text-align:center;font-size:1.05rem;font-weight:900;color:#c6ff00;letter-spacing:.12em}.pb-extra-score{display:grid;gap:8px}.pb-add-guest{display:flex;gap:8px}.pb-add-guest input{flex:1;min-width:0}.pb-guest-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.pb-guest-chips span{padding:7px 10px;border-radius:999px;background:rgba(190,255,0,.08);border:1px solid rgba(190,255,0,.18);font-size:.85rem}.pb-extra-history{display:grid;gap:8px}.pb-extra-match{display:grid;grid-template-columns:105px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.pb-extra-match:last-child{border-bottom:0}.pb-extra-date{font-size:.82rem;color:var(--pb-muted,#9aa39d)}.pb-extra-teams{display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:wrap}.pb-extra-teams span{font-size:.72rem;color:var(--pb-muted,#9aa39d);font-weight:900}.pb-extra-delete{margin:0}.pb-extra-delete .pb-text-delete{padding:4px 0}.pb-alert-success{border-color:rgba(110,255,130,.35)!important;color:#bfffc8!important}
@media(max-width:760px){.pb-extra-grid{grid-template-columns:1fr}.pb-extra-pair{grid-template-columns:1fr 1fr}.pb-extra-match{grid-template-columns:1fr auto;gap:7px 10px}.pb-extra-date{grid-column:1}.pb-extra-teams{grid-column:1/-1;order:2}.pb-extra-match .pb-mini-score{grid-column:2;grid-row:1}.pb-extra-delete{grid-column:2;grid-row:2;justify-self:end}.pb-extra-form input[type=date]{padding:0 10px}}
@media(max-width:420px){.pb-extra-pair{grid-template-columns:1fr}.pb-add-guest{flex-direction:column}}

/* v0.6.3 - outside-season ranking */
.pb-extra-ranking-head{display:grid;grid-template-columns:34px minmax(150px,1fr) 54px 64px 84px 58px;gap:10px;align-items:center;padding:0 14px 8px;color:var(--pb-muted,#8f9b94);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.pb-extra-stat-row{display:grid!important;grid-template-columns:34px 44px minmax(130px,1fr) 54px 64px 84px 58px!important;gap:10px;align-items:center}
.pb-extra-stat-row .pb-player-name{min-width:0}.pb-extra-stat-row em{font-size:10px;font-style:normal;color:#b7ff2a;margin-left:4px;text-transform:uppercase}.pb-extra-pos{opacity:.65}.pb-guest-avatar{display:inline-flex;align-items:center;justify-content:center;background:#202922;color:#b7ff2a;border:1px solid rgba(183,255,42,.35);border-radius:50%}.pb-extra-note{margin-top:12px}
@media(max-width:700px){.pb-extra-ranking-head{display:none}.pb-extra-stat-row{grid-template-columns:28px 42px minmax(0,1fr) 48px 62px!important}.pb-extra-stat-row>div:nth-of-type(4){display:none}.pb-extra-stat-row>div:nth-of-type(5){display:none}.pb-extra-stat-row .pb-player-name small{white-space:normal}.pb-extra-stat-row>div:last-child{min-width:0}}

/* v0.6.4 – app navigation, dedicated season view and tighter mobile layout */
.pb-topbar-brand{min-width:0}
.pb-desktop-user{display:flex}
.pb-desktop-nav{display:flex;align-items:center;gap:5px}
.pb-nav-link{color:var(--pb-muted)!important;text-decoration:none;font-weight:750;transition:.18s ease}
.pb-nav-link:hover,.pb-nav-link.is-active{color:var(--pb-green)!important}
.pb-mobile-actions,.pb-mobile-menu,.pb-mobile-menu-backdrop{display:none}
.pb-season-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.pb-season-page-head h1{margin:4px 0 5px;font-size:32px;letter-spacing:-1px}
.pb-season-page-head p{margin:0;color:var(--pb-muted)}
.pb-view-dashboard .pb-season-detail{display:none}

@media(max-width:780px){
  .pb-app{padding-left:12px;padding-right:12px}
  .pb-topbar{padding:16px 0 14px;align-items:center;gap:10px}
  .pb-brand.pb-brand-small{font-size:26px!important;line-height:1;letter-spacing:-1px}
  .pb-brand small{font-size:8px!important}
  .pb-season-name{margin-top:7px;font-size:12px}
  .pb-desktop-user{display:none!important}
  .pb-mobile-actions{display:flex;align-items:center;gap:9px;margin-left:auto}
  .pb-mobile-actions .pb-avatar{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  .pb-menu-toggle{width:44px;height:44px;display:grid;place-content:center;gap:4px;padding:0;border:1px solid var(--pb-line);border-radius:13px;background:#12191c;color:#fff;appearance:none}
  .pb-menu-toggle span{display:block;width:20px;height:2px;border-radius:2px;background:#f6f8f7}
  .pb-mobile-menu{display:block;position:fixed;z-index:1000001;top:0;right:0;width:min(88%,360px);height:100%;padding:18px;background:#0d1315;border-left:1px solid var(--pb-line);transform:translateX(105%);transition:transform .22s ease;box-shadow:-24px 0 60px rgba(0,0,0,.5);overflow:auto}
  .pb-mobile-menu.is-open{transform:translateX(0)}
  .pb-mobile-menu-backdrop{display:block;position:fixed;z-index:1000000;inset:0;background:rgba(0,0,0,.62);opacity:0;pointer-events:none;transition:opacity .2s ease}
  .pb-mobile-menu-backdrop.is-open{opacity:1;pointer-events:auto}
  .pb-mobile-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--pb-line)}
  .pb-mobile-menu-head>div{display:flex;align-items:center;gap:10px;min-width:0}
  .pb-mobile-menu-head strong,.pb-mobile-menu-head small{display:block}
  .pb-mobile-menu-head small{color:var(--pb-muted);margin-top:2px}
  .pb-menu-close{width:40px;height:40px;min-width:40px;border:1px solid var(--pb-line);border-radius:50%;background:#151d20;color:#fff;font-size:25px;line-height:1;appearance:none}
  .pb-mobile-menu nav{display:grid;padding:12px 0}
  .pb-mobile-menu .pb-nav-link{display:flex;align-items:center;min-height:50px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.055);font-size:16px;color:#eef2ef!important}
  .pb-mobile-menu .pb-nav-link.is-active{color:var(--pb-green)!important;background:rgba(182,255,63,.055);border-radius:11px}
  .pb-mobile-menu-foot{display:grid;gap:14px;padding-top:15px}
  .pb-mobile-menu-foot .pb-lang-switch{justify-self:start}
  .pb-mobile-logout{color:#ff8992;text-decoration:none;font-weight:800;padding:10px 3px}
  body.pb-menu-open{overflow:hidden}

  .pb-season-page-head{align-items:flex-start;flex-direction:column;padding:18px}
  .pb-season-page-head .pb-btn{width:100%;text-align:center}
  .pb-season-tabs{margin-top:0;padding-bottom:4px}

  .pb-extra-hero{padding:18px}
  .pb-extra-hero h1{font-size:28px;line-height:1.05}
  .pb-extra-hero p{font-size:14px}
  .pb-extra-grid{gap:12px}
  .pb-extra-form{gap:11px}
  .pb-extra-form input[type=date]{display:block;min-width:0;width:100%;padding:0 10px;appearance:none;-webkit-appearance:none}
  .pb-extra-team{padding:11px}
  .pb-extra-pair{grid-template-columns:1fr!important;gap:9px}
  .pb-extra-vs{margin:-2px 0}
  .pb-extra-score .pb-set{display:grid;grid-template-columns:54px 1fr auto 1fr;width:100%}
  .pb-extra-score .pb-score-picker{width:100%;min-width:0}

  .pb-extra-ranking{gap:10px}
  .pb-extra-stat-row{
    display:grid!important;
    grid-template-columns:30px 42px repeat(4,minmax(0,1fr))!important;
    grid-template-rows:auto auto!important;
    gap:7px 8px!important;
    padding:13px 10px!important;
    border:1px solid var(--pb-line)!important;
    border-radius:15px!important;
    background:rgba(255,255,255,.025)!important;
  }
  .pb-extra-stat-row+.pb-extra-stat-row{border-top:1px solid var(--pb-line)!important}
  .pb-extra-stat-row .pb-extra-pos{grid-column:1;grid-row:1/3;align-self:center;font-size:18px}
  .pb-extra-stat-row>.pb-avatar{grid-column:2;grid-row:1/3;align-self:center}
  .pb-extra-stat-row>.pb-player-name{grid-column:3/7;grid-row:1;align-self:center;min-width:0}
  .pb-extra-stat-row>.pb-player-name strong{font-size:16px}
  .pb-extra-stat-row>.pb-player-name small{font-size:10px}
  .pb-extra-stat-row>div:nth-of-type(2),
  .pb-extra-stat-row>div:nth-of-type(3),
  .pb-extra-stat-row>div:nth-of-type(4),
  .pb-extra-stat-row>div:nth-of-type(5){display:flex!important;grid-row:2;align-items:flex-start!important;min-width:0}
  .pb-extra-stat-row>div:nth-of-type(2){grid-column:3}
  .pb-extra-stat-row>div:nth-of-type(3){grid-column:4}
  .pb-extra-stat-row>div:nth-of-type(4){grid-column:5}
  .pb-extra-stat-row>div:nth-of-type(5){grid-column:6}
  .pb-extra-stat-row>div:nth-of-type(n+2) strong{font-size:14px;white-space:nowrap}
  .pb-extra-stat-row>div:nth-of-type(n+2) small{font-size:8px;text-transform:uppercase;letter-spacing:.03em}
  .pb-extra-note{font-size:12px;line-height:1.45}
}

@media(max-width:390px){
  .pb-brand.pb-brand-small{font-size:23px!important}
  .pb-brand small{display:none}
  .pb-mobile-actions .pb-avatar{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important}
  .pb-extra-stat-row{grid-template-columns:25px 36px repeat(4,minmax(0,1fr))!important;gap:6px!important;padding:11px 8px!important}
  .pb-extra-stat-row>.pb-player-name strong{font-size:14px}
  .pb-extra-stat-row>div:nth-of-type(n+2) strong{font-size:12px}
}

/* v0.6.5 – cleaner mobile navigation + subtle outside-season delete */
.pb-nav-icon{display:none}
@media(max-width:780px){
  .pb-menu-toggle{
    all:unset;box-sizing:border-box;width:42px;height:42px;display:grid;place-content:center;gap:4px;
    border:1px solid rgba(255,255,255,.10);border-radius:13px;background:rgba(255,255,255,.045);cursor:pointer
  }
  .pb-menu-toggle span{width:19px;height:2px;background:#eef3ef;border-radius:999px;opacity:.9}
  .pb-mobile-menu{
    width:min(84%,330px);padding:0;background:linear-gradient(180deg,#0d1513 0%,#0a1012 100%);
    border-left:1px solid rgba(183,255,42,.13);box-shadow:-20px 0 54px rgba(0,0,0,.55)
  }
  .pb-mobile-menu-head{padding:18px 18px 16px;border-bottom:1px solid rgba(255,255,255,.07)}
  .pb-mobile-profile{display:flex;align-items:center;gap:11px;min-width:0}
  .pb-mobile-profile .pb-avatar{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
  .pb-mobile-menu-head strong{font-size:17px;line-height:1.1}
  .pb-mobile-menu-head small{font-size:12px;margin-top:4px;color:#87918c}
  .pb-menu-close{
    all:unset;box-sizing:border-box;width:34px;height:34px;min-width:34px;display:grid;place-items:center;
    border-radius:10px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);color:#aab3ae;cursor:pointer
  }
  .pb-menu-close span{font-size:24px;font-weight:400;line-height:1;transform:translateY(-1px)}
  .pb-mobile-menu nav{display:grid;gap:5px;padding:13px 12px}
  .pb-mobile-menu .pb-nav-link{
    min-height:47px;padding:0 12px;border:0!important;border-radius:12px!important;gap:11px;
    font-size:15px;font-weight:760;color:#dbe1dd!important;background:transparent
  }
  .pb-mobile-menu .pb-nav-link:hover{background:rgba(255,255,255,.035)}
  .pb-mobile-menu .pb-nav-link.is-active{
    color:#d7ff6b!important;background:linear-gradient(90deg,rgba(183,255,42,.13),rgba(183,255,42,.045));
    box-shadow:inset 0 0 0 1px rgba(183,255,42,.12)
  }
  .pb-nav-icon{
    display:grid;width:28px;height:28px;place-items:center;border-radius:9px;background:rgba(255,255,255,.045);
    color:#9aa49f;font-size:15px;line-height:1;flex:0 0 auto
  }
  .pb-nav-link.is-active .pb-nav-icon{background:rgba(183,255,42,.15);color:var(--pb-green)}
  .pb-mobile-menu-foot{
    margin:0 12px;padding:14px 6px 20px;border-top:1px solid rgba(255,255,255,.07);gap:12px
  }
  .pb-mobile-menu-language{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#7f8a84;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
  .pb-mobile-menu-foot .pb-lang-switch{justify-self:auto;margin:0}
  .pb-mobile-menu-foot .pb-lang-switch a{height:30px;min-width:31px;border-radius:9px}
  .pb-mobile-logout{display:flex;align-items:center;gap:9px;padding:10px 4px!important;color:#ff727c!important;font-size:14px;font-weight:800}
  .pb-mobile-logout span:first-child{font-size:17px}

  .pb-extra-delete{margin:0!important;justify-self:end;align-self:center}
  .pb-extra-delete .pb-text-delete{
    all:unset!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;gap:5px!important;
    color:#ff6f79!important;font-size:12px!important;font-weight:800!important;cursor:pointer!important;padding:4px 2px!important;
    line-height:1.2!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important
  }
  .pb-extra-delete .pb-text-delete::before{content:'⌫';font-size:13px;opacity:.9}
  .pb-extra-delete .pb-text-delete:active{opacity:.65}
}


/* v0.6.6 – minimal mobile menu trigger + cleaner outside-season match cards */
@media(max-width:780px){
  .pb-menu-toggle{
    all:unset!important;box-sizing:border-box!important;width:42px!important;height:42px!important;
    display:grid!important;place-content:center!important;gap:5px!important;cursor:pointer!important;
    background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
    padding:0!important;margin:0!important;min-width:42px!important;min-height:42px!important;
  }
  .pb-menu-toggle span{
    display:block!important;width:24px!important;height:2px!important;border-radius:999px!important;
    background:#7f8984!important;opacity:1!important;box-shadow:none!important;
  }
  .pb-menu-toggle:active span{background:#a7b0ab!important}

  .pb-menu-close{
    all:unset!important;box-sizing:border-box!important;width:38px!important;height:38px!important;min-width:38px!important;
    display:grid!important;place-items:center!important;cursor:pointer!important;background:transparent!important;
    border:0!important;border-radius:0!important;box-shadow:none!important;color:#7f8984!important;padding:0!important;
  }
  .pb-menu-close span{font-size:25px!important;font-weight:300!important;line-height:1!important}

  .pb-extra-history{gap:12px!important}
  .pb-extra-match{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px 12px!important;align-items:center!important;padding:15px 0 16px!important;
  }
  .pb-extra-date{
    grid-column:1!important;grid-row:1!important;font-size:12px!important;line-height:1.2!important;
    color:#8d9892!important;font-weight:650!important;
  }
  .pb-extra-delete{
    grid-column:2!important;grid-row:1!important;justify-self:end!important;align-self:center!important;margin:0!important;
  }
  .pb-extra-delete .pb-text-delete{
    all:unset!important;box-sizing:border-box!important;display:inline-block!important;cursor:pointer!important;
    color:#ff6d78!important;font-size:12px!important;font-weight:800!important;line-height:1.2!important;
    padding:2px 0!important;background:transparent!important;border:0!important;box-shadow:none!important;
  }
  .pb-extra-delete .pb-text-delete::before{content:none!important;display:none!important}
  .pb-extra-delete .pb-text-delete:active{opacity:.6!important}

  .pb-extra-teams{
    grid-column:1/-1!important;grid-row:2!important;display:grid!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;gap:9px!important;
    align-items:center!important;width:100%!important;min-width:0!important;
  }
  .pb-extra-teams strong{
    min-width:0!important;font-size:15px!important;line-height:1.2!important;font-weight:850!important;
    white-space:normal!important;overflow-wrap:anywhere!important;
  }
  .pb-extra-teams strong:first-child{text-align:right!important}
  .pb-extra-teams strong:last-child{text-align:left!important}
  .pb-extra-teams span{
    font-size:10px!important;letter-spacing:.08em!important;color:#69736e!important;text-align:center!important;
  }
  .pb-extra-match .pb-mini-score{
    grid-column:1/-1!important;grid-row:3!important;justify-self:center!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    min-width:132px!important;padding:8px 14px!important;border-radius:999px!important;
    background:rgba(183,255,42,.07)!important;border:1px solid rgba(183,255,42,.18)!important;
    color:#f4f7f5!important;font-size:18px!important;font-weight:900!important;letter-spacing:.02em!important;
  }
}

/* v0.6.7 – self-service profile image */
.pb-profile-avatar-editor{display:flex;align-items:center;gap:18px;padding:16px;border:1px solid var(--pb-border,#26343a);border-radius:18px;background:rgba(255,255,255,.025);margin-bottom:18px}.pb-profile-avatar-preview{flex:0 0 auto}.pb-avatar-upload-label{display:flex!important;flex-direction:column;gap:4px;cursor:pointer;margin:0!important}.pb-avatar-upload-label>span{font-weight:800;color:#fff}.pb-avatar-upload-label>small{color:#93a0a6;font-size:13px}.pb-avatar-upload-label input[type=file]{margin-top:8px;max-width:100%;font-size:14px;color:#cbd3d7}.pb-avatar-upload-label input[type=file]::file-selector-button{border:1px solid #39464c;background:#11191d;color:#fff;border-radius:10px;padding:9px 12px;margin-right:10px;font-weight:700;cursor:pointer}@media(max-width:640px){.pb-profile-avatar-editor{align-items:flex-start;gap:14px;padding:14px}.pb-profile-avatar-preview .pb-avatar-md{width:72px;height:72px}.pb-avatar-upload-label>small{font-size:12px}}


/* v0.6.8: collapsed new out-of-season match form */
.pb-extra-create{padding:0!important;overflow:hidden}
.pb-extra-create summary{list-style:none}
.pb-extra-create summary::-webkit-details-marker{display:none}
.pb-extra-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;cursor:pointer;user-select:none}
.pb-extra-summary span:first-child{display:grid;gap:4px}
.pb-extra-summary small{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:#b7ff2a}
.pb-extra-summary strong{font-size:1.05rem;color:#fff}
.pb-extra-chevron{font-size:1.4rem;line-height:1;color:#8f9b94;transition:transform .18s ease}
.pb-extra-create[open] .pb-extra-chevron{transform:rotate(180deg)}
.pb-extra-form-wrap{padding:0 20px 20px;border-top:1px solid rgba(255,255,255,.06)}
.pb-extra-form-wrap .pb-extra-form{padding-top:16px}
@media(max-width:700px){.pb-extra-summary{padding:15px 16px}.pb-extra-summary strong{font-size:1rem}.pb-extra-form-wrap{padding:0 14px 14px}}

/* v0.6.9 – mobile profile layout */
@media(max-width:640px){
  .pb-profile-main{width:100%!important;max-width:100%!important;min-width:0!important;padding-left:14px!important;padding-right:14px!important;box-sizing:border-box!important;overflow:hidden}
  .pb-profile-card{width:100%!important;max-width:100%!important;min-width:0!important;padding:18px!important;box-sizing:border-box!important;overflow:hidden}
  .pb-profile-head{display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;margin-bottom:18px!important;min-width:0!important}
  .pb-profile-head>.pb-avatar{width:64px!important;height:64px!important;min-width:64px!important;min-height:64px!important}
  .pb-profile-head>div{min-width:0!important;max-width:100%!important;overflow:hidden!important}
  .pb-profile-head .pb-kicker{font-size:12px!important;letter-spacing:.14em!important}
  .pb-profile-head h2{font-size:28px!important;line-height:1.05!important;margin:5px 0!important}
  .pb-profile-head p{font-size:14px!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:anywhere!important;max-width:100%!important}
  .pb-profile-form{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;width:100%!important;min-width:0!important}
  .pb-profile-form>label{display:block!important;width:100%!important;min-width:0!important;margin:0!important;font-size:14px!important}
  .pb-profile-form input[type=email],.pb-profile-form input[type=password]{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:52px!important;padding:0 14px!important;box-sizing:border-box!important;font-size:16px!important}
  .pb-profile-avatar-editor{display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;width:100%!important;min-width:0!important;padding:13px!important;margin:0!important;box-sizing:border-box!important}
  .pb-profile-avatar-preview .pb-avatar-md{width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important}
  .pb-avatar-upload-label{min-width:0!important;width:100%!important;overflow:hidden!important}
  .pb-avatar-upload-label>span{font-size:16px!important;line-height:1.2!important}
  .pb-avatar-upload-label>small{font-size:11px!important;line-height:1.35!important;white-space:normal!important}
  .pb-avatar-upload-label input[type=file]{width:100%!important;max-width:100%!important;min-width:0!important;font-size:0!important;margin-top:7px!important;overflow:hidden!important}
  .pb-avatar-upload-label input[type=file]::file-selector-button{font-size:13px!important;padding:8px 11px!important;margin-right:0!important;max-width:100%!important}
  .pb-profile-divider{margin:5px 0 0!important;font-size:11px!important}
  .pb-profile-form .pb-btn{width:100%!important;min-height:50px!important;padding:12px 16px!important;font-size:16px!important}
  .pb-profile-card>a,.pb-profile-card .pb-auth-link{font-size:14px!important;white-space:normal!important}
}

/* v0.7.0 — cancelled season slot -> replacement outside-season match */
.pb-cancelled-list{display:grid;gap:16px;margin:0 0 18px}
.pb-cancelled-slot{padding:0;overflow:hidden;border-color:rgba(160,255,40,.28)}
.pb-cancelled-slot>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px}
.pb-cancelled-slot>summary::-webkit-details-marker{display:none}
.pb-cancelled-slot>summary h2{margin:5px 0 4px;font-size:clamp(24px,3vw,34px)}
.pb-cancelled-slot>summary p{margin:0;color:var(--muted,#8f9a9f);max-width:720px}
.pb-cancelled-open{flex:0 0 auto;color:#a8ff27;font-weight:800;border:1px solid rgba(168,255,39,.28);border-radius:999px;padding:10px 14px}
.pb-cancelled-slot[open] .pb-cancelled-open{opacity:.65}
.pb-replacement-form{border-top:1px solid rgba(255,255,255,.08);padding:22px 24px 26px;display:grid;gap:16px}
.pb-replacement-date{display:flex;align-items:center;justify-content:space-between;gap:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);padding:12px 14px;border-radius:14px}
.pb-replacement-date span{color:var(--muted,#8f9a9f);font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.pb-replacement-teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}
.pb-replacement-teams>div{display:grid;gap:10px;padding:15px;border:1px solid rgba(168,255,39,.18);border-radius:16px;background:rgba(168,255,39,.035)}
.pb-replacement-teams>span{font-weight:900;color:#a8ff27}
.pb-replacement-teams input,.pb-replacement-teams select{width:100%;min-width:0;box-sizing:border-box;background:#0c1210;color:#fff;border:1px solid #34413e;border-radius:12px;padding:12px 13px;font-size:16px}
.pb-replacement-teams select{appearance:auto;color-scheme:dark}
.pb-dashboard-extra{background:radial-gradient(circle at 100% 0%,rgba(168,255,39,.2),transparent 38%),linear-gradient(135deg,#142219,#101714);border-color:rgba(168,255,39,.42);box-shadow:0 18px 55px rgba(0,0,0,.3),0 0 0 1px rgba(168,255,39,.05) inset}
.pb-dashboard-extra.is-new{animation:pb-extra-arrived .55s ease-out}
.pb-dashboard-extra-status{display:inline-flex;align-items:center;white-space:nowrap;border:1px solid rgba(168,255,39,.35);background:rgba(168,255,39,.1);color:#caff78;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900}
.pb-dashboard-extra-actions{display:flex;align-items:center;gap:10px;margin-top:20px;flex-wrap:wrap}
.pb-dashboard-extra-link{display:inline-flex;text-decoration:none}
@keyframes pb-extra-arrived{from{transform:translateY(-8px);opacity:.35}to{transform:none;opacity:1}}
.pb-guest-chip{display:inline-flex!important;align-items:center;gap:7px;padding-right:5px!important}
.pb-guest-chip b{font:inherit}
.pb-guest-chip form{display:inline-flex;margin:0}
.pb-guest-chip button{appearance:none;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:rgba(255,91,104,.13);color:#ff929b;font-size:18px;line-height:1;cursor:pointer}
.pb-guest-chip button:hover{background:rgba(255,91,104,.25)}
.pb-extra-upcoming .pb-extra-scheduled{padding:0;overflow:hidden}
.pb-extra-scheduled>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:16px 18px}
.pb-extra-scheduled>summary::-webkit-details-marker{display:none}
.pb-extra-open{color:#a8ff27;font-weight:800;white-space:nowrap}
.pb-extra-complete{border-top:1px solid rgba(255,255,255,.08);padding:16px 18px 18px}
@media (max-width:720px){
  .pb-cancelled-slot>summary{align-items:flex-start;flex-direction:column;padding:18px}
  .pb-cancelled-open{width:100%;box-sizing:border-box;text-align:center}
  .pb-replacement-form{padding:18px}
  .pb-replacement-teams{grid-template-columns:1fr;gap:10px}
  .pb-replacement-teams>span{text-align:center}
  .pb-dashboard-extra-actions{margin-top:16px}
  .pb-extra-scheduled>summary{grid-template-columns:1fr;gap:8px}
  .pb-extra-open{justify-self:start}
}

/* v0.7.1 — compact cancelled Wednesday row on dashboard */
.pb-cancelled-dashboard{margin:-2px 0 18px}
.pb-cancelled-line{background:rgba(19,27,29,.92);border:1px solid rgba(168,255,39,.22);border-radius:18px;overflow:hidden}
.pb-cancelled-line>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;min-height:58px}
.pb-cancelled-line>summary::-webkit-details-marker{display:none}
.pb-cancelled-line-main{display:flex;align-items:center;gap:12px;min-width:0}
.pb-cancelled-dot{width:10px;height:10px;border-radius:50%;background:#a8ff27;box-shadow:0 0 0 4px rgba(168,255,39,.10);flex:0 0 auto}
.pb-cancelled-line-main div{min-width:0;display:grid;gap:2px}
.pb-cancelled-line-main strong{font-size:15px;line-height:1.2;color:#fff}
.pb-cancelled-line-main small{font-size:12px;line-height:1.35;color:var(--muted,#8f9a9f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pb-cancelled-line-action{font-size:13px;font-weight:800;color:#a8ff27;flex:0 0 auto}
.pb-cancelled-line[open] .pb-cancelled-line-action{opacity:.65}
.pb-cancelled-line-body{border-top:1px solid rgba(255,255,255,.07);padding:16px 18px 18px}
@media(max-width:640px){
  .pb-cancelled-line>summary{padding:13px 14px}
  .pb-cancelled-line-main small{max-width:60vw}
  .pb-cancelled-line-body{padding:14px}
}

/* v0.7.2 — detect a free Wednesday even when an old decline predates cancelled-slot tracking */
.pb-gap-wednesday{border-color:rgba(168,255,39,.34)}
.pb-gap-wednesday .pb-cancelled-dot{background:#ffd84a;box-shadow:0 0 0 4px rgba(255,216,74,.10)}

/* v0.7.8: compact deletion action for scheduled extra matches */
.pb-extra-scheduled-delete { display:flex; justify-content:flex-end; margin:12px 0 0; }
.pb-extra-scheduled-delete .pb-text-delete { appearance:none; background:transparent !important; color:#ff7777 !important; border:0 !important; padding:8px 0; font:inherit; font-weight:600; cursor:pointer; }


/* v0.7.9: planned match card, accessible score toggle and real deletion buttons */
.pb-extra-upcoming .pb-extra-history{display:grid;gap:14px}
.pb-extra-upcoming .pb-planned-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 14px;padding:18px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.025);min-width:0}
.pb-extra-upcoming .pb-extra-scheduled{grid-column:1/-1;min-width:0;display:block!important;padding:0!important;margin:0!important;overflow:visible!important;border:0!important;background:transparent!important}
.pb-extra-upcoming .pb-extra-scheduled>summary{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;padding:0!important;min-width:0;cursor:pointer;list-style:none}
.pb-extra-upcoming .pb-extra-scheduled>summary::-webkit-details-marker{display:none}
.pb-planned-date{grid-column:1/-1;color:#a1aaa5;font-weight:750;font-size:13px;line-height:1.4}
.pb-planned-match{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:center;min-width:0;color:#f6f7f5}
.pb-planned-match strong{font-size:16px;line-height:1.35;font-weight:850;min-width:0;overflow-wrap:anywhere}
.pb-planned-match strong:first-child{text-align:right}
.pb-planned-match strong:last-child{text-align:left}
.pb-planned-vs{font-size:11px;letter-spacing:.10em;color:#b7ff2a;font-weight:900}
.pb-planned-result-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;box-sizing:border-box;border-radius:11px;padding:9px 16px;background:#b7ff2a!important;color:#142014!important;font-size:13px;font-weight:900;white-space:nowrap;line-height:1.2;border:1px solid #b7ff2a!important;box-shadow:none!important}
.pb-planned-result-btn .pb-result-opened{display:none}
.pb-extra-scheduled[open] .pb-result-closed{display:none}
.pb-extra-scheduled[open] .pb-result-opened{display:inline}
.pb-extra-scheduled[open] .pb-planned-result-btn span[aria-hidden]{transform:rotate(180deg)}
.pb-extra-upcoming .pb-extra-complete{margin-top:16px;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.10)}
.pb-extra-upcoming .pb-extra-scheduled-delete{grid-column:1/-1!important;grid-row:auto!important;justify-self:end!important;display:flex!important;margin:0!important;padding:0!important}
.pb-extra-upcoming .pb-planned-delete-btn{appearance:none!important;background:rgba(255,102,115,.075)!important;border:1px solid rgba(255,102,115,.27)!important;border-radius:10px!important;padding:9px 13px!important;min-height:38px;display:inline-flex;align-items:center;justify-content:center;box-shadow:none!important;color:#ff8b92!important;font:inherit;font-size:12px!important;font-weight:800!important;line-height:1.2!important;cursor:pointer!important;white-space:nowrap}
.pb-extra-upcoming .pb-planned-delete-btn:hover{background:rgba(255,102,115,.14)!important}
.pb-extra-upcoming .pb-extra-scheduled>summary:focus-visible,.pb-extra-upcoming .pb-planned-delete-btn:focus-visible{outline:2px solid #b7ff2a;outline-offset:4px}
/* Reset theme's white/default button styling on historical delete actions. */
.pb-extra-history .pb-extra-delete .pb-text-delete{appearance:none!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#ff8b92!important;font:inherit!important;font-size:12px!important;font-weight:800!important;line-height:1.3!important;padding:6px 0!important;border-radius:0!important;cursor:pointer!important}
.pb-extra-history .pb-extra-delete .pb-text-delete::before{content:none!important;display:none!important}
@media(max-width:780px){
 .pb-extra-upcoming .pb-planned-card{padding:14px;gap:12px}
 .pb-extra-upcoming .pb-extra-scheduled>summary{grid-template-columns:minmax(0,1fr)!important;gap:13px!important}
 .pb-planned-date{grid-column:1}
 .pb-planned-match{gap:8px;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr)}
 .pb-planned-match strong{font-size:14px}
 .pb-planned-result-btn{justify-self:stretch;min-height:44px;width:100%;font-size:14px}
 .pb-extra-upcoming .pb-extra-scheduled-delete{width:100%;justify-self:stretch!important}
 .pb-extra-upcoming .pb-planned-delete-btn{width:100%;min-height:40px}
 .pb-extra-upcoming .pb-extra-complete{padding:16px 0 0}
}

/* v0.7.10: iPhone-safe real result button for scheduled outside-season matches */
.pb-extra-upcoming .pb-planned-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;min-width:0}
.pb-extra-upcoming .pb-planned-header .pb-planned-date{grid-column:1/-1}
.pb-extra-upcoming .pb-planned-header .pb-planned-result-btn{appearance:none;cursor:pointer;font-family:inherit}
.pb-extra-upcoming .pb-extra-complete[hidden]{display:none!important}
.pb-extra-scheduled.is-open .pb-result-closed{display:none}
.pb-extra-scheduled.is-open .pb-result-opened{display:inline}
.pb-extra-scheduled.is-open .pb-planned-result-btn span[aria-hidden]{transform:rotate(180deg)}
.pb-extra-upcoming .pb-planned-header .pb-planned-result-btn:focus-visible{outline:2px solid #b7ff2a;outline-offset:3px}
@media(max-width:720px){
 .pb-extra-upcoming .pb-planned-header{grid-template-columns:minmax(0,1fr);gap:12px}
 .pb-extra-upcoming .pb-planned-header .pb-planned-result-btn{width:100%;min-height:48px;justify-self:stretch;touch-action:manipulation}
}

/* v0.7.12 — stale/unplayed season match CTA */
.pb-unplayed-form{margin-top:12px;display:flex;justify-content:flex-start}
.pb-next .pb-unplayed-form .pb-unplayed-btn{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:10px 14px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,102,115,.30)!important;
  background:rgba(255,102,115,.08)!important;
  color:#ff9aa3!important;
  font:inherit;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.2!important;
  text-decoration:none!important;
  box-shadow:none!important;
  cursor:pointer!important;
  white-space:normal;
  max-width:100%;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.pb-next .pb-unplayed-form .pb-unplayed-btn:hover,
.pb-next .pb-unplayed-form .pb-unplayed-btn:focus-visible{
  background:rgba(255,102,115,.14)!important;
  border-color:rgba(255,102,115,.42)!important;
  color:#ffb0b7!important;
  outline:none;
}
.pb-next .pb-unplayed-form .pb-unplayed-btn:hover{transform:translateY(-1px)}
.pb-next .pb-unplayed-form .pb-unplayed-btn::before{content:'↻';font-size:14px;line-height:1;color:inherit;flex:0 0 auto}
@media(max-width:700px){
  .pb-unplayed-form{margin-top:10px;width:100%}
  .pb-next .pb-unplayed-form .pb-unplayed-btn{width:100%;min-height:44px;justify-content:center;font-size:14px!important}
}

/* v0.7.13 — in-app notifications and match reminders */
.pb-notification-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;border:1px solid var(--pb-line);background:rgba(255,255,255,.025);text-decoration:none!important;font-size:18px;line-height:1;flex:0 0 auto}
.pb-notification-bell b{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ff5f6d;color:#fff;font-size:10px;line-height:18px;text-align:center;font-weight:900;border:2px solid #0b100d}
.pb-notification-bell.has-unread{border-color:rgba(183,255,42,.32);background:rgba(183,255,42,.06)}
.pb-reminder-box{margin-top:12px;border-top:1px solid var(--pb-line);padding-top:12px}
.pb-reminder-box>summary{list-style:none;cursor:pointer;color:#b7ff2a;font-size:13px;font-weight:850;display:inline-flex;align-items:center;gap:7px;padding:5px 0}
.pb-reminder-box>summary::-webkit-details-marker{display:none}
.pb-reminder-form{margin-top:10px;display:grid;gap:10px;padding:12px;border:1px solid var(--pb-line);border-radius:14px;background:rgba(255,255,255,.02)}
.pb-reminder-form label{display:grid;gap:6px;color:#b7c0c4;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.pb-reminder-form textarea{width:100%;resize:vertical;min-height:66px;background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:11px;padding:11px 12px;font:inherit;font-size:14px;line-height:1.4;outline:none}
.pb-reminder-actions{display:flex;gap:8px;flex-wrap:wrap}
.pb-notification-list{display:grid;gap:10px}
.pb-notification-item{display:grid;grid-template-columns:10px minmax(0,1fr);gap:11px;align-items:start;padding:14px;border:1px solid var(--pb-line);border-radius:14px;background:rgba(255,255,255,.02)}
.pb-notification-item.is-unread{border-color:rgba(183,255,42,.25);background:rgba(183,255,42,.045)}
.pb-notification-dot{width:8px;height:8px;border-radius:50%;background:#59656a;margin-top:6px}
.pb-notification-item.is-unread .pb-notification-dot{background:#b7ff2a;box-shadow:0 0 0 4px rgba(183,255,42,.08)}
.pb-notification-item strong{display:block;font-size:14px;line-height:1.45;color:#f6f7f5}
.pb-notification-item span{display:block;margin-top:5px;color:var(--pb-muted);font-size:11px}
@media(max-width:720px){
  .pb-mobile-actions{gap:8px}
  .pb-notification-bell{width:36px;height:36px;border-radius:11px;font-size:17px}
  .pb-reminder-actions{display:grid;grid-template-columns:1fr}
  .pb-reminder-actions .pb-btn{width:100%}
}

/* v0.7.15 — group chat + admin attendance controls */
.pb-chat-bubble{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;border:1px solid var(--pb-line);background:rgba(255,255,255,.025);text-decoration:none!important;font-size:17px;line-height:1;flex:0 0 auto}
.pb-chat-bubble b{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ff5f6d;color:#fff;font-size:10px;line-height:18px;text-align:center;font-weight:900;border:2px solid #0b100d}
.pb-chat-bubble.has-unread{border-color:rgba(183,255,42,.32);background:rgba(183,255,42,.06)}
.pb-chat-card{padding-bottom:16px}
.pb-chat-list{display:grid;gap:12px;max-height:min(64vh,650px);overflow:auto;padding:6px 4px 14px;scroll-behavior:smooth}
.pb-chat-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:end;max-width:82%}
.pb-chat-row.is-mine{grid-template-columns:minmax(0,1fr) 34px;margin-left:auto}
.pb-chat-row.is-mine>.pb-avatar{grid-column:2;grid-row:1}
.pb-chat-row.is-mine>.pb-chat-message{grid-column:1;grid-row:1;background:rgba(183,255,42,.12);border-color:rgba(183,255,42,.22)}
.pb-chat-message{min-width:0;border:1px solid var(--pb-line);background:rgba(255,255,255,.035);border-radius:15px;padding:10px 12px}
.pb-chat-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.pb-chat-meta strong{font-size:12px;color:#f5f7f5}
.pb-chat-meta span{font-size:10px;color:var(--pb-muted);white-space:nowrap}
.pb-chat-text{font-size:14px;line-height:1.45;color:#f2f4f2;overflow-wrap:anywhere}
.pb-chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding-top:14px;border-top:1px solid var(--pb-line)}
.pb-chat-form textarea{width:100%;min-height:48px;max-height:150px;resize:vertical;background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:13px;padding:12px 13px;font:inherit;font-size:14px;outline:none}
.pb-chat-form textarea:focus{border-color:rgba(183,255,42,.45)}
.pb-chat-form .pb-btn{min-height:48px}
.pb-admin-attendance{margin-top:12px;border-top:1px solid var(--pb-line);padding-top:10px}
.pb-admin-attendance>summary{cursor:pointer;list-style:none;color:#aeb7b2;font-size:12px;font-weight:850;padding:7px 0;user-select:none}
.pb-admin-attendance>summary::-webkit-details-marker{display:none}
.pb-admin-attendance-list{display:grid;gap:8px;margin-top:6px}
.pb-admin-attendance-row{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-top:1px solid rgba(255,255,255,.05)}
.pb-admin-attendance-player{display:flex;align-items:center;gap:8px;min-width:0}
.pb-admin-attendance-player strong{font-size:13px}
.pb-admin-attendance-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.pb-admin-attendance-actions form{margin:0}
.pb-admin-attendance-btn{appearance:none;border:1px solid var(--pb-line);background:rgba(255,255,255,.025);color:#aab4af;border-radius:9px;padding:7px 9px;font:inherit;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.pb-admin-attendance-btn.is-active{color:#10200f;background:var(--pb-green);border-color:var(--pb-green)}
.pb-admin-attendance-btn[value="no"].is-active{color:#fff;background:#9d3b44;border-color:#b34c56}
.pb-admin-attendance-btn:hover{border-color:rgba(183,255,42,.28)}
@media(max-width:720px){
  .pb-chat-bubble{width:36px;height:36px;border-radius:11px;font-size:16px}
  .pb-chat-card{padding:16px}
  .pb-chat-row{max-width:92%}
  .pb-chat-form{grid-template-columns:1fr}
  .pb-chat-form .pb-btn{width:100%}
  .pb-admin-attendance-row{grid-template-columns:1fr;gap:7px}
  .pb-admin-attendance-actions{justify-content:flex-start}
  .pb-admin-attendance-btn{padding:8px 10px;font-size:11px}
}


/* v0.7.16 — result entry on dashboard when all four have confirmed */
.pb-ready-result{margin-top:14px;padding:13px 14px;border:1px solid rgba(182,255,63,.22);border-radius:14px;background:rgba(182,255,63,.055);display:flex;align-items:center;justify-content:space-between;gap:12px}
.pb-ready-result-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.pb-ready-result-copy strong{font-size:13px;color:#dfffaa}
.pb-ready-result-copy span{font-size:11px;color:var(--pb-muted);line-height:1.4}
.pb-dashboard-score-form{margin:10px 0 0!important;width:100%;background:rgba(255,255,255,.025)}
.pb-dashboard-score-form.is-open{display:flex}
@media(max-width:700px){
 .pb-ready-result{align-items:stretch;flex-direction:column;padding:12px}
 .pb-dashboard-score-toggle{width:100%;min-height:46px}
 .pb-dashboard-score-form{margin:10px 0 0!important;gap:10px;padding:12px}
 .pb-dashboard-score-form .pb-set{width:100%;justify-content:space-between}
 .pb-dashboard-score-form .pb-btn{width:100%;min-height:46px}
}


/* v0.7.17 — opponent approval on dashboard */
.pb-result-approval-card{background:radial-gradient(circle at 100% 0%,rgba(182,255,63,.10),transparent 34%),var(--pb-card)}
.pb-result-approval-card .pb-section-head{align-items:center}
.pb-result-approval-card h2{font-size:20px;margin-top:6px}
.pb-result-approval-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.pb-result-approval-actions form{margin:0}
@media(max-width:720px){
 .pb-result-approval-card .pb-section-head{align-items:flex-start;flex-direction:column}
 .pb-result-approval-card .pb-score{font-size:22px}
 .pb-result-approval-actions{display:grid;grid-template-columns:1fr;width:100%}
 .pb-result-approval-actions .pb-btn{width:100%;min-height:46px}
}


/* v0.7.19 — completed season meal date */
.pb-season-meal{position:relative}
.pb-meal-date{margin:8px 0 14px;font-size:24px;line-height:1.18;font-weight:900;letter-spacing:-.5px;color:#f5f7f4;text-transform:capitalize}
.pb-meal-date-empty{font-size:17px;color:var(--pb-muted);font-weight:700;letter-spacing:0}
.pb-meal-date-form{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:18px;flex-wrap:wrap}
.pb-meal-date-form input[type=date]{appearance:none;background:#0b1012;border:1px solid var(--pb-line);color:#fff;border-radius:12px;padding:10px 12px;min-height:42px;font:inherit;color-scheme:dark}
.pb-meal-date-form .pb-btn{min-height:42px}
@media(max-width:700px){
 .pb-meal-date{font-size:22px}
 .pb-meal-date-form{display:grid;grid-template-columns:1fr;width:100%;margin-top:16px}
 .pb-meal-date-form input[type=date],.pb-meal-date-form .pb-btn{width:100%;min-height:46px}
}
