.login-cover-video {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:1;filter:saturate(var(--login-cover-saturation,1))}
#login-screen {isolation:isolate}
.login-cover-image {position:absolute;inset:0;background:center/cover no-repeat;pointer-events:none;opacity:0;transition:opacity .32s;filter:saturate(var(--login-cover-saturation,1));z-index:0}
.login-cover-image.is-active {opacity:1}
#login-screen .login-bg-overlay {z-index:2}
#login-screen .login-box {z-index:3}
.login-cover-pause {position:absolute;z-index:4;right:16px;bottom:16px;padding:10px 12px;border:1px solid #777;border-radius:8px;background:#1b1b1b;color:#f2f2f2;cursor:pointer}
.login-cover-pause:focus-visible {outline:3px solid #cecece;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.login-cover-image{transition:none}}
#login-screen .login-bg-overlay {background:rgba(0,0,0,var(--login-cover-dim,.5));pointer-events:none}
.login-logo-wrap .login-logo-icon {display:none!important}
.login-brand-mark {width:52px;height:52px;object-fit:contain;flex-shrink:0}
.login-logo-wrap .login-title {white-space:pre-line;letter-spacing:.16em;line-height:1.25;font-size:24px}
.login-logo-wrap .login-title-sub {margin-top:8px}
.login-settings-grid {display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,1.2fr);gap:32px;max-width:1100px}
.login-settings-grid label {display:block;margin:20px 0 8px;font-weight:600}
.login-settings-grid p {color:var(--text-muted);font-size:13px;line-height:1.6}
.login-settings-grid input[type=range] {width:100%}
.login-settings-actions {display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.login-cover-preview {position:relative;isolation:isolate;aspect-ratio:16/10;background:#1a1a1a center/cover;display:grid;place-items:center;overflow:hidden;border-radius:12px;margin-top:20px}
.login-cover-preview::after {content:'';position:absolute;inset:0;background:rgba(0,0,0,var(--login-cover-dim,.5));z-index:-1;pointer-events:none}
.login-cover-preview-media {position:absolute;inset:0;background:center/cover no-repeat;filter:saturate(var(--login-cover-saturation,1));z-index:-2}
.login-cover-preview video {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.login-cover-preview-card {background:#1a1a1a;color:#fff;padding:24px;width:210px;border:1px solid #3a3a3a;border-radius:12px}
.login-cover-preview-card strong {letter-spacing:.16em}
.login-cover-preview-card span {display:block;padding:8px;margin-top:8px;background:#3a3a3a;border-radius:6px;font-size:12px}
.login-cover-preview-card .login-preview-submit {background:#f2f2f2;color:#242424;text-align:center}
.login-gallery-row {display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border-light);flex-wrap:wrap}
.login-gallery-row img {width:80px;height:55px;object-fit:cover;border-radius:6px;background:var(--bg-surface-2)}
.login-gallery-info {flex:1;min-width:120px}
.login-gallery-info span,.login-gallery-info small {display:block}
.login-gallery-info small {color:var(--text-secondary);margin-top:4px}
.login-gallery-actions {display:flex;gap:6px;flex-wrap:wrap}
#login-upload-status p {overflow-wrap:anywhere}
@media(max-width:800px){.login-settings-grid {grid-template-columns:1fr}}

/* Scoped design workspace: do not change other settings or modules. */
.workflow-details {margin-top:16px}
.workflow-legacy {padding:12px;border-top:1px solid var(--border-light);color:var(--text-secondary);font-size:12px}
.workflow-legacy p {margin:4px 0}
.cal-booking-workflow {font-size:10px;line-height:1.4;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#settings-section-design > .settings-block {display:flex;align-items:center;gap:24px;padding:16px 20px!important;box-shadow:none;margin-bottom:24px}
#settings-section-design > .settings-block .settings-block-label {margin:0;text-transform:none;letter-spacing:0;font-size:13px;color:var(--text-primary)}
#settings-section-design #theme-swatches {flex:1}
#settings-section-design .theme-swatch {display:flex;flex-direction:row;align-items:center;gap:12px;max-width:none!important;padding:12px 16px!important;min-height:60px}
#settings-section-design .theme-swatch-dots {margin:0!important}
#settings-section-design .theme-swatch-sub {margin-left:auto;padding-right:20px;font-size:12px}
#settings-section-design .theme-swatch-check {right:12px;top:50%;transform:translateY(-50%)}
#settings-section-design #settings-section-studio {margin-bottom:24px}
#settings-section-design #settings-section-studio .settings-block {box-shadow:none;padding:20px!important}
#settings-section-design .design-brand-grid {display:grid!important;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px!important;max-width:none!important}
#settings-section-design .design-brand-group {min-width:0;gap:12px!important}
.design-brand-column {display:flex;flex-direction:column;gap:24px;min-width:0}
#settings-section-design .design-brand-group > div:first-child {font-size:13px!important;color:var(--text-primary)!important;text-transform:none!important;letter-spacing:0!important}
#settings-section-design .design-brand-group input {min-width:0}
.design-brand-field {min-width:0}
#settings-section-design .design-brand-group > .design-brand-field {flex:0 0 auto!important}
.design-brand-field label {display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}
#settings-section-design .design-brand-actions {grid-column:1/-1;border-top:1px solid var(--border-light);padding-top:16px}
#settings-section-design #settings-section-loginAppearance {background:var(--bg-surface);border:1px solid var(--border-light);border-radius:12px;padding:20px}
#settings-section-loginAppearance h2 {font-size:17px;margin:0 0 8px;color:var(--text-primary)}
#settings-section-loginAppearance > p {font-size:12px;line-height:1.6;color:var(--text-secondary);max-width:80ch;margin:0 0 20px}
#settings-section-design .login-settings-grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;max-width:none}
#settings-section-design .login-settings-grid label {margin:0 0 8px;font-size:12px}
#settings-section-design .login-settings-grid p {margin:8px 0 0;font-size:12px;line-height:1.5}
.login-settings-field {margin-bottom:20px;min-width:0}
#settings-section-design input[type=file] {display:block;width:100%;min-width:0;font:inherit;font-size:12px;color:var(--text-secondary);border:1px solid var(--border-control);border-radius:8px;background:var(--bg-surface);padding:6px}
#settings-section-design input[type=file]::file-selector-button {font:inherit;font-weight:600;color:var(--text-primary);background:var(--bg-surface-2);border:0;border-radius:5px;padding:8px 12px;margin-right:12px;cursor:pointer}
#settings-section-design :is(input,select,button):focus-visible {outline:3px solid var(--accent-border);outline-offset:2px}
#settings-section-design .login-cover-preview {margin-top:0;min-height:260px;min-width:0;width:100%;max-width:100%}
#settings-section-design .login-settings-grid > div {min-width:0}
#settings-section-design .login-cover-preview-card p {color:#c2c2c2}
#settings-section-design .login-cover-preview-card .login-preview-submit {background:#f2f2f2;color:#242424}
#settings-section-design .login-settings-actions {border-top:1px solid var(--border-light);padding-top:16px;margin-top:8px}
#login-cover-message:not(:empty) {padding:10px 12px;border-left:3px solid var(--accent);background:var(--bg-surface-2);color:var(--text-primary)}
@media(max-width:1000px) {
 #settings-section-design .design-brand-grid,#settings-section-design .login-settings-grid {grid-template-columns:minmax(0,1fr)}
 #settings-section-design .theme-swatch-sub {display:none}
}
@media(pointer:coarse) {#settings-section-design :is(.btn,.form-input,input[type=file]) {min-height:44px}}
@media(max-width:600px) {
 #settings-section-design > .settings-block {align-items:stretch;flex-direction:column;gap:12px}
 #settings-section-design .design-brand-group > div {flex-wrap:wrap}
 #settings-section-design .design-brand-group > div > .design-brand-field {flex-basis:100%!important}
}
