/* Shuttloop 3.4.0. A practical guest-first friendly/tournament builder inspired by bracket-generator workflows. */
:root{--cb-border:#315542;--cb-surface:#102e24;--cb-muted:#a7beb0}
.v340 .pg-wrap{max-width:1320px;padding:0 clamp(14px,3vw,34px)}
.v340 .pg-header{min-height:78px}
.v340 main{display:flex;flex-direction:column;min-width:0}
.v340 .cb-top{order:0;display:flex;align-items:end;justify-content:space-between;gap:22px;padding:32px 2px 27px}
.v340 .cb-top h1{font-size:clamp(31px,4.4vw,56px);line-height:1.08;letter-spacing:-.06em;margin:12px 0 9px;font-weight:880}
.v340 .cb-top p{color:#a9c2b1;margin:0;line-height:1.6;font-size:14px;max-width:650px}
.v340 .cb-guest-badge{display:inline-flex;padding:5px 8px;background:#193c2c;color:#c9ff7c;border:1px solid #3c6c3b;border-radius:100px;letter-spacing:.05em;font-weight:850;font-size:10px;margin-left:9px}
.v340 .cb-open-status{white-space:nowrap;display:flex;align-items:center;gap:8px;padding:12px 16px;border:1px solid var(--cb-border);border-radius:14px;background:#0e2c21;color:#dff3db;font-size:12px;flex-wrap:wrap;max-width:230px}
.v340 .cb-open-status small{display:block;width:100%;padding-left:15px;color:#8ca99a;font-size:11px}.v340 .cb-live-dot{width:7px;height:7px;background:#b7ff3c;border-radius:50%;box-shadow:0 0 0 3px #b7ff3c22}
.v340 .cb-builder{order:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:17px}
.v340 .cb-panel,.v340 .cb-output{border:1px solid var(--cb-border);background:linear-gradient(145deg,#12382b,#08221b);border-radius:22px;padding:clamp(17px,2vw,27px);min-width:0;box-shadow:0 10px 24px #00000020}
.v340 .cb-section-title{display:flex;align-items:flex-start;gap:13px;margin:0 0 21px}.v340 .cb-section-title h2{margin:0 0 4px;letter-spacing:-.035em;font-size:22px;line-height:1.15}.v340 .cb-section-title p{font-size:12px;color:#a5bcae;margin:0;line-height:1.5}
.v340 .cb-number{display:grid;place-items:center;background:#b7ff3c;color:#062213;border-radius:10px;min-width:38px;height:38px;font-weight:900;font-size:13px}
.v340 .cb-modes{margin:0 0 19px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v340 .cb-modes .pg-mode{min-width:0}.v340 .cb-modes .pg-mode>span{padding:17px 14px 13px;min-height:116px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;border-radius:15px;background:#0a251d;border:1px solid #345844;transition:background .15s,border-color .15s}.v340 .cb-modes .pg-mode input:checked+span{border-color:#b7ff3c;background:linear-gradient(145deg,#1e4c30,#123d28);box-shadow:inset 0 0 0 1px #b7ff3c4d}.v340 .cb-modes .pg-mode input:checked+span strong{color:#d4ff9c}.v340 .cb-mode-icon{display:block;font-size:22px;color:#b7ff3c;font-weight:850;line-height:1.2}.v340 .cb-modes small{font-size:11px;color:#9db4a3}
.v340 .pg-field{font-size:10px;letter-spacing:.07em;color:#a9c9b2;font-weight:800;margin-bottom:11px;display:flex;flex-direction:column;gap:8px}.v340 .pg-field input,.v340 .pg-field textarea,.v340 .pg-field select{background:#071d17;border:1px solid #3a5c49;color:#eaffeb;border-radius:11px;min-height:46px;min-width:0;width:100%;padding:12px 13px;letter-spacing:normal;font-weight:550;font-size:14px}.v340 .pg-field input:focus,.v340 .pg-field textarea:focus,.v340 .pg-field select:focus{border-color:#b7ff3c;outline:2px solid #b7ff3c28;outline-offset:0}.v340 .pg-field textarea{resize:vertical;min-height:220px;line-height:1.7;font-size:15px;font-weight:500}.v340 .pg-field span{font-size:10px;color:#819d89;margin-left:6px}
.v340 .cb-config{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px;margin-top:8px}.v340 .cb-toggle{display:flex;align-items:center;gap:13px;padding:12px 9px;border-bottom:1px solid #ffffff16;cursor:pointer}.v340 .cb-toggle input{accent-color:#b7ff3c;width:20px;height:20px;flex:none}.v340 .cb-toggle span{display:grid;gap:4px}.v340 .cb-toggle b{font-size:12px;color:#e7f8e8}.v340 .cb-toggle small{font-size:11px;color:#9fb5a6}
.v340 .cb-advanced{border:1px solid #315543;border-radius:13px;margin-top:15px;background:#0c2a20;overflow:hidden}.v340 .cb-advanced>summary{padding:14px;cursor:pointer;font-size:12px;color:#ddf3dc;font-weight:800;list-style:revert}.v340 .cb-advanced>summary span{float:right;font-size:10px;color:#9cb9a5;font-weight:600}.v340 .cb-advanced>div:not(.pg-players){padding:0 13px 13px}.v340 #pgSeedDetails .pg-players{padding:5px 10px;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;max-height:350px;overflow-y:auto}.v340 #pgSeedDetails .pg-player-row{width:100%;min-width:0}.v340 #pgSeedDetails .pg-add-row{padding:8px 12px}.v340 #pgSeedDetails .pg-paste-area{padding:12px}
.v340 .cb-roster-top .pg-field{margin:0}.v340 .cb-roster-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#8ea99a;font-size:11px;padding:10px 2px 12px;line-height:1.5}.v340 #pgPlayerCount{color:#c8ff7b;font-weight:900;font-size:12px;white-space:nowrap}.v340 .cb-participant-actions{display:flex;flex-wrap:wrap;gap:8px}.v340 .cb-participant-actions .pg-btn{min-height:39px;font-size:12px;padding:7px 12px}.v340 .cb-line-help{color:#95b6a0;font-size:11px;line-height:1.6;margin:12px 0 0}
.v340 .cb-action-row{order:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 25px;margin:17px 0 0;border:1px solid #42693b;border-radius:19px;background:linear-gradient(105deg,#163b2c,#0a231a)}.v340 .cb-action-row strong{font-size:16px}.v340 .cb-action-row p{font-size:12px;color:#9fb3a6;margin:5px 0 0}.v340 .cb-action-row .pg-generate{min-width:230px;min-height:51px;font-size:15px}.v340 main>#pgError{order:1;font-size:13px;margin:9px 4px 3px}
.v340 .cb-output{order:2;margin-top:18px;background:#0b291e}.v340 .cb-output-top{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.v340 .cb-output h2{font-size:clamp(23px,3vw,33px);margin:8px 0 5px;letter-spacing:-.04em}.v340 .cb-output h2 span{color:#b7ff3c}.v340 .cb-output p{font-size:12px;color:#a9bbae;line-height:1.5}.v340 .cb-tools{display:flex;flex-wrap:wrap;gap:9px;padding-top:17px;border-top:1px solid #ffffff15}.v340 .cb-tools .pg-btn{min-height:43px;font-size:12px}.v340 .cb-save-hint{margin:12px 0 0;font-size:11px;color:#819f8b}
.v340 .pg-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:17px 0}.v340 .pg-stat{background:#14392b;border:1px solid #355743;border-radius:12px}.v340 .pg-state{background:#1a412e;color:#b7ff3c;border:1px solid #3d7545;padding:8px 12px;border-radius:30px}
.v340 #pgBracketSection{order:3;margin-top:17px;margin-bottom:0;padding:clamp(12px,2vw,24px);background:linear-gradient(145deg,#113225,#061b14);border:1px solid var(--cb-border);border-radius:21px}.v340 .gv-bracket-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:16px}.v340 #pgBracketSection .gv-bracket-heading h3{margin:6px 0;font-size:25px;line-height:1.2}.v340 #pgBracketSection .gv-bracket-heading p{font-size:12px;line-height:1.55}.v340 #pgBracketSection #pgBracketPng{background:#b7ff3c;color:#082314;font-weight:800}.v340 .cb-accent{color:#b7ff3c}.v340 #pgBracketVisual{border-radius:15px;overflow:hidden!important}.v340 #pgBracketSection .ib-round-panel{border-radius:14px}.v340 #pgBracketSection .ib-round-card{cursor:pointer}
.v340 .cb-followup{order:4;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;margin-top:17px}.v340 .cb-followup .pg-card{padding:20px;min-width:0;border:1px solid var(--cb-border);border-radius:19px;background:#0d2b21}.v340 .cb-team-card h3{font-size:17px;margin:0 0 5px}.v340 .cb-team-card p{font-size:12px;color:#95b09e;margin:0 0 10px}.v340 .cb-team-card #pgTeams{display:grid;grid-template-columns:1fr;gap:6px}.v340 .cb-team-card .pg-team{font-size:12px}.v340 .cb-match-table .pg-match-details{margin:0}.v340 .cb-match-table .pg-match-details>summary{background:#173b2a}
.v340 .cb-save-banner{order:5;margin-top:24px}.v340 .pg-footer{margin-top:15px}
.v340 .pg-knockout-mode~#pgBracketSection{} /* no duplicate match editor above bracket */
@media(max-width:900px){.v340 .cb-builder{grid-template-columns:1fr}.v340 .cb-top{padding:26px 0 22px}.v340 .cb-open-status{display:none}.v340 .cb-followup{grid-template-columns:1fr}}
@media(max-width:640px){.v340 .pg-header{min-height:68px}.v340 .cb-top{padding:22px 2px}.v340 .cb-top h1{font-size:clamp(28px,8vw,38px)}.v340 .cb-guest-badge{margin-left:0;margin-top:8px}.v340 .cb-panel,.v340 .cb-output{padding:16px;border-radius:16px}.v340 .cb-modes .pg-mode>span{min-height:105px;padding:12px 10px}.v340 .cb-mode-icon{font-size:19px}.v340 .cb-section-title h2{font-size:20px}.v340 .cb-action-row{padding:15px;display:block}.v340 .cb-action-row .pg-generate{width:100%;margin-top:14px;min-width:0}.v340 .cb-roster-footer{display:block}.v340 .cb-roster-footer span{display:block}.v340 .cb-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.v340 .cb-tools .pg-btn{padding:9px 5px;font-size:11px}.v340 .pg-stats{gap:6px}.v340 .pg-stat{padding:10px 7px}.v340 #pgBracketSection .gv-bracket-heading{display:block}.v340 #pgBracketSection #pgBracketPng{width:100%;margin-top:8px}.v340 .cb-followup .pg-card{padding:13px}.v340 .cb-advanced>summary span{float:none;margin-left:7px}.v340 .cb-config{gap:0 8px}}
@media(max-width:350px){.v340 .cb-config{grid-template-columns:1fr}.v340 .cb-modes small{font-size:10px}}

/* Club Admin planner — same clean settings-first hierarchy, retaining session-bound records. */
#view-planner .gp-layout{grid-template-columns:minmax(0,1fr)!important;max-width:100%;gap:17px}
#view-planner .gp-editor,#view-planner .gp-results{background:linear-gradient(150deg,#123528,#08231a);border:1px solid #335844;border-radius:20px;padding:clamp(16px,2vw,26px);min-width:0}
#view-planner .gp-intro{margin-bottom:20px}
#view-planner .gp-editor .gp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#view-planner .gp-section-title{margin:22px 0 14px}
#view-planner .gp-step{background:#b7ff3c;color:#082314;border-radius:10px}
#view-planner .gp-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#view-planner .gp-v340-third{display:flex;align-items:center;gap:13px;padding:12px;margin:12px 0;border:1px solid #365941;border-radius:12px;color:#d6f2d7;cursor:pointer}
#view-planner .gp-v340-third[hidden]{display:none!important}
#view-planner .gp-v340-third input{width:19px;height:19px;accent-color:#b7ff3c}
#view-planner .gp-v340-third span{display:grid;gap:4px}
#view-planner .gp-v340-third strong{font-size:12px}
#view-planner .gp-v340-third small{font-size:11px;color:#9bb49f}
#view-planner .gp-result-actions{display:flex;flex-wrap:wrap;gap:9px}
#view-planner #gpBracketSection{margin-top:17px}
@media(max-width:640px){#view-planner .gp-editor,#view-planner .gp-results{padding:15px;border-radius:16px}#view-planner .gp-editor .gp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#view-planner .gp-v340-third{margin:10px 0}}
