*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-main);color:var(--text-primary);line-height:1.5;min-height:100vh;transition:background-color var(--transition-base),color var(--transition-base)}#root{max-width:480px;margin:0 auto;width:100%;min-height:100vh;background:var(--bg-main);position:relative}#root.landing-root,#root.admin-root,#root.owner-root{max-width:100%}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--text-primary)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{margin-bottom:var(--space-md);color:var(--text-secondary)}a{color:var(--cornflower);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--cornflower-dark)}a:active{color:var(--primary)}button{font-family:inherit;font-size:inherit;line-height:inherit;cursor:pointer;border:none;background:none;-webkit-tap-highlight-color:transparent;transition:all var(--transition-fast)}button:focus{outline:none}button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:10px 20px;border-radius:var(--radius-full);font-weight:500;font-size:14px;transition:all var(--transition-fast);border:1px solid transparent;cursor:pointer}.btn-primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--primary-hover);box-shadow:var(--shadow-md)}.btn-primary:active{transform:scale(.97);background:var(--primary-hover);box-shadow:var(--shadow-sm)}.btn-accent{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.btn-accent:hover{background:var(--accent-hover);box-shadow:var(--shadow-md)}.btn-accent:active{transform:scale(.97);background:var(--accent-hover);box-shadow:var(--shadow-sm)}.btn-outline{background:transparent;border-color:var(--border);color:var(--text-primary)}.btn-outline:hover{background:var(--bg-soft);border-color:var(--primary)}.btn-outline:active{transform:scale(.97);background:var(--primary-soft)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-soft);color:var(--text-primary)}.btn-ghost:active{transform:scale(.97);background:var(--border-light)}.btn-sm{padding:6px 12px;font-size:12px}.btn-md{padding:10px 20px;font-size:14px}.btn-lg{padding:14px 28px;font-size:16px}.btn-icon{padding:8px;border-radius:var(--radius-full)}.btn-block{width:100%}input,textarea,select{font-family:inherit;font-size:16px;width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);transition:all var(--transition-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:disabled,textarea:disabled,select:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-soft)}input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:var(--primary);cursor:pointer}label{display:block;margin-bottom:var(--space-xs);font-weight:500;color:var(--text-secondary);font-size:14px}.form-group{margin-bottom:var(--space-md)}.form-error{color:var(--accent);font-size:12px;margin-top:var(--space-xs)}.card{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.card:active{transform:scale(.99)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-light)}.card-title{font-size:18px;font-weight:600;color:var(--text-primary)}.card-body{color:var(--text-secondary)}.card-footer{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:var(--space-sm)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-lg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--transition-base)}.modal{background:var(--bg-card);border-radius:var(--radius-xl);max-width:500px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);border:1px solid var(--border);animation:slideUp var(--transition-base)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg);border-bottom:1px solid var(--border)}.modal-title{font-size:20px;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-muted);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all var(--transition-fast)}.modal-close:hover{background:var(--accent-soft);color:var(--accent)}.modal-body{flex:1;overflow-y:auto;padding:var(--space-lg)}.modal-footer{padding:var(--space-lg);border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:var(--space-sm)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;max-width:480px;margin:0 auto;display:flex;justify-content:space-around;align-items:center;background:var(--bg-card);padding:8px 16px 20px;box-shadow:0 -4px 20px #0000001a;z-index:100;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;border-radius:var(--radius-full);color:var(--text-muted);font-size:12px;font-weight:500;transition:all var(--transition-fast);cursor:pointer}.bottom-nav-item.active{color:var(--primary);background:var(--primary-soft)}.bottom-nav-item:hover{color:var(--primary);background:var(--bg-soft)}.bottom-nav-item:active{transform:scale(.95)}.bottom-nav-icon{font-size:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg)}.section-title{font-size:22px;font-weight:700;color:var(--text-primary);position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-4px;left:0;width:40px;height:3px;background:var(--primary);border-radius:2px}.section-link{color:var(--cornflower);font-size:14px;font-weight:500;cursor:pointer;padding:6px 12px;border-radius:var(--radius-full);transition:all var(--transition-fast)}.section-link:hover{background:var(--cornflower-soft);color:var(--cornflower-dark)}.section-link:active{transform:scale(.97)}.list{display:flex;flex-direction:column;gap:var(--space-sm)}.list-item{display:flex;align-items:center;padding:var(--space-md);background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-light);transition:all var(--transition-fast);cursor:pointer}.list-item:hover{background:var(--bg-soft);border-color:var(--primary-soft)}.list-item:active{transform:scale(.99)}.list-item-content{flex:1}.list-item-title{font-weight:600;color:var(--text-primary);margin-bottom:4px}.list-item-subtitle{font-size:14px;color:var(--text-muted)}.avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--primary-soft);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--primary);font-size:20px;object-fit:cover}.avatar-sm{width:32px;height:32px;font-size:14px}.avatar-lg{width:64px;height:64px;font-size:28px}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:500;white-space:nowrap}.badge-primary{background:var(--primary-soft);color:var(--primary)}.badge-accent{background:var(--accent-soft);color:var(--accent)}.badge-cornflower{background:var(--cornflower-soft);color:var(--cornflower-dark)}.badge-success{background:#d4edda;color:#155724}.badge-warning{background:#fff3cd;color:#856404}.badge-error{background:#f8d7da;color:#721c24}.loader{display:inline-block;width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.loader-sm{width:16px;height:16px;border-width:2px}.loader-lg{width:32px;height:32px;border-width:3px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:var(--space-md);color:var(--text-muted)}.empty-state{text-align:center;padding:var(--space-xl);color:var(--text-muted)}.empty-icon{font-size:48px;margin-bottom:var(--space-md);opacity:.5}.error-state{text-align:center;padding:var(--space-xl);color:var(--accent)}.success-state{text-align:center;padding:var(--space-xl);color:var(--primary)}.divider{height:1px;background:var(--border-light);margin:var(--space-md) 0}.divider-text{display:flex;align-items:center;color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:1px}.divider-text:before,.divider-text:after{content:"";flex:1;height:1px;background:var(--border-light)}.divider-text:before{margin-right:var(--space-md)}.divider-text:after{margin-left:var(--space-md)}.grid{display:grid;gap:var(--space-md)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.p-0{padding:0}.p-1{padding:var(--space-xs)}.p-2{padding:var(--space-sm)}.p-3{padding:var(--space-md)}.p-4{padding:var(--space-lg)}.p-5{padding:var(--space-xl)}.m-0{margin:0}.m-1{margin:var(--space-xs)}.m-2{margin:var(--space-sm)}.m-3{margin:var(--space-md)}.m-4{margin:var(--space-lg)}.m-5{margin:var(--space-xl)}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.mx-auto{margin-left:auto;margin-right:auto}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn var(--transition-base)}.animate-slideUp{animation:slideUp var(--transition-base)}.animate-slideDown{animation:slideDown var(--transition-base)}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@media(max-width:480px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.bottom-nav{padding:8px 8px 16px}.bottom-nav-item{padding:6px 12px}.section-title{font-size:20px}.modal{max-width:100%;margin:var(--space-md)}}@media(max-width:360px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.bottom-nav-item{padding:4px 8px;font-size:10px}.bottom-nav-icon{font-size:20px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-soft);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media(prefers-color-scheme:dark){::-webkit-scrollbar-track{background:var(--bg-card)}::-webkit-scrollbar-thumb{background:var(--border)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.badge-success{background:#1a3a1a;color:#8bc34a}.badge-warning{background:#3d3520;color:#ffd54f}.badge-error{background:#3d2020;color:#ef9a9a}.modal-overlay{background:#000000b3}.bottom-nav{background:#1a2a1af2}}.touch-none{touch-action:none}.touch-pan-y{touch-action:pan-y}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.debug{border:1px solid red!important}.debug *{border:1px solid rgba(255,0,0,.2)!important}.login-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.login-content{background:var(--bg-card, white);border-radius:var(--radius-lg, 16px);padding:30px;max-width:450px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-lg, 0 10px 25px rgba(0, 0, 0, .1));animation:slideUp .3s ease}.login-close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-muted, #64748B);transition:all .2s ease;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}.login-close:hover{background:var(--bg-soft, #f0f7f0);color:var(--text-primary, #1e293b)}.login-content h2{margin-bottom:25px;color:var(--primary, #2E8B57);text-align:center}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;color:var(--text-primary, #1e293b)}.phone-input-full{width:100%;padding:14px 16px;font-size:16px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);background:var(--bg-card, white);color:var(--text-primary, #1e293b);transition:all .2s ease}.phone-input-full:focus{border-color:var(--primary, #2E8B57);box-shadow:0 0 0 3px var(--primary-soft, #e8f3e9);outline:none}.phone-input-full.error{border-color:#ef4444;animation:shake .3s ease-in-out}.field-error{color:#ef4444;font-size:13px;margin-top:4px}.pin-input-wrapper{position:relative}.pin-input{width:100%;padding:14px 16px;font-size:24px;text-align:center;letter-spacing:12px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);background:var(--bg-card, white);color:var(--text-primary, #1e293b);transition:all .2s ease;font-weight:600}.pin-input:focus{border-color:var(--primary, #2E8B57);box-shadow:0 0 0 3px var(--primary-soft, #e8f3e9);outline:none}.pin-dots{display:flex;justify-content:center;gap:16px;margin-top:-45px;pointer-events:none}.pin-dot{width:16px;height:16px;border-radius:50%;background:var(--border, #e2e8f0);display:inline-flex;align-items:center;justify-content:center;font-size:18px;color:var(--primary, #2E8B57);transition:all .2s ease}.pin-dot.filled{background:var(--primary, #2E8B57)}.input-hint{color:var(--text-muted, #64748B);font-size:13px}.consent-checkbox{display:flex;align-items:flex-start;gap:10px;padding:12px;background:var(--bg-soft, #f0f7f0);border-radius:var(--radius-md, 8px);margin:5px 0}.consent-checkbox input[type=checkbox]{width:18px;height:18px;margin-top:2px;cursor:pointer;accent-color:var(--primary, #2E8B57)}.consent-checkbox label{font-size:14px;color:var(--text-secondary, #4a5568);line-height:1.4}.link-button{background:none;border:none;color:var(--primary, #2E8B57);text-decoration:underline;cursor:pointer;padding:0;font-size:inherit}.link-button:hover{color:var(--primary-dark, #1f5f3a)}.login-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fee2e2;border:1px solid #EF4444;border-radius:var(--radius-md, 8px);color:#991b1b;font-size:14px}.error-icon{font-size:18px}.login-actions{display:flex;flex-direction:column;gap:12px;margin-top:10px}.login-submit{width:100%;padding:16px;background:var(--primary, #2E8B57);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.login-submit:hover:not(:disabled){background:var(--primary-dark, #1f5f3a);transform:translateY(-1px)}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-cancel{width:100%;padding:14px;background:transparent;border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);color:var(--text-secondary, #4a5568);font-size:16px;cursor:pointer;transition:all .2s ease}.login-cancel:hover:not(:disabled){background:var(--bg-soft, #f0f7f0)}.login-switch{width:100%;padding:12px;background:transparent;border:none;color:var(--primary, #2E8B57);font-size:15px;cursor:pointer;transition:all .2s ease;text-decoration:underline;text-underline-offset:2px}.login-switch:hover:not(:disabled){color:var(--primary-dark, #1f5f3a)}.login-note{margin-top:20px;padding-top:20px;border-top:1px solid var(--border, #e2e8f0)}.login-note p{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;color:var(--text-muted, #64748B)}.note-icon{font-size:16px;flex-shrink:0}.spinner-small{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@media(prefers-color-scheme:dark){.login-content{background:var(--bg-card-dark, #1a2e1a)}.phone-input-full,.pin-input{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.phone-input-full:focus,.pin-input:focus{border-color:var(--primary-light, #4a9f6e);box-shadow:0 0 0 3px var(--primary-soft-dark, #1a3a1a)}.consent-checkbox{background:var(--bg-soft-dark, #152215)}.login-error{background:#3d2a2a;border-color:#ef4444;color:#f87171}.login-note{border-top-color:var(--border-dark, #2d4a2d)}.pin-dot{background:var(--border-dark, #2d4a2d)}.pin-dot.filled{background:var(--primary-light, #4a9f6e)}}@media(max-width:480px){.login-content{padding:20px 16px;width:95%}.phone-input-full{font-size:15px;padding:12px 14px}.pin-input{font-size:20px;padding:12px 14px}.pin-dots{gap:12px;margin-top:-40px}.login-submit{padding:14px;font-size:15px}.login-cancel{padding:12px}}@media(hover:none)and (pointer:coarse){.login-submit:hover,.login-cancel:hover,.login-switch:hover,.login-close:hover{transform:none;background:inherit}.login-submit:hover{background:var(--primary, #2E8B57)}.login-close:hover{background:none}}.pin-input{color:transparent!important;text-shadow:none!important;-webkit-text-security:none;caret-color:var(--primary, #2E8B57)}.pin-input::selection{background:transparent}:root{--primary: #2e8b57;--primary-hover: #1f6b3f;--primary-soft: #e8f3e9;--accent: #cd5c5c;--accent-hover: #b04545;--accent-soft: #fdecec;--cornflower: #6495ed;--cornflower-soft: #e6eeff;--bg-main: #f0f7f0;--bg-card: #ffffff;--bg-soft: #f8fafc;--text-primary: #1e293b;--text-secondary: #4a5568;--text-muted: #64748b;--text-light: #94a3b8;--border: #e2e8f0;--border-light: #edf2f7;--shadow-sm: 0 2px 4px rgba(0, 20, 10, .05);--shadow-md: 0 4px 12px rgba(46, 139, 86, .1);--shadow-lg: 0 8px 24px rgba(46, 139, 86, .15)}@media(prefers-color-scheme:dark){:root{--primary: #4a9f6e;--primary-hover: #5fb07f;--primary-soft: #1a3a1a;--accent: #e67a7a;--accent-hover: #f08a8a;--accent-soft: #3d2a2a;--cornflower: #83a9f4;--cornflower-soft: #1e2a3d;--bg-main: #0a140a;--bg-card: #1a2a1a;--bg-soft: #152215;--text-primary: #f0f7f0;--text-secondary: #cbd5e0;--text-muted: #9ca3af;--text-light: #6b7280;--border: #2d4a2d;--border-light: #1f3a1f;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5)}}button{-webkit-tap-highlight-color:transparent;outline:none}button:focus,button:focus-visible{outline:none}.home-container{max-width:480px;margin:0 auto;padding:16px 16px 100px;min-height:100vh;background:var(--bg-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background-color .3s ease,color .3s ease;overflow-x:hidden}.home-header{margin-bottom:24px}.home-header h1{color:var(--primary);font-size:28px;margin:0 0 4px;font-weight:700}.date{color:var(--text-secondary);font-size:15px;margin:0}.quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.action-button{display:flex;align-items:center;gap:6px;padding:10px 14px;border:none;border-radius:14px;background:var(--bg-card);color:var(--text-primary);font-size:14px;font-weight:600;box-shadow:var(--shadow-sm);cursor:pointer;white-space:nowrap;flex-shrink:0;border:1px solid var(--border-light)}.action-button span:first-child{font-size:18px}.action-button.primary{background:var(--accent);color:#fff;border-color:transparent}.action-button:active{background:var(--primary);color:#fff}.action-button.primary:active{background:var(--accent-hover)}.services-section,.masters-section{margin-bottom:28px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-header h2{color:var(--text-primary);font-size:20px;font-weight:700;margin:0}.view-all-button{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;padding:6px 14px;border-radius:20px;white-space:nowrap}.view-all-button:active{background:var(--primary);color:#fff;border-color:var(--primary)}.services-list{display:flex;flex-direction:column;gap:10px}.service-card{background:var(--bg-card);padding:16px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm);border:1px solid var(--border-light);cursor:pointer}.service-card h3{margin:0 0 6px;font-size:16px;font-weight:600;color:var(--text-primary)}.service-card .price{color:var(--accent);font-weight:700;margin:0 0 2px;font-size:15px}.service-card .duration{color:var(--text-muted);font-size:13px;margin:0}.small-button{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}.small-button:active{background:var(--primary)}.masters-carousel{display:flex;gap:14px;overflow-x:auto;padding:4px 0 16px;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.masters-carousel>*{flex:0 0 auto;width:250px;scroll-snap-align:start}@media(max-width:400px){.masters-carousel>*{width:220px}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background:var(--bg-card);padding:10px 12px 20px;box-shadow:0 -4px 20px #00000014;z-index:1000;border-top:1px solid var(--border)}.nav-button{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:none;font-size:12px;color:var(--text-muted);cursor:pointer;padding:6px 10px;border-radius:16px;font-weight:500;white-space:nowrap}.nav-button.active{color:var(--primary);background:var(--primary-soft)}.nav-button:active{background:var(--primary);color:#fff}.user-greeting{position:fixed;top:16px;right:16px;background:var(--bg-card);padding:8px 14px;border-radius:20px;box-shadow:var(--shadow-md);display:flex;align-items:center;gap:10px;z-index:100;font-size:13px;color:var(--text-primary);border:1px solid var(--border)}.logout-button-small{background:none;border:1px solid var(--accent);color:var(--accent);font-size:12px;cursor:pointer;padding:4px 10px;border-radius:16px;font-weight:500}.logout-button-small:active{background:var(--accent);color:#fff}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:15px;color:var(--text-muted);background:var(--bg-main)}.loading:after{content:"";width:20px;height:20px;margin-left:10px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.qr-intent-banner,.sync-notification,.pwa-prompt{position:fixed;left:16px;right:16px;max-width:400px;margin:0 auto;background:var(--bg-card);border-radius:16px;box-shadow:var(--shadow-lg);z-index:1100;border:2px solid var(--primary)}.qr-intent-banner{top:16px}.sync-notification{bottom:100px;border-color:var(--cornflower)}.pwa-prompt{bottom:16px}.qr-intent-content,.sync-content,.pwa-prompt-content{display:flex;align-items:center;gap:10px;padding:14px;position:relative}.qr-intent-icon,.sync-icon,.pwa-icon{font-size:28px;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--primary-soft);flex-shrink:0}.sync-icon{background:var(--cornflower-soft)}.qr-intent-text,.sync-text,.pwa-text{flex:1;min-width:0}.qr-intent-text h4,.sync-text h4,.pwa-text h4{color:var(--text-primary);font-size:14px;margin:0 0 2px}.qr-intent-text p,.sync-text p,.pwa-text p{font-size:12px;margin:0;color:var(--text-secondary)}.qr-intent-button,.sync-button,.pwa-install-button{background:var(--primary);color:#fff;border:none;padding:8px 14px;border-radius:16px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0}.sync-button{background:var(--cornflower)}.qr-intent-close,.sync-close,.pwa-close{background:none;border:none;font-size:22px;color:var(--text-muted);cursor:pointer;position:absolute;top:4px;right:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%}@media(max-width:400px){.home-container{padding:12px 12px 90px}.home-header h1{font-size:24px}.section-header h2{font-size:18px}.qr-intent-content,.sync-content,.pwa-prompt-content{flex-wrap:wrap}.qr-intent-text,.sync-text,.pwa-text{width:100%;order:2;text-align:center}.qr-intent-icon,.sync-icon,.pwa-icon{margin:0 auto}.qr-intent-button,.sync-button,.pwa-install-button{width:100%;order:3}}.master-card{background:var(--bg-card, #ffffff);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 20, 10, .05));cursor:pointer;position:relative;border:1px solid var(--border-light, #edf2f7);width:100%;display:flex;flex-direction:column;-webkit-tap-highlight-color:transparent;transition:box-shadow .2s ease,border-color .2s ease}.master-card:active{box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .1));border-color:var(--primary, #2e8b57)}.master-card.qr-source{border-color:var(--primary, #2e8b57);box-shadow:0 4px 12px #2e8b5633}.master-card-header{display:flex;align-items:flex-start;gap:12px;padding:14px 50px 14px 14px;position:relative}.master-avatar{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff;text-transform:uppercase;background:var(--primary, #2e8b57);flex-shrink:0}.master-info{flex:1;min-width:0}.master-name{font-size:16px;font-weight:700;color:var(--text-primary, #1e293b);margin:0 0 2px;line-height:1.3;overflow-wrap:break-word;word-break:keep-all}.master-specialization{font-size:13px;color:var(--primary, #2e8b57);font-weight:600;margin:0 0 2px;overflow-wrap:break-word;word-break:keep-all}.master-salon{font-size:12px;color:var(--text-muted, #64748b);margin:0;line-height:1.4;overflow-wrap:break-word;word-break:keep-all}.master-rating{font-size:13px;color:var(--text-secondary, #4a5568);margin-top:4px}.master-rating span{color:var(--text-muted, #64748b);margin-left:4px;font-size:12px}.favorite-button{position:absolute;top:12px;right:12px;background:none;border:none;font-size:22px;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--accent, #cd5c5c);-webkit-tap-highlight-color:transparent;transition:transform .15s ease}.favorite-button:active{transform:scale(1.15)}.favorite-button.active{animation:heartBeat .3s ease}@keyframes heartBeat{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.book-button{margin:auto 14px 14px;padding:12px;background:var(--primary, #2e8b57);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;-webkit-tap-highlight-color:transparent;transition:background .15s ease}.book-button:active{background:var(--primary-hover, #1f6b3f)}.qr-badge{position:absolute;top:12px;left:12px;background:var(--primary, #2e8b57);color:#fff;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;z-index:5}.source-badge{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:3px;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;z-index:5;color:#fff}.source-badge.qr{background:var(--primary, #2e8b57)}.source-badge.recent{background:var(--cornflower, #6495ed)}.delete-button{position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;background:var(--accent-soft, #fdecec);border:2px solid var(--accent, #cd5c5c);display:flex;align-items:center;justify-content:center;color:var(--accent, #cd5c5c);font-size:18px;cursor:pointer;z-index:10;-webkit-tap-highlight-color:transparent}.delete-button:active{background:var(--accent, #cd5c5c);color:#fff}@media(prefers-color-scheme:dark){.master-card{background:#1a2e1a;border-color:#2d4a2d}.master-name{color:#f0f7f0}.master-specialization{color:#4a9f6e}.master-salon{color:#9ca3af}.master-avatar,.book-button{background:#4a9f6e}.book-button:active{background:#5fb07f}.delete-button{background:#3d2a2a;border-color:#e67a7a;color:#e67a7a}.delete-button:active{background:#e67a7a;color:#1a2e1a}.favorite-button{color:#e67a7a}.master-card.qr-source{border-color:#4a9f6e}}@media(max-width:480px){.master-card-header{padding:12px 12px 12px 46px}.master-avatar{width:48px;height:48px;font-size:20px}.master-name{font-size:15px}.book-button{margin:0 12px 12px;padding:10px;font-size:13px}}@media(hover:none)and (pointer:coarse){.master-card:hover{box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 20, 10, .05));border-color:var(--border-light, #edf2f7)}.master-card:active{box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .1));border-color:var(--primary, #2e8b57)}.book-button:hover{background:var(--primary, #2e8b57)}.book-button:active{background:var(--primary-hover, #1f6b3f)}}.booking-container{max-width:800px;margin:0 auto;padding:var(--space-lg, 20px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-main, #f0f7f0);min-height:100vh}.booking-header{display:flex;align-items:center;gap:var(--space-md, 20px);margin-bottom:var(--space-xl, 30px);padding-bottom:var(--space-md, 15px);border-bottom:2px solid var(--border, #e2e8f0)}.booking-header h2{color:var(--primary, #2e8b57);margin:0;font-size:24px;font-weight:600;flex:1}.back-button{padding:10px 20px;background:none;border:2px solid var(--primary, #2e8b57);border-radius:var(--radius-md, 8px);cursor:pointer;color:var(--primary, #2e8b57);font-weight:600;font-size:15px;transition:all .2s ease;min-height:44px;-webkit-tap-highlight-color:transparent}.back-button:active{background:var(--primary, #2e8b57);color:#fff;transform:scale(.97)}.step-indicator{color:var(--text-muted, #64748b);font-size:14px;font-weight:500;background:var(--bg-soft, #f0f7f0);padding:var(--space-xs, 6px) var(--space-sm, 12px);border-radius:var(--radius-full, 20px)}.step-content{animation:fadeIn .3s ease}.step-content h3{color:var(--text-primary, #1e293b);margin-bottom:var(--space-lg, 20px);font-size:20px;font-weight:600}.services-grid,.masters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-md, 15px);margin-bottom:var(--space-lg, 20px)}.service-card,.master-card{background:var(--bg-card, white);padding:var(--space-lg, 20px);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05));transition:all .2s ease;border:2px solid transparent;border-color:var(--border, #e2e8f0)}.service-card.selectable,.master-card.selectable{cursor:pointer;-webkit-tap-highlight-color:transparent}.service-card.selectable:active,.master-card.selectable:active{transform:translateY(-2px) scale(.98);box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .15));border-color:var(--primary, #2e8b57)}.service-card h4,.master-card h4{margin:0 0 var(--space-sm, 10px) 0;color:var(--text-primary, #1e293b);font-size:18px;font-weight:600}.master-photo{width:70px;height:70px;background:var(--primary-soft, #e8f3e9);border-radius:var(--radius-full, 50%);display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto var(--space-sm, 12px) auto;border:2px solid var(--primary, #2e8b57);color:var(--primary, #2e8b57)}.price{color:var(--accent, #cd5c5c);font-weight:700;font-size:20px;margin:var(--space-xs, 5px) 0}.duration{color:var(--text-muted, #64748b);font-size:14px;margin:0}.specialization{color:var(--text-muted, #64748b);font-size:14px;margin:var(--space-xs, 5px) 0}.rating{color:var(--accent, #cd5c5c);font-weight:700;margin:var(--space-xs, 5px) 0 0;display:flex;align-items:center;justify-content:center;gap:var(--space-xs, 4px)}.date-selector{margin:var(--space-lg, 20px) 0}.date-selector label{display:block;margin-bottom:var(--space-xs, 8px);font-weight:600;color:var(--text-primary, #1e293b);font-size:16px}.date-selector select{width:100%;padding:14px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 10px);font-size:16px;background-color:var(--bg-card, white);color:var(--text-primary, #1e293b);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232E8B57' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;min-height:48px;-webkit-tap-highlight-color:transparent}.date-selector select:active{border-color:var(--primary, #2e8b57);transform:scale(.98)}.date-selector select:focus{outline:none;border-color:var(--primary, #2e8b57);box-shadow:0 0 0 3px var(--primary-soft, #e8f3e9)}.date-selector select option{color:var(--text-primary, #1e293b);background:var(--bg-card, white);padding:var(--space-sm, 10px)}.time-selector{margin:var(--space-lg, 20px) 0}.time-selector label{display:block;margin-bottom:var(--space-xs, 8px);font-weight:600;color:var(--text-primary, #1e293b);font-size:16px}.times-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-sm, 10px);margin-top:var(--space-sm, 10px);max-height:400px;overflow-y:auto;padding:var(--space-xs, 5px);background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);border:1px solid var(--border, #e2e8f0);scrollbar-width:thin}.times-grid::-webkit-scrollbar{width:8px}.times-grid::-webkit-scrollbar-track{background:var(--bg-soft, #f8fafc);border-radius:var(--radius-sm, 4px)}.times-grid::-webkit-scrollbar-thumb{background:var(--border, #e2e8f0);border-radius:var(--radius-sm, 4px)}.times-grid::-webkit-scrollbar-thumb:active{background:var(--primary, #2e8b57)}.time-button{padding:12px 8px;background:var(--bg-card, white);border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);font-size:15px;font-weight:600;color:var(--text-primary, #1e293b);cursor:pointer;transition:all .2s ease;min-height:48px;-webkit-tap-highlight-color:transparent}.time-button:active:not(:disabled){transform:scale(.95);border-color:var(--primary, #2e8b57);background:var(--primary-soft, #e8f3e9)}.time-button.selected{background:var(--primary, #2e8b57);color:#fff;border-color:var(--primary, #2e8b57)}.time-button.selected:active{background:var(--primary-dark, #1f5f3a)}.time-button:disabled{background:var(--bg-soft, #f1f1f1);color:var(--text-light, #999);border-color:var(--border, #ddd);cursor:not-allowed;opacity:.6}.time-button.available{background:var(--bg-card, white);color:var(--text-primary, #1e293b)}.time-button.busy{background:var(--accent-soft, #fee2e2);color:var(--accent-dark, #991b1b);border-color:var(--accent, #fecaca);opacity:.7;cursor:not-allowed}.time-button.selected-master{background:var(--cornflower-soft, #dbeafe);border-color:var(--primary, #2e8b57);color:var(--primary, #2e8b57)}.no-slots{text-align:center;padding:var(--space-xl, 30px);background:var(--bg-soft, #f8fafc);border-radius:var(--radius-lg, 8px);color:var(--text-muted, #64748b);border:2px dashed var(--border, #e2e8f0);animation:fadeIn .3s ease}.confirmation-details{background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);padding:var(--space-lg, 20px);margin:var(--space-lg, 20px) 0;border:1px solid var(--border, #e2e8f0);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05))}.detail-item{display:flex;justify-content:space-between;padding:var(--space-sm, 12px) 0;border-bottom:1px solid var(--border, #e2e8f0)}.detail-item:last-child{border-bottom:none}.detail-label{color:var(--text-muted, #64748b);font-weight:500;font-size:15px}.detail-value{color:var(--text-primary, #1e293b);font-weight:700;font-size:16px}.selected-info{background:var(--primary-soft, #e6f0ff);padding:var(--space-md, 15px);border-radius:var(--radius-md, 8px);margin-bottom:var(--space-lg, 20px);border-left:4px solid var(--primary, #2e8b57);animation:fadeIn .3s ease}.selected-info p{margin:0;color:var(--text-primary, #1e293b);font-weight:500}.booking-info{margin-top:var(--space-md, 15px);padding:var(--space-md, 15px);background:var(--primary-soft, #f0fdf4);border:1px solid var(--primary-light, #bbf7d0);border-radius:var(--radius-md, 8px);color:var(--primary-dark, #166534)}.booking-info p{margin:var(--space-xs, 8px) 0;display:flex;align-items:center;gap:var(--space-xs, 8px)}.continue-button,.confirm-button{width:100%;padding:16px;border:none;border-radius:var(--radius-lg, 12px);font-size:18px;font-weight:700;cursor:pointer;transition:all .2s ease;min-height:56px;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center;gap:var(--space-sm, 12px);margin-top:var(--space-lg, 20px)}.continue-button{background:var(--accent, #cd5c5c);color:#fff}.continue-button:active:not(:disabled){transform:scale(.97);background:var(--accent-dark, #b04545)}.continue-button:disabled{background:var(--text-light, #ccc);cursor:not-allowed;opacity:.6}.confirm-button{background:var(--primary, #2e8b57);color:#fff}.confirm-button:active{transform:scale(.97);background:var(--primary-dark, #1f5f3a)}.loading-spinner{text-align:center;padding:var(--space-xl, 30px);color:var(--text-muted, #64748b);font-size:16px;display:flex;align-items:center;justify-content:center;gap:var(--space-sm, 12px)}.loading-spinner:after{content:"";width:20px;height:20px;border:2px solid var(--border, #e2e8f0);border-top-color:var(--primary, #2e8b57);border-radius:var(--radius-full, 50%);animation:spin .8s linear infinite}.slot-info-badge{display:flex;align-items:center;gap:var(--space-xs, 8px);margin-top:var(--space-sm, 10px);padding:var(--space-sm, 12px);background:var(--cornflower-soft, #e6f7ff);border:1px solid var(--cornflower, #91d5ff);border-radius:var(--radius-md, 8px);color:var(--cornflower-dark, #0050b3);font-size:14px;animation:fadeIn .3s ease}.slot-icon{font-size:20px}.slot-text{line-height:1.5}.slot-text strong{color:var(--cornflower, #1890ff);font-weight:700}@media(max-width:768px){.booking-container{padding:var(--space-md, 16px)}.booking-header{flex-wrap:wrap;gap:var(--space-sm, 12px)}.booking-header h2{font-size:20px;order:1;width:100%}.back-button{order:2}.step-indicator{order:3;margin-left:auto}.services-grid,.masters-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-sm, 12px)}.service-card,.master-card{padding:var(--space-md, 16px)}.service-card h4,.master-card h4{font-size:16px}.price{font-size:18px}.times-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));max-height:300px}.time-button{padding:10px;font-size:14px;min-height:44px}.continue-button,.confirm-button{padding:14px;font-size:16px;min-height:48px}}@media(max-width:480px){.booking-header{flex-direction:column;align-items:flex-start}.step-indicator{margin-left:0}.services-grid,.masters-grid{grid-template-columns:1fr}.master-photo{width:60px;height:60px;font-size:28px}.times-grid{grid-template-columns:repeat(3,1fr);max-height:250px}.time-button{padding:8px 4px;font-size:13px}.confirmation-details{padding:var(--space-md, 16px)}.detail-item{flex-direction:column;gap:var(--space-xs, 4px)}.detail-label,.detail-value{font-size:14px}.booking-info p{flex-direction:column;align-items:flex-start;gap:var(--space-xs, 4px)}}@media(max-width:360px){.times-grid{grid-template-columns:repeat(2,1fr)}.booking-header h2,.step-content h3{font-size:18px}}@media(prefers-color-scheme:dark){.booking-container{background:var(--bg-main-dark, #0a140a)}.booking-header{border-bottom-color:var(--border-dark, #2d4a2d)}.booking-header h2{color:var(--primary-light, #4a9f6e)}.back-button{border-color:var(--primary-light, #4a9f6e);color:var(--primary-light, #4a9f6e)}.back-button:active{background:var(--primary-light, #4a9f6e);color:var(--bg-main-dark, #0a140a)}.step-indicator{background:var(--bg-soft-dark, #152215);color:var(--text-muted-dark, #9ca3af)}.step-content h3{color:var(--text-primary-dark, #f0f7f0)}.service-card,.master-card,.confirmation-details,.times-grid,.date-selector select{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.service-card h4,.master-card h4{color:var(--text-primary-dark, #f0f7f0)}.duration,.specialization,.detail-label,.step-indicator{color:var(--text-muted-dark, #9ca3af)}.price,.rating,.detail-value{color:var(--accent-light, #e67a7a)}.master-photo{background:var(--primary-soft-dark, #1a3a1a);border-color:var(--primary-light, #4a9f6e);color:var(--primary-light, #4a9f6e)}.selected-info{background:var(--primary-soft-dark, #1a3a1a);border-left-color:var(--primary-light, #4a9f6e);color:var(--text-primary-dark, #f0f7f0)}.time-button{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.time-button:active:not(:disabled){background:var(--primary-soft-dark, #1a3a1a);border-color:var(--primary-light, #4a9f6e)}.time-button.selected{background:var(--primary, #4a9f6e);color:var(--bg-main-dark, #0a140a);border-color:var(--primary-light, #4a9f6e)}.time-button.busy{background:var(--accent-soft-dark, #3d2a2a);color:var(--accent-light, #e67a7a);border-color:var(--accent, #b04545)}.time-button.selected-master{background:var(--cornflower-soft-dark, #1e2a3d);color:var(--cornflower-light, #83a9f4);border-color:var(--cornflower, #6495ed)}.booking-info{background:var(--primary-soft-dark, #1a3a1a);border-color:var(--primary-dark, #1f5f3a);color:var(--primary-light, #4a9f6e)}.slot-info-badge{background:var(--cornflower-soft-dark, #1e2a3d);border-color:var(--cornflower, #4169e1);color:var(--cornflower-light, #83a9f4)}.slot-text strong{color:var(--cornflower-light, #83a9f4)}.no-slots{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d);color:var(--text-muted-dark, #9ca3af)}}@media(hover:none)and (pointer:coarse){.service-card.selectable:hover,.master-card.selectable:hover,.time-button:hover:not(:disabled),.back-button:hover,.continue-button:hover,.confirm-button:hover{transform:none;box-shadow:none;border-color:var(--border, #e2e8f0)}.service-card.selectable:active,.master-card.selectable:active{transform:translateY(-2px) scale(.98);border-color:var(--primary, #2e8b57)}.time-button:active:not(:disabled){transform:scale(.95);border-color:var(--primary, #2e8b57)}.back-button:active{transform:scale(.97);background:var(--primary, #2e8b57);color:#fff}.continue-button:active:not(:disabled){transform:scale(.97);background:var(--accent-dark, #b04545)}.confirm-button:active{transform:scale(.97);background:var(--primary-dark, #1f5f3a)}}.network-banner{position:sticky;top:0;z-index:100;background:#ff9800;color:#fff;padding:12px 16px;display:flex;align-items:center;gap:12px;animation:slideDown .3s ease}.network-icon{font-size:20px}.network-text{font-weight:500;flex:1}@media(prefers-color-scheme:dark){.network-banner{background:#b8860b}}:root{--primary: #2e8b57;--primary-dark: #1f5f3a;--primary-soft: #e8f3e9;--accent: #cd5c5c;--bg-main: #f0f7f0;--bg-card: #ffffff;--bg-soft: #f8fafc;--text-primary: #1e293b;--text-secondary: #4a5568;--text-muted: #64748b;--border: #e2e8f0;--shadow-sm: 0 2px 4px rgba(0, 20, 10, .05)}@media(prefers-color-scheme:dark){:root{--primary: #4a9f6e;--primary-soft: #1a3a1a;--accent: #e67a7a;--bg-main: #0a140a;--bg-card: #1a2a1a;--bg-soft: #152215;--text-primary: #f0f7f0;--text-secondary: #cbd5e0;--text-muted: #9ca3af;--border: #2d4a2d}}.owner-container{max-width:1200px;margin:0 auto;padding:20px 16px 40px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-main);min-height:100vh}.network-banner{background:#ff9800;color:#fff;padding:10px 14px;border-radius:12px;display:flex;align-items:center;gap:10px;font-size:14px;margin-bottom:16px}.owner-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.owner-header h1{color:var(--primary);font-size:22px;font-weight:700;margin:0}.header-controls{display:flex;gap:10px;align-items:center}.logout-button{padding:8px 16px;background:none;border:1px solid var(--primary);color:var(--primary);border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;white-space:nowrap}.logout-button:active{background:var(--primary);color:#fff}.no-salons{text-align:center;padding:40px;background:var(--bg-card);border-radius:16px;border:1px solid var(--border)}.no-salons h2{color:var(--text-primary);margin:0 0 8px}.no-salons p{color:var(--text-muted);margin:0 0 20px}.add-button{padding:12px 24px;border:none;border-radius:14px;background:var(--primary);color:#fff;font-size:16px;font-weight:600;cursor:pointer}.add-button:active{background:var(--primary-dark)}.salon-quick-stats{display:flex;gap:12px;margin-bottom:16px;align-items:center;flex-wrap:wrap;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:12px 16px}.stat-item{display:flex;align-items:center;gap:8px}.stat-icon{font-size:20px}.stat-info{display:flex;flex-direction:column}.stat-value{font-weight:700;color:var(--text-primary);font-size:14px}.stat-label{font-size:11px;color:var(--text-muted)}.refresh-stats-btn{margin-left:auto;width:36px;height:36px;border:1px solid var(--border);border-radius:10px;background:var(--bg-soft);cursor:pointer;font-size:16px}.salon-selector{display:flex;gap:10px;margin-bottom:16px;align-items:center}.salon-selector select{flex:1;padding:10px 36px 10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);font-size:15px;color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2364748b' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.salon-selector select:focus{outline:none;border-color:var(--primary)}.icon-button{width:44px;height:44px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);color:var(--text-secondary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-button:active{background:var(--primary-soft);color:var(--primary)}.add-button-small{width:44px;height:44px;border:none;border-radius:12px;background:var(--primary);color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.add-button-small:active{background:var(--primary-dark)}.owner-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.owner-tabs .tab{padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:6px;transition:all .15s ease}.owner-tabs .tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.owner-tabs .tab:active{background:var(--primary);color:#fff}.tab-badge{background:#fff;color:var(--primary);font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px;min-width:18px;text-align:center}.owner-tabs .tab.active .tab-badge{background:#ffffff40;color:#fff}.tab-content{min-height:200px}.owner-master-card,.admin-card,.service-item{display:flex;justify-content:space-between;align-items:center;padding:14px;background:var(--bg-card);border-radius:14px;margin-bottom:10px;border:1px solid var(--border);gap:12px}.owner-master-info,.admin-info{display:flex;gap:12px;align-items:center}.owner-master-avatar.owner-emerald{width:44px;height:44px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px}.admin-avatar{width:44px;height:44px;background:#8b5cf6;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px}.owner-master-name{font-weight:600;font-size:15px;color:var(--text-primary)}.owner-master-specialization{font-size:13px;color:var(--text-muted)}.owner-master-rating{font-size:13px;color:var(--accent)}.owner-master-actions,.admin-actions,.service-actions{display:flex;gap:6px;flex-shrink:0}.service-info{display:flex;gap:16px;align-items:center;flex-wrap:wrap;flex:1}.action-btn{width:40px;height:40px;border-radius:10px;border:1px solid var(--border);cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;background:var(--bg-soft)}.action-btn:active{background:var(--primary);color:#fff}.appointment-item{display:grid;grid-template-columns:auto auto auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;background:var(--bg-card);border-radius:14px;margin-bottom:8px;border:1px solid var(--border)}.appointment-time{font-weight:600;color:var(--primary);font-size:14px}.appointment-service{color:var(--text-primary);font-size:14px}.appointment-master{color:var(--text-muted);font-size:13px}.appointment-status{padding:3px 10px;border-radius:10px;font-size:12px;font-weight:600;white-space:nowrap}.appointment-status.pending{background:#fff3cd;color:#856404}.appointment-status.confirmed{background:var(--primary-soft);color:var(--primary)}.appointment-status.completed{background:#e2e8f0;color:#4a5568}.appointment-status.cancelled{background:#fdecec;color:#cd5c5c}.no-data,.empty-state{text-align:center;padding:32px;color:var(--text-muted)}.qr-button{width:100%;padding:12px;background:#6495ed;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;margin-top:8px}.qr-button:active{filter:brightness(.9)}.appointments-list{display:flex;flex-direction:column;gap:8px}.appointment-card-mobile{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.appointment-card-mobile.cancelled{opacity:.5}.appointment-card-mobile.completed{opacity:.7}.apt-row{display:flex;align-items:center;gap:8px;font-size:14px;flex-wrap:wrap}.apt-header{justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:4px}.apt-date{font-weight:700;color:var(--text-primary)}.apt-time{color:var(--text-secondary);font-weight:600}.apt-status{font-size:12px;font-weight:600;padding:2px 10px;border-radius:10px;margin-left:auto}.apt-status.pending{background:#fff3cd;color:#856404}.apt-status.confirmed{background:var(--primary-soft);color:var(--primary)}.apt-status.completed{background:#e2e8f0;color:#4a5568}.apt-status.cancelled,.apt-status.no-show{background:#fdecec;color:#cd5c5c}.apt-label{color:var(--text-muted);font-size:12px;min-width:50px;flex-shrink:0}.apt-value{color:var(--text-primary);font-weight:500;flex:1}.apt-price{font-weight:700;color:var(--primary);font-size:15px;margin-left:auto}.apt-phone{display:block;font-size:12px;color:var(--text-muted);font-weight:400}.apt-actions{display:flex;gap:8px;align-items:center;margin-top:4px;padding-top:8px;border-top:1px solid var(--border)}.action-btn-small{padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-soft);cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap}.action-btn-small.view{background:var(--bg-soft)}.action-btn-small.cancel{color:var(--accent);border-color:var(--accent)}.action-btn-small:active{background:var(--primary);color:#fff}.status-select-small{margin-left:auto;padding:6px 8px;border:1px solid var(--border);border-radius:8px;font-size:16px;background:var(--bg-soft);cursor:pointer}.appointments-table-wrapper{display:none}@media(min-width:769px){.appointments-table-wrapper{display:block}.appointments-list{display:none}}@media(max-width:768px){.owner-container{padding:14px 12px 32px}.owner-header{flex-direction:column;align-items:flex-start}.appointment-item{grid-template-columns:1fr}}@media(max-width:480px){.owner-master-card,.admin-card,.service-item{flex-direction:column;align-items:flex-start}.owner-master-actions,.admin-actions,.service-actions{align-self:flex-end}.salon-selector{flex-wrap:wrap}.salon-selector select{width:100%}}.role-switcher{position:relative;display:inline-block;-webkit-tap-highlight-color:transparent}.role-button{display:flex;align-items:center;gap:var(--space-xs, 8px);padding:10px 16px;background:var(--bg-card, white);border:2px solid var(--primary, #2e8b57);border-radius:var(--radius-md, 8px);color:var(--primary, #2e8b57);font-weight:600;font-size:15px;cursor:pointer;transition:all .2s ease;min-height:44px;-webkit-tap-highlight-color:transparent;white-space:nowrap}.role-button:active{background:var(--primary, #2e8b57);color:#fff;transform:scale(.97)}.role-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.role-icon{font-size:20px;display:flex;align-items:center;justify-content:center}.dropdown-arrow{font-size:14px;margin-left:var(--space-xs, 4px);transition:transform .2s ease}.role-button[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.role-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-lg, 0 4px 20px rgba(0, 0, 0, .15));min-width:200px;z-index:1000;overflow:hidden;border:1px solid var(--border, #e2e8f0);animation:slideDown .2s ease;transform-origin:top right}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.role-option{display:flex;align-items:center;gap:var(--space-sm, 12px);width:100%;padding:14px 18px;border:none;background:var(--bg-card, white);cursor:pointer;transition:all .2s ease;text-align:left;font-size:15px;color:var(--text-primary, #1e293b);border-bottom:1px solid var(--border, #e2e8f0);-webkit-tap-highlight-color:transparent}.role-option:last-child{border-bottom:none}.role-option:active{background:var(--primary-soft, #e8f3e9);transform:scale(.98)}.role-option.active{background:var(--primary, #2e8b57);color:#fff;font-weight:600}.role-option.active:active{background:var(--primary-dark, #1f5f3a)}.role-emoji{font-size:22px;min-width:28px;display:flex;align-items:center;justify-content:center}.role-name{flex:1;font-weight:500}@media(max-width:768px){.role-button{padding:8px 14px;font-size:14px;min-height:40px}.role-icon{font-size:18px}.role-menu{min-width:180px;right:-10px}.role-option{padding:12px 16px;font-size:14px}.role-emoji{font-size:20px;min-width:24px}}@media(max-width:480px){.role-button{padding:8px 12px;font-size:13px;gap:var(--space-xs, 6px)}.role-icon{font-size:16px}.dropdown-arrow{font-size:12px}.role-menu{min-width:160px;right:-5px}.role-option{padding:10px 14px;font-size:13px}.role-emoji{font-size:18px;min-width:22px}}@media(max-width:360px){.role-button{padding:6px 10px;font-size:12px}.role-icon{font-size:14px}.role-menu{min-width:140px}.role-option{padding:8px 12px;font-size:12px;gap:var(--space-xs, 8px)}.role-emoji{font-size:16px;min-width:20px}}@media(prefers-color-scheme:dark){.role-button{background:var(--bg-card-dark, #1a2e1a);border-color:var(--primary-light, #4a9f6e);color:var(--primary-light, #4a9f6e)}.role-button:active{background:var(--primary-light, #4a9f6e);color:var(--bg-main-dark, #0a140a)}.role-menu{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);box-shadow:0 4px 20px #00000080}.role-option{background:var(--bg-card-dark, #1a2e1a);color:var(--text-primary-dark, #f0f7f0);border-bottom-color:var(--border-dark, #2d4a2d)}.role-option:active{background:var(--primary-soft-dark, #1a3a1a)}.role-option.active{background:var(--primary, #4a9f6e);color:var(--bg-main-dark, #0a140a)}.role-option.active:active{background:var(--primary-dark, #1f5f3a)}}@media(hover:none)and (pointer:coarse){.role-button:hover,.role-option:hover{background:var(--bg-card, white);color:var(--primary, #2e8b57);transform:none}.role-button:hover{background:var(--bg-card, white);color:var(--primary, #2e8b57)}.role-option:hover{background:var(--bg-card, white);color:var(--text-primary, #1e293b)}.role-option.active:hover{background:var(--primary, #2e8b57);color:#fff}.role-button:active{background:var(--primary, #2e8b57);color:#fff;transform:scale(.97)}.role-option:active{background:var(--primary-soft, #e8f3e9);transform:scale(.98)}}:root{--primary: #2e8b57;--primary-dark: #1f5f3a;--primary-soft: #e8f3e9;--accent: #cd5c5c;--cornflower: #6495ed;--bg-main: #f0f7f0;--bg-card: #ffffff;--bg-soft: #f8fafc;--text-primary: #1e293b;--text-secondary: #4a5568;--text-muted: #64748b;--border: #e2e8f0;--border-light: #edf2f7;--shadow-sm: 0 2px 4px rgba(0, 20, 10, .05);--shadow-md: 0 4px 12px rgba(46, 139, 86, .1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}@media(prefers-color-scheme:dark){:root{--primary: #4a9f6e;--primary-soft: #1a3a1a;--accent: #e67a7a;--bg-main: #0a140a;--bg-card: #1a2a1a;--bg-soft: #152215;--text-primary: #f0f7f0;--text-secondary: #cbd5e0;--text-muted: #9ca3af;--border: #2d4a2d;--border-light: #1f3a1f}}.subscription-tab{max-width:600px;padding:16px 0 40px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.subscription-tab h2{font-size:22px;font-weight:700;color:var(--text-primary);margin:0 0 20px}.subscription-tab h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.subscription-status{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.status-card{flex:1;min-width:140px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px;display:flex;align-items:center;gap:12px}.status-card.trial{border-color:var(--cornflower);background:#e6eeff}.status-card.active{border-color:var(--primary);background:var(--primary-soft)}.status-card.expired{border-color:var(--accent);background:#fdecec}.status-card.price{border-color:var(--border)}.status-icon{font-size:28px;flex-shrink:0}.status-info h3{font-size:15px;font-weight:700;color:var(--text-primary);margin:0 0 2px}.status-info p{font-size:13px;color:var(--text-muted);margin:0}.payment-receiver-section,.payment-form-section,.payment-history,.subscription-info,.bank-details-section{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:16px;margin-bottom:16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.section-hint{font-size:13px;color:var(--text-muted);margin:0 0 12px;line-height:1.4}.payment-details{display:flex;flex-direction:column;gap:8px}.detail-row{display:flex;gap:8px;font-size:14px;line-height:1.4}.detail-row .label{color:var(--text-muted);font-weight:500;min-width:110px;flex-shrink:0}.detail-row .value{color:var(--text-primary);font-weight:500;word-break:break-word}.pay-btn{display:block;width:100%;padding:14px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:700;cursor:pointer;transition:background .15s ease}.pay-btn:active{background:var(--primary-dark)}.payment-form{display:flex;flex-direction:column;gap:12px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:13px;font-weight:600;color:var(--text-muted)}.form-group input{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;background:var(--bg-soft);color:var(--text-primary)}.form-group input:focus{outline:none;border-color:var(--primary)}.form-actions{display:flex;gap:10px;margin-top:4px}.save-btn{flex:1;padding:12px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:15px;font-weight:700;cursor:pointer}.save-btn:active{background:var(--primary-dark)}.save-btn:disabled{opacity:.6}.cancel-btn{padding:12px 20px;background:var(--bg-soft);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-sm);font-size:14px;cursor:pointer}.cancel-btn:active{background:var(--border)}.edit-btn,.add-btn{padding:6px 14px;background:var(--primary-soft);border:1px solid var(--primary);color:var(--primary);border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.edit-btn:active,.add-btn:active{background:var(--primary);color:#fff}.copy-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:2px 6px;vertical-align:middle}.payment-report-btn{display:block;width:100%;margin-top:12px;padding:12px;background:var(--cornflower);color:#fff;border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer}.payment-report-btn:active{filter:brightness(.9)}.payments-list{display:flex;flex-direction:column;gap:8px}.payment-card{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-soft);border:1px solid var(--border-light);border-radius:var(--radius-sm);gap:12px;flex-wrap:wrap}.payment-amount{font-weight:700;font-size:16px;color:var(--text-primary)}.payment-date{font-size:13px;color:var(--text-muted)}.payment-status{font-size:13px;font-weight:600}.payment-status.confirmed{color:var(--primary)}.payment-status.pending{color:#f59e0b}.payment-status.rejected{color:var(--accent)}.payment-card-info{font-size:12px;color:var(--text-muted);width:100%}.no-payments{text-align:center;color:var(--text-muted);font-size:14px;padding:16px}.no-details{text-align:center;color:var(--text-muted);font-size:14px;padding:12px}.subscription-info ul{margin:0;padding:0 0 0 18px;display:flex;flex-direction:column;gap:8px}.subscription-info li{font-size:14px;color:var(--text-secondary);line-height:1.4}.subscription-info a{color:var(--cornflower);text-decoration:none}.loading{text-align:center;padding:40px;color:var(--text-muted);font-size:15px}@media(max-width:480px){.subscription-tab{padding:12px 0 32px}.subscription-tab h2{font-size:20px}.status-card{min-width:130px;padding:12px}.detail-row{flex-direction:column;gap:2px}.detail-row .label{min-width:auto}.payment-card{flex-direction:column;align-items:flex-start}}.owner-master-card{background:var(--bg-card, #ffffff);border:1px solid var(--border-light, #edf2f7);border-radius:16px;padding:16px;box-shadow:var(--shadow-sm, 0 2px 4px rgba(0,0,0,.05));transition:all .2s ease}.owner-master-card:active{box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.1))}.owner-master-info{display:flex;gap:12px;margin-bottom:12px}.owner-master-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff;flex-shrink:0}.owner-emerald{background:var(--primary, #2e8b57)}.owner-master-details{flex:1;min-width:0}.owner-master-name{font-size:16px;font-weight:600;color:var(--text-primary, #1e293b);margin-bottom:2px}.owner-master-specialization{font-size:13px;color:var(--text-muted, #64748b);margin-bottom:4px}.owner-master-rating{font-size:13px;color:var(--text-secondary, #4a5568)}.owner-master-rating span{color:var(--text-muted, #64748b);margin-left:4px}.master-services-badges{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.service-badge{background:var(--primary-soft, #e8f3e9);color:var(--primary, #2e8b57);font-size:11px;font-weight:500;padding:2px 8px;border-radius:10px;white-space:nowrap}.service-badge.more{background:var(--bg-soft, #f8fafc);color:var(--text-muted, #64748b)}.owner-master-actions{display:flex;flex-wrap:wrap;gap:6px}.owner-action-button{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--border, #e2e8f0);border-radius:10px;background:var(--bg-soft, #f8fafc);color:var(--text-secondary, #4a5568);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease}.owner-action-button:active{background:var(--primary, #2e8b57);color:#fff;border-color:var(--primary, #2e8b57)}.owner-action-button.variant-delete:active{background:var(--accent, #cd5c5c);border-color:var(--accent, #cd5c5c)}@media(max-width:480px){.owner-master-card{padding:14px}.owner-master-avatar{width:40px;height:40px;font-size:18px}.owner-master-name{font-size:15px}}.qr-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease}.qr-content{background:var(--bg-card, white);border-radius:var(--radius-lg, 16px);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0,0,0,.15))}.qr-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg, 20px);border-bottom:2px solid var(--border, #e2e8f0)}.qr-header h2{color:var(--primary, #2E8B57);margin:0;font-size:20px;font-weight:600}.close-button{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-muted, #64748B);padding:0 8px;transition:all .2s ease;-webkit-tap-highlight-color:transparent;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full, 50%)}.close-button:active{color:var(--primary, #2E8B57);background:var(--primary-soft, #e8f3e9);transform:scale(.95)}.qr-display{padding:var(--space-lg, 20px)}.master-info{display:flex;align-items:center;gap:var(--space-md, 15px);margin-bottom:var(--space-xl, 30px);padding:var(--space-md, 15px);background:var(--bg-soft, #f0f7f0);border-radius:var(--radius-lg, 12px);border:1px solid var(--border, #e2e8f0)}.master-avatar{font-size:48px;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--primary-soft, #e8f3e9);border-radius:var(--radius-full, 50%);border:2px solid var(--primary, #2E8B57)}.master-info h3{margin:0 0 var(--space-xs, 5px) 0;color:var(--text-primary, #1e293b);font-size:18px;font-weight:600}.specialization{margin:0;color:var(--text-muted, #64748B);font-size:14px}.qr-image-container{text-align:center;margin:var(--space-xl, 30px) 0;padding:var(--space-lg, 20px);background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);border:2px dashed var(--border, #e2e8f0)}.qr-image{max-width:250px;height:auto;margin:0 auto;display:block;border:1px solid var(--border, #e2e8f0);padding:var(--space-sm, 10px);background:var(--bg-card, white);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0,0,0,.05))}.qr-hint{margin-top:var(--space-md, 15px);color:var(--text-muted, #64748B);font-size:14px;display:flex;align-items:center;justify-content:center;gap:var(--space-xs, 5px)}.qr-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm, 10px);margin:var(--space-lg, 20px) 0}.qr-button{grid-column:span 2;padding:14px;border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:16px;background:var(--accent, #CD5C5C);color:#fff;-webkit-tap-highlight-color:transparent;min-height:48px}.qr-button:active{transform:scale(.97);background:var(--accent-dark, #B04545)}.download-button,.print-button{padding:12px;border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:15px;-webkit-tap-highlight-color:transparent;min-height:44px;display:flex;align-items:center;justify-content:center;gap:var(--space-xs, 5px)}.download-button{background:var(--primary, #2E8B57);color:#fff}.download-button:active{transform:scale(.97);background:var(--primary-dark, #1f5f3a)}.print-button{background:var(--text-muted, #64748B);color:#fff}.print-button:active{transform:scale(.97);background:var(--text-secondary, #4b5563)}.qr-footer{margin-top:var(--space-lg, 20px);padding-top:var(--space-lg, 20px);border-top:1px solid var(--border, #e2e8f0);text-align:center}.qr-link{color:var(--text-muted, #64748B);font-size:12px;word-break:break-all;margin:var(--space-xs, 5px) 0;padding:var(--space-sm, 8px);background:var(--bg-soft, #f8fafc);border-radius:var(--radius-sm, 4px);font-family:monospace}.qr-note{color:var(--primary, #2E8B57);font-size:12px;margin:var(--space-xs, 5px) 0;display:flex;align-items:center;justify-content:center;gap:var(--space-xs, 5px)}@media(max-width:600px){.qr-actions{grid-template-columns:1fr}.qr-button{grid-column:span 1}.qr-image{max-width:200px}.qr-header h2{font-size:18px}.master-info{flex-direction:column;text-align:center}.master-avatar{width:80px;height:80px;font-size:40px}}@media(max-width:480px){.qr-content{width:95%;max-height:95vh}.qr-header,.qr-display{padding:var(--space-md, 16px)}.qr-image-container{padding:var(--space-md, 16px);margin:var(--space-lg, 20px) 0}.qr-image{max-width:180px}.qr-button,.download-button,.print-button{font-size:14px;padding:12px}}@media(max-width:360px){.qr-image{max-width:150px}.master-avatar{width:70px;height:70px;font-size:36px}.master-info h3{font-size:16px}}@media(prefers-color-scheme:dark){.qr-content{background:var(--bg-card-dark, #1a2e1a)}.qr-header{border-bottom-color:var(--border-dark, #2d4a2d)}.qr-header h2{color:var(--primary-light, #4a9f6e)}.close-button{color:var(--text-muted-dark, #9ca3af)}.close-button:active{color:var(--primary-light, #4a9f6e);background:var(--primary-soft-dark, #1a3a1a)}.master-info{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d)}.master-info h3{color:var(--text-primary-dark, #f0f7f0)}.specialization{color:var(--text-muted-dark, #9ca3af)}.master-avatar{background:var(--primary-soft-dark, #1a3a1a);border-color:var(--primary-light, #4a9f6e)}.qr-image-container{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d)}.qr-image{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d)}.qr-link{background:var(--bg-soft-dark, #152215);color:var(--text-muted-dark, #9ca3af)}.qr-footer{border-top-color:var(--border-dark, #2d4a2d)}}@media(hover:none)and (pointer:coarse){.qr-button:hover,.download-button:hover,.print-button:hover,.close-button:hover{transform:none;background:inherit}.qr-button:hover{background:var(--accent, #CD5C5C)}.download-button:hover{background:var(--primary, #2E8B57)}.print-button:hover{background:var(--text-muted, #64748B)}.close-button:hover{background:none;color:var(--text-muted, #64748B)}}.salon-qr-modal{max-width:500px!important;text-align:center}.salon-qr-modal h3{color:var(--primary, #1E3A8A);margin-bottom:20px}.qr-container{background:#fff;padding:20px;border-radius:12px;display:inline-block;margin-bottom:20px;box-shadow:var(--shadow, 0 2px 8px rgba(0,0,0,.1))}.salon-qr-image{max-width:300px;height:auto;display:block;margin:0 auto}.qr-info{text-align:left;background:var(--background, #f8fafc);padding:15px;border-radius:8px;margin:20px 0}.qr-info ul{margin:10px 0;padding-left:20px}.qr-info li{margin:5px 0;color:var(--text, #1e293b)}.qr-actions{display:flex;gap:10px;justify-content:center;margin:20px 0;flex-wrap:wrap}.print-button,.download-button,.info-toggle{padding:10px 20px;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.print-button{background:var(--primary, #1E3A8A);color:#fff}.print-button:hover{background:#0f2b5e}.download-button{background:var(--success, #10B981);color:#fff}.download-button:hover{background:#0b8e5f}.info-toggle{background:var(--border, #e2e8f0);color:var(--text, #1e293b)}.info-toggle:hover{background:#cbd5e1}.qr-instructions{text-align:left;background:#fff;padding:15px;border-radius:8px;border:1px solid var(--border, #e2e8f0);margin-top:15px}.qr-instructions h4{color:var(--primary, #1E3A8A);margin-bottom:10px}.qr-instructions ol{margin:0;padding-left:20px}.qr-instructions li{margin:5px 0}.error-message{color:var(--error, #EF4444);padding:20px;text-align:center}.master-container{max-width:800px;margin:0 auto;padding:var(--space-lg, 20px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-main, #f0f7f0);min-height:100vh}.master-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-xl, 30px);padding-bottom:var(--space-lg, 20px);border-bottom:2px solid var(--border, #e2e8f0)}.master-header h1{color:var(--primary, #2E8B57);margin:0 0 var(--space-xs, 5px) 0;font-size:24px;font-weight:600}.master-rating{color:var(--accent, #CD5C5C);font-weight:700;font-size:16px;display:flex;align-items:center;gap:var(--space-xs, 4px)}.header-controls{display:flex;gap:var(--space-sm, 12px);align-items:center}.logout-button{padding:10px 20px;background:none;border:2px solid var(--primary, #2E8B57);color:var(--primary, #2E8B57);border-radius:var(--radius-md, 8px);cursor:pointer;font-weight:600;transition:all .2s ease;-webkit-tap-highlight-color:transparent;min-height:44px}.logout-button:active{background:var(--primary, #2E8B57);color:#fff;transform:scale(.97)}.stats-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md, 15px);margin-bottom:var(--space-xl, 30px)}.stat-mini-card{background:var(--bg-card, white);padding:var(--space-lg, 20px);border-radius:var(--radius-lg, 12px);text-align:center;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.05));transition:all .2s ease;border:1px solid var(--border, #e2e8f0)}.stat-mini-card:active{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.1));border-color:var(--primary, #2E8B57)}.stat-mini-value{display:block;font-size:32px;font-weight:700;color:var(--primary, #2E8B57);line-height:1.2;margin-bottom:var(--space-xs, 4px)}.stat-mini-label{font-size:14px;color:var(--text-muted, #64748B)}.master-tabs{display:flex;gap:var(--space-sm, 10px);margin-bottom:var(--space-lg, 20px);border-bottom:2px solid var(--border, #e2e8f0);padding-bottom:var(--space-sm, 10px);overflow-x:auto;scrollbar-width:thin}.tab{padding:10px 20px;background:none;border:none;font-size:16px;cursor:pointer;color:var(--text-muted, #64748B);border-radius:var(--radius-md, 8px);transition:all .2s ease;white-space:nowrap;-webkit-tap-highlight-color:transparent}.tab:active{background:var(--primary-soft, #e8f3e9);color:var(--primary, #2E8B57)}.tab.active{background:var(--primary, #2E8B57);color:#fff}.tab-content{background:var(--bg-card, white);padding:var(--space-lg, 20px);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.05));min-height:400px;animation:fadeIn .3s ease}.appointments-list{display:flex;flex-direction:column;gap:var(--space-sm, 12px)}.appointment-card{display:flex;align-items:center;gap:var(--space-md, 15px);padding:var(--space-md, 15px);background:var(--bg-soft, #f0f7f0);border-radius:var(--radius-lg, 10px);border:1px solid var(--border, #e2e8f0);transition:all .2s ease;animation:fadeIn .3s ease}.appointment-card:active{transform:translate(5px);box-shadow:var(--shadow-sm, 0 4px 12px rgba(0,0,0,.05));border-color:var(--primary, #2E8B57)}.appointment-card.history{opacity:.8}.appointment-date{font-size:14px;color:var(--text-muted, #64748B);min-width:90px}.appointment-time{font-size:18px;font-weight:700;color:var(--primary, #2E8B57);min-width:70px}.appointment-info{flex:1}.client-name{font-weight:600;margin-bottom:var(--space-xs, 4px);color:var(--text-primary, #1e293b)}.service-name{font-size:14px;color:var(--text-muted, #64748B)}.appointment-status select{padding:8px 12px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-sm, 6px);background:var(--bg-card, white);font-size:14px;cursor:pointer;transition:all .2s ease;min-height:44px;-webkit-tap-highlight-color:transparent}.appointment-status select:active{border-color:var(--primary, #2E8B57);transform:scale(.98)}.status-select.status-pending{border-color:var(--accent, #CD5C5C);color:var(--accent, #CD5C5C)}.status-select.status-confirmed{border-color:#10b981;color:#10b981}.status-select.status-completed{border-color:var(--text-muted, #64748B);color:var(--text-muted, #64748B)}.status-select.status-cancelled{border-color:#ef4444;color:#ef4444}.status-badge{padding:6px 12px;border-radius:var(--radius-full, 20px);font-size:12px;font-weight:500;display:inline-block;min-width:90px;text-align:center}.status-badge.status-completed{background:#10b981;color:#fff}.status-badge.status-cancelled{background:#ef4444;color:#fff}.empty-state{text-align:center;padding:var(--space-xl, 60px) var(--space-lg, 20px);background:var(--bg-soft, #f0f7f0);border-radius:var(--radius-lg, 12px);border:2px dashed var(--border, #e2e8f0);animation:fadeIn .3s ease}.empty-icon{font-size:48px;margin-bottom:var(--space-lg, 20px);opacity:.5}.empty-state h3{color:var(--text-primary, #1e293b);margin-bottom:var(--space-sm, 10px);font-size:18px;font-weight:600}.empty-state p{color:var(--text-muted, #64748B);margin-bottom:0;font-size:14px}@media(max-width:600px){.master-container{padding:var(--space-md, 16px)}.master-header{flex-direction:column;align-items:flex-start;gap:var(--space-md, 15px)}.header-controls{width:100%;justify-content:space-between}.stats-mini{gap:var(--space-xs, 10px)}.stat-mini-card{padding:var(--space-md, 16px)}.stat-mini-value{font-size:24px}.stat-mini-label{font-size:12px}.master-tabs{gap:var(--space-xs, 8px)}.tab{padding:8px 12px;font-size:14px;flex:1;text-align:center}.tab-content{padding:var(--space-md, 16px)}.appointment-card{flex-direction:column;align-items:flex-start}.appointment-status,.appointment-status select{width:100%}.appointment-date,.appointment-time{min-width:auto}}@media(max-width:480px){.stats-mini{grid-template-columns:1fr;gap:var(--space-xs, 8px)}.stat-mini-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm, 12px) var(--space-md, 16px)}.stat-mini-value{font-size:28px;margin-bottom:0}.stat-mini-label{font-size:14px}.master-header h1{font-size:20px}.empty-state{padding:var(--space-xl, 40px) var(--space-md, 16px)}.empty-icon{font-size:40px}.empty-state h3{font-size:16px}}@media(max-width:360px){.master-tabs{flex-wrap:wrap}.tab{flex:1 1 calc(50% - var(--space-xs, 8px))}.appointment-card{padding:var(--space-sm, 12px)}.appointment-time{font-size:16px}.client-name{font-size:14px}.service-name{font-size:12px}}@media(prefers-color-scheme:dark){.master-container{background:var(--bg-main-dark, #0a140a)}.master-header{border-bottom-color:var(--border-dark, #2d4a2d)}.master-header h1{color:var(--primary-light, #4a9f6e)}.stat-mini-card,.tab-content,.appointment-status select{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.stat-mini-value{color:var(--primary-light, #4a9f6e)}.stat-mini-label,.service-name,.appointment-date,.tab,.empty-state p{color:var(--text-muted-dark, #9ca3af)}.appointment-card,.empty-state{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d)}.client-name,.empty-state h3,.tab-content{color:var(--text-primary-dark, #f0f7f0)}.tab.active{background:var(--primary, #4a9f6e);color:var(--bg-main-dark, #0a140a)}.tab:active{background:var(--primary-soft-dark, #1a3a1a);color:var(--primary-light, #4a9f6e)}.appointment-status select option{background:var(--bg-card-dark, #1a2e1a);color:var(--text-primary-dark, #f0f7f0)}.status-badge.status-completed{background:#059669}.status-badge.status-cancelled{background:#b04545}}@media(hover:none)and (pointer:coarse){.stat-mini-card:hover,.tab:hover,.appointment-card:hover,.appointment-status select:hover,.logout-button:hover{transform:none;box-shadow:var(--shadow-sm)}.stat-mini-card:hover{border-color:var(--border, #e2e8f0)}.tab:hover{background:none;color:var(--text-muted, #64748B)}.appointment-card:hover{transform:none;border-color:var(--border, #e2e8f0)}.appointment-status select:hover{border-color:var(--border, #e2e8f0)}.logout-button:hover{background:none;color:var(--primary, #2E8B57)}}.admin-container{max-width:1200px;margin:0 auto;padding:var(--space-lg, 20px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-main, #f0f7f0);min-height:100vh}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xl, 30px);padding-bottom:var(--space-lg, 20px);border-bottom:2px solid var(--border, #e2e8f0)}.admin-header h1{color:var(--primary, #2e8b57);margin:0;font-size:28px;font-weight:600}.header-actions{display:flex;gap:var(--space-sm, 10px);align-items:center}.date-selector{margin-bottom:var(--space-xl, 30px)}.date-input{padding:12px 16px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);font-size:16px;background:var(--bg-card, white);color:var(--text-primary, #1e293b);transition:all .2s ease;min-height:44px;-webkit-tap-highlight-color:transparent}.date-input:active{border-color:var(--primary, #2e8b57);transform:scale(.98)}.date-input:focus{outline:none;border-color:var(--primary, #2e8b57);box-shadow:0 0 0 3px var(--primary-soft, #e8f3e9)}.add-button{padding:12px 24px;background:var(--primary, #2e8b57);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s ease;min-height:44px;display:flex;align-items:center;gap:var(--space-xs, 8px);-webkit-tap-highlight-color:transparent}.add-button:active{transform:scale(.97);background:var(--primary-dark, #1f5f3a)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md, 20px);margin-bottom:var(--space-xl, 30px)}.stat-card{background:var(--bg-card, white);padding:var(--space-lg, 20px);border-radius:var(--radius-lg, 10px);text-align:center;box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05));border:1px solid var(--border, #e2e8f0);transition:all .2s ease}.stat-card:active{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1));border-color:var(--primary, #2e8b57)}.stat-value{display:block;font-size:36px;font-weight:700;color:var(--primary, #2e8b57);margin-bottom:var(--space-xs, 5px);line-height:1.2}.stat-label{color:var(--text-muted, #64748b);font-size:14px;font-weight:500}.appointments-table{background:var(--bg-card, white);border-radius:var(--radius-lg, 10px);overflow:hidden;box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .05));border:1px solid var(--border, #e2e8f0);overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:800px}th{background:var(--primary, #2e8b57);color:#fff;padding:var(--space-md, 12px);text-align:left;font-weight:500;font-size:14px;white-space:nowrap}td{padding:var(--space-md, 12px);border-bottom:1px solid var(--border, #e2e8f0);color:var(--text-primary, #1e293b);font-size:14px}tr:last-child td{border-bottom:none}tr:active td{background:var(--bg-soft, #f0f7f0)}.status-badge{padding:6px 12px;border-radius:var(--radius-full, 20px);font-size:12px;font-weight:500;color:#fff;display:inline-block;min-width:90px;text-align:center}.status-pending{background:var(--accent, #cd5c5c)}.status-confirmed{background:#10b981}.status-completed{background:var(--text-muted, #64748b)}.status-cancelled{background:#ef4444}.edit-button{padding:8px 16px;background:none;border:2px solid var(--primary, #2e8b57);color:var(--primary, #2e8b57);border-radius:var(--radius-md, 4px);cursor:pointer;font-weight:600;font-size:13px;transition:all .2s ease;min-width:70px;-webkit-tap-highlight-color:transparent}.edit-button:active{background:var(--primary, #2e8b57);color:#fff;transform:scale(.95)}.modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.modal-content{background:var(--bg-card, white);padding:var(--space-xl, 30px);border-radius:var(--radius-lg, 12px);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15))}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg, 20px);padding-bottom:var(--space-md, 15px);border-bottom:2px solid var(--border, #e2e8f0)}.modal-header h2{color:var(--primary, #2e8b57);margin:0;font-size:22px}.close-button{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-muted, #64748b);padding:0 8px;transition:all .2s ease;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full, 50%);-webkit-tap-highlight-color:transparent}.close-button:active{color:var(--primary, #2e8b57);background:var(--primary-soft, #e8f3e9);transform:scale(.95)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md, 10px);margin-bottom:var(--space-md, 15px)}.form-group{margin-bottom:var(--space-md, 15px)}.form-group label{display:block;margin-bottom:var(--space-xs, 5px);color:var(--text-muted, #64748b);font-weight:500;font-size:14px}.form-group input,.form-group select{width:100%;padding:12px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 6px);font-size:14px;background:var(--bg-card, white);color:var(--text-primary, #1e293b);transition:all .2s ease;min-height:44px}.form-group input:active,.form-group select:active{border-color:var(--primary, #2e8b57);transform:scale(.98)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary, #2e8b57);box-shadow:0 0 0 3px var(--primary-soft, #e8f3e9)}.modal-actions{display:flex;gap:var(--space-sm, 10px);margin-top:var(--space-xl, 20px)}.modal-actions button{flex:1;padding:14px;border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s ease;min-height:48px;-webkit-tap-highlight-color:transparent}.save-button{background:var(--accent, #cd5c5c);color:#fff}.save-button:active{transform:scale(.97);background:var(--accent-dark, #b04545)}.no-data{text-align:center;padding:var(--space-xl, 40px);color:var(--text-muted, #64748b);background:var(--bg-soft, #f0f7f0);border-radius:var(--radius-lg, 10px);border:2px dashed var(--border, #e2e8f0);font-size:16px}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-md, 15px)}}@media(max-width:768px){.admin-container{padding:var(--space-md, 16px)}.admin-header{flex-direction:column;align-items:flex-start;gap:var(--space-md, 15px)}.header-actions{width:100%;justify-content:space-between}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-sm, 12px)}.stat-card{padding:var(--space-md, 16px)}.stat-value{font-size:28px}.stat-label{font-size:13px}.appointments-table{margin-top:var(--space-md, 20px);border-radius:var(--radius-md, 8px)}th,td{padding:var(--space-sm, 10px);font-size:13px}.form-row{grid-template-columns:1fr;gap:0}.date-input,.add-button{width:100%}}@media(max-width:480px){.admin-header h1{font-size:24px}.stats-grid{grid-template-columns:1fr;gap:var(--space-xs, 10px)}.stat-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm, 12px) var(--space-md, 16px)}.stat-value{font-size:28px;margin-bottom:0}.stat-label{font-size:14px}.modal-content{padding:var(--space-lg, 20px);width:95%}.modal-header h2{font-size:20px}.close-button{width:40px;height:40px;font-size:24px}.modal-actions{flex-direction:column;gap:var(--space-xs, 8px)}.modal-actions button{width:100%}.edit-button{padding:6px 12px;font-size:12px}.status-badge{min-width:80px;font-size:11px;padding:4px 8px}}@media(max-width:360px){table{min-width:600px}.admin-header h1{font-size:20px}.stat-value{font-size:24px}.stat-label{font-size:13px}}@media(prefers-color-scheme:dark){.admin-container{background:var(--bg-main-dark, #0a140a)}.admin-header{border-bottom-color:var(--border-dark, #2d4a2d)}.admin-header h1{color:var(--primary-light, #4a9f6e)}.stat-card,.appointments-table,.modal-content,.date-input{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.stat-value{color:var(--primary-light, #4a9f6e)}.stat-label,.form-group label,.close-button,.no-data{color:var(--text-muted-dark, #9ca3af)}td{color:var(--text-primary-dark, #f0f7f0);border-bottom-color:var(--border-dark, #2d4a2d)}tr:active td{background:var(--bg-soft-dark, #152215)}.form-group input,.form-group select{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.form-group input:focus,.form-group select:focus{border-color:var(--primary-light, #4a9f6e);box-shadow:0 0 0 3px var(--primary-soft-dark, #1a3a1a)}.no-data{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d)}.edit-button{border-color:var(--primary-light, #4a9f6e);color:var(--primary-light, #4a9f6e)}.edit-button:active{background:var(--primary-light, #4a9f6e);color:var(--bg-main-dark, #0a140a)}.modal-header{border-bottom-color:var(--border-dark, #2d4a2d)}.modal-header h2{color:var(--primary-light, #4a9f6e)}.close-button:active{color:var(--primary-light, #4a9f6e);background:var(--primary-soft-dark, #1a3a1a)}}@media(hover:none)and (pointer:coarse){.stat-card:hover,.edit-button:hover,.add-button:hover,.close-button:hover,.save-button:hover,.date-input:hover,.form-group input:hover,.form-group select:hover{transform:none;background:inherit;border-color:var(--border, #e2e8f0)}.stat-card:hover{border-color:var(--border, #e2e8f0);box-shadow:var(--shadow-sm)}.edit-button:hover{background:none;color:var(--primary, #2e8b57);border-color:var(--primary, #2e8b57)}.add-button:hover{background:var(--primary, #2e8b57);color:#fff}.close-button:hover{color:var(--text-muted, #64748b);background:none}.save-button:hover{background:var(--accent, #cd5c5c);color:#fff}}.share-button{background:#28a745;color:#fff;border:none;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.share-button:hover{background:#218838;transform:scale(1.05)}.edit-button{background:#6c757d;color:#fff;border:none;padding:6px 10px;border-radius:6px;cursor:not-allowed;font-size:14px;opacity:.6}.edit-button{background:#ffc107;color:#333;border:none;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.edit-button:hover{background:#e0a800;transform:scale(1.05)}.admin-widgets{margin-bottom:24px}.widgets-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.stats-widget{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stats-widget .stat-card{display:flex;align-items:center;gap:16px;padding:20px;text-align:left;border-top:4px solid var(--primary, #2e8b57)}.stats-widget .stat-icon{font-size:32px;opacity:.8}.stats-widget .stat-content{display:flex;flex-direction:column}.stats-widget .stat-value{font-size:28px;margin-bottom:4px}.stats-widget .stat-label{font-size:14px}.quick-actions-widget{background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);padding:20px;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .08));border:1px solid var(--border, #e2e8f0);height:fit-content}.quick-actions-widget .widget-title{font-size:18px;font-weight:600;color:var(--primary, #2e8b57);margin:0 0 16px}.quick-actions-widget .actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.quick-actions-widget .action-card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--bg-soft, #f0f7f0);border-radius:12px;cursor:pointer;transition:all .2s ease;border:1px solid transparent;-webkit-tap-highlight-color:transparent}.quick-actions-widget .action-card:active{transform:scale(.98);border-color:var(--primary, #2e8b57);background:var(--bg-card, white);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1))}.quick-actions-widget .action-icon{font-size:36px;background:var(--bg-card, white);width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .06))}.quick-actions-widget .action-info{display:flex;flex-direction:column;gap:4px}.quick-actions-widget .action-title{font-size:16px;font-weight:600;color:var(--text-primary, #1e293b)}.quick-actions-widget .action-description{font-size:13px;color:var(--text-muted, #64748b)}.masters-load-widget{background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);padding:20px;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .08));border:1px solid var(--border, #e2e8f0);height:fit-content}.masters-load-widget .widget-title{font-size:18px;font-weight:600;color:var(--primary, #2e8b57);margin:0 0 16px}.masters-load-widget .masters-list{display:flex;flex-direction:column;gap:16px}.masters-load-widget .master-load-item{display:flex;flex-direction:column;gap:8px}.masters-load-widget .master-info{display:flex;justify-content:space-between;align-items:center}.masters-load-widget .master-name{font-weight:500;color:var(--text-primary, #1e293b)}.masters-load-widget .master-stats{font-size:13px;color:var(--text-muted, #64748b)}.masters-load-widget .load-bar-container{height:8px;background:var(--bg-soft, #e8f3e9);border-radius:4px;overflow:hidden}.masters-load-widget .load-bar-fill{height:100%;border-radius:4px;transition:width .3s ease;background:linear-gradient(90deg,var(--primary, #2e8b57),var(--primary-light, #4a9f6e))}.masters-load-widget .empty-state{text-align:center;padding:40px 20px}.masters-load-widget .empty-icon{font-size:48px;opacity:.5}.masters-load-widget .empty-state p{color:var(--text-muted, #64748b);margin-top:8px}.action-buttons{display:flex;gap:8px;align-items:center}.share-button{background:var(--primary, #2e8b57);color:#fff;border:none;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;-webkit-tap-highlight-color:transparent}.share-button:active{background:var(--primary-dark, #1f5f3a);transform:scale(.95)}.edit-button{background:var(--accent, #cd5c5c);color:#fff;border:none;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;-webkit-tap-highlight-color:transparent}.edit-button:active{background:var(--accent-dark, #b04545);transform:scale(.95)}.share-body{padding:10px 0}.share-message{color:var(--text-primary, #1e293b);margin-bottom:16px}.ticket-url-container{display:flex;gap:10px;margin-bottom:20px}.ticket-url-input{flex:1;padding:12px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);font-size:14px;background:var(--bg-soft, #f0f7f0);color:var(--text-primary, #1e293b)}.copy-button{padding:12px 20px;background:var(--primary, #2e8b57);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s;-webkit-tap-highlight-color:transparent}.copy-button:active{background:var(--primary-dark, #1f5f3a);transform:scale(.97)}.share-buttons{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.share-whatsapp,.share-telegram,.share-viber{flex:1;min-width:100px;padding:12px;border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent}.share-whatsapp{background:#25d366;color:#fff}.share-telegram{background:#08c;color:#fff}.share-viber{background:#7360f2;color:#fff}.share-whatsapp:active,.share-telegram:active,.share-viber:active{transform:scale(.97);filter:brightness(.9)}.qr-section{text-align:center;margin-top:20px}.qr-section p{color:var(--text-muted, #64748b);margin-bottom:16px}.qr-code{display:flex;justify-content:center}.qr-code img{border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .1))}.done-button{width:100%;padding:14px;background:var(--primary, #2e8b57);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent}.done-button:active{background:var(--primary-dark, #1f5f3a);transform:scale(.98)}@media(max-width:768px){.stats-widget{grid-template-columns:repeat(2,1fr)}.widgets-row,.quick-actions-widget .actions-grid{grid-template-columns:1fr}}@media(max-width:480px){.stats-widget{grid-template-columns:1fr}.stats-widget .stat-card{padding:16px}.ticket-url-container{flex-direction:column}.copy-button{width:100%}}@media(prefers-color-scheme:dark){.quick-actions-widget,.masters-load-widget{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d)}.quick-actions-widget .widget-title,.masters-load-widget .widget-title{color:var(--primary-light, #4a9f6e)}.quick-actions-widget .action-card{background:var(--bg-soft-dark, #152215)}.quick-actions-widget .action-card:active{background:var(--bg-card-dark, #1a2e1a);border-color:var(--primary-light, #4a9f6e)}.quick-actions-widget .action-icon{background:var(--bg-card-dark, #1a2e1a)}.quick-actions-widget .action-title,.masters-load-widget .master-name{color:var(--text-primary-dark, #f0f7f0)}.masters-load-widget .load-bar-container{background:var(--bg-soft-dark, #152215)}.ticket-url-input{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}}@media(hover:none)and (pointer:coarse){.share-button:hover,.edit-button:hover,.copy-button:hover,.share-whatsapp:hover,.share-telegram:hover,.share-viber:hover,.done-button:hover{transform:none;filter:none}}.salon-card-modern{background:var(--bg-card, white);border-radius:var(--radius-lg, 16px);padding:var(--space-lg, 16px);margin-bottom:var(--space-md, 16px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .1));cursor:pointer;transition:all .2s ease;position:relative;border:2px solid var(--border, #f0f0f0);-webkit-tap-highlight-color:transparent}.salon-card-modern:active{transform:translateY(-2px) scale(.98);box-shadow:var(--shadow-md, 0 8px 24px rgba(46, 139, 86, .15));border-color:var(--primary, #2e8b57)}.salon-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm, 12px)}.salon-avatar{width:60px;height:60px;border-radius:var(--radius-lg, 16px);background:var(--primary-soft, #e8f3e9);color:var(--primary, #2e8b57);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;box-shadow:var(--shadow-sm, 0 4px 12px rgba(46, 139, 86, .15));transition:transform .2s ease;border:2px solid var(--primary, #2e8b57)}.salon-card-modern:active .salon-avatar{transform:scale(1.05)}.favorite-button{background:transparent;border:none;font-size:28px;cursor:pointer;padding:8px;transition:all .2s ease;line-height:1;border-radius:var(--radius-full, 50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;-webkit-tap-highlight-color:transparent;color:var(--accent, #cd5c5c)}.favorite-button:active{transform:scale(1.2);background:var(--accent-soft, rgba(205, 92, 92, .1))}.favorite-button.active{animation:heartBeat .4s ease}.favorite-button.active:active{background:var(--accent-soft, rgba(205, 92, 92, .15))}@keyframes heartBeat{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(1)}75%{transform:scale(1.2)}to{transform:scale(1)}}.salon-info{padding:var(--space-xs, 4px) 0}.salon-name{font-size:19px;font-weight:700;margin:0 0 var(--space-xs, 8px) 0;color:var(--text-primary, #2d3748);line-height:1.4}.salon-address,.salon-metro{font-size:14px;color:var(--text-muted, #718096);margin:0 0 var(--space-xs, 6px) 0;display:flex;align-items:center;gap:var(--space-xs, 6px);line-height:1.5}.address-icon,.metro-icon{font-size:16px;min-width:20px;color:var(--primary, #2e8b57)}.salon-rating{display:flex;align-items:center;gap:var(--space-xs, 6px);margin:var(--space-sm, 10px) 0 var(--space-sm, 12px) 0;font-size:14px}.rating-stars{color:var(--accent, #cd5c5c);font-size:16px;letter-spacing:2px}.rating-value{font-weight:700;color:var(--text-primary, #2d3748);background:var(--bg-soft, #f0f7f0);padding:2px 8px;border-radius:var(--radius-full, 20px)}.reviews-count{color:var(--text-light, #a0aec0);font-size:13px}.no-rating{color:var(--text-light, #a0aec0);margin:var(--space-sm, 10px) 0 var(--space-sm, 12px) 0;font-size:13px;display:flex;align-items:center;gap:var(--space-xs, 4px)}.no-rating:before{content:"⭐";opacity:.3}.salon-services{display:flex;flex-wrap:wrap;gap:var(--space-xs, 8px);margin-bottom:var(--space-md, 16px)}.service-tag{background:var(--bg-soft, #f7fafc);color:var(--text-secondary, #4a5568);padding:6px 12px;border-radius:var(--radius-full, 20px);font-size:12px;font-weight:500;border:1px solid var(--border, #e2e8f0);transition:all .2s ease;-webkit-tap-highlight-color:transparent}.service-tag:active{background:var(--primary, #2e8b57);color:#fff;border-color:var(--primary, #2e8b57);transform:scale(.95)}.service-tag.more{background:var(--bg-soft, #edf2f7);color:var(--text-muted, #718096);border-style:dashed}.book-button-small{width:100%;padding:14px;background:var(--primary, #2e8b57);color:#fff;border:none;border-radius:var(--radius-lg, 12px);font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .3));min-height:52px;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center;gap:var(--space-xs, 8px)}.book-button-small:active{transform:scale(.97);background:var(--primary-dark, #1f5f3a);box-shadow:var(--shadow-sm, 0 2px 8px rgba(46, 139, 86, .4))}.book-button-small:before{content:"📅";font-size:18px;opacity:.9}@media(max-width:768px){.salon-card-modern{padding:var(--space-md, 14px)}.salon-avatar{width:52px;height:52px;font-size:28px}.favorite-button{width:40px;height:40px;font-size:24px}.salon-name{font-size:17px}.salon-address,.salon-metro{font-size:13px}.book-button-small{padding:12px;font-size:15px;min-height:48px}}@media(max-width:480px){.salon-card-modern{padding:var(--space-sm, 12px)}.salon-avatar{width:48px;height:48px;font-size:24px}.favorite-button{width:36px;height:36px;font-size:22px;padding:0}.salon-name{font-size:16px}.service-tag{padding:4px 10px;font-size:11px}.book-button-small{padding:10px;font-size:14px;min-height:44px}.book-button-small:before{font-size:16px}.rating-stars{font-size:14px}.rating-value{font-size:13px}}@media(max-width:360px){.salon-avatar{width:40px;height:40px;font-size:20px}.salon-name{font-size:15px}.salon-services{gap:var(--space-xs, 4px)}.service-tag{padding:3px 8px;font-size:10px}}@media(prefers-color-scheme:dark){.salon-card-modern{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d)}.salon-avatar{background:var(--primary-soft-dark, #1a3a1a);border-color:var(--primary-light, #4a9f6e);color:var(--primary-light, #4a9f6e)}.salon-name{color:var(--text-primary-dark, #f0f7f0)}.salon-address,.salon-metro{color:var(--text-muted-dark, #9ca3af)}.address-icon,.metro-icon{color:var(--primary-light, #4a9f6e)}.rating-value{background:var(--bg-soft-dark, #152215);color:var(--text-primary-dark, #f0f7f0)}.reviews-count,.no-rating{color:var(--text-muted-dark, #9ca3af)}.service-tag{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d);color:var(--text-secondary-dark, #cbd5e0)}.service-tag:active{background:var(--primary, #4a9f6e);color:var(--bg-main-dark, #0a140a);border-color:var(--primary-light, #4a9f6e)}.service-tag.more{background:var(--bg-card-dark, #1a2e1a);color:var(--text-muted-dark, #9ca3af)}.favorite-button{color:var(--accent-light, #e67a7a)}.favorite-button:active{background:var(--accent-soft-dark, #3d2a2a)}.book-button-small{background:var(--primary, #4a9f6e);box-shadow:0 4px 12px #00000080}.book-button-small:active{background:var(--primary-dark, #1f5f3a)}}@media(hover:none)and (pointer:coarse){.salon-card-modern:hover{transform:none;border-color:var(--border, #f0f0f0);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .1))}.salon-card-modern:active{transform:translateY(-2px) scale(.98);border-color:var(--primary, #2e8b57)}.favorite-button:hover{transform:none;background:transparent}.favorite-button:active{transform:scale(1.2);background:var(--accent-soft, rgba(205, 92, 92, .1))}.service-tag:hover{background:var(--bg-soft, #f7fafc);color:var(--text-secondary, #4a5568);border-color:var(--border, #e2e8f0)}.service-tag:active{background:var(--primary, #2e8b57);color:#fff;transform:scale(.95)}.book-button-small:hover{background:var(--primary, #2e8b57);transform:none;box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .3))}.book-button-small:active{transform:scale(.97);background:var(--primary-dark, #1f5f3a)}.salon-card-modern:hover .salon-avatar{transform:none}.salon-card-modern:active .salon-avatar{transform:scale(1.05)}}.card-header-actions{display:flex;gap:var(--space-xs, 8px);z-index:2}.edit-button{background:transparent;border:none;font-size:24px;cursor:pointer;padding:8px;transition:all .2s ease;line-height:1;border-radius:var(--radius-full, 50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;-webkit-tap-highlight-color:transparent;color:var(--primary, #2e8b57);opacity:.9}.edit-button:active{transform:scale(1.2) rotate(15deg);background:var(--primary-soft, rgba(46, 139, 86, .1));opacity:1}@keyframes spinEdit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.edit-button:active{animation:spinEdit .4s ease}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1100;padding:var(--space-md, 16px);animation:fadeIn .3s ease}.modal-content{background:var(--bg-card, white);border-radius:var(--radius-xl, 24px);max-width:600px;width:100%;max-height:85vh;overflow-y:auto;padding:var(--space-xl, 24px);box-shadow:var(--shadow-xl, 0 20px 40px rgba(46, 139, 86, .25));border:2px solid var(--border, #f0f0f0);animation:slideUp .3s ease;position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-content h2{color:var(--primary, #2e8b57);font-size:24px;font-weight:700;margin:0 0 var(--space-lg, 20px) 0;padding-bottom:var(--space-sm, 12px);border-bottom:2px solid var(--primary-soft, #e8f3e9);display:flex;align-items:center;gap:var(--space-sm, 12px)}.modal-content h2:before{content:"✏️";font-size:28px}.form-group{margin-bottom:var(--space-lg, 20px)}.form-group label{display:block;margin-bottom:var(--space-xs, 8px);font-weight:600;color:var(--text-primary, #2d3748);font-size:15px}.form-group label:after{content:"*";color:var(--accent, #cd5c5c);margin-left:4px;opacity:.8}.form-group input,.form-group select{width:100%;padding:14px 16px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-lg, 12px);font-size:16px;transition:all .2s ease;background:var(--bg-main, white);color:var(--text-primary, #2d3748);-webkit-tap-highlight-color:transparent}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary, #2e8b57);box-shadow:0 0 0 4px var(--primary-soft, rgba(46, 139, 86, .1))}.form-group input:active,.form-group select:active{transform:scale(.99)}.form-group input::placeholder{color:var(--text-light, #a0aec0);opacity:.8}.form-row{display:flex;gap:var(--space-md, 16px);margin-bottom:var(--space-lg, 20px)}.form-row .form-group{flex:1;margin-bottom:0}.work-hours-details{margin:var(--space-lg, 20px) 0;border:2px solid var(--primary-soft, #e8f3e9);border-radius:var(--radius-lg, 12px);overflow:hidden}.work-hours-details summary{padding:16px 20px;background:var(--bg-soft, #f0f7f0);color:var(--primary, #2e8b57);font-weight:600;font-size:16px;cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--space-sm, 12px);transition:all .2s ease;-webkit-tap-highlight-color:transparent}.work-hours-details summary:before{content:"⚙️";font-size:20px}.work-hours-details summary::-webkit-details-marker{display:none}.work-hours-details summary:active{background:var(--primary-soft, #e8f3e9);transform:scale(.99)}.work-hours-details[open] summary{background:var(--primary, #2e8b57);color:#fff;border-bottom:2px solid var(--primary-dark, #1f5f3a)}.work-hours-details[open] summary:before{content:"⚙️"}.work-hours-editor{padding:var(--space-lg, 20px);background:var(--bg-card, white)}.work-hour-row{display:flex;align-items:center;gap:var(--space-sm, 12px);margin-bottom:var(--space-md, 12px);padding:var(--space-xs, 8px);border-radius:var(--radius-md, 8px);transition:background .2s ease}.work-hour-row:active{background:var(--bg-soft, #f0f7f0)}.day-label{width:50px;font-weight:600;color:var(--primary, #2e8b57);font-size:15px}.work-hour-row input[type=time]{flex:1;padding:10px 12px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);font-size:15px;transition:all .2s ease;background:var(--bg-main, white);color:var(--text-primary, #2d3748)}.work-hour-row input[type=time]:focus{outline:none;border-color:var(--primary, #2e8b57);box-shadow:0 0 0 3px var(--primary-soft, rgba(46, 139, 86, .1))}.work-hour-row span{color:var(--text-muted, #718096);font-weight:500}.form-actions{display:flex;gap:var(--space-md, 16px);margin-top:var(--space-xl, 28px)}.save-button,.cancel-button{flex:1;padding:16px;border:none;border-radius:var(--radius-lg, 12px);font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;min-height:56px;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center;gap:var(--space-xs, 8px)}.save-button{background:var(--primary, #2e8b57);color:#fff;box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .3))}.save-button:active{transform:scale(.97);background:var(--primary-dark, #1f5f3a);box-shadow:var(--shadow-sm, 0 2px 8px rgba(46, 139, 86, .4))}.save-button:before{content:"💾";font-size:18px}.save-button:disabled{opacity:.6;pointer-events:none;transform:none}.cancel-button{background:var(--accent-soft, rgba(205, 92, 92, .1));color:var(--accent, #cd5c5c);border:2px solid var(--accent, #cd5c5c)}.cancel-button:active{transform:scale(.97);background:var(--accent-soft, rgba(205, 92, 92, .2));color:var(--accent-dark, #a54545)}.cancel-button:before{content:"✕";font-size:18px;font-weight:600}@media(prefers-color-scheme:dark){.edit-button{color:var(--primary-light, #4a9f6e)}.edit-button:active{background:var(--primary-soft-dark, rgba(74, 159, 110, .2))}.modal-content{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d)}.modal-content h2{color:var(--primary-light, #4a9f6e);border-bottom-color:var(--border-dark, #2d4a2d)}.form-group label{color:var(--text-primary-dark, #f0f7f0)}.form-group input,.form-group select{background:var(--bg-main-dark, #0a140a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.form-group input:focus,.form-group select:focus{border-color:var(--primary-light, #4a9f6e);box-shadow:0 0 0 4px #4a9f6e33}.form-group input::placeholder{color:var(--text-muted-dark, #6b7280)}.work-hours-details{border-color:var(--border-dark, #2d4a2d)}.work-hours-details summary{background:var(--bg-soft-dark, #152215);color:var(--primary-light, #4a9f6e)}.work-hours-details[open] summary{background:var(--primary-dark, #1f5f3a);color:var(--text-primary-dark, #f0f7f0)}.work-hours-editor{background:var(--bg-card-dark, #1a2e1a)}.day-label{color:var(--primary-light, #4a9f6e)}.work-hour-row input[type=time]{background:var(--bg-main-dark, #0a140a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.work-hour-row span{color:var(--text-muted-dark, #9ca3af)}.save-button{background:var(--primary-light, #4a9f6e);color:var(--bg-main-dark, #0a140a)}.save-button:active{background:var(--primary, #2e8b57)}.cancel-button{background:#cd5c5c33;color:var(--accent-light, #e67a7a);border-color:var(--accent-light, #e67a7a)}.cancel-button:active{background:#cd5c5c4d}}@media(max-width:768px){.edit-button{width:40px;height:40px;font-size:22px}.modal-content{padding:var(--space-lg, 20px)}.modal-content h2{font-size:22px}.modal-content h2:before{font-size:24px}.form-group input,.form-group select{padding:12px 14px;font-size:15px}.work-hour-row{gap:var(--space-xs, 8px)}.day-label{width:45px;font-size:14px}.work-hour-row input[type=time]{padding:8px 10px;font-size:14px}.save-button,.cancel-button{padding:14px;font-size:15px;min-height:52px}}@media(max-width:480px){.edit-button{width:36px;height:36px;font-size:20px}.modal-content{padding:var(--space-md, 16px)}.modal-content h2{font-size:20px;margin-bottom:var(--space-md, 16px)}.modal-content h2:before{font-size:22px}.form-group{margin-bottom:var(--space-md, 16px)}.form-group input,.form-group select{padding:10px 12px;font-size:14px}.form-row{flex-direction:column;gap:var(--space-sm, 12px)}.work-hour-row{flex-wrap:wrap}.day-label{width:100%;margin-bottom:4px}.work-hour-row input[type=time]{flex:1 1 calc(50% - 30px)}.save-button,.cancel-button{padding:12px;font-size:14px;min-height:48px}.save-button:before,.cancel-button:before{font-size:16px}}@media(max-width:360px){.edit-button{width:32px;height:32px;font-size:18px}.modal-content h2{font-size:18px}.modal-content h2:before{font-size:20px}.save-button,.cancel-button{font-size:13px;padding:10px}}.nearby-container{max-width:600px;margin:0 auto;padding:var(--space-lg, 20px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-main, #f0f7f0);min-height:100vh}.nearby-header{display:flex;align-items:center;gap:var(--space-md, 15px);margin-bottom:var(--space-lg, 20px);padding-bottom:var(--space-md, 15px);border-bottom:2px solid var(--border, #e2e8f0)}.nearby-header h2{flex:1;color:var(--primary, #2E8B57);margin:0;font-size:22px;font-weight:600}.back-button{width:44px;height:44px;background:none;border:none;font-size:24px;cursor:pointer;color:var(--primary, #2E8B57);border-radius:var(--radius-full, 50%);transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.radius-selector{margin-bottom:var(--space-lg, 20px)}.radius-selector select{width:100%;padding:12px 16px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 8px);background:var(--bg-card, white);font-size:15px;color:var(--text-primary, #1e293b);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232E8B57' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;min-height:48px;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.radius-selector select:active{border-color:var(--primary, #2E8B57);transform:scale(.98)}.radius-selector select:focus{outline:none;border-color:var(--primary, #2E8B57);box-shadow:0 0 0 3px var(--primary-soft, #e8f3e9)}.map-placeholder{background:var(--bg-soft, #e2e8f0);height:220px;border-radius:var(--radius-lg, 12px);display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:var(--space-lg, 20px);color:var(--text-muted, #64748B);font-size:16px;border:2px dashed var(--border, #cbd5e0);position:relative;overflow:hidden}.map-placeholder:before{content:"📍";font-size:48px;margin-bottom:var(--space-sm, 10px);opacity:.7}.map-hint{font-size:13px;margin-top:var(--space-sm, 10px);color:var(--text-light, #94a3b8);background:#fffc;padding:var(--space-xs, 4px) var(--space-sm, 12px);border-radius:var(--radius-full, 20px)}.salons-list{background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);padding:var(--space-lg, 15px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.05));border:1px solid var(--border, #e2e8f0);animation:fadeIn .3s ease}.salons-list h3{color:var(--text-primary, #1e293b);margin:0 0 var(--space-md, 15px) 0;font-size:18px;font-weight:600;display:flex;align-items:center;gap:var(--space-xs, 8px)}.salons-list h3:before{content:"🏢";font-size:20px}.salon-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md, 12px);border-bottom:1px solid var(--border, #e2e8f0);transition:all .2s ease;-webkit-tap-highlight-color:transparent}.salon-card:last-child{border-bottom:none}.salon-card:active{background:var(--primary-soft, #e8f3e9);transform:translate(5px) scale(.98);border-radius:var(--radius-md, 8px);padding-left:var(--space-lg, 16px)}.salon-info{flex:1}.salon-info h4{margin:0 0 var(--space-xs, 5px) 0;color:var(--text-primary, #1e293b);font-size:17px;font-weight:600}.salon-address{margin:0 0 var(--space-xs, 3px) 0;color:var(--text-muted, #64748B);font-size:13px;display:flex;align-items:center;gap:var(--space-xs, 4px)}.salon-address:before{content:"📍";font-size:12px;opacity:.7}.salon-distance{margin:0;color:var(--accent, #CD5C5C);font-size:13px;font-weight:600;display:flex;align-items:center;gap:var(--space-xs, 4px)}.salon-distance:before{content:"📏";font-size:12px;opacity:.7}.select-button{padding:10px 20px;background:var(--primary, #2E8B57);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:90px;min-height:44px;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}.select-button:active{transform:scale(.95);background:var(--primary-dark, #1f5f3a)}.no-salons{text-align:center;padding:var(--space-xl, 40px) var(--space-lg, 20px);color:var(--text-muted, #64748B);background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);border:2px dashed var(--border, #e2e8f0);animation:fadeIn .3s ease}.no-salons:before{content:"🏢";font-size:48px;display:block;margin-bottom:var(--space-md, 15px);opacity:.5}.no-salons p{font-size:15px;margin:0}.error-message{text-align:center;padding:var(--space-xl, 40px);color:#ef4444;background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);border:2px solid #EF4444;animation:fadeIn .3s ease;margin:var(--space-lg, 20px) 0}.error-message:before{content:"⚠️";font-size:48px;display:block;margin-bottom:var(--space-md, 15px);opacity:.8}.loading{text-align:center;padding:var(--space-xl, 40px);color:var(--text-muted, #64748B);font-size:16px;display:flex;flex-direction:column;align-items:center;gap:var(--space-md, 15px)}.loading:after{content:"";width:30px;height:30px;border:3px solid var(--border, #e2e8f0);border-top-color:var(--primary, #2E8B57);border-radius:var(--radius-full, 50%);animation:spin .8s linear infinite}@media(max-width:768px){.nearby-container{padding:var(--space-md, 16px)}.nearby-header h2{font-size:20px}.back-button{width:40px;height:40px;font-size:22px}.map-placeholder{height:180px}.salon-card{padding:var(--space-sm, 10px)}.salon-info h4{font-size:16px}.select-button{padding:8px 16px;font-size:13px;min-width:80px;min-height:40px}}@media(max-width:480px){.nearby-header{flex-wrap:wrap}.nearby-header h2{order:1;width:100%;font-size:18px}.back-button{order:2}.radius-selector{order:3;width:100%}.map-placeholder{height:150px;font-size:14px}.map-placeholder:before{font-size:36px}.map-hint{font-size:11px}.salons-list h3{font-size:16px}.salon-card{flex-direction:column;align-items:flex-start;gap:var(--space-sm, 12px)}.salon-info h4{font-size:15px}.salon-address,.salon-distance{font-size:12px}.select-button{width:100%;min-height:44px}.no-salons:before,.error-message:before{font-size:36px}}@media(max-width:360px){.nearby-header h2{font-size:16px}.radius-selector select{font-size:14px;padding:10px 12px}.map-placeholder{height:120px}.salons-list{padding:var(--space-sm, 12px)}}@media(prefers-color-scheme:dark){.nearby-container{background:var(--bg-main-dark, #0a140a)}.nearby-header{border-bottom-color:var(--border-dark, #2d4a2d)}.nearby-header h2,.back-button{color:var(--primary-light, #4a9f6e)}.back-button:active{background:var(--primary-soft-dark, #1a3a1a)}.radius-selector select{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.radius-selector select:focus{border-color:var(--primary-light, #4a9f6e);box-shadow:0 0 0 3px var(--primary-soft-dark, #1a3a1a)}.map-placeholder{background:var(--bg-soft-dark, #152215);border-color:var(--border-dark, #2d4a2d);color:var(--text-muted-dark, #9ca3af)}.map-hint{background:var(--bg-card-dark, #1a2e1a);color:var(--text-muted-dark, #9ca3af)}.salons-list{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d)}.salons-list h3{color:var(--text-primary-dark, #f0f7f0)}.salon-card{border-bottom-color:var(--border-dark, #2d4a2d)}.salon-card:active{background:var(--primary-soft-dark, #1a3a1a)}.salon-info h4{color:var(--text-primary-dark, #f0f7f0)}.salon-address{color:var(--text-muted-dark, #9ca3af)}.salon-distance{color:var(--accent-light, #e67a7a)}.select-button{background:var(--primary, #4a9f6e)}.select-button:active{background:var(--primary-dark, #1f5f3a)}.no-salons,.error-message{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);color:var(--text-muted-dark, #9ca3af)}.error-message{border-color:#ef4444;color:#ef4444}.loading{color:var(--text-muted-dark, #9ca3af)}}@media(hover:none)and (pointer:coarse){.back-button:hover,.select-button:hover,.radius-selector select:hover{transform:none;background:inherit;border-color:var(--border, #e2e8f0)}.back-button:hover{background:none;color:var(--primary, #2E8B57)}.select-button:hover{background:var(--primary, #2E8B57);color:#fff}.salon-card:hover{background:none;transform:none}.salon-card:active{background:var(--primary-soft, #e8f3e9);transform:translate(5px) scale(.98)}}.favorites-container{max-width:600px;margin:0 auto;padding:20px;background:#f0f7f0;min-height:100vh}.favorites-header{display:flex;align-items:center;gap:15px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e2e8f0}.favorites-header h2{color:#2e8b57;margin:0;font-size:20px}.back-button{padding:8px 12px;background:none;border:none;color:#2e8b57;font-size:16px;cursor:pointer}.empty-state{text-align:center;padding:40px;color:#64748b}.empty-icon{font-size:48px;margin-bottom:10px;opacity:.5}.add-button{padding:10px 20px;background:#cd5c5c;color:#fff;border:none;border-radius:6px;margin-top:10px;cursor:pointer}.favorites-section{margin-bottom:30px}.favorites-section h3{margin-bottom:16px;font-size:18px;color:#333}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.favorites-container{max-width:480px;margin:0 auto;padding:20px 20px 40px;min-height:100vh;background:var(--bg-main)}.favorites-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;animation:fadeInDown .3s ease;position:relative}.back-button{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);width:40px;height:40px;border-radius:20px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.back-button:active{transform:scale(.95);background:var(--primary);color:#fff}.header-info{display:flex;align-items:baseline;gap:8px}.header-info h2{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.total-count{color:var(--text-muted);font-size:14px}.sync-now-button{background:var(--bg-soft);border:1px solid var(--border);color:var(--text-primary);width:40px;height:40px;border-radius:20px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.favorites-tabs{display:flex;gap:8px;margin-bottom:20px;padding:4px;background:var(--bg-soft);border-radius:30px;animation:fadeInUp .3s ease}.tab-button{flex:1;padding:10px 16px;border:none;border-radius:26px;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.tab-button.active{background:var(--bg-card);color:var(--primary);box-shadow:var(--shadow-sm)}.tab-button:active{transform:scale(.97)}.favorites-section{margin-bottom:32px;animation:fadeInUp .3s ease}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-header h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0}.local-badge{background:var(--accent-soft);color:var(--accent);padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500}.salons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.favorite-item-wrapper{animation:fadeIn .3s ease}.sync-banner{background:var(--cornflower);color:#fff}.sync-button{background:#fff3;border:none;color:#fff;width:24px;height:24px;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:absolute;right:16px}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-icon{font-size:64px;margin-bottom:20px;opacity:.5}.empty-state p{font-size:14px;max-width:300px;margin:0 auto 24px}.add-button{padding:12px 24px;background:var(--primary);color:#fff;border:none;border-radius:30px;font-weight:600;cursor:pointer;font-size:15px}.add-button:active{transform:scale(.97);background:var(--primary-hover)}.guest-info{margin:24px 0;padding:16px;background:var(--bg-soft);border-radius:16px;font-size:13px;color:var(--text-secondary)}.guest-note{margin:0}.login-link{background:none;border:none;color:var(--primary);font-weight:600;text-decoration:underline;cursor:pointer;padding:0 4px}.loading-spinner{text-align:center;padding:60px 20px;color:var(--text-muted)}.spinner{width:40px;height:40px;margin:0 auto 16px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.loading-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:20px;color:var(--text-muted)}.spinner-small{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.debug-info{margin-top:30px;padding:12px;background:var(--bg-soft);border-radius:8px;color:var(--text-muted);font-size:12px;text-align:center;font-family:monospace;border:1px solid var(--border)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.favorites-header h2{font-size:18px}.salons-grid{grid-template-columns:repeat(2,1fr);gap:12px}.tab-button{font-size:13px;padding:8px 12px}@media(max-width:360px){.salons-grid{grid-template-columns:1fr}.favorites-tabs{flex-direction:column}.tab-button{width:100%}}.network-banner{position:sticky;top:0;z-index:100;background:#ff9800;color:#fff;padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 2px 8px #0000001a;animation:slideDown .3s ease}.network-icon{font-size:20px}.network-text{font-weight:500;flex:1}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@media(prefers-color-scheme:dark){.network-banner{background:#b8860b}}}:root{--color-emerald: #2E8B57;--color-emerald-dark: #1F5F3A;--color-emerald-light: #4A9F6E;--color-emerald-soft: #E8F3E9;--color-red: #CD5C5C;--color-red-dark: #B04545;--color-red-light: #D97A7A;--color-red-soft: #FDECEC;--color-cornflower: #6495ED;--color-cornflower-dark: #4169E1;--color-cornflower-light: #83A9F4;--color-cornflower-soft: #E6EEFF;--color-white: #FFFFFF;--color-white-soft: #F5F7FA;--color-white-warm: #FAF7F5;--color-gray-100: #F7FAFC;--color-gray-200: #EDF2F7;--color-gray-300: #E2E8F0;--color-gray-400: #CBD5E0;--color-gray-500: #A0AEC0;--color-gray-600: #718096;--color-gray-700: #4A5568;--color-gray-800: #2D3748;--btn-xs: 32px;--btn-sm: 40px;--btn-md: 48px;--btn-lg: 56px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--shadow-sm: 0 2px 4px rgba(0,0,0,.05);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.15);--mobile: 768px;--tablet: 1024px}.search-container{min-height:100vh;background:var(--bg-main, #f0f7f0);padding-bottom:var(--space-lg, 20px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.search-header{background:var(--bg-card, white);padding:var(--space-md, 16px) var(--space-lg, 20px);display:flex;align-items:center;gap:var(--space-md, 16px);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0,0,0,.02));border-bottom:1px solid var(--border, #e2e8f0);position:sticky;top:0;z-index:10}.search-header h2{margin:0;color:var(--text-primary, #1e293b);font-size:22px;font-weight:600;flex:1}.back-button{width:44px;height:44px;background:none;border:none;font-size:24px;cursor:pointer;color:var(--primary, #2E8B57);padding:0;border-radius:var(--radius-full, 50%);transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.back-button:active{background:var(--primary-soft, #e8f3e9);transform:scale(.95)}.search-input-wrapper{position:relative;margin:var(--space-lg, 20px)}.search-input{width:100%;padding:16px 48px 16px 20px;font-size:16px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-lg, 12px);background:var(--bg-card, white);color:var(--text-primary, #1e293b);transition:all .2s ease;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.02));min-height:56px;-webkit-tap-highlight-color:transparent}.search-input:active{border-color:var(--primary, #2E8B57);transform:scale(.98)}.search-input:focus{outline:none;border-color:var(--primary, #2E8B57);box-shadow:0 0 0 3px var(--primary-soft, #e8f3e9);background:var(--bg-card, white)}.search-input::placeholder{color:var(--text-light, #94a3b8);opacity:1}.clear-button{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:36px;height:36px;background:var(--bg-soft, #f1f5f9);border:none;border-radius:var(--radius-full, 50%);display:flex;align-items:center;justify-content:center;color:var(--text-muted, #64748b);font-size:18px;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.clear-button:active{background:var(--border, #e2e8f0);color:var(--text-primary, #1e293b);transform:translateY(-50%) scale(.95)}.search-tabs{display:flex;gap:var(--space-sm, 10px);padding:0 var(--space-lg, 20px);margin-bottom:var(--space-lg, 20px);border-bottom:2px solid var(--border, #e2e8f0)}.tab{flex:1;padding:12px 20px;background:none;border:none;font-size:16px;font-weight:600;color:var(--text-muted, #64748B);cursor:pointer;position:relative;transition:all .2s ease;white-space:nowrap;-webkit-tap-highlight-color:transparent;min-height:48px}.tab:active{color:var(--primary, #2E8B57);background:var(--primary-soft, #e8f3e9);border-radius:var(--radius-md, 8px) var(--radius-md, 8px) 0 0}.tab.active{color:var(--primary, #2E8B57)}.tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:var(--primary, #2E8B57);border-radius:3px 3px 0 0}.search-results{padding:0 var(--space-lg, 20px);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.service-card{background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);padding:var(--space-lg, 16px);margin-bottom:var(--space-sm, 12px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.02));border:2px solid var(--border, #e2e8f0);cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.service-card:active{transform:translateY(-2px) scale(.98);box-shadow:var(--shadow-md, 0 8px 16px rgba(46, 139, 86, .15));border-color:var(--primary, #2E8B57)}.service-card h3{margin:0 0 var(--space-xs, 8px) 0;color:var(--text-primary, #1e293b);font-size:18px;font-weight:600}.service-category{color:var(--text-muted, #64748B);font-size:14px;margin-bottom:var(--space-xs, 8px);display:flex;align-items:center;gap:var(--space-xs, 6px)}.service-price{color:var(--primary, #2E8B57);font-weight:700;font-size:20px;margin:0}.salon-card{background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);padding:var(--space-lg, 16px);margin-bottom:var(--space-sm, 12px);border:2px solid var(--border, #e2e8f0);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.02));transition:all .2s ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.salon-card:active{transform:translateY(-2px) scale(.98);border-color:var(--primary, #2E8B57);box-shadow:var(--shadow-md, 0 8px 16px rgba(46, 139, 86, .15))}.salon-card h3{margin:0 0 var(--space-xs, 8px) 0;color:var(--text-primary, #1e293b);font-size:18px;font-weight:600}.salon-card p{margin:var(--space-xs, 4px) 0;color:var(--text-muted, #64748B);font-size:14px;display:flex;align-items:center;gap:var(--space-xs, 6px)}.salon-address{display:flex;align-items:center;gap:var(--space-xs, 4px);color:var(--text-muted, #64748B);font-size:14px}.salon-rating{display:flex;align-items:center;gap:var(--space-xs, 4px);color:var(--accent, #CD5C5C);font-weight:600;margin-top:var(--space-xs, 8px)}.master-card{background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);padding:var(--space-lg, 16px);margin-bottom:var(--space-sm, 12px);border:2px solid var(--border, #e2e8f0);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.02));transition:all .2s ease;cursor:pointer;display:flex;align-items:center;gap:var(--space-md, 15px);-webkit-tap-highlight-color:transparent}.master-card:active{transform:translateY(-2px) scale(.98);border-color:var(--primary, #2E8B57);box-shadow:var(--shadow-md, 0 8px 16px rgba(46, 139, 86, .15))}.master-avatar{width:60px;height:60px;background:var(--primary-soft, #e8f3e9);border-radius:var(--radius-full, 50%);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--primary, #2E8B57);border:2px solid var(--primary, #2E8B57);flex-shrink:0}.master-info{flex:1}.master-info h3{margin:0 0 var(--space-xs, 4px) 0;color:var(--text-primary, #1e293b);font-size:16px;font-weight:600}.master-specialization{color:var(--text-muted, #64748B);font-size:14px;margin-bottom:var(--space-xs, 4px)}.master-rating{color:var(--accent, #CD5C5C);font-weight:600;font-size:14px;display:flex;align-items:center;gap:var(--space-xs, 4px)}.empty-state{text-align:center;padding:var(--space-xl, 60px) var(--space-lg, 20px);color:var(--text-muted, #64748B);background:var(--bg-card, white);border-radius:var(--radius-lg, 12px);margin:var(--space-lg, 20px);border:2px dashed var(--border, #e2e8f0);animation:fadeIn .3s ease}.empty-icon{font-size:64px;margin-bottom:var(--space-lg, 20px);opacity:.5}.empty-state h3{color:var(--text-primary, #1e293b);margin-bottom:var(--space-xs, 8px);font-size:18px;font-weight:600}.empty-state p{font-size:15px;margin:var(--space-xs, 8px) 0 0;color:var(--text-muted, #64748B)}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:18px;color:var(--text-muted, #64748B);background:var(--bg-main, #f0f7f0);gap:var(--space-sm, 12px)}.loading:after{content:"";width:24px;height:24px;border:3px solid var(--border, #e2e8f0);border-top-color:var(--primary, #2E8B57);border-radius:var(--radius-full, 50%);animation:spin .8s linear infinite}@media(max-width:768px){.search-header{padding:var(--space-sm, 12px) var(--space-md, 16px)}.search-header h2{font-size:20px}.search-input-wrapper{margin:var(--space-md, 16px)}.search-input{padding:14px 44px 14px 16px;font-size:15px;min-height:48px}.clear-button{width:32px;height:32px;font-size:16px;right:12px}.search-tabs{padding:0 var(--space-md, 16px)}.tab{padding:10px 12px;font-size:15px;min-height:44px}.search-results{padding:0 var(--space-md, 16px)}.service-card,.salon-card,.master-card{padding:var(--space-md, 14px)}.service-card h3,.salon-card h3,.master-info h3{font-size:16px}.service-price{font-size:18px}.master-avatar{width:50px;height:50px;font-size:24px}}@media(max-width:480px){.search-header{flex-wrap:wrap}.search-header h2{order:1;width:100%;font-size:18px}.back-button{order:2}.search-tabs{gap:var(--space-xs, 5px)}.tab{padding:8px 10px;font-size:14px}.service-card,.salon-card,.master-card{padding:var(--space-sm, 12px)}.service-category,.salon-card p,.master-specialization{font-size:13px}.service-price{font-size:16px}.empty-icon{font-size:48px}.empty-state h3{font-size:16px}.empty-state p{font-size:14px}}@media(max-width:360px){.search-tabs{flex-direction:column;gap:var(--space-xs, 5px)}.tab{width:100%;text-align:center}.tab.active:after{display:none}.tab.active{background:var(--primary-soft, #e8f3e9);border-radius:var(--radius-md, 8px)}.master-card{flex-direction:column;text-align:center}.master-avatar{margin:0 auto}}@media(prefers-color-scheme:dark){.search-container{background:var(--bg-main-dark, #0a140a)}.search-header{background:var(--bg-card-dark, #1a2e1a);border-bottom-color:var(--border-dark, #2d4a2d)}.search-header h2{color:var(--text-primary-dark, #f0f7f0)}.back-button{color:var(--primary-light, #4a9f6e)}.back-button:active{background:var(--primary-soft-dark, #1a3a1a)}.search-input-wrapper{margin:var(--space-lg, 20px)}.search-input{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.search-input:focus{border-color:var(--primary-light, #4a9f6e);box-shadow:0 0 0 3px var(--primary-soft-dark, #1a3a1a)}.search-input::placeholder{color:var(--text-muted-dark, #6b7280)}.clear-button{background:var(--bg-soft-dark, #152215);color:var(--text-muted-dark, #9ca3af)}.clear-button:active{background:var(--border-dark, #2d4a2d);color:var(--text-primary-dark, #f0f7f0)}.search-tabs{border-bottom-color:var(--border-dark, #2d4a2d)}.tab{color:var(--text-muted-dark, #9ca3af)}.tab:active{color:var(--primary-light, #4a9f6e);background:var(--primary-soft-dark, #1a3a1a)}.tab.active{color:var(--primary-light, #4a9f6e)}.tab.active:after{background:var(--primary-light, #4a9f6e)}.service-card,.salon-card,.master-card,.empty-state{background:var(--bg-card-dark, #1a2e1a);border-color:var(--border-dark, #2d4a2d)}.service-card h3,.salon-card h3,.master-info h3,.empty-state h3{color:var(--text-primary-dark, #f0f7f0)}.service-category,.salon-card p,.master-specialization,.empty-state p{color:var(--text-muted-dark, #9ca3af)}.service-price{color:var(--primary-light, #4a9f6e)}.master-avatar{background:var(--primary-soft-dark, #1a3a1a);border-color:var(--primary-light, #4a9f6e);color:var(--primary-light, #4a9f6e)}.master-rating,.salon-rating{color:var(--accent-light, #e67a7a)}.empty-state{border-color:var(--border-dark, #2d4a2d)}.loading{background:var(--bg-main-dark, #0a140a);color:var(--text-muted-dark, #9ca3af)}}.search-tabs .tab{color:var(--text-primary, #1e293b);background:transparent}.search-tabs .tab.active{color:var(--primary, #2e8b57);background:transparent}.search-tabs .tab:active{color:var(--primary, #2e8b57);background:var(--primary-soft, #e8f3e9)}.search-tabs .tab{color:var(--text-muted-dark, #9ca3af);background:transparent}.search-tabs .tab.active{color:var(--primary-light, #4a9f6e);background:transparent}.search-tabs .tab:active{color:var(--primary-light, #4a9f6e);background:var(--primary-soft-dark, #1a3a1a)}:root{--primary: #2e8b57;--primary-hover: #1f6b3f;--primary-soft: #e8f3e9;--accent: #cd5c5c;--accent-hover: #b04545;--accent-soft: #fdecec;--cornflower: #6495ed;--cornflower-soft: #e6eeff;--bg-main: #f0f7f0;--bg-card: #ffffff;--bg-soft: #f8fafc;--text-primary: #1e293b;--text-secondary: #4a5568;--text-muted: #64748b;--border: #e2e8f0;--border-light: #edf2f7;--shadow-sm: 0 2px 4px rgba(0, 20, 10, .05);--shadow-md: 0 4px 12px rgba(46, 139, 86, .1)}@media(prefers-color-scheme:dark){:root{--primary: #4a9f6e;--primary-hover: #5fb07f;--primary-soft: #1a3a1a;--accent: #e67a7a;--accent-hover: #f08a8a;--accent-soft: #3d2a2a;--cornflower: #83a9f4;--cornflower-soft: #1e2a3d;--bg-main: #0a140a;--bg-card: #1a2a1a;--bg-soft: #152215;--text-primary: #f0f7f0;--text-secondary: #cbd5e0;--text-muted: #9ca3af;--border: #2d4a2d;--border-light: #1f3a1f}}.profile-container{max-width:480px;margin:0 auto;padding:16px 16px 40px;min-height:100vh;background:var(--bg-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.network-banner{background:#ff9800;color:#fff;padding:10px 14px;border-radius:12px;display:flex;align-items:center;gap:10px;font-size:14px;margin-bottom:12px}.sync-banner{background:var(--bg-card);border:2px solid var(--cornflower);border-radius:14px;padding:14px;margin-bottom:12px}.sync-banner-content{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sync-icon{font-size:24px}.sync-text{flex:1;min-width:0}.sync-text strong{display:block;color:var(--text-primary);font-size:14px}.sync-counts{margin-top:4px}.sync-count{font-size:12px;color:var(--text-muted)}.sync-actions{display:flex;gap:8px}.sync-now-btn{background:var(--cornflower);color:#fff;border:none;padding:8px 14px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.sync-now-btn:active{filter:brightness(.9)}.sync-now-btn:disabled{opacity:.6}.sync-clear-btn{background:var(--bg-soft);border:1px solid var(--border);color:var(--text-muted);width:32px;height:32px;border-radius:50%;cursor:pointer}.error-banner{background:var(--accent-soft);color:var(--accent);padding:10px 14px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;margin-bottom:12px}.error-banner button{background:var(--accent);color:#fff;border:none;padding:6px 12px;border-radius:12px;font-size:12px;cursor:pointer;white-space:nowrap}.profile-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.profile-header h1{flex:1;font-size:22px;font-weight:700;color:var(--text-primary);margin:0}.back-button{width:40px;height:40px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-actions{display:flex;align-items:center;gap:8px}.logout-button{background:var(--accent-soft);border:1px solid var(--accent);color:var(--accent);padding:8px 14px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.logout-button:active{background:var(--accent);color:#fff}.profile-info{background:var(--bg-card);border-radius:16px;padding:20px;margin-bottom:16px;border:1px solid var(--border-light)}.avatar{width:64px;height:64px;border-radius:50%;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;margin-bottom:14px}.user-details h2{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.user-details .phone{font-size:15px;color:var(--text-secondary);margin:0 0 4px}.user-details .email{font-size:14px;color:var(--text-muted);margin:0}.owner-request-badge{display:inline-block;background:var(--cornflower-soft);color:var(--cornflower);font-size:12px;padding:4px 10px;border-radius:10px;margin-top:8px}.edit-mode .form-group{margin-bottom:12px}.edit-mode label{display:block;font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:4px}.edit-mode input[type=text],.edit-mode input[type=email],.edit-mode input[type=tel]{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:14px;background:var(--bg-soft);color:var(--text-primary)}.edit-mode input:focus{outline:none;border-color:var(--primary)}.edit-mode .hint{display:block;font-size:11px;color:var(--text-muted);margin-top:4px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-primary)}.checkbox-label input{width:18px;height:18px}.profile-actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.edit-profile-btn,.sync-profile-btn{padding:10px 18px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;border:none;white-space:nowrap}.edit-profile-btn{background:var(--primary);color:#fff}.edit-profile-btn:active{background:var(--primary-hover)}.sync-profile-btn{background:var(--cornflower-soft);color:var(--cornflower)}.edit-actions{display:flex;gap:8px}.save-profile-btn{background:var(--primary);color:#fff;border:none;padding:10px 20px;border-radius:20px;font-weight:600;cursor:pointer}.cancel-edit-btn{background:var(--bg-soft);border:1px solid var(--border);color:var(--text-secondary);padding:10px 20px;border-radius:20px;cursor:pointer}.danger-zone{background:var(--accent-soft);border:1px solid var(--accent);border-radius:14px;padding:16px;margin-bottom:16px}.danger-zone-content{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.danger-zone-text strong{color:var(--accent);font-size:14px}.danger-zone-text p{color:var(--text-secondary);font-size:12px;margin:4px 0 0}.delete-profile-btn{background:var(--accent);color:#fff;border:none;padding:10px 16px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.delete-profile-btn:active{background:var(--accent-hover)}.appointments-stats{display:flex;gap:10px;margin-bottom:20px}.stat-card{flex:1;background:var(--bg-card);border:1px solid var(--border-light);border-radius:14px;padding:14px;text-align:center}.stat-value{display:block;font-size:24px;font-weight:700;color:var(--primary)}.stat-label{font-size:12px;color:var(--text-muted)}.profile-tabs{display:flex;gap:8px;margin-bottom:14px}.profile-tabs .tab{flex:1;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;text-align:center;transition:all .15s ease}.profile-tabs .tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.profile-tabs .tab:active{background:var(--primary);color:#fff}.appointments-list{display:flex;flex-direction:column;gap:10px}.appointment-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:14px;padding:14px}.appointment-card.past{opacity:.7}.appointment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.appointment-date{font-size:14px;font-weight:600;color:var(--text-primary)}.status{font-size:12px;font-weight:600;padding:3px 10px;border-radius:10px}.status-pending{background:#fff3cd;color:#856404}.status-confirmed{background:var(--primary-soft);color:var(--primary)}.status-completed{background:#e2e8f0;color:#4a5568}.status-cancelled{background:var(--accent-soft);color:var(--accent)}.appointment-details p{margin:2px 0;font-size:14px;color:var(--text-secondary)}.service-name{font-weight:600;color:var(--text-primary)!important}.price{font-weight:600;color:var(--primary)!important}.appointment-actions{margin-top:10px}.cancel-button{background:var(--accent-soft);border:1px solid var(--accent);color:var(--accent);padding:6px 14px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer}.cancel-button:active{background:var(--accent);color:#fff}.empty-state{text-align:center;padding:32px 16px;color:var(--text-muted)}.empty-state .book-button{background:var(--primary);color:#fff;border:none;padding:10px 24px;border-radius:20px;font-weight:600;font-size:14px;cursor:pointer;margin-top:12px}.loading-spinner{text-align:center;padding:60px;color:var(--text-muted)}@media(max-width:480px){.profile-container{padding:12px}.profile-header h1{font-size:18px}.appointments-stats{gap:6px}.stat-card{padding:10px 6px}.stat-value{font-size:20px}}:root{--primary: #2e8b57;--primary-soft: #e8f3e9;--accent: #cd5c5c;--accent-soft: #fdecec;--bg-main: #f0f7f0;--bg-card: #ffffff;--bg-soft: #f8fafc;--text-primary: #1e293b;--text-secondary: #4a5568;--text-muted: #64748b;--border: #e2e8f0;--shadow-sm: 0 2px 4px rgba(0, 20, 10, .05);--shadow-md: 0 4px 12px rgba(46, 139, 86, .1)}@media(prefers-color-scheme:dark){:root{--primary: #4a9f6e;--primary-soft: #1a3a1a;--accent: #e67a7a;--accent-soft: #3d2a2a;--bg-main: #0a140a;--bg-card: #1a2a1a;--bg-soft: #152215;--text-primary: #f0f7f0;--text-secondary: #cbd5e0;--text-muted: #9ca3af;--border: #2d4a2d}}.all-masters-container{max-width:480px;margin:0 auto;padding:16px 16px 40px;min-height:100vh;background:var(--bg-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.network-banner{position:sticky;top:0;z-index:100;background:#ff9800;color:#fff;padding:10px 14px;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;border-radius:12px;margin-bottom:12px}.network-icon{font-size:18px}.network-text{flex:1}.all-masters-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.back-button{width:40px;height:40px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-tap-highlight-color:transparent}.back-button:active{background:var(--primary);color:#fff}.header-info{flex:1;display:flex;align-items:baseline;gap:8px}.header-info h2{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.total-count{font-size:13px;color:var(--text-muted);background:var(--bg-soft);padding:2px 10px;border-radius:20px;white-space:nowrap}.filters-section{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;background:var(--bg-card);padding:14px;border-radius:14px;border:1px solid var(--border)}.search-wrapper{position:relative}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:16px}.filter-input{width:100%;padding:12px 40px 12px 42px;border:1px solid var(--border);border-radius:12px;font-size:14px;background:var(--bg-soft);color:var(--text-primary);-webkit-tap-highlight-color:transparent}.filter-input:focus{outline:none;border-color:var(--primary)}.filter-input:disabled{opacity:.5}.clear-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);font-size:16px;cursor:pointer}.filter-select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;font-size:14px;background:var(--bg-soft);color:var(--text-primary);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2364748b' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer;-webkit-tap-highlight-color:transparent}.filter-select:focus{outline:none;border-color:var(--primary)}.filter-select:disabled{opacity:.5}.clear-filters{width:100%;padding:10px;background:var(--accent-soft);border:1px solid var(--accent);border-radius:12px;color:var(--accent);font-size:14px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.clear-filters:active{background:var(--accent);color:#fff}.results-info{font-size:13px;color:var(--text-muted);margin-bottom:12px;padding:6px 12px;background:var(--bg-soft);border-radius:20px;display:inline-block}.masters-grid{display:flex;flex-wrap:wrap;gap:12px}.master-card-wrapper{flex:1 1 auto;min-width:160px;max-width:100%}@media(max-width:400px){.master-card-wrapper{min-width:140px}}.loading-spinner{text-align:center;padding:40px;color:var(--text-muted)}.spinner{width:36px;height:36px;margin:0 auto 12px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.loading-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--text-muted);font-size:14px}.spinner-small{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.end-message{text-align:center;color:var(--text-muted);padding:20px;font-size:14px}.empty-state{text-align:center;padding:40px 20px;color:var(--text-muted)}.empty-icon{font-size:56px;margin-bottom:16px;opacity:.5}.empty-state h3{color:var(--text-primary);margin:0 0 8px;font-size:18px}.empty-state p{margin:0 0 20px;font-size:14px}.clear-filters-btn{padding:10px 24px;background:var(--primary);color:#fff;border:none;border-radius:20px;font-weight:600;font-size:14px;cursor:pointer}.debug-info{margin-top:16px;padding:10px;background:var(--bg-soft);border-radius:8px;color:var(--text-muted);font-size:11px;text-align:center;font-family:monospace}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.salons-page{max-width:1200px;margin:0 auto;padding:20px}.salons-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #eaeaea}.salons-header h1{font-size:28px;color:#333;margin:0}.salons-header p{font-size:16px;color:#666;margin:0}.salons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.loading{display:flex;justify-content:center;align-items:center;min-height:400px;font-size:18px;color:#666}.no-salons{text-align:center;padding:60px;color:#666;font-size:16px}.nav-button{all:initial;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-family:inherit;background:none;border:none;font-size:12px;color:#64748b;cursor:pointer;padding:8px 12px;border-radius:16px;min-width:70px;font-weight:500;-webkit-tap-highlight-color:transparent;outline:none;box-shadow:none;text-decoration:none;transition:all .2s ease}.nav-button:focus,.nav-button:focus-visible,.nav-button:active,.nav-button:hover{outline:none!important;box-shadow:none!important;border:none!important;background:none!important}.nav-button,.nav-button:link,.nav-button:visited,.nav-button:focus,.nav-button:focus-visible,.nav-button:hover,.nav-button:active{color:#64748b}.nav-button.active,.nav-button.active:link,.nav-button.active:visited,.nav-button.active:focus,.nav-button.active:focus-visible,.nav-button.active:hover,.nav-button.active:active{color:#2e8b57!important;background:#2e8b561a!important}.nav-button:active{transform:scale(.95)!important;color:#64748b!important;background:#00000005!important}.nav-button.active:active{transform:scale(.95)!important;color:#2e8b57!important;background:#2e8b5626!important}.nav-icon{font-size:20px;line-height:1;display:block}.nav-label{font-size:11px;line-height:1;display:block}@media(max-width:480px){.nav-button{min-width:60px;padding:6px 8px}.nav-icon{font-size:18px}.nav-label{font-size:10px}}@media(max-width:360px){.nav-button{min-width:50px;padding:4px 6px}.nav-icon{font-size:16px}.nav-label{font-size:9px}}@media(hover:none)and (pointer:coarse){.nav-button:hover{color:#64748b;background:none;transform:none}.nav-button.active:hover{color:#2e8b57;background:#2e8b561a}}@media(hover:hover)and (pointer:fine){.nav-button:hover{color:#2e8b57;background:#2e8b560d}}*,*:before,*:after{box-sizing:border-box}html{overflow-x:hidden;width:100vw;scroll-behavior:smooth}body{width:100%;max-width:100vw;overflow-x:hidden;margin:0;padding:0}#_root_po3ud_1{width:100%;max-width:100vw;overflow-x:hidden}img,svg,iframe,table{max-width:100%;height:auto}:root{--primary: #2e8b57;--primary-hover: #1f6b3f;--primary-soft: #e8f3e9;--accent: #cd5c5c;--accent-hover: #b04545;--accent-soft: #fdecec;--cornflower: #6495ed;--cornflower-dark: #4169e1;--cornflower-light: #83a9f4;--cornflower-soft: #e6eeff;--bg-main: #f0f7f0;--bg-card: #ffffff;--bg-soft: #f8fafc;--text-primary: #1e293b;--text-secondary: #4a5568;--text-muted: #64748b;--text-light: #94a3b8;--border: #e2e8f0;--border-light: #edf2f7;--shadow-sm: 0 2px 4px rgba(0, 20, 10, .05);--shadow-md: 0 4px 12px rgba(46, 139, 86, .1);--shadow-lg: 0 8px 24px rgba(46, 139, 86, .15);--radius-sm: 12px;--radius-md: 16px;--radius-lg: 24px}@media(prefers-color-scheme:dark){:root{--primary: #4a9f6e;--primary-hover: #5fb07f;--primary-soft: #1a3a1a;--accent: #e67a7a;--accent-hover: #f08a8a;--accent-soft: #3d2a2a;--cornflower: #83a9f4;--cornflower-dark: #5a8ae0;--cornflower-light: #a0bcf8;--cornflower-soft: #1e2a3d;--bg-main: #0a140a;--bg-card: #1a2a1a;--bg-soft: #152215;--text-primary: #f0f7f0;--text-secondary: #cbd5e0;--text-muted: #9ca3af;--text-light: #6b7280;--border: #2d4a2d;--border-light: #1f3a1f;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5)}}._landingContainer_po3ud_213{width:100%;max-width:100vw;overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column;background:var(--bg-main);transition:background-color .3s ease}._landingMain_po3ud_235{flex:1;width:100%;max-width:100%;overflow-x:hidden}._heroContent_po3ud_251,._qrSection_po3ud_253,._stepsSection_po3ud_255,._audienceSection_po3ud_257,._benefitsSection_po3ud_259,._ctaSection_po3ud_261,._webpaySection_po3ud_263,._legalBar_po3ud_265{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;box-sizing:border-box}._landingHeader_po3ud_287{background:var(--bg-card);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--border-light);width:100%;max-width:100%;overflow-x:hidden}._headerContent_po3ud_311{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;justify-content:space-between;align-items:center}._logoArea_po3ud_329 h1{font-size:26px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.5px}._logoArea_po3ud_329 h1 span{color:var(--cornflower);font-weight:800}._navButtons_po3ud_355{display:flex;gap:12px}._heroSection_po3ud_367{padding:60px 0;border-bottom:1px solid var(--border-light);width:100%;max-width:100%;overflow-x:hidden}._heroContent_po3ud_251{text-align:center}._heroTitle_po3ud_391{font-size:44px;font-weight:800;color:var(--text-primary);margin:0 0 16px;line-height:1.2}._heroTitle_po3ud_391 span{color:var(--primary);display:block;font-size:32px;margin-top:8px;font-weight:700}._heroSubtitle_po3ud_423{font-size:18px;color:var(--text-secondary);margin:0 auto 32px;max-width:560px;line-height:1.5}._heroButton_po3ud_439{font-size:17px;padding:14px 32px;background:var(--accent);border:none;border-radius:50px;color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-md);-webkit-tap-highlight-color:transparent}._heroButton_po3ud_439:active{transform:scale(.97);background:var(--accent-hover)}._qrSection_po3ud_253{padding:40px 24px}._qrCard_po3ud_487{background:var(--bg-card);border-radius:var(--radius-lg);padding:36px 28px;text-align:center;box-shadow:var(--shadow-md);border:1px solid var(--border-light);position:relative;max-width:480px;margin:0 auto;transition:all .2s ease}._qrClickable_po3ud_513{cursor:pointer;-webkit-tap-highlight-color:transparent}._qrClickable_po3ud_513:active{transform:scale(.98);border-color:var(--primary)}._qrBadge_po3ud_533{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--cornflower);color:#fff;padding:4px 16px;border-radius:50px;font-size:13px;font-weight:600;white-space:nowrap}._qrCard_po3ud_487 h2{color:var(--text-primary);margin:20px 0 8px;font-size:22px}._qrCard_po3ud_487 p{color:var(--text-secondary);margin:0 0 20px;font-size:15px}._qrPlaceholder_po3ud_585{background:var(--bg-soft);border-radius:var(--radius-md);padding:28px;border:2px dashed var(--border);display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-muted);font-size:15px}._qrIcon_po3ud_611{font-size:56px}._stepsSection_po3ud_255{padding:48px 24px;background:var(--bg-card);border-radius:var(--radius-lg);margin-bottom:32px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}._stepsGrid_po3ud_639{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;min-width:0;overflow:hidden}._stepCard_po3ud_655{text-align:center;padding:28px 20px;background:var(--bg-soft);border-radius:var(--radius-md);border:1px solid var(--border-light);position:relative;min-width:0;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center}._stepNumber_po3ud_685{position:absolute;top:-14px;left:20px;width:40px;height:40px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;box-shadow:0 3px 10px #2e8b5640}._stepIcon_po3ud_719{font-size:42px;display:block;margin:12px 0}._stepCard_po3ud_655 h3{color:var(--text-primary);margin:0 0 6px;font-size:18px}._stepCard_po3ud_655 p{color:var(--text-muted);margin:0;font-size:14px}._audienceSection_po3ud_257{padding:48px 24px}._audienceGrid_po3ud_765{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;min-width:0;overflow:hidden}._audienceCard_po3ud_781{padding:24px;background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);min-width:0;display:flex;flex-direction:column;min-height:260px}._audienceHeader_po3ud_805{display:flex;align-items:center;gap:14px;margin-bottom:20px}._audienceIcon_po3ud_819{font-size:36px;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--cornflower-soft);flex-shrink:0}._audienceHeader_po3ud_805 h3{font-size:22px;margin:0;color:var(--text-primary)}._audienceList_po3ud_855{list-style:none;padding:0;margin:auto 0 0}._audienceList_po3ud_855 li{display:flex;align-items:center;gap:8px;padding:7px 0;color:var(--text-secondary);font-size:15px}._checkIcon_po3ud_885{color:var(--primary);font-weight:700;font-size:16px;flex-shrink:0}._benefitsSection_po3ud_259{padding:48px 24px;background:var(--bg-card);border-radius:var(--radius-lg);margin-bottom:32px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}._benefitsGrid_po3ud_919{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;min-width:0;overflow:hidden}._benefitItem_po3ud_935{text-align:center;padding:20px 12px;background:var(--bg-soft);border-radius:var(--radius-sm);border:1px solid var(--border-light);min-width:0;min-height:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}._benefitIcon_po3ud_965{font-size:28px}._benefitItem_po3ud_935 span{color:var(--text-primary);font-weight:500;font-size:14px;line-height:1.3}._ctaSection_po3ud_261{padding:48px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;min-width:0;overflow:hidden}._ctaCard_po3ud_1007{background:var(--bg-card);border-radius:var(--radius-lg);padding:32px 24px;box-shadow:var(--shadow-sm);border:1px solid var(--border-light);min-width:0}._ctaContent_po3ud_1025{text-align:center}._ctaContent_po3ud_1025 h3{font-size:24px;color:var(--text-primary);margin:0 0 12px}._ctaContent_po3ud_1025 p{color:var(--text-secondary);margin:0 0 24px;font-size:15px;line-height:1.5}._legalBar_po3ud_265{padding:20px 24px;background:var(--bg-card);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);margin:32px auto}._legalLinks_po3ud_1077{max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}._legalLink_po3ud_1077{background:none;border:none;color:var(--text-muted);font-size:13px;cursor:pointer;padding:4px 8px;text-decoration:underline;text-underline-offset:2px;-webkit-tap-highlight-color:transparent;white-space:nowrap}._legalLink_po3ud_1077:active{color:var(--primary)}._webpaySection_po3ud_263{padding:48px 24px;background:var(--bg-card);border-radius:var(--radius-lg);margin:0 auto 32px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}._webpayContainer_po3ud_1149{display:grid;grid-template-columns:1fr 1fr;gap:40px;min-width:0;overflow:hidden}._companyRequisites_po3ud_1165 h3,._paymentInfo_po3ud_1167 h3{color:var(--text-primary);font-size:19px;margin:0 0 18px;padding-bottom:10px;border-bottom:2px solid var(--border-light)}._requisitesTable_po3ud_1183{width:100%;border-collapse:collapse}._requisitesTable_po3ud_1183 td{padding:9px 0;vertical-align:top;line-height:1.5;font-size:15px}._requisitesTable_po3ud_1183 td:first-child{width:130px;color:var(--text-muted);font-size:14px;font-weight:500;padding-right:14px;white-space:nowrap}._paymentLogos_po3ud_1243{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0;align-items:center}._priceNote_po3ud_1259{color:var(--text-muted);font-size:13px;margin:10px 0 18px;padding:8px 12px;background:var(--bg-soft);border-radius:8px;border-left:3px solid var(--cornflower);line-height:1.4}._sampleCheckButton_po3ud_1281{display:inline-flex;align-items:center;gap:6px;background:var(--bg-soft);border:1px solid var(--border);color:var(--text-secondary);padding:10px 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}._sampleCheckButton_po3ud_1281:active{background:var(--cornflower-soft);border-color:var(--cornflower);color:var(--cornflower-dark)}._landingFooter_po3ud_1327{background:var(--bg-card);border-top:1px solid var(--border-light);width:100%;max-width:100%;overflow-x:hidden;margin-top:auto}._footerContent_po3ud_1345{max-width:1200px;margin:0 auto;padding:36px 24px 24px;display:grid;grid-template-columns:1fr 1fr;gap:40px}._footerColumn_po3ud_1363{min-width:0}._footerColumnTitle_po3ud_1371{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--border-light)}._requisitesTable_po3ud_1183{width:100%;border-collapse:collapse;margin-bottom:16px}._requisitesTable_po3ud_1183 tr{border-bottom:1px solid var(--border-light)}._requisitesTable_po3ud_1183 td{padding:6px 0;vertical-align:top;font-size:14px;line-height:1.5;color:var(--text-secondary)}._requisitesTable_po3ud_1183 td:first-child{width:100px;color:var(--text-muted);font-size:13px;font-weight:500;padding-right:10px;white-space:nowrap}._requisitesTable_po3ud_1183 td:last-child{color:var(--text-primary);font-weight:500}._footerSocialLinks_po3ud_1457{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px}._footerSocialLinks_po3ud_1457 a{font-size:13px;color:var(--text-secondary);text-decoration:none;white-space:nowrap}._footerSocialLinks_po3ud_1457 a:active{color:var(--primary)}._footerPaymentText_po3ud_1495{margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--text-secondary)}._footerPriceNote_po3ud_1539{font-size:12px;color:var(--text-muted);margin:8px 0 14px;padding:6px 10px;background:var(--bg-soft);border-radius:6px;border-left:3px solid var(--cornflower);line-height:1.4}._footerCheckButton_po3ud_1561{display:inline-flex;align-items:center;gap:6px;background:var(--bg-soft);border:1px solid var(--border);color:var(--text-secondary);padding:8px 14px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}._footerCheckButton_po3ud_1561:active{background:var(--cornflower-soft);border-color:var(--cornflower);color:var(--cornflower-dark)}._footerBottom_po3ud_1605{border-top:1px solid var(--border-light);padding:12px 24px;text-align:center;font-size:12px;color:var(--text-muted)}@media(max-width:768px){._footerContent_po3ud_1345{grid-template-columns:1fr;gap:24px;padding:28px 16px 20px}._requisitesTable_po3ud_1183 td:first-child{width:85px;font-size:12px}._requisitesTable_po3ud_1183 td:last-child{font-size:13px}._footerSocialLinks_po3ud_1457{justify-content:center}._footerPaymentLogos_po3ud_1509{overflow-x:auto;flex-wrap:nowrap;gap:14px;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}._footerPaymentLogos_po3ud_1509::-webkit-scrollbar{display:none}._footerPaymentLogos_po3ud_1509 img{flex-shrink:0}}._requisitesList_po3ud_1699{display:flex;flex-direction:column;gap:8px}._requisitesRow_po3ud_1711{font-size:14px;line-height:1.5;color:var(--text-secondary);text-align:left}._requisitesRow_po3ud_1711 span{color:var(--text-muted);font-weight:400;margin-right:6px}._requisitesRow_po3ud_1711 strong{color:var(--text-primary);font-weight:500}._footerPaymentLogos_po3ud_1509{display:flex;flex-wrap:wrap;gap:14px;margin:14px 0;align-items:center}._footerPaymentLogos_po3ud_1509 img{height:28px;width:auto;object-fit:contain;flex-shrink:0}._footerPaymentLogos_po3ud_1509 img{filter:none}@media(prefers-color-scheme:dark){._footerPaymentLogos_po3ud_1509 img{filter:brightness(0) invert(1)}}._modalOverlay_po3ud_1805{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}._modalContent_po3ud_1833{background:var(--bg-card);border-radius:var(--radius-lg);max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}._modalHeader_po3ud_1857{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-light)}._modalHeader_po3ud_1857 h3{margin:0;color:var(--text-primary);font-size:18px}._modalClose_po3ud_1885{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-muted);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;-webkit-tap-highlight-color:transparent}._modalClose_po3ud_1885:active{background:var(--accent-soft);color:var(--accent)}._modalBody_po3ud_1925{flex:1;overflow:auto;padding:20px 24px}._legalIframe_po3ud_1937{width:100%;height:500px;border:none;background:var(--bg-card)}._modalFooter_po3ud_1951{padding:16px 24px;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end}.action-button{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:50px;font-weight:600;font-size:15px;cursor:pointer;transition:all .2s ease;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap}.action-button.primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-md)}.action-button.primary:active{background:var(--accent-hover);transform:scale(.97)}.nav-button{display:inline-flex;align-items:center;gap:4px;padding:8px 16px;background:var(--cornflower-soft);border:1px solid var(--cornflower-light);border-radius:50px;color:var(--cornflower-dark);font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;white-space:nowrap}.nav-button:active{background:var(--cornflower);color:#fff;transform:scale(.97)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h2{color:var(--text-primary);font-size:24px;margin:0;font-weight:700}.view-all-button{background:none;border:1px solid var(--border);color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;padding:6px 14px;border-radius:50px;-webkit-tap-highlight-color:transparent;white-space:nowrap}.view-all-button:active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.text-muted{color:var(--text-muted)}@keyframes _fadeInUp_po3ud_1{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}._heroContent_po3ud_251,._qrSection_po3ud_253,._stepsSection_po3ud_255,._audienceSection_po3ud_257,._benefitsSection_po3ud_259,._ctaSection_po3ud_261,._webpaySection_po3ud_263{animation:_fadeInUp_po3ud_1 .5s ease both}._qrSection_po3ud_253{animation-delay:.1s}._stepsSection_po3ud_255{animation-delay:.15s}._audienceSection_po3ud_257{animation-delay:.2s}._benefitsSection_po3ud_259{animation-delay:.25s}._ctaSection_po3ud_261{animation-delay:.3s}._webpaySection_po3ud_263{animation-delay:.35s}@media(max-width:1024px){._webpayContainer_po3ud_1149{grid-template-columns:1fr;gap:28px}._footerContent_po3ud_1345{grid-template-columns:1fr;text-align:center;gap:20px}._footerContacts_po3ud_2247{align-items:center}}@media(max-width:768px){._heroTitle_po3ud_391{font-size:32px}._heroTitle_po3ud_391 span{font-size:24px}._heroSubtitle_po3ud_423{font-size:16px}._heroContent_po3ud_251,._qrSection_po3ud_253,._stepsSection_po3ud_255,._audienceSection_po3ud_257,._benefitsSection_po3ud_259,._ctaSection_po3ud_261,._webpaySection_po3ud_263{padding-left:16px;padding-right:16px}._stepsGrid_po3ud_639,._audienceGrid_po3ud_765{grid-template-columns:1fr;gap:16px}._benefitsGrid_po3ud_919{grid-template-columns:1fr 1fr;gap:12px}._ctaSection_po3ud_261{grid-template-columns:1fr;gap:16px}._requisitesTable_po3ud_1183{table-layout:fixed}._requisitesTable_po3ud_1183 td:first-child{width:95px;font-size:13px;padding-right:8px}._requisitesTable_po3ud_1183 td:last-child{font-size:14px;word-break:break-word}._paymentLogos_po3ud_1243{gap:14px;justify-content:flex-start}._sampleCheckButton_po3ud_1281{width:100%;justify-content:center}._qrCard_po3ud_487 h2,.section-header h2{font-size:20px}}@media(max-width:480px){._heroTitle_po3ud_391{font-size:28px}._heroTitle_po3ud_391 span{font-size:20px}._heroButton_po3ud_439{width:100%;justify-content:center;font-size:16px;padding:14px 20px}._benefitsGrid_po3ud_919{grid-template-columns:1fr}._headerContent_po3ud_311{flex-direction:column;gap:12px;padding:12px 16px}._navButtons_po3ud_355{width:100%}.nav-button{width:100%;justify-content:center}._legalLinks_po3ud_1077{flex-direction:column;align-items:center;gap:8px}._qrCard_po3ud_487{padding:24px 16px}._qrPlaceholder_po3ud_585{padding:20px}._paymentLogos_po3ud_1243{overflow-x:auto;flex-wrap:nowrap;gap:16px;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}._paymentLogos_po3ud_1243::-webkit-scrollbar{display:none}._requisitesTable_po3ud_1183 td:first-child{width:80px;font-size:12px}._requisitesTable_po3ud_1183 td:last-child{font-size:13px}}@media(max-width:360px){._heroTitle_po3ud_391{font-size:24px}._heroTitle_po3ud_391 span{font-size:18px}._heroSubtitle_po3ud_423{font-size:14px}._qrCard_po3ud_487{padding:20px 12px}._qrCard_po3ud_487 h2{font-size:18px}button{-webkit-tap-highlight-color:transparent;outline:none}button:focus,button:focus-visible{outline:none;box-shadow:none}}.queue-page-container{min-height:100vh;background:var(--bg-main, #f0f7f0);padding:var(--space-md, 16px);padding-bottom:80px}.queue-header{display:flex;align-items:center;gap:var(--space-md, 15px);margin-bottom:var(--space-lg, 20px)}.queue-header .back-button{background:var(--color-white, #FFFFFF);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 12px);padding:10px 20px;font-size:16px;font-weight:500;color:var(--color-emerald, #2E8B57);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05))}.salon-info{background:var(--bg-card, #FFFFFF);border-radius:var(--radius-lg, 16px);padding:var(--space-md, 16px);margin-bottom:var(--space-lg, 20px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05));border:1px solid var(--border-light, #edf2f7)}.salon-info h2{margin:0 0 var(--space-xs, 5px) 0;font-size:18px;color:var(--text-primary, #1e293b)}.salon-info p{margin:0;color:var(--text-secondary, #4a5568);font-size:14px}.form-group{background:var(--bg-card, #FFFFFF);border-radius:var(--radius-lg, 16px);padding:var(--space-md, 16px);margin-bottom:var(--space-md, 16px);border:1px solid var(--border-light, #edf2f7);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05))}.form-group label{display:block;font-weight:600;margin-bottom:var(--space-sm, 8px);color:var(--text-primary, #1e293b)}.form-group input{width:100%;padding:12px;border:2px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 12px);font-size:16px;background:var(--bg-card, #FFFFFF);color:var(--text-primary, #1e293b);transition:border-color .2s ease}.form-group input:focus{outline:none;border-color:var(--color-emerald, #2E8B57);box-shadow:0 0 0 3px var(--color-emerald-soft, #E8F3E9)}.form-group small{display:block;margin-top:var(--space-xs, 5px);color:var(--text-muted, #64748b);font-size:12px}.services-list{background:var(--bg-card, #FFFFFF);border-radius:var(--radius-lg, 16px);padding:var(--space-md, 16px);margin-bottom:var(--space-lg, 20px);border:1px solid var(--border-light, #edf2f7);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05))}.services-list h3{margin:0 0 var(--space-md, 12px) 0;font-size:16px;color:var(--text-primary, #1e293b)}.service-card{padding:12px;border:2px solid var(--border-light, #edf2f7);border-radius:var(--radius-md, 12px);margin-bottom:var(--space-sm, 8px);cursor:pointer;transition:all .2s ease;background:var(--bg-card, #FFFFFF)}.service-card:hover{border-color:var(--color-cornflower, #6495ED);background:var(--color-cornflower-soft, #E6EEFF)}.service-card.selected{border-color:var(--color-emerald, #2E8B57);background:var(--color-emerald-soft, #E8F3E9)}.service-info{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-sm, 8px)}.service-name{font-weight:600;flex:2;color:var(--text-primary, #1e293b)}.service-price{color:var(--color-emerald, #2E8B57);font-weight:600}.service-duration{color:var(--text-muted, #64748b);font-size:12px}.join-button{width:100%;padding:16px;background:var(--gradient-primary, linear-gradient(135deg, var(--color-emerald, #2E8B57), var(--color-cornflower, #6495ED)));color:var(--color-white, #FFFFFF);border:none;border-radius:var(--radius-lg, 16px);font-size:18px;font-weight:600;cursor:pointer;margin-top:var(--space-lg, 20px);transition:all .2s ease;box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .2))}.join-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg, 0 8px 24px rgba(46, 139, 86, .25))}.join-button:active{transform:translateY(0);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05))}.join-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.queue-status-container{min-height:100vh;background:var(--gradient-primary, linear-gradient(135deg, var(--color-emerald, #2E8B57), var(--color-cornflower, #6495ED)));padding:var(--space-md, 20px)}.queue-card{background:var(--bg-card, #FFFFFF);border-radius:var(--radius-xl, 24px);padding:var(--space-xl, 30px);text-align:center;margin-top:50px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15));border:1px solid var(--border-light, #edf2f7)}.queue-number{font-size:48px;font-weight:700;color:var(--color-emerald, #2E8B57);margin-bottom:var(--space-sm, 10px)}.queue-actions{display:flex;gap:var(--space-md, 12px);margin:var(--space-lg, 20px) 0}.queue-actions button{flex:1;padding:12px;border:none;border-radius:var(--radius-md, 12px);background:var(--color-emerald-soft, #E8F3E9);color:var(--color-emerald, #2E8B57);font-weight:600;cursor:pointer;transition:all .2s ease}.queue-actions button:hover{background:var(--color-emerald, #2E8B57);color:var(--color-white, #FFFFFF)}.register-suggestion{margin-top:var(--space-lg, 20px);padding:var(--space-md, 16px);background:var(--color-cornflower-soft, #E6EEFF);border-radius:var(--radius-md, 12px);border:1px solid var(--color-cornflower, #6495ED);color:var(--text-primary, #1e293b)}.register-suggestion button{margin-top:var(--space-sm, 10px);padding:10px 20px;background:var(--color-cornflower, #6495ED);color:var(--color-white, #FFFFFF);border:none;border-radius:var(--radius-sm, 8px);font-weight:600;cursor:pointer;transition:all .2s ease}.register-suggestion button:hover{background:var(--color-cornflower-dark, #4169E1);transform:translateY(-1px)}@media(prefers-color-scheme:dark){.queue-page-container{background:var(--bg-main, #0a140a)}.salon-info,.form-group,.services-list,.queue-card{background:var(--bg-card, #1a2e1a);border-color:var(--border, #2d4a2d)}.salon-info h2,.form-group label,.services-list h3,.service-name,.queue-number{color:var(--text-primary, #f0f7f0)}.salon-info p,.service-duration{color:var(--text-secondary, #cbd5e0)}.form-group input{background:var(--bg-card, #1a2e1a);border-color:var(--border, #2d4a2d);color:var(--text-primary, #f0f7f0)}.form-group input:focus{border-color:var(--color-emerald-light, #4A9F6E);box-shadow:0 0 0 3px var(--color-emerald-soft, #1a3a1a)}.form-group small{color:var(--text-muted, #9ca3af)}.service-card{background:var(--bg-card, #1a2e1a);border-color:var(--border, #2d4a2d)}.service-card:hover{background:var(--color-cornflower-soft, #1e2a3d);border-color:var(--color-cornflower-light, #83A9F4)}.service-card.selected{background:var(--color-emerald-soft, #1a3a1a);border-color:var(--color-emerald-light, #4A9F6E)}.service-price{color:var(--color-emerald-light, #4A9F6E)}.queue-actions button{background:var(--color-emerald-soft, #1a3a1a);color:var(--color-emerald-light, #4A9F6E)}.queue-actions button:hover{background:var(--color-emerald-light, #4A9F6E);color:var(--color-gray-800, #2D3748)}.register-suggestion{background:var(--color-cornflower-soft, #1e2a3d);border-color:var(--color-cornflower-light, #83A9F4)}.register-suggestion button{background:var(--color-cornflower-light, #83A9F4)}.register-suggestion button:hover{background:var(--color-cornflower, #6495ED)}}@media(max-width:480px){.queue-page-container{padding:var(--space-sm, 12px);padding-bottom:70px}.queue-header{gap:var(--space-sm, 10px)}.salon-info h2{font-size:16px}.service-name{font-size:14px}.join-button{padding:14px;font-size:16px}.queue-number{font-size:36px}}.queue-status-container{min-height:100vh;background:var(--bg-main, #f0f7f0);padding:var(--space-md, 20px)}.back-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--bg-card, #FFFFFF);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 12px);padding:10px 20px;font-size:16px;font-weight:500;color:var(--color-emerald, #2E8B57);cursor:pointer;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05));margin-bottom:var(--space-lg, 20px);transition:all .2s ease;white-space:nowrap;min-width:100px}.back-button:hover{background:var(--color-emerald, #2E8B57);color:var(--color-white, #FFFFFF);border-color:var(--color-emerald, #2E8B57);box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .2));transform:translate(-2px)}.status-card{background:var(--bg-card, #FFFFFF);border-radius:var(--radius-xl, 24px);padding:var(--space-lg, 24px);box-shadow:var(--shadow-md, 0 4px 20px rgba(0, 0, 0, .1));border:1px solid var(--border-light, #edf2f7)}.status-card.waiting{border-top:4px solid var(--color-cornflower, #6495ED)}.status-card.invited{border-top:4px solid var(--color-emerald, #2E8B57);animation:pulse 1.5s infinite}.status-card.serving{border-top:4px solid var(--color-cornflower-light, #83A9F4)}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--color-emerald-soft, #E8F3E9)}70%{box-shadow:0 0 0 12px #2e8b5600}to{box-shadow:0 0 #2e8b5600}}@media(prefers-color-scheme:dark){@keyframes pulse{0%{box-shadow:0 0 0 0 var(--color-emerald-soft, #1a3a1a)}70%{box-shadow:0 0 0 12px #4a9f6e00}to{box-shadow:0 0 #4a9f6e00}}}.status-header{display:flex;align-items:center;gap:var(--space-md, 12px);margin-bottom:var(--space-lg, 24px)}.status-icon{font-size:32px}.status-header h2{margin:0;font-size:24px;color:var(--text-primary, #1e293b)}.status-info{margin-bottom:var(--space-lg, 24px)}.info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm, 12px) 0;border-bottom:1px solid var(--border-light, #edf2f7)}.info-row:last-child{border-bottom:none}.info-row span:first-child{color:var(--text-secondary, #4a5568);font-weight:500}.info-row strong{color:var(--text-primary, #1e293b);font-weight:700}.invite-message{background:var(--color-emerald-soft, #E8F3E9);border-radius:var(--radius-md, 12px);padding:var(--space-md, 16px);text-align:center;margin-bottom:var(--space-lg, 20px);border:1px solid var(--color-emerald, #2E8B57)}.invite-message p{margin:var(--space-xs, 5px) 0;color:var(--color-emerald-dark, #1F5F3A);font-weight:500}.invite-message p:first-child{font-size:18px;font-weight:600}.refresh-button{width:100%;padding:14px;background:var(--gradient-primary, linear-gradient(135deg, var(--color-emerald, #2E8B57), var(--color-cornflower, #6495ED)));color:var(--color-white, #FFFFFF);border:none;border-radius:var(--radius-md, 12px);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05))}.refresh-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .2))}.refresh-button:active{transform:translateY(0);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05))}.refresh-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading,.error-container{text-align:center;padding:var(--space-xl, 50px);color:var(--text-primary, #1e293b)}.loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-md, 16px)}.loading:after{content:"";width:40px;height:40px;border:3px solid var(--border, #e2e8f0);border-top-color:var(--color-emerald, #2E8B57);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-container{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg, 20px)}.error-container p{color:var(--color-red, #CD5C5C);font-size:18px;margin:0}.error-container button{padding:10px 24px;background:var(--color-emerald, #2E8B57);color:var(--color-white, #FFFFFF);border:none;border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s ease}.error-container button:hover{background:var(--color-emerald-dark, #1F5F3A);transform:translateY(-2px)}@media(prefers-color-scheme:dark){.queue-status-container{background:var(--bg-main, #0a140a)}.back-button{background:var(--bg-card, #1a2e1a);border-color:var(--border, #2d4a2d);color:var(--color-emerald-light, #4A9F6E)}.back-button:hover{background:var(--color-emerald-light, #4A9F6E);color:var(--color-gray-800, #2D3748)}.status-card{background:var(--bg-card, #1a2e1a);border-color:var(--border, #2d4a2d)}.status-card.waiting{border-top-color:var(--color-cornflower-light, #83A9F4)}.status-card.invited{border-top-color:var(--color-emerald-light, #4A9F6E)}.status-card.serving{border-top-color:var(--color-cornflower, #6495ED)}.status-header h2{color:var(--text-primary, #f0f7f0)}.info-row{border-bottom-color:var(--border, #2d4a2d)}.info-row span:first-child{color:var(--text-secondary, #cbd5e0)}.info-row strong{color:var(--text-primary, #f0f7f0)}.invite-message{background:var(--color-emerald-soft, #1a3a1a);border-color:var(--color-emerald-light, #4A9F6E)}.invite-message p{color:var(--color-emerald-light, #4A9F6E)}.loading,.error-container{color:var(--text-primary, #f0f7f0)}.loading:after{border-color:var(--border, #2d4a2d);border-top-color:var(--color-emerald-light, #4A9F6E)}.error-container p{color:var(--color-red-light, #D97A7A)}.error-container button{background:var(--color-emerald-light, #4A9F6E);color:var(--color-gray-800, #2D3748)}.error-container button:hover{background:var(--color-emerald, #2E8B57)}}@media(max-width:768px){.back-button{padding:8px 18px;font-size:15px;min-width:95px}.status-header h2{font-size:20px}.status-icon{font-size:28px}}@media(max-width:480px){.queue-status-container{padding:var(--space-sm, 12px)}.back-button{padding:8px 16px;font-size:14px;min-width:90px}.status-card{padding:var(--space-md, 16px)}.status-header h2{font-size:18px}.status-icon{font-size:24px}.info-row{flex-direction:column;align-items:flex-start;gap:var(--space-xs, 4px)}.invite-message p:first-child{font-size:16px}.refresh-button{padding:12px;font-size:15px}}@media(hover:none)and (pointer:coarse){.back-button:hover{background:var(--bg-card, #FFFFFF);color:var(--color-emerald, #2E8B57);transform:none}.back-button:active{background:var(--color-emerald, #2E8B57);color:var(--color-white, #FFFFFF)}.refresh-button:hover{transform:none}.refresh-button:active{transform:scale(.98)}.error-container button:hover{transform:none}@media(prefers-color-scheme:dark){.back-button:hover{background:var(--bg-card, #1a2e1a);color:var(--color-emerald-light, #4A9F6E)}.back-button:active{background:var(--color-emerald-light, #4A9F6E);color:var(--color-gray-800, #2D3748)}}}.queue-manager{padding:var(--space-md, 20px);min-height:100vh;background:var(--bg-main, #f0f7f0)}.queue-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md, 15px);margin-bottom:var(--space-lg, 20px);background:var(--bg-card, #ffffff);padding:var(--space-md, 16px);border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05));border:1px solid var(--border-light, #edf2f7)}.back-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--bg-soft, #f8fafc);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 12px);padding:10px 20px;font-size:16px;font-weight:500;color:var(--color-emerald, #2e8b57);cursor:pointer;box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05));transition:all .2s ease;white-space:nowrap;min-width:100px}.back-button:hover{background:var(--color-emerald, #2e8b57);color:var(--color-white, #ffffff);border-color:var(--color-emerald, #2e8b57);transform:translate(-2px);box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .2))}.back-button:active{transform:translate(-1px) scale(.97)}.queue-header h2{margin:0;font-size:20px;color:var(--text-primary, #1e293b);font-weight:600;flex:1}.invite-button{padding:12px 24px;background:var(--color-emerald, #2e8b57);color:var(--color-white, #ffffff);border:none;border-radius:var(--radius-md, 12px);font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05));white-space:nowrap}.invite-button:hover{background:var(--color-emerald-dark, #1f5f3a);transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 12px rgba(46, 139, 86, .2))}.invite-button:active{transform:translateY(0);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .05))}.invite-button:disabled{background:var(--color-gray-400, #cbd5e0);cursor:not-allowed;opacity:.7;transform:none;box-shadow:none}.queue-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg, 20px)}.queue-section{background:var(--bg-card, #ffffff);border-radius:var(--radius-lg, 16px);overflow:hidden;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .05));border:1px solid var(--border-light, #edf2f7)}.queue-section h3{margin:0;padding:var(--space-md, 15px);font-size:16px;font-weight:600;border-bottom:1px solid var(--border-light, #edf2f7);display:flex;align-items:center;gap:var(--space-sm, 8px)}.queue-section.waiting h3{background:var(--color-cornflower-soft, #e6eeff);color:var(--color-cornflower-dark, #4169e1)}.queue-section.invited h3{background:var(--color-emerald-soft, #e8f3e9);color:var(--color-emerald-dark, #1f5f3a)}.queue-section.serving h3{background:var(--color-cornflower-soft, #e6eeff);color:var(--color-cornflower, #6495ed)}.queue-section h3 .count{margin-left:auto;background:var(--bg-card, #ffffff);padding:2px 10px;border-radius:var(--radius-full, 20px);font-size:14px;font-weight:500}.queue-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm, 12px) var(--space-md, 15px);border-bottom:1px solid var(--border-light, #edf2f7);gap:var(--space-sm, 10px);flex-wrap:wrap;transition:background .2s ease}.queue-item:hover{background:var(--bg-soft, #f8fafc)}.queue-item:last-child{border-bottom:none}.queue-item .queue-number{font-weight:700;background:var(--color-cornflower, #6495ed);color:var(--color-white, #ffffff);padding:4px 10px;border-radius:var(--radius-full, 20px);font-size:12px;min-width:50px;text-align:center}.queue-item .client-name{flex:1;font-weight:500;color:var(--text-primary, #1e293b);min-width:100px}.queue-item .service-name{color:var(--text-secondary, #4a5568);font-size:12px;background:var(--bg-soft, #f8fafc);padding:4px 10px;border-radius:var(--radius-sm, 8px);border:1px solid var(--border-light, #edf2f7);max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-item button{padding:6px 14px;background:var(--color-cornflower, #6495ed);color:var(--color-white, #ffffff);border:none;border-radius:var(--radius-sm, 8px);cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;white-space:nowrap}.queue-item button:hover{filter:brightness(1.1);transform:scale(1.02)}.queue-item button:active{transform:scale(.98)}.queue-item.invited button{background:var(--color-emerald, #2e8b57)}.queue-item.invited button:hover{background:var(--color-emerald-dark, #1f5f3a)}.queue-item.serving button{background:var(--color-cornflower-dark, #4169e1)}.queue-item.serving button:hover{background:var(--color-cornflower, #6495ed)}.empty-message{padding:var(--space-xl, 30px);text-align:center;color:var(--text-muted, #64748b);font-size:14px;font-style:italic}@media(prefers-color-scheme:dark){.queue-manager{background:var(--bg-main, #0a140a)}.queue-header,.queue-section{background:var(--bg-card, #1a2e1a);border-color:var(--border, #2d4a2d)}.back-button{background:var(--bg-soft, #152215);border-color:var(--border, #2d4a2d);color:var(--color-emerald-light, #4a9f6e)}.back-button:hover{background:var(--color-emerald-light, #4a9f6e);color:var(--color-gray-800, #2d3748)}.queue-header h2{color:var(--text-primary, #f0f7f0)}.invite-button{background:var(--color-emerald-light, #4a9f6e)}.invite-button:hover{background:var(--color-emerald, #2e8b57)}.invite-button:disabled{background:var(--color-gray-600, #718096)}.queue-section h3{border-bottom-color:var(--border, #2d4a2d)}.queue-section.waiting h3{background:var(--color-cornflower-soft, #1e2a3d);color:var(--color-cornflower-light, #83a9f4)}.queue-section.invited h3{background:var(--color-emerald-soft, #1a3a1a);color:var(--color-emerald-light, #4a9f6e)}.queue-section.serving h3{background:var(--color-cornflower-soft, #1e2a3d);color:var(--color-cornflower, #6495ed)}.queue-section h3 .count{background:var(--bg-card, #1a2e1a)}.queue-item{border-bottom-color:var(--border, #2d4a2d)}.queue-item:hover{background:var(--bg-soft, #152215)}.queue-item .client-name{color:var(--text-primary, #f0f7f0)}.queue-item .service-name{color:var(--text-secondary, #cbd5e0);background:var(--bg-soft, #152215);border-color:var(--border, #2d4a2d)}.empty-message{color:var(--text-muted, #9ca3af)}}@media(max-width:768px){.queue-sections{grid-template-columns:1fr}.queue-header{flex-direction:column;align-items:stretch;text-align:center}.back-button{align-self:flex-start}.queue-header h2{text-align:center}.invite-button{width:100%}.queue-item{padding:var(--space-sm, 10px)}}@media(max-width:480px){.queue-manager{padding:var(--space-sm, 12px)}.back-button{padding:8px 16px;font-size:14px;min-width:90px}.queue-item{flex-direction:column;align-items:flex-start}.queue-item .client-name{width:100%}.queue-item .service-name{max-width:100%}.queue-item button{width:100%;padding:8px}}@media(hover:none)and (pointer:coarse){.back-button:hover{background:var(--bg-soft, #f8fafc);color:var(--color-emerald, #2e8b57);transform:none}.back-button:active{background:var(--color-emerald, #2e8b57);color:var(--color-white, #ffffff)}.invite-button:hover{transform:none}.queue-item button:hover{filter:none;transform:none}.queue-item button:active{transform:scale(.97)}@media(prefers-color-scheme:dark){.back-button:hover{background:var(--bg-soft, #152215);color:var(--color-emerald-light, #4a9f6e)}.back-button:active{background:var(--color-emerald-light, #4a9f6e);color:var(--color-gray-800, #2d3748)}}}
