:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:#f2f5f8;--ink:#172033;--muted:#667085;--line:#dfe5ec;--teal:#0f766e;--soft:#eaf7f5;--red:#b42318}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,#e5f4f2 0,transparent 34%),#f2f5f8}
.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,4vw);background:#fff;border-bottom:1px solid #e8edf2}
.site-header img{width:185px;display:block}
.site-header>a:last-child{color:#526074;font-weight:800;text-decoration:none}
.customer-admin-shell{width:min(1180px,calc(100% - 32px));margin:42px auto 80px}
.login-panel{width:min(520px,100%);margin:70px auto;background:#fff;border-radius:24px;padding:30px;box-shadow:0 24px 70px #17203318}
.login-panel h1{font-size:clamp(2rem,6vw,3.15rem);line-height:1.02;margin:5px 0 12px}
.login-panel>p:not(.eyebrow){color:var(--muted);line-height:1.55}
.eyebrow{margin:0;color:var(--teal);font-size:.72rem;font-weight:950;letter-spacing:.16em}
.login-panel form{display:grid;gap:13px;margin-top:22px}
.login-panel label,.field-grid label{display:grid;gap:6px;color:#475467;font-size:.82rem;font-weight:800}
.login-panel input,.field-grid input{width:100%;border:1px solid #d0d7e1;border-radius:12px;padding:13px 14px;background:#fff;color:var(--ink);font:inherit}
.login-panel button,.form-actions button,.credential-actions button,.board-actions button,.board-actions a,.dashboard-head button,.section-heading button{border:0;border-radius:11px;padding:11px 14px;background:var(--ink);color:#fff;font:inherit;font-weight:850;text-decoration:none;cursor:pointer}
.login-panel button:disabled,button:disabled{opacity:.55;cursor:not-allowed}
.form-message{min-height:1.2em;margin:0;color:var(--muted)}
.form-message.error{color:var(--red)}
.forgot-panel{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}
.forgot-panel summary{cursor:pointer;font-weight:850}
.dashboard-head,.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.dashboard-head h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1;margin:6px 0 10px}
.dashboard-head p:last-child{margin:0;color:var(--muted)}
.secondary{background:#e7edf3!important;color:#344054!important}
.capacity-panel{margin:25px 0;background:#fff;border-radius:20px;padding:20px;box-shadow:0 14px 40px #1720330d}
.capacity-panel>div:first-child{display:flex;justify-content:space-between;gap:14px}
.capacity-panel span{color:var(--muted)}
.capacity-track{height:10px;margin-top:14px;border-radius:999px;background:#e7ecef;overflow:hidden}
.capacity-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#36b5a9);transition:width .3s ease}
.create-board-panel,.dashboard-section{margin-top:22px;background:#fff;border:1px solid #e5eaf0;border-radius:20px;padding:20px;box-shadow:0 12px 34px #1720330a}
.create-board-panel summary,.activity-section>summary{cursor:pointer;font-size:1.05rem;font-weight:900}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.field-grid .wide{grid-column:1/-1}
.field-grid small{font-weight:500;color:var(--muted)}
.field-grid fieldset{margin:0;border:1px solid var(--line);border-radius:13px;padding:13px 14px;background:#f8fafc}
.field-grid fieldset legend{padding:0 6px;color:#344054;font-size:.82rem;font-weight:900}
.field-grid fieldset label{display:flex;align-items:center;gap:9px;padding:7px 0;font-size:.88rem}
.field-grid fieldset input[type="checkbox"]{width:auto;flex:0 0 auto}
.club-team-choices,#customerClubTeams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.dashboard-section h2{margin:5px 0 17px}
.board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.customer-board{border:1px solid var(--line);border-radius:17px;padding:16px;background:#fbfcfe}
.board-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.board-head h3{margin:0 0 4px}
.board-head code{color:#5b6679;font-size:.75rem}
.badge{display:inline-flex;border-radius:999px;padding:6px 9px;background:#eaf7f5;color:#08746b;font-size:.72rem;font-weight:900}
.badge.pending{background:#fff5d8;color:#875900}
.board-meta{display:grid;gap:4px;margin:13px 0;color:#5d6879;font-size:.82rem}
.credential-list{display:grid;gap:8px;margin-top:14px}
.credential-row{border:1px solid #dfe7eb;border-radius:12px;padding:10px;background:#fff}
.credential-title{display:flex;justify-content:space-between;gap:10px;align-items:center}
.credential-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem;letter-spacing:.05em}
.credential-value.missing{max-width:55%;color:#875900;font-family:inherit;font-size:.78rem;font-weight:850;letter-spacing:0;text-align:right}
.credential-refresh-note{display:grid;gap:4px;margin:13px 0 0;border:1px solid #f0d58b;border-radius:12px;padding:11px 12px;background:#fff9e8;color:#704b00;font-size:.82rem;line-height:1.4}
.credential-refresh-note strong{font-size:.86rem}
.credential-actions,.board-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.credential-actions button,.board-actions button,.board-actions a{padding:8px 10px;background:#e8edf3;color:#344054;font-size:.78rem}
.board-actions .danger{background:#fff0ee;color:var(--red)}
.credential-actions .reveal-code{background:#dff3ef;color:#08675f}
.credential-reset{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:9px}
.credential-reset input{border:1px solid #d0d7e1;border-radius:9px;padding:9px}
.credential-reset button{border:0;border-radius:9px;padding:9px 10px;background:var(--ink);color:#fff;font-weight:800}
.team-edit{margin-top:10px;border-top:1px solid var(--line);padding-top:10px}
.team-edit summary{cursor:pointer;font-weight:800;font-size:.83rem}
.team-edit .field-grid{grid-template-columns:1fr;margin-top:10px}
.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.offer-card{min-width:0}
.admin-person,.audit-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #edf0f3;padding:9px 0}
.admin-person span,.audit-row span,.audit-row time{color:var(--muted);font-size:.82rem}
.help-button{display:inline-flex;margin-top:15px;border-radius:11px;padding:11px 14px;background:#e7edf3;color:#344054;font-weight:850;text-decoration:none}
.activity-section>summary{margin-bottom:12px}
#customerAdminStatus{position:fixed;z-index:2147483647;left:50%;bottom:22px;transform:translateX(-50%);max-width:min(620px,calc(100% - 30px));border-radius:13px;padding:12px 16px;background:#172033;color:#fff;font-weight:800;box-shadow:0 12px 35px #17203344;opacity:0;pointer-events:none;transition:opacity .2s}
#customerAdminStatus.show{opacity:1}
#customerAdminStatus.error{background:#b42318}
.empty{color:var(--muted)}

@media(max-width:780px){.customer-admin-shell{width:min(100% - 20px,1180px);margin-top:24px}
.site-header{height:68px}
.site-header img{width:158px}
.board-grid,.offer-grid,.field-grid{grid-template-columns:1fr}
.field-grid .wide{grid-column:auto}
.dashboard-head,.section-heading,.capacity-panel>div:first-child{display:block}
.dashboard-head button,.section-heading button{margin-top:12px}
.login-panel{margin-top:24px;padding:22px}
.customer-board{padding:13px}
.club-team-choices,#customerClubTeams{grid-template-columns:1fr}
}
