/* Wash user dashboard. Generated from the final legacy cascade; edit this module only. */
.wash-user-page .wash-tabs,.wash-user-page .wash-user-info { border-bottom: 1px solid var(--color-border); margin-bottom: var(--space-3); }

.wash-user-page .wash-user-card,.wash-user-page .wash-user-panel { box-shadow: var(--shadow-sm); border: 1px solid var(--color-border); }

.wash-user-page .wash-user-card { background: var(--color-surface); box-shadow: var(--shadow-sm); padding: var(--space-4); max-width: 420px; margin: 0 auto; }

.wash-user-page .wash-user-card h2 { font-size: 1.5rem; font-weight: 700; margin-bottom: var(--space-3); text-align: center; letter-spacing: .02em; margin-top: var(--space-1); }

.wash-user-page .wash-user-info { padding-bottom: var(--space-2); }

.wash-user-page .wash-user-name { flex: 1; }

.wash-user-page .wash-tabs { padding-bottom: var(--space-1); }

.wash-user-page .wash-tab { padding: 8px 16px; border: none; background: 0 0; color: var(--color-text-secondary); font-size: .9375rem; cursor: pointer; border-radius: var(--radius-sm); transition: all var(--transition-fast); }

.wash-user-page .wash-list-item:hover,.wash-user-page .wash-list-state,.wash-user-page .wash-tab.active,.wash-user-page .wash-tab:hover { background: var(--color-surface-hover); }

.wash-user-page .wash-tab.active { color: var(--color-primary); font-weight: 600; }

.wash-user-page .wash-list-item { justify-content: space-between; }

.wash-user-page .wash-list-item:last-child { border-bottom: none; }

.wash-user-page .wash-list-item a { font-size: .9375rem; flex: 1; }

.wash-user-page .wash-list-item a:hover { color: var(--mc-blue-deep); }

.wash-user-page .wash-list-date { margin-left: var(--space-2); }

.wash-user-page .wash-list-state { flex-shrink: 0; margin-left: var(--space-1); }

.wash-user-page .wash-user-card { transition: box-shadow var(--transition-normal),transform var(--transition-normal); }

.wash-user-page .wash-user-card:hover,.wash-user-page .wash-user-panel:hover { box-shadow: var(--shadow-md); }

.wash-user-page .wash-user-card h2::after { content: ''; display: block; width: 36px; height: 3px; margin: 10px auto 0; border-radius: var(--radius-full); background: linear-gradient(90deg,var(--mc-green),var(--mc-peach)); }

.wash-user-page .wash-points-card { display: flex; align-items: center; margin: 0 0 var(--space-2); }

.wash-user-page .wash-list-ops .wash-op-edit,.wash-user-page .wash-user-role { color: var(--mc-blue-deep); }

.wash-user-page .wash-points-card[hidden],.wash-user-page .wash-tab-content[hidden] { display: none; }

.wash-user-page .wash-points-card b { font-size: 1rem; font-weight: 700; }

.wash-user-page .wash-user-role { display: inline-block; }

.wash-user-page .wash-uc-side .wash-user-info { flex-wrap: wrap; justify-content: center; }

.wash-user-page .wash-settings-block { background: var(--color-surface); }

.wash-user-page .wash-settings-block h4 { margin-bottom: var(--space-2); }

.wash-user-page .wash-settings-block:last-child { margin-bottom: 0; }

.wash-user-page .wash-user-info { display: flex; }

.wash-user-page .wash-user-avatar { border: 2px solid var(--color-border); background: var(--color-surface-hover) center/cover no-repeat; }

.wash-user-page .wash-tab { display: flex; align-items: center; gap: var(--space-1); }

.wash-user-page .wash-tab .wash-ico,.wash-user-page .wash-tabs .wash-tab .wash-ico { width: 16px; height: 16px; flex-shrink: 0; }

.wash-user-page .wash-avatar-row { align-items: center; gap: var(--space-2); }

.wash-user-page .wash-avatar-preview { border: 2px solid var(--color-border); background: var(--color-surface-hover) center/cover no-repeat; flex-shrink: 0; }

.wash-user-page .wash-avatar-fields { flex: 1; min-width: 0; }

.wash-user-page .wash-list-ops { margin-left: auto; flex-shrink: 0; }

.wash-user-page .wash-list-ops button { font-size: .75rem; padding: 3px 10px; }

.wash-user-page .wash-list-ops .wash-op-edit { border-color: var(--mc-blue); }

.wash-user-page .wash-list-ops .wash-op-del { color: var(--color-danger); }

.wash-user-page .wash-user-card { position: relative; border-radius: var(--radius-lg); overflow: hidden; }

.wash-user-page .wash-user-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg,var(--mc-blue),var(--mc-cyan),var(--mc-green)); }

.wash-user-page .wash-user-card input[type=email],.wash-user-page .wash-user-card input[type=password],.wash-user-page .wash-user-card input[type=text] { height: 40px; box-sizing: border-box; }

.wash-user-page .wash-user-card input:focus { border-color: var(--mc-blue); box-shadow: 0 0 0 3px var(--mc-blue-soft); outline: 0; }

.wash-user-page .wash-user-card .wash-btn-primary { min-height: 44px; width: 100%; }

.wash-user-page .wash-user-panel { transition: box-shadow var(--transition-normal); border-radius: var(--radius-lg); overflow: hidden; }

.wash-user-page .wash-user-avatar { box-shadow: 0 0 0 4px var(--mc-purple-soft); overflow: hidden; }

.wash-user-page .wash-uc-side .wash-tab { border-radius: var(--radius-md); display: flex; align-items: center; }

.wash-user-page .wash-uc-side .wash-tab:first-child.active { background: var(--mc-blue-soft); color: var(--mc-blue-deep); }

.wash-user-page .wash-uc-side .wash-tab:nth-child(2).active { background: var(--mc-green-soft); color: var(--mc-green-deep); }

.wash-user-page .wash-uc-side .wash-tab:nth-child(3).active { background: var(--mc-yellow-soft); color: var(--mc-yellow-deep); }

.wash-user-page .wash-uc-side .wash-tab:nth-child(4).active { background: var(--mc-peach-soft); color: var(--mc-peach-deep); }

.wash-user-page .wash-uc-side .wash-tab:nth-child(5).active { background: var(--mc-purple-soft); color: var(--mc-purple-deep); }

.wash-user-page .wash-uc-side .wash-tab:nth-child(6).active { background: var(--mc-cyan-soft); color: var(--mc-cyan-deep); }

.wash-user-page .wash-tabs .wash-tab:hover,.wash-user-page .wash-uc-side .wash-tab:nth-child(7).active { background: var(--color-surface-hover); color: var(--color-text); }

.wash-user-page .wash-user-panel { display: grid; grid-template-columns: 240px minmax(0,1fr); gap: var(--space-3); align-items: start; background: 0 0; border: none; box-shadow: none; padding: 0; }

.wash-user-page .wash-points-card,.wash-user-page .wash-user-info { border: 1px solid var(--color-border); display: flex; text-align: center; }

.wash-user-page .wash-uc-side { display: flex; flex-direction: column; gap: var(--space-2); }

.wash-user-page .wash-uc-main { min-width: 0; display: flex; flex-direction: column; gap: var(--space-2); }

.wash-user-page .wash-user-info { flex-direction: column; align-items: center; gap: 6px; padding: var(--space-3); background: var(--color-surface); border-radius: var(--radius-lg); }

.wash-user-page .wash-avatar-preview,.wash-user-page .wash-user-avatar { width: 72px; height: 72px; border-radius: 50%; background-size: cover; background-position: center; background-color: var(--color-surface-hover); box-shadow: 0 0 0 4px var(--mc-purple-soft); flex-shrink: 0; }

.wash-user-page .wash-user-name { font-size: 1.0625rem; font-weight: 600; color: var(--color-text); }

.wash-user-page .wash-user-role { font-size: .75rem; color: var(--color-text-tertiary); padding: 2px 10px; background: var(--color-surface-hover); border-radius: var(--radius-full); }

.wash-user-page .wash-points-card { flex-wrap: wrap; justify-content: center; gap: 4px; padding: var(--space-2); font-size: .8125rem; color: var(--color-text-secondary); background: var(--color-surface); border-radius: var(--radius-md); }

.wash-user-page .wash-tabs { display: flex; flex-direction: column; gap: 4px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: var(--space-1); }

.wash-user-page .wash-tabs .wash-tab,.wash-user-page .wash-uc-side .wash-tab { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 40px; padding: 0 12px; border: none; background: 0 0; border-radius: var(--radius-md); font-size: .9375rem; color: var(--color-text-secondary); cursor: pointer; text-align: left; box-sizing: border-box; transition: background var(--transition-fast),color var(--transition-fast); }

.wash-user-page .wash-tab-content { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: var(--space-3); }

.wash-user-page .wash-tab-content h3 { margin: 0 0 var(--space-2); font-size: 1.125rem; font-weight: 600; color: var(--color-text); padding-bottom: var(--space-1); border-bottom: 1px solid var(--color-border); }

.wash-user-page #view-forgot .wash-user-card { width: 100%; max-width: 420px; }

.wash-user-page .wash-list-item { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: var(--space-2); padding: 10px var(--space-1); border-bottom: 1px solid var(--color-border); transition: background var(--transition-fast); }

.wash-user-page .wash-list-item a { color: var(--color-text); text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }

.wash-user-page .wash-list-state { font-size: .75rem; color: var(--color-text-tertiary); padding: 2px 8px; background: var(--color-surface-hover); border-radius: var(--radius-full); white-space: nowrap; }

.wash-user-page .wash-list-date { font-size: .8125rem; color: var(--color-text-tertiary); white-space: nowrap; }

.wash-user-page .wash-list-ops { display: inline-flex; gap: 6px; }

.wash-user-page .wash-settings-block { border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: var(--space-2); margin-bottom: var(--space-2); }

.wash-user-page .wash-settings-block h4 { margin: 0 0 var(--space-2); font-size: .9375rem; font-weight: 600; color: var(--color-text); }

.wash-user-page .wash-avatar-row { display: flex; justify-content: center; }

.wash-user-page .wash-avatar-cam { position: absolute; right: 0; bottom: 0; width: 28px; height: 28px; display: flex; align-items: center; justify-content: center; background: var(--mc-blue-soft); border: 2px solid var(--color-surface); border-radius: 50%; color: var(--mc-blue-deep); }

.wash-user-page .wash-avatar-cam .wash-ico { width: 14px; height: 14px; }

.wash-user-page .wash-avatar-tip { text-align: center; }
