.settings-shell{width:100%;min-height:calc(100vh - 60px)}.settings-layout{display:flex;align-items:flex-start;max-width:1080px;margin:0 auto;padding:var(--space-xl) var(--space-lg) var(--space-3xl);gap:var(--space-xl)}.settings-tabs{flex:0 0 200px;position:sticky;top:calc(60px + var(--space-lg))}.settings-tabs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.settings-tabs-divider{height:1px;background:var(--border);margin:var(--space-sm) var(--space-sm)}.settings-tab{display:block;width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-left:3px solid transparent;border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:14px;font-family:var(--font-body);font-weight:500;color:var(--text-secondary);text-align:left;cursor:pointer;transition:color var(--transition-base),background var(--transition-base),border-color var(--transition-base);-webkit-tap-highlight-color:transparent}.settings-tab:hover{color:var(--text-primary);background:rgba(var(--accent-rgb, 109, 76, 255),.08)}@supports (background: color-mix(in srgb,red 50%,blue)){.settings-tab:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.settings-tab[aria-selected=true]{color:var(--accent);border-left-color:var(--accent);background:rgba(var(--accent-rgb, 109, 76, 255),.08);font-weight:600}@supports (background: color-mix(in srgb,red 50%,blue)){.settings-tab[aria-selected=true]{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.settings-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-tabs-mobile{display:none;width:100%;padding:10px 14px;font-size:14px;font-family:var(--font-body);color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);outline:none;cursor:pointer;margin-bottom:var(--space-lg);box-sizing:border-box}.settings-tabs-mobile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-content{flex:1;min-width:0;max-width:680px}.settings-panel{display:block}.settings-panel[hidden]{display:none}.settings-page{max-width:680px;width:100%;margin:0 auto;padding:20px var(--space-md) 60px}.settings-title{font-family:var(--font-display);font-size:32px;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-xl)}.settings-section{margin-bottom:40px}.settings-section-header{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border)}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg)}.settings-field{margin-bottom:20px}.settings-field:last-child{margin-bottom:0}.settings-label{display:block;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.settings-hint{font-size:13px;color:var(--text-muted);margin-bottom:var(--space-sm)}.settings-input{width:100%;padding:10px 14px;font-size:14px;font-family:var(--font-body);color:var(--text-primary);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);outline:none;transition:border-color .2s;box-sizing:border-box}.settings-input:focus{border-color:var(--accent)}.settings-input:focus-visible{outline:2px solid rgba(139,92,246,.8);outline-offset:2px}.settings-input::placeholder{color:var(--text-muted)}textarea.settings-input{resize:vertical;min-height:80px}.settings-row{display:flex;gap:var(--space-md)}.settings-row>.settings-field{flex:1;min-width:0}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border)}.settings-toggle-row:last-child{border-bottom:none}.settings-toggle-info{flex:1}.settings-toggle-title{font-size:14px;font-weight:600;color:var(--text-primary)}.settings-toggle-desc{font-size:13px;color:var(--text-muted);margin-top:2px}.toggle-switch{position:relative;width:44px;height:24px;flex-shrink:0;margin-left:var(--space-md)}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:background .2s}.toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:var(--text-primary);border-radius:50%;transition:transform .2s}.toggle-switch input:checked+.toggle-slider{background:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px);background:var(--bg, #fff)}.avatar-preview{display:flex;align-items:center;gap:var(--space-md);margin-bottom:20px}.avatar-circle{width:64px;height:64px;border-radius:var(--radius-full);background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;overflow:hidden;flex-shrink:0}.avatar-circle img{width:100%;height:100%;object-fit:cover}.avatar-info{flex:1}.avatar-name{font-size:18px;font-weight:600;color:var(--text-primary)}.avatar-email{font-size:13px;color:var(--text-muted);margin-top:2px}.settings-actions{display:flex;gap:12px;margin-top:var(--space-lg)}.btn-primary{padding:10px 24px;font-size:14px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-md);cursor:pointer;transition:opacity .2s}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{padding:10px 24px;font-size:14px;font-weight:600;color:var(--danger);background:transparent;border:1px solid var(--danger);border-radius:var(--radius-md);cursor:pointer;transition:background .2s,color .2s}.btn-danger:hover{background:var(--danger);color:#fff}.settings-toast{position:fixed;bottom:24px;right:var(--space-lg);padding:12px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:500;color:#fff;background:var(--accent);transform:translateY(80px);opacity:0;transition:transform .3s ease,opacity .3s;z-index:9999}.settings-toast.show{transform:translateY(0);opacity:1}.settings-toast.error{background:var(--danger)}.settings-auth-gate{text-align:center;padding:80px 20px}.settings-auth-gate p{font-size:16px;color:var(--text-secondary);margin-bottom:var(--space-lg)}.settings-loading{text-align:center;padding:60px 20px;color:var(--text-muted);font-size:14px}@media(max-width:768px){.settings-layout{flex-direction:column;padding:var(--space-lg) var(--space-md) var(--space-3xl);gap:0}.settings-tabs{flex:none;position:static;width:100%}.settings-tabs-list{display:none}.settings-tabs-mobile{display:block}.settings-content{width:100%;max-width:none}.settings-page{padding:32px 20px 60px}.settings-title{font-size:28px}.settings-row{flex-direction:column;gap:0}}@media(max-width:600px){.settings-toast{left:var(--space-md);right:var(--space-md);bottom:var(--space-md)}}@media(max-width:375px){.settings-page{padding:20px 12px 60px}.settings-title{font-size:24px}.settings-card{padding:var(--space-md)}.avatar-circle{width:48px;height:48px}}.blocked-users-list{max-height:400px;overflow-y:auto}.blocked-user-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}.blocked-user-row:last-child{border-bottom:none}.blocked-user-info{display:flex;align-items:center;gap:10px}.blocked-user-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.blocked-user-avatar-placeholder{width:36px;height:36px;border-radius:var(--radius-full);background:var(--panel, var(--surface-heavy))}.blocked-user-name{font-size:14px;color:var(--text-primary)}.btn-unblock{padding:6px 14px;border-radius:var(--radius-full);border:1px solid var(--danger, #e57373);background:transparent;color:var(--danger, #e57373);font-size:12px;cursor:pointer;transition:background .2s,color .2s}.btn-unblock:hover{background:var(--danger, #e57373);color:var(--bg, #fff)}.settings-empty-state{color:var(--text-muted);font-size:14px}.bookings-tabs{display:flex;gap:8px;margin-bottom:var(--space-md)}.bookings-tab{padding:var(--space-sm) var(--space-md);background:var(--surface-heavy);border:1px solid var(--border);border-radius:var(--radius-md);font-size:14px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.bookings-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.bookings-list{max-height:400px;overflow-y:auto}.booking-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;border:1px solid var(--border);border-radius:8px;margin-bottom:12px;background:var(--bg)}.booking-info{flex:1}.booking-service{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-xs)}.booking-meta{font-size:13px;color:var(--text-muted);margin-bottom:var(--space-xs)}.booking-date{font-size:13px;color:var(--text-secondary)}.booking-actions{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-sm)}.booking-status{display:inline-block;padding:4px 10px;border-radius:var(--radius-lg);font-size:12px;font-weight:600}.booking-status.pending{background:rgba(var(--warning-rgb),.15);color:var(--warning)}.booking-status.confirmed{background:rgba(var(--success-rgb),.15);color:var(--success)}.booking-status.completed{background:#3b82f626;color:#3b82f6}.booking-status.cancelled{background:#9ca3af26;color:#9ca3af}.booking-btn{padding:6px 12px;font-size:12px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);cursor:pointer;transition:all .2s}.booking-btn:hover{border-color:var(--accent)}.booking-btn.danger:hover{border-color:var(--danger);color:var(--danger)}.booking-btn.success:hover{border-color:var(--success);color:var(--success)}.empty-bookings{text-align:center;padding:40px 20px;color:var(--text-muted);font-size:14px}.reader-dashboard{margin-top:var(--space-md)}.reader-quick-links{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.reader-link{padding:var(--space-sm) var(--space-md);background:var(--surface-heavy);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;font-size:13px;transition:all .2s}.reader-link:hover{border-color:var(--accent);color:var(--accent)}.services-list{margin-top:20px}.service-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:8px;background:var(--bg)}.service-item-info{flex:1}.service-item-name{font-size:14px;font-weight:600;color:var(--text-primary)}.service-item-meta{font-size:12px;color:var(--text-muted)}.service-item-actions{display:flex;gap:var(--space-sm)}.availability-editor{margin-top:20px}.availability-grid-editor{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-xs);margin-top:12px}.avail-day-header{text-align:center;font-size:11px;font-weight:600;color:var(--text-muted);padding:4px}.avail-slot{padding:8px 4px;text-align:center;font-size:10px;border-radius:var(--radius-sm);background:var(--surface-heavy);color:var(--text-muted);cursor:pointer;transition:all .2s}.avail-slot.selected{background:rgba(var(--success-rgb),.2);color:var(--success)}.avail-slot:hover{background:var(--surface)}.ai-usage-message{color:var(--text-muted);font-size:14px}.ai-usage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-md);margin-bottom:20px}.ai-usage-stat-value{font-size:24px;font-weight:600;color:var(--text-primary)}.ai-usage-stat-label{font-size:12px;color:var(--text-muted)}.ai-usage-section-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-sm)}.ai-usage-activity-list{max-height:200px;overflow-y:auto}.ai-usage-activity-item{display:flex;justify-content:space-between;padding:var(--space-sm) 0;border-bottom:1px solid var(--border);font-size:13px}.ai-usage-activity-action{color:var(--text-secondary)}.ai-usage-activity-model,.ai-usage-activity-time{color:var(--text-muted)}.ai-usage-empty{color:var(--text-muted);font-size:13px}.checkbox-group{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--space-sm)}.checkbox-label{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text-secondary);cursor:pointer}.reader-subsection-title{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.reader-add-service{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.settings-input--narrow{max-width:200px}.settings-actions--compact{margin-top:var(--space-md)}.settings-section-header--danger{color:var(--danger)}.settings-card--danger{border-color:rgba(var(--danger-rgb),.3)}.service-status-inactive{color:var(--warning);font-size:11px}.color-scheme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}@media(max-width:640px){.color-scheme-grid{grid-template-columns:repeat(2,1fr)}}.color-scheme-option{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:8px;background:transparent;border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:border-color .18s ease,transform .12s ease,background .18s ease;-webkit-tap-highlight-color:transparent}.color-scheme-option:hover{background:var(--bg)}.color-scheme-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.color-scheme-option[aria-checked=true]{border-color:var(--accent);background:var(--bg)}.color-scheme-swatch{position:relative;display:block;width:100%;aspect-ratio:16 / 10;border-radius:var(--radius-md);border:1px solid var(--border);overflow:hidden}.color-scheme-swatch:after{content:"";position:absolute;right:10px;bottom:10px;width:18px;height:18px;border-radius:50%;box-shadow:0 1px 3px #00000040}.color-scheme-option[aria-checked=true] .color-scheme-swatch{box-shadow:0 0 0 2px var(--accent),0 4px 12px #00000026}.color-scheme-swatch--pink-light{background:linear-gradient(135deg,#f5f3ee,#f7f6f3,#f3f1ec)}.color-scheme-swatch--pink-light:after{background:#8a77a8}.color-scheme-swatch--pink-dark{background:linear-gradient(135deg,#1a1d2e,#2d1b3d)}.color-scheme-swatch--pink-dark:after{background:#d91b7a}.color-scheme-swatch--blue-light{background:linear-gradient(135deg,#eef4fb,#f5f9fd,#ebf2fa)}.color-scheme-swatch--blue-light:after{background:#4169e1}.color-scheme-swatch--blue-dark{background:linear-gradient(135deg,#0e1628,#1a2a4a)}.color-scheme-swatch--blue-dark:after{background:#1e90ff}.color-scheme-label{font-size:13px;font-weight:500;color:var(--text-primary);text-align:center}.sessions-list{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:12px}.sessions-loading,.sessions-empty{padding:12px;color:var(--text-secondary);font-size:13px;text-align:center}.session-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary)}.session-info{flex:1;min-width:0}.session-device{font-size:14px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-meta{font-size:12px;color:var(--text-secondary);margin-top:4px}.session-badge{display:inline-block;padding:2px 8px;margin-left:6px;border-radius:var(--radius-full);font-size:11px;font-weight:500}.session-badge--current{background:var(--accent-bg, rgba(59, 130, 246, .15));color:var(--accent-color, rgb(59, 130, 246))}.session-revoke-btn{flex-shrink:0;padding:6px 12px;font-size:13px}.change-password-form{display:block}.password-form-intro{margin-bottom:var(--space-md)}.password-revoke-row{border-top:1px solid var(--border);border-bottom:none;margin-top:8px;padding-top:var(--space-md)}.password-strength{margin-top:8px}.password-strength-bars{display:flex;gap:4px}.password-strength-bar{flex:1;height:4px;border-radius:2px;background:var(--border);transition:background .2s}.password-strength-bar.is-on.is-weak{background:var(--danger, #ef4444)}.password-strength-bar.is-on.is-fair{background:#f59e0b}.password-strength-bar.is-on.is-good{background:#3b82f6}.password-strength-bar.is-on.is-strong{background:#10b981}.password-strength-label{font-size:12px;color:var(--text-muted);margin-top:4px;min-height:16px}.password-feedback{font-size:13px;margin-top:12px;min-height:18px;color:var(--text-secondary)}.password-feedback.is-error{color:var(--danger, #ef4444)}.password-feedback.is-success{color:#10b981}.theme-picker-wrapper{width:100%}.theme-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}@media(max-width:767px){.theme-picker-grid{grid-template-columns:1fr}}.theme-section{display:flex;flex-direction:column;gap:var(--space-sm)}.theme-section-header{font-size:var(--text-lg, 16px);font-weight:600;color:var(--cr-text);margin-bottom:var(--space-xs)}.theme-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--cr-border);border-radius:8px;background:var(--cr-surface);transition:background .2s ease,box-shadow .2s ease;position:relative}.theme-card:hover{background:color-mix(in srgb,var(--cr-surface) 92%,var(--accent) 8%);box-shadow:0 2px 8px var(--cr-shadow-light)}.theme-card:focus-within{outline:2px solid var(--accent);outline-offset:2px}.theme-card.picked{outline:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.theme-card-swatch{display:flex;width:72px;height:32px;border-radius:4px;overflow:hidden;flex-shrink:0;border:1px solid var(--cr-border)}.theme-card-swatch-stripe{flex:1;height:100%}.theme-card-name{flex:1;font-size:14px;font-weight:500;color:var(--cr-text)}.theme-card-pick-btn{padding:var(--space-xs) var(--space-sm);background:var(--accent);color:var(--cr-text);border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:opacity .15s ease;white-space:nowrap}.theme-card-pick-btn:hover{opacity:.85}.theme-card-pick-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-card-picked-indicator{position:absolute;top:var(--space-sm);right:var(--space-sm);font-size:14px;color:var(--accent);opacity:0;pointer-events:none;transition:opacity .2s ease}.theme-card.picked .theme-card-picked-indicator{opacity:1}.settings-panel-title{font-size:var(--text-sm, 14px);font-weight:600;color:var(--text-muted, rgba(0, 0, 0, .6));text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-md, 16px) 0}.settings-panel-field{margin-bottom:var(--space-lg, 24px)}.settings-panel-field:last-of-type{margin-bottom:0}.settings-panel-field__label{display:block;font-size:var(--text-sm, 14px);font-weight:600;color:var(--text-primary, #1a1a2e);margin-bottom:var(--space-sm, 8px)}.settings-panel-field__label-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-sm, 8px)}.settings-panel-field__label-row .settings-panel-field__label{margin-bottom:0}.settings-panel-field--disabled{opacity:.45;pointer-events:none}.settings-panel-radio-group{display:flex;flex-direction:column;gap:var(--space-xs, 4px)}.settings-panel-radio{display:flex;align-items:center;gap:var(--space-sm, 8px);padding:8px var(--space-sm, 8px);border-radius:6px;cursor:pointer;font-size:var(--text-sm, 14px);color:var(--text-secondary, rgba(0, 0, 0, .7));transition:background .15s ease,color .15s ease}.settings-panel-radio:hover{background:color-mix(in srgb,var(--accent, #6d4cff) 8%,transparent);color:var(--text-primary, #1a1a2e)}.settings-panel-radio input[type=radio]{accent-color:var(--accent, #6d4cff);width:16px;height:16px;flex-shrink:0;cursor:pointer;margin:0}.settings-panel-slider-readout{font-size:var(--text-xs, 12px);font-family:var(--font-mono, ui-monospace, monospace);color:var(--text-muted, rgba(0, 0, 0, .6));white-space:nowrap}.settings-panel-slider-row{display:flex;align-items:center;gap:var(--space-sm, 8px)}.settings-panel-slider-endpoint{font-size:var(--text-xs, 12px);color:var(--text-muted, rgba(0, 0, 0, .6));white-space:nowrap;flex-shrink:0;min-width:32px}.settings-panel-slider-endpoint:last-child{text-align:right}.settings-panel-slider{flex:1;accent-color:var(--accent, #6d4cff);cursor:pointer;height:4px;margin:0}.settings-panel-slider:disabled{cursor:not-allowed}.settings-panel-reset-btn{display:inline-flex;align-items:center;gap:var(--space-xs, 4px);padding:8px var(--space-md, 16px);background:transparent;border:1px solid var(--border, rgba(0, 0, 0, .15));border-radius:6px;font-size:var(--text-sm, 14px);color:var(--text-muted, rgba(0, 0, 0, .6));cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.settings-panel-reset-btn:hover{border-color:var(--accent, #6d4cff);color:var(--accent, #6d4cff);background:color-mix(in srgb,var(--accent, #6d4cff) 8%,transparent)}.settings-panel-reset-btn:focus-visible{outline:2px solid var(--accent, #6d4cff);outline-offset:2px}
