/* Shared settings use the existing dark cards and theme accents. */
.settings-page-shell {display:grid;gap:16px;min-width:0;padding:0 0 20px}
.settings-page-shell .desktop-page-heading {margin:0}
.settings-tabs {display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #ffffff12;padding-bottom:10px}
.settings-page-shell [hidden],.account-page-shell [data-account-tab-panel][hidden],.reader-settings-section [hidden],.tabedit-rhythm-details[hidden] {display:none!important}
.settings-info-list {display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;margin:20px 0 0;font-size:14px}
.settings-info-list dt {color:#aaa}.settings-info-list dd {margin:0;font-weight:600;overflow-wrap:anywhere}
.admin-page-shell .admin-user-row {grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr) auto;align-items:end;gap:12px;padding:14px;border:1px solid #ffffff10;border-radius:10px;background:#ffffff03}
.admin-page-shell .admin-user-row label,.admin-page-shell .admin-create-user-form label {min-width:0}
.admin-page-shell input {min-width:0;width:100%;box-sizing:border-box}
.admin-page-shell .admin-create-user-form {grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;margin:14px 0}
.reader-settings-section {margin-top:20px;padding-top:18px;border-top:1px solid #ffffff12}
.reader-fields-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 14px;max-width:760px}
.reader-field-choice {display:flex;align-items:center;gap:8px;min-height:34px;color:#ddd;font-size:14px;min-width:0;cursor:pointer}
.reader-field-choice input {margin:0;flex:0 0 auto;accent-color:var(--songbook-accent,#ffb000)}
.reader-setlist-fields {display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px;border-top:1px solid #ffffff0d;margin-top:14px;padding-top:10px}
.settings-subtitle {color:#aaa;font-size:12px}
.reader-settings-preview {margin:14px 0;padding:14px;border:1px solid #ffffff12;border-radius:10px;background:#141414;max-width:760px}
.reader-settings-preview>strong {font-size:15px}.reader-preview-meta {display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px}
.reader-note-pill {cursor:pointer;font:inherit;font-size:inherit;background:#ffffff08;color:inherit;white-space:nowrap}
.rhythm-type-entry {display:flex;gap:8px;max-width:480px;align-items:center}.rhythm-type-entry input {flex:1;min-width:0}
.reader-rhythm-types {display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.reader-rhythm-chip {display:inline-flex;align-items:center;gap:7px;padding:4px 7px 4px 10px;border:1px solid #ffffff16;border-radius:7px;background:#ffffff04;color:#ddd;font-size:13px}
.reader-rhythm-chip button {border:0;background:none;color:#bbb;padding:1px 4px;font:inherit;font-size:18px;cursor:pointer}.reader-rhythm-chip button:hover {color:#fff}
.tabedit-rhythm-spec {border-top:1px solid #ffffff12;margin:14px 0;padding-top:14px}
.tabedit-rhythm-primary {display:flex;align-items:end;gap:14px;flex-wrap:wrap}
.tabedit-rhythm-primary .tabedit-meta-field {width:150px;flex:0 0 150px}
.tabedit-rhythm-primary button {min-height:36px;padding:6px 10px}
.tabedit-rhythm-details {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:14px;max-width:760px}
.tabedit-drummer-field {grid-column:1/-1}.tabedit-rhythm-details .playlist-input {width:100%;min-width:0;box-sizing:border-box}
.tabedit-drummer-field textarea {resize:vertical;min-height:54px;max-height:400px;line-height:1.5}
/* One modal surface, clear columns; no fixed column minimum can overlap. */
.account-page-shell dialog.account-permission-dialog {width:min(1000px,calc(100vw - 32px));max-width:none;box-sizing:border-box;padding:22px;border:1px solid #ffffff25;border-radius:14px;background:#1c1c1c}
.account-permission-dialog .account-default-permission-group {padding:0;margin:0;border:0;background:none;min-width:0}
.account-permission-dialog .account-default-permission-group>h3 {margin:0 0 20px;color:#eee;font-size:18px}
.account-permission-dialog .default-permissions-editor {padding:0;border:0;background:none;min-width:0}
.account-permission-dialog .tab-permission-grid {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0;padding:0;border:0;background:none;min-width:0}
.account-permission-dialog .tab-permission-grid.tab-permission-grid-view-only {grid-template-columns:minmax(0,1fr)}
.account-permission-dialog .tab-permission-card {min-width:0;padding:0;border:0;border-radius:0;box-shadow:none;background:none}
.account-permission-dialog .tab-permission-card+.tab-permission-card {border-left:1px solid #ffffff12;padding-left:24px}
.account-permission-dialog .tab-permission-card h3 {font-size:14px;line-height:1.4;margin:6px 0 12px}
.account-permission-dialog .tab-permission-card-kicker {font-size:11px;letter-spacing:.12em;color:var(--songbook-accent,#ffb000)}
.account-permission-dialog .tab-permission-custom {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.account-permission-dialog .tab-permission-custom[hidden] {display:none!important}
.account-permission-dialog .tab-permission-column {min-width:0;overflow:hidden}
.account-permission-dialog .tab-permission-select,.account-permission-dialog .tab-permission-search {width:100%;min-width:0;box-sizing:border-box}
.account-permission-dialog .permission-bulk-actions {grid-column:1/-1;display:flex;justify-content:flex-end;gap:6px;margin:0}
.account-permission-dialog .tab-permission-option {min-width:0;max-width:100%;box-sizing:border-box}
.account-permission-dialog .tab-permission-option span {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-permission-dialog .tab-permission-fixed-note {margin:10px 0 0;color:#999;font-size:12px;grid-column:1/-1}
.account-permission-dialog-actions {position:sticky;bottom:-22px;background:#1c1c1c;border-top:1px solid #ffffff12;padding:14px 0 0;margin-top:20px;z-index:1}
/* Logged-out screen has no workspace/menu scripts or sidebar. */
body.songbook-login-page {margin:0;background:#111;color:#eee;font-family:Arial,sans-serif;font-size:15px;min-height:100dvh}
.songbook-login-shell {min-height:100dvh;display:grid;place-items:center;padding:24px;box-sizing:border-box}
.songbook-login-card {width:min(100%,400px);padding:30px;box-sizing:border-box;border:1px solid #ffffff20;border-radius:16px;background:#1d1d1d;box-shadow:0 20px 60px #0003}
.songbook-login-brand {font-size:11px;letter-spacing:.16em;color:#aaa}
.songbook-login-card h1 {font-size:26px;margin:10px 0 8px;letter-spacing:0;color:#f2f2f2}
.songbook-login-card>p {font-size:14px;color:#aaa;margin:0 0 24px}
.songbook-login-card .auth-form {display:grid;gap:9px;margin:0}
.songbook-login-card label {font-size:13px;color:#ccc;margin-top:4px}
.songbook-login-card input {width:100%;min-width:0;box-sizing:border-box;min-height:44px;padding:10px 12px;background:#141414;color:#eee;border:1px solid #444;border-radius:8px;font:inherit;box-shadow:none}
.songbook-login-card input:focus {outline:2px solid #a0a8b4;outline-offset:1px}
.songbook-login-submit {min-height:43px;margin-top:10px;border:1px solid #ddd;border-radius:8px;background:#e5e7e9;color:#171717;font:inherit;font-weight:600;cursor:pointer}
.songbook-login-submit:hover {background:#fff}
.songbook-login-register {text-align:center;color:#c3c6cc;margin-top:9px;font-size:13px;text-decoration:none;line-height:1.5}.songbook-login-register:hover {color:#fff;text-decoration:underline}
.songbook-login-card .auth-error {background:#402626;color:#f2b8b8;padding:10px;border-radius:8px;margin-bottom:14px;font-size:13px}
@media(max-width:900px) {.reader-fields-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page-shell .admin-user-row,.admin-page-shell .admin-create-user-form {grid-template-columns:repeat(2,minmax(0,1fr))}.account-permission-dialog .tab-permission-grid {grid-template-columns:minmax(0,1fr)}.account-permission-dialog .tab-permission-card+.tab-permission-card {border-left:0;border-top:1px solid #ffffff12;padding-left:0;padding-top:20px}}
@media(max-width:560px) {.settings-page-shell {gap:12px}.reader-fields-grid {gap:2px 10px}.reader-field-choice {font-size:13px}.tabedit-rhythm-primary {gap:10px}.tabedit-rhythm-details {grid-template-columns:minmax(0,1fr)}.admin-page-shell .admin-user-row,.admin-page-shell .admin-create-user-form {grid-template-columns:minmax(0,1fr)}.account-page-shell dialog.account-permission-dialog {width:calc(100vw - 20px);padding:16px}.account-permission-dialog .tab-permission-custom {grid-template-columns:minmax(0,1fr)}.account-permission-dialog-actions {bottom:-16px}.songbook-login-shell {padding:18px}.songbook-login-card {padding:24px}}

/* Profile partials also load global styles; keep this surface deliberately flat. */
.account-page-shell .account-default-permissions-body .account-permission-dialog .account-default-permission-group {padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:none!important}
.account-page-shell .account-default-permissions-body .account-permission-dialog .tab-permission-card {padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important}
.account-page-shell .account-default-permissions-body .account-permission-dialog .tab-permission-card+.tab-permission-card {border-left:1px solid #ffffff12!important;padding-left:24px!important}
.account-page-shell .account-tab-btn:not(.is-active) {background:#242424!important;border-color:#ffffff18!important;color:#bbb!important;box-shadow:none!important}
.reader-settings-preview .tv-version-pill-tab-meta {color:var(--songbook-accent-light,var(--songbook-accent,#ddd));border-color:var(--songbook-accent-border,#ffffff20);background:#ffffff05}
@media(max-width:900px){.account-page-shell .account-default-permissions-body .account-permission-dialog .tab-permission-card+.tab-permission-card {border-left:0!important;border-top:1px solid #ffffff12!important;padding-left:0!important;padding-top:20px!important}}
/* Layered important rules take precedence over the older theme-parity overrides. */
@layer workspace-surfaces {
 .account-page-shell .account-permission-dialog .account-default-permission-group,
 .account-page-shell .account-permission-dialog .tab-permission-card,
 .account-page-shell .account-permission-dialog .tab-permission-grid {
  border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important;padding:0!important;
 }
 .account-page-shell .account-permission-dialog .tab-permission-card+.tab-permission-card {border-left:1px solid #ffffff12!important;padding-left:24px!important}
 .account-page-shell .account-tab-btn:not(.is-active) {background:#242424!important;border-color:#ffffff18!important;color:#bbb!important;box-shadow:none!important}
 .reader-settings-preview .tv-version-pill-tab-meta {color:var(--songbook-accent,#ddd)!important;border-color:#ffffff20!important;background:#ffffff05!important}
 @media(max-width:900px){.account-page-shell .account-permission-dialog .tab-permission-card+.tab-permission-card {border-left:0!important;border-top:1px solid #ffffff12!important;padding-left:0!important;padding-top:20px!important}}
}
