.clubdeck-app{--bg:#f6f7fb;--card:#fff;--line:#e4e7ef;--text:#1f2937;--muted:#6b7280;display:grid;grid-template-columns:280px 1fr;min-height:760px;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border-radius:20px;overflow:hidden;border:1px solid var(--line)}.clubdeck-sidebar{background:#151827;color:#fff;padding:18px;display:flex;flex-direction:column;gap:18px}.clubdeck-brand{display:flex;gap:12px;align-items:center}.clubdeck-logo{width:42px;height:42px;border-radius:14px;background:var(--clubdeck-accent);display:grid;place-items:center;font-weight:800}.clubdeck-brand small{display:block;color:#c7cce0}.clubdeck-menu-toggle{background:#24283b;color:#fff;border:1px solid #343a55;border-radius:12px;padding:10px;cursor:pointer;text-align:left}.clubdeck-nav{display:flex;flex-direction:column;gap:8px}.clubdeck-nav button{display:flex;justify-content:space-between;align-items:center;gap:8px;background:transparent;color:#fff;border:0;border-radius:12px;padding:12px 10px;text-align:left;cursor:pointer}.clubdeck-nav button:hover,.clubdeck-nav button.is-active{background:rgba(255,255,255,.12)}.clubdeck-nav em{font-style:normal;color:#fbbf24;font-size:11px}.clubdeck-nav .is-locked{opacity:.65}.clubdeck-main{min-width:0}.clubdeck-topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:22px;background:#fff;border-bottom:1px solid var(--line)}.clubdeck-topbar h1{margin:0;font-size:26px}.clubdeck-topbar p{margin:4px 0 0;color:var(--muted)}.clubdeck-top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.clubdeck-top-actions a,.clubdeck-plan{background:#f3f4f6;border:1px solid var(--line);padding:8px 10px;border-radius:999px;text-decoration:none;color:#374151}.clubdeck-tabs{display:flex;gap:8px;overflow:auto;padding:12px 18px;background:#fff;border-bottom:1px solid var(--line)}.clubdeck-tab{border:1px solid var(--line);background:#f9fafb;border-radius:999px;padding:8px 12px;display:flex;gap:8px;align-items:center;cursor:pointer;white-space:nowrap}.clubdeck-tab.is-active{background:var(--clubdeck-accent);color:#fff}.clubdeck-tab-close{border:0;background:transparent;color:inherit;cursor:pointer;font-weight:700}.clubdeck-panels{padding:20px}.clubdeck-panel{display:none}.clubdeck-panel.is-active{display:block}.clubdeck-hero{display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(135deg,var(--clubdeck-accent),#24345f);color:#fff;border-radius:24px;padding:24px;margin-bottom:18px}.clubdeck-hero h2{margin:0 0 6px;font-size:26px}.clubdeck-hero p{margin:0;color:rgba(255,255,255,.85)}.clubdeck-button{background:var(--clubdeck-accent);color:#fff;border:0;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}.clubdeck-hero .clubdeck-button{background:#fff;color:#1f2937}.clubdeck-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.clubdeck-tiles button,.clubdeck-tile{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;text-align:left;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.04)}.clubdeck-tiles strong{display:block;font-size:32px;color:var(--clubdeck-accent)}.clubdeck-tiles span{color:var(--muted)}.clubdeck-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.clubdeck-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:18px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.clubdeck-card h2,.clubdeck-card h3{margin-top:0}.clubdeck-muted{color:var(--muted)}.clubdeck-list-item,.clubdeck-mini-item{border:1px solid var(--line);border-radius:14px;padding:12px;margin:10px 0;background:#fff}.clubdeck-mini-item{background:#f9fafb}.clubdeck-list-item h3{margin:0 0 6px}.clubdeck-list-item p,.clubdeck-mini-item p{margin:4px 0;color:#4b5563}.clubdeck-pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;background:#eef2ff;color:#3730a3;font-size:12px}.clubdeck-pill.is-urgent{background:#fee2e2;color:#991b1b}.clubdeck-ajax-form label{display:block;margin:0 0 12px;font-weight:700}.clubdeck-ajax-form input,.clubdeck-ajax-form textarea,.clubdeck-ajax-form select{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:12px;padding:10px;margin-top:5px;background:#fff}.clubdeck-inline-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.clubdeck-inline-form textarea{grid-column:1/-1}.clubdeck-inline-form .clubdeck-button,.clubdeck-inline-form .clubdeck-form-message{grid-column:auto}.clubdeck-check{display:flex!important;align-items:center;gap:8px;margin:0!important}.clubdeck-check input{width:auto!important}.clubdeck-link-button{background:transparent;color:var(--clubdeck-accent);border:0;font-weight:700;cursor:pointer;padding:4px 0}.clubdeck-form-message{color:#047857;font-weight:700}.clubdeck-login{min-height:520px;background:#f6f7fb;display:grid;place-items:center;padding:24px}.clubdeck-login-card{background:#fff;border:1px solid var(--line);border-radius:22px;max-width:420px;width:100%;padding:24px;box-shadow:0 18px 50px rgba(15,23,42,.08)}.clubdeck-login-card input{width:100%;box-sizing:border-box}.clubdeck-sidebar.is-collapsed{width:auto}.clubdeck-app.is-collapsed{grid-template-columns:82px 1fr}.clubdeck-app.is-collapsed .clubdeck-brand div,.clubdeck-app.is-collapsed .clubdeck-nav span,.clubdeck-app.is-collapsed .clubdeck-nav em{display:none}.clubdeck-app.is-collapsed .clubdeck-nav button{justify-content:center}.clubdeck-app.is-collapsed .clubdeck-menu-toggle{font-size:0}.clubdeck-app.is-collapsed .clubdeck-menu-toggle:after{content:'☰';font-size:18px}@media(max-width:900px){.clubdeck-app{grid-template-columns:1fr}.clubdeck-sidebar{position:relative}.clubdeck-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.clubdeck-topbar,.clubdeck-hero{flex-direction:column;align-items:flex-start}.clubdeck-tiles,.clubdeck-grid-2,.clubdeck-inline-form{grid-template-columns:1fr}.clubdeck-panels{padding:12px}}@media(max-width:560px){.clubdeck-nav{grid-template-columns:1fr}.clubdeck-topbar{padding:16px}.clubdeck-card{padding:14px;border-radius:16px}.clubdeck-tiles strong{font-size:26px}}
.clubdeck-empty{color:#6b7280;background:#f9fafb;border:1px dashed #d1d5db;border-radius:12px;padding:12px}.clubdeck-status-overdue,.clubdeck-status-rejected,.clubdeck-status-no-show{background:#fee2e2;color:#991b1b}.clubdeck-status-approved,.clubdeck-status-paid,.clubdeck-status-complete,.clubdeck-status-assigned{background:#dcfce7;color:#166534}.clubdeck-status-pending,.clubdeck-status-due{background:#fef3c7;color:#92400e}.clubdeck-report-number{font-size:34px;font-weight:800;color:var(--clubdeck-accent);margin:0 0 12px}.clubdeck-list-item small{color:#6b7280}
.clubdeck-tiles a{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:16px;box-shadow:0 3px 12px rgba(0,0,0,.06)}.clubdeck-tiles a strong{display:block;font-size:1.1rem}.clubdeck-tiles a span{display:block;color:#666;font-size:.9rem}.clubdeck-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.clubdeck-check-row{display:block;margin:8px 0}

/* v0.4.1 front-end admin/member polish */
.clubdeck-menu-toggle{display:flex;align-items:center;gap:8px;justify-content:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:12px;width:calc(100% - 24px);margin:0 12px 12px;padding:10px 12px;font-weight:800;cursor:pointer}.clubdeck-menu-toggle .expand-label{display:none}.clubdeck-menu-toggle .collapse-arrow{margin-left:auto;font-size:22px}.clubdeck-app.is-collapsed .collapse-label{display:none}.clubdeck-app.is-collapsed .expand-label{display:inline}.clubdeck-app.is-collapsed .collapse-arrow{transform:rotate(180deg);margin-left:0}.clubdeck-app.is-collapsed .clubdeck-menu-toggle{font-size:0}.clubdeck-app.is-collapsed .clubdeck-menu-toggle .expand-label,.clubdeck-app.is-collapsed .clubdeck-menu-toggle .collapse-arrow{font-size:14px}.clubdeck-next-actions{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;margin-bottom:18px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.clubdeck-next-actions h3{margin:0 0 10px}.clubdeck-next-actions div{display:flex;gap:10px;flex-wrap:wrap}.clubdeck-next-actions button{border:1px solid var(--line);background:#f9fafb;border-radius:14px;padding:10px 12px;cursor:pointer}.clubdeck-search{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:14px;padding:12px;margin:8px 0 14px}.clubdeck-edit-box{margin-top:10px;border-top:1px solid var(--line);padding-top:10px}.clubdeck-edit-box summary{cursor:pointer;color:var(--clubdeck-accent);font-weight:800}.clubdeck-inline-form label{font-weight:700}.clubdeck-inline-form label textarea{min-height:90px}.clubdeck-check{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:10px!important;min-height:42px;box-sizing:border-box;cursor:pointer}.clubdeck-check input{margin:0 6px 0 0!important;accent-color:var(--clubdeck-accent)}.clubdeck-button.secondary{background:#f3f4f6;color:#1f2937;border:1px solid var(--line)}.clubdeck-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.clubdeck-form-message.is-error{color:#b91c1c}.clubdeck-form-message.is-ok{color:#047857}.clubdeck-list-item details .clubdeck-inline-form{margin-top:12px;background:#f9fafb;border-radius:14px;padding:12px}.clubdeck-list-item details input[type="file"]{background:#fff}.clubdeck-panel h2{letter-spacing:-.01em}@media(max-width:900px){.clubdeck-menu-toggle{width:auto;margin:0 12px 12px}.clubdeck-app.is-collapsed{grid-template-columns:1fr}.clubdeck-app.is-collapsed .clubdeck-brand div,.clubdeck-app.is-collapsed .clubdeck-nav span,.clubdeck-app.is-collapsed .clubdeck-nav em{display:block}.clubdeck-app.is-collapsed .clubdeck-nav button{justify-content:flex-start}.clubdeck-next-actions div{display:grid;grid-template-columns:1fr;width:100%}}

/* v0.4.2 simplified front-end settings */
.clubdeck-settings-intro p{max-width:760px}.clubdeck-workflow-prompt{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.clubdeck-workflow-prompt span{background:#f9fafb;border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;align-items:center;gap:8px}.clubdeck-workflow-prompt strong{width:26px;height:26px;border-radius:999px;background:var(--clubdeck-accent);color:#fff;display:grid;place-items:center}.clubdeck-mini-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;border-bottom:1px solid var(--line);padding-bottom:12px}.clubdeck-mini-tabs button{border:1px solid var(--line);background:#f9fafb;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}.clubdeck-mini-tabs button.is-active{background:var(--clubdeck-accent);color:#fff;border-color:var(--clubdeck-accent)}.clubdeck-settings-panel{display:none}.clubdeck-settings-panel.is-active{display:block}.clubdeck-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.clubdeck-settings-panel textarea{min-height:150px}.clubdeck-settings-panel label{font-weight:800}.clubdeck-settings-panel input,.clubdeck-settings-panel textarea{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:12px;padding:10px;margin-top:6px;background:#fff}@media(max-width:900px){.clubdeck-workflow-prompt,.clubdeck-settings-grid{grid-template-columns:1fr}.clubdeck-mini-tabs{display:grid;grid-template-columns:1fr 1fr}.clubdeck-mini-tabs button{text-align:center}}@media(max-width:560px){.clubdeck-mini-tabs{grid-template-columns:1fr}}

/* v0.4.3 save checking and admin-home clean-up */
.clubdeck-admin-hero{margin-bottom:18px}.clubdeck-admin-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.clubdeck-admin-actions button{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-align:left;cursor:pointer;box-shadow:0 6px 18px rgba(15,23,42,.04)}.clubdeck-admin-actions strong{display:block;color:var(--clubdeck-accent);font-size:1rem;margin-bottom:5px}.clubdeck-admin-actions span{display:block;color:var(--muted);line-height:1.35}.clubdeck-quick-add{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin:10px 0 12px}.clubdeck-quick-add input{margin:0!important}.clubdeck-saved-lines{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.clubdeck-saved-lines span{background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;border-radius:999px;padding:6px 10px;font-weight:700}.clubdeck-saved-lines em{color:var(--muted)}.clubdeck-save-hint{margin-top:8px;font-size:.92rem}@media(max-width:1000px){.clubdeck-admin-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.clubdeck-admin-actions,.clubdeck-quick-add{grid-template-columns:1fr}.clubdeck-quick-add .clubdeck-button{width:100%}}

/* v0.4.4 navigation regression check */

/* v0.4.5 role/admin separation */
.clubdeck-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:6px}.clubdeck-mode-switch button{border:0;border-radius:10px;background:transparent;color:#fff;padding:8px;font-weight:800;cursor:pointer}.clubdeck-mode-switch button.is-active,.clubdeck-mode-switch button:hover{background:rgba(255,255,255,.16)}.clubdeck-nav-heading{display:block;margin:10px 6px 3px;color:#aab2d5;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.clubdeck-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0}.clubdeck-role-grid div{border:1px solid var(--line);border-radius:14px;background:#f9fafb;padding:12px}.clubdeck-role-grid strong{display:block;color:#111827}.clubdeck-role-grid small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.clubdeck-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:12px 0}.clubdeck-admin-home-note{color:var(--muted)}.clubdeck-settings-panel hr{border:0;border-top:1px solid var(--line);margin:18px 0}@media(max-width:900px){.clubdeck-mode-switch{grid-template-columns:1fr}.clubdeck-role-grid,.clubdeck-check-grid{grid-template-columns:1fr}}

/* v0.4.6 role-admin split and declutter */
.clubdeck-view-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:8px}.clubdeck-view-switch button{border:0;border-radius:10px;padding:9px;background:transparent;color:#fff;font-weight:800;cursor:pointer}.clubdeck-view-switch button.is-active,.clubdeck-view-switch button:hover{background:#fff;color:#111827}.clubdeck-nav-heading{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#aab1cc;margin:10px 4px 2px}.clubdeck-role-summary{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-bottom:16px}.clubdeck-role-summary>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}.clubdeck-role-summary strong{display:block;font-size:20px;color:var(--clubdeck-accent)}.clubdeck-role-summary span{display:block;color:var(--muted);font-size:13px}.clubdeck-admin-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.clubdeck-admin-actions button{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;text-align:left;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.04)}.clubdeck-admin-actions strong{display:block;color:#111827;font-size:18px;margin-bottom:5px}.clubdeck-admin-actions span{display:block;color:var(--muted)}.clubdeck-settings-nav{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.clubdeck-settings-nav button{border:1px solid var(--line);background:#f9fafb;border-radius:999px;padding:9px 12px;cursor:pointer;font-weight:800}.clubdeck-settings-nav button.is-active{background:var(--clubdeck-accent);color:#fff}.clubdeck-settings-panel{display:none;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:14px;background:#fbfcff}.clubdeck-settings-panel.is-active{display:block}.clubdeck-settings-panel textarea{width:100%;min-height:150px;box-sizing:border-box;border:1px solid #d1d5db;border-radius:12px;padding:10px}.clubdeck-quick-add{display:flex;gap:8px;align-items:center;margin:10px 0}.clubdeck-quick-add input{flex:1;border:1px solid #d1d5db;border-radius:12px;padding:10px}.clubdeck-pill-preview{display:flex;flex-wrap:wrap;gap:8px}.clubdeck-pill-preview span{display:inline-flex;border-radius:999px;background:#eef2ff;color:#3730a3;padding:6px 10px;font-size:13px}.clubdeck-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0}.clubdeck-role-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px}.clubdeck-role-card strong{display:block}.clubdeck-role-card small{display:block;color:var(--muted);margin-top:4px;word-break:break-word}.clubdeck-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin:10px 0}.clubdeck-muted{color:var(--muted)}
@media(max-width:760px){.clubdeck-role-summary{grid-template-columns:1fr}.clubdeck-quick-add{flex-direction:column;align-items:stretch}.clubdeck-view-switch{grid-template-columns:1fr}.clubdeck-admin-actions{grid-template-columns:1fr}}

/* v0.4.7 duties sub-tabs and qualification restrictions */
.clubdeck-duty-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px;border-bottom:1px solid var(--line);padding-bottom:12px}
.clubdeck-duty-tabs button{border:1px solid var(--line);background:#f9fafb;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}
.clubdeck-duty-tabs button.is-active{background:var(--clubdeck-accent);color:#fff;border-color:var(--clubdeck-accent)}
.clubdeck-duty-panel{display:none}
.clubdeck-duty-panel.is-active{display:block}
.clubdeck-duty-panel textarea{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:12px;padding:10px;min-height:140px}
.clubdeck-fieldset{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcff;margin:0}
.clubdeck-fieldset legend{font-weight:800;color:#111827;padding:0 6px}
@media(max-width:700px){.clubdeck-duty-tabs{display:grid;grid-template-columns:1fr}.clubdeck-duty-tabs button{text-align:center}}


/* v0.4.8 form control hardening: keep tick boxes, radio buttons and native selects clickable/visible even if the active theme applies global form styles. */
.clubdeck-app input[type="checkbox"],
.clubdeck-app input[type="radio"]{
  appearance:auto!important;
  -webkit-appearance:auto!important;
  position:static!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  display:inline-block!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  margin:0 8px 0 0!important;
  vertical-align:middle!important;
  cursor:pointer!important;
  accent-color:var(--clubdeck-accent);
}
.clubdeck-app input[type="checkbox"]:focus,
.clubdeck-app input[type="radio"]:focus{
  outline:3px solid color-mix(in srgb, var(--clubdeck-accent) 25%, transparent);
  outline-offset:2px;
}
.clubdeck-check,
.clubdeck-check-row{
  cursor:pointer!important;
  user-select:none;
  min-height:34px;
  align-items:center!important;
}
.clubdeck-check input,
.clubdeck-check-row input{
  flex:0 0 auto;
}
.clubdeck-check-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:10px;
  margin-top:10px;
}
.clubdeck-check-grid .clubdeck-check{
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px 12px;
  background:#fff;
}
.clubdeck-check-grid .clubdeck-check:has(input:checked){
  border-color:var(--clubdeck-accent);
  background:#f8f6ff;
  box-shadow:0 0 0 2px color-mix(in srgb, var(--clubdeck-accent) 12%, transparent);
}
.clubdeck-fieldset{
  grid-column:1/-1;
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px;
  background:#fbfcff;
}
.clubdeck-fieldset legend{font-weight:800;padding:0 8px;color:#374151}.clubdeck-fieldset p{margin-top:0}
.clubdeck-toggle-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.clubdeck-toggle-note{color:var(--muted);font-size:13px}
