@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJtEtq.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJtEtq.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJtEtq.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJtEtq.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJuktqQ4E.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4NJtEtq.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ-6K6MmTpA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ-6D6MmTpA.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ-6I6MmTpA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ-6J6MmTpA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ-6H6Mk.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--primary: #0d9488;--primary-dark: #0f766e;--primary-light: #f0fdfa;--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--bg-surface: #F8FAFC;--bg-card: #FFFFFF;--text-main: #0F172A;--text-muted: #64748B;--text-light: #94A3B8;--border: #E2E8F0;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--shadow-sm: 0 1px 3px rgba(0,0,0,.1);--shadow-md: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1);--shadow-lg: 0 20px 25px -5px rgba(0,0,0,.1), 0 10px 10px -5px rgba(0,0,0,.04)}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,sans-serif}body{background-color:var(--bg-surface);color:var(--text-main);overflow-x:hidden}.app-layout{display:flex;min-height:100vh;background:#f1f5f9}.app-sidebar{background:#fff;color:var(--text-main);padding:60px 40px;position:sticky;top:0;width:380px;height:100vh;display:flex;flex-direction:column;box-shadow:1px 0 0 var(--border);z-index:100}.business-brand{text-align:center;margin-bottom:48px}.brand-logo img,.brand-icon{width:80px;height:80px;border-radius:20px;background:#f1f5f9;color:var(--primary);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;object-fit:cover;font-size:2rem}.business-brand h3{font-size:1.5rem;margin-bottom:8px;letter-spacing:-.02em}.category-badge{background:var(--primary);color:#fff;padding:4px 12px;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase}.booking-progress{display:flex;flex-direction:column;gap:32px;margin-bottom:48px}.step-item{display:flex;align-items:center;gap:16px;color:var(--text-muted);opacity:.6;transition:all .3s}.step-item.active{color:var(--text-main);opacity:1}.step-item.completed{color:var(--text-main);opacity:.9}.step-num{width:32px;height:32px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:var(--text-muted)}.step-item.active .step-num{background:var(--primary);color:#fff;border-color:var(--primary)}.step-item.completed .step-num{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.step-label{font-weight:600;font-size:1rem}.selection-summary{margin-top:auto}.selection-summary hr{border:none;border-top:1px solid var(--border);margin:24px 0}.summary-item{margin-bottom:16px}.summary-item label{font-size:.75rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px}.summary-item p{font-weight:500;font-size:1rem}.app-main{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);overflow-y:auto}.top-nav{padding:24px 60px;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}.nav-header{display:flex;align-items:center;justify-content:space-between;width:100%}.page-title{display:flex;justify-content:center;align-items:center;flex:1;font-size:1.5rem;font-weight:800;letter-spacing:-.03em;text-align:center}.brand-logo-header{display:flex;align-items:center;gap:12px}.colado-logo-icon{width:36px;height:36px;color:var(--primary);display:flex;align-items:center;justify-content:center}.colado-logo-svg{width:100%;height:100%}.colado-divider{width:1.5px;height:28px;background-color:var(--border)}.colado-brand-text{font-family:Pacifico,cursive;font-size:1.9rem;color:var(--text-main);line-height:1;padding-bottom:4px;letter-spacing:normal}.header-right-placeholder{width:44px;height:44px;flex-shrink:0}.back-button{background:var(--bg-surface);border:1px solid var(--border);width:44px;height:44px;border-radius:12px;cursor:pointer;transition:all .2s}.back-button:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.progress-bar-mobile{display:none}.progress-step{flex:1;height:4px;background:var(--border);border-radius:100px;transition:all .3s}.progress-step.active,.progress-step.completed{background:var(--primary)}.screen-container{padding:60px;max-width:900px;width:100%;margin:0 auto}.screen{display:none;animation:slideUp .5s cubic-bezier(.16,1,.3,1)}.screen.active{display:block}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.screen-header{margin-bottom:40px}.screen-header h3{font-size:2rem;font-weight:800;margin-bottom:8px}.screen-header p{color:var(--text-muted);font-size:1.1rem}.hero-section{text-align:center;margin-bottom:64px}.hero-section h2{font-size:3.5rem;font-weight:800;margin-bottom:16px}.qr-action-card{background:#fff;border:1px solid var(--border);padding:40px;border-radius:var(--radius-xl);display:flex;align-items:center;gap:32px;cursor:pointer;transition:all .4s;box-shadow:var(--shadow-md);max-width:600px;margin:0 auto}.qr-action-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary)}.qr-scanner-visual{width:120px;height:120px;background:var(--text-main);border-radius:24px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:#fff;font-size:3rem}.scan-line{position:absolute;width:100%;height:2px;background:var(--primary);top:0;left:0;animation:scanMove 2s infinite}@keyframes scanMove{0%{top:0}50%{top:100%}to{top:0}}.qr-text h4{font-size:1.5rem;margin-bottom:8px}.qr-text p{color:var(--text-muted)}.scan-btn-circle{width:56px;height:56px;border-radius:50%;background:var(--primary);color:#fff;border:none;margin-left:auto;font-size:1.5rem;box-shadow:0 4px 12px #2563eb66}.service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.service-card{background:#fff;border:2px solid transparent;border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-sm);transition:all .3s;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between}.service-card:hover{border-color:var(--border);transform:translateY(-4px);box-shadow:var(--shadow-md)}.service-card.selected{border-color:var(--primary);background:var(--primary-light)}.service-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.service-meta h4{font-size:1.25rem;font-weight:700}.duration{font-size:.85rem;color:var(--text-muted);font-weight:500}.description{color:var(--text-muted);font-size:.95rem;line-height:1.5;margin-bottom:24px}.service-card-footer{display:flex;justify-content:space-between;align-items:center}.price{font-size:1.5rem;font-weight:800;color:var(--text-main)}.select-indicator{font-size:1.5rem;color:var(--primary);opacity:0;transition:.2s}.service-card.selected .select-indicator{opacity:1}.calendar-selection{background:#fff;border-radius:var(--radius-xl);padding:32px;box-shadow:var(--shadow-md)}.header-with-action{display:flex;justify-content:space-between;align-items:center}.custom-date-picker{position:relative;z-index:500}.picker-trigger-card{display:flex;align-items:center;gap:12px;background:#fff;padding:10px 18px;border-radius:16px;border:1px solid var(--border);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.picker-trigger-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.toggle-icon{margin-left:auto;font-size:.8rem;color:var(--text-muted);transition:transform .3s}.toggle-icon.rotated{transform:rotate(180deg)}.calendar-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a4d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:499}.calendar-dropdown{position:absolute;top:calc(100% + 12px);right:0;width:320px;background:#fff;border-radius:20px;box-shadow:0 10px 40px #00000026;padding:20px;border:1px solid var(--border);animation:slideDown .3s ease-out;z-index:500}.cal-close-dropdown-btn{position:absolute;top:18px;right:18px;width:28px;height:28px;border-radius:50%;border:none;background:var(--bg-surface);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;font-size:.85rem;z-index:510}.cal-close-dropdown-btn:hover{background:var(--border);color:var(--text-main)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.calendar-header-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-right:32px}.cal-nav-btn{width:32px;height:32px;border-radius:8px;border:none;background:var(--bg-surface);color:var(--text-main);cursor:pointer;transition:background .2s}.cal-nav-btn:hover{background:var(--primary);color:#fff}.month-label{font-weight:700;font-size:1rem;color:var(--text-main);text-transform:capitalize}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.weekday-name{text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted);padding-bottom:8px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:500;border-radius:10px;cursor:pointer;transition:all .2s}.calendar-day:hover{background:var(--primary-light);color:var(--primary)}.calendar-day.not-current{opacity:.3}.calendar-day.is-today{border:2px solid var(--primary-light);color:var(--primary);font-weight:700}.calendar-day.is-selected{background:var(--primary);color:#fff!important;box-shadow:0 4px 10px #2563eb4d}.calendar-day.disabled{opacity:.15;text-decoration:line-through;cursor:not-allowed;pointer-events:none}@media(max-width:480px){.calendar-dropdown{position:fixed;top:auto;bottom:0;left:0;width:100%;border-radius:24px 24px 0 0;padding-bottom:40px}}.days-container{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;margin-bottom:40px}.day-pill-modern{padding:20px 8px;border-radius:16px;background:var(--bg-surface);text-align:center;cursor:pointer;transition:all .3s;border:1px solid var(--border)}.day-pill-modern:hover{border-color:var(--primary)}.day-pill-modern.selected{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-4px)}.day-pill-modern.disabled{opacity:.35;background:#f1f5f9;border-color:#e2e8f0;cursor:not-allowed;pointer-events:none;text-decoration:line-through}.day-name{font-size:.75rem;text-transform:uppercase;font-weight:600;display:block;margin-bottom:4px;opacity:.7}.day-num{font-size:1.5rem;font-weight:800;display:block}.time-grid-modern{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}.time-button{padding:16px;border-radius:12px;border:1px solid var(--border);background:#fff;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .2s}.time-button:hover:not(:disabled){border-color:var(--primary);background:var(--primary-light)}.time-button.selected{background:var(--primary);color:#fff;border-color:var(--primary)}.time-button:disabled{opacity:.3;cursor:not-allowed;background:#eee}.booking-flow-container{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}.form-section-card{background:#fff;padding:32px;border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon i{position:absolute;left:16px;color:var(--text-light)}.input-with-icon input{width:100%;padding:16px 16px 16px 48px;border-radius:12px;border:2px solid var(--border);font-size:1.1rem;transition:all .3s}.input-with-icon input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-light);outline:none}.input-with-icon.is-invalid input{border-color:#ef4444;background:#fef2f2;box-shadow:0 0 0 4px #ef44441a}.input-with-icon.is-invalid i{color:#ef4444}.input-with-icon.is-invalid input::placeholder{color:#f87171}.error-text{display:block;font-size:.75rem;color:#ef4444;margin-top:6px;margin-left:4px;font-weight:500}.summary-sticky-card{background:#fff;padding:32px;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);position:sticky;top:100px}.summary-sticky-card h4{font-size:1.25rem;margin-bottom:24px}.summary-details{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.summary-row{display:flex;align-items:center;gap:16px}.summary-row i{width:40px;height:40px;background:var(--bg-surface);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--primary)}.summary-row span{display:block;font-size:.8rem;color:var(--text-muted)}.summary-row strong{font-size:1rem}.validation-hint{margin-top:16px;font-size:.8rem;color:#ef4444;background:#fef2f2;padding:10px;border-radius:8px;text-align:center;border:1px solid #fee2e2}.success-page{display:flex;flex-direction:column;align-items:center;padding:20px 0}.ticket-card{background:#fff;width:100%;max-width:380px;border-radius:24px;box-shadow:0 20px 50px #0000001a;overflow:hidden;margin:32px 0;position:relative;text-align:left}.ticket-brand{background:var(--text-main);color:#fff;padding:12px;text-align:center;font-size:.7rem;font-weight:700;letter-spacing:2px;display:flex;align-items:center;justify-content:center;gap:8px}.ticket-header{padding:24px;display:flex;justify-content:space-between;align-items:flex-start}.business-info strong{display:block;font-size:1.1rem;color:var(--text-main)}.business-info small{color:var(--text-muted);font-size:.8rem}.booking-time{text-align:right}.booking-time strong{display:block;font-size:1.4rem;color:var(--primary)}.booking-time span{display:block;font-size:.8rem;font-weight:600;color:var(--text-main)}.ticket-divider{height:1px;border-top:2px dashed #eee;position:relative;margin:0 24px}.ticket-divider:before,.ticket-divider:after{content:"";position:absolute;top:-10px;width:20px;height:20px;background:var(--bg-surface);border-radius:50%}.ticket-divider:before{left:-34px}.ticket-divider:after{right:-34px}.ticket-body{padding:24px}.t-section{margin-bottom:20px}.t-section label{font-size:.65rem;font-weight:700;color:var(--text-muted);letter-spacing:1px;margin-bottom:4px;display:block}.t-section strong{display:block;font-size:1rem;color:var(--text-main)}.t-section small{display:block;font-size:.85rem;color:var(--text-muted)}.t-footer{background:#f8fafc;margin:0 -24px -24px;padding:20px;text-align:center;border-top:1px solid #eee}.booking-id-label{font-size:.65rem;font-weight:700;color:var(--text-muted);margin-bottom:4px}.booking-id-text{font-size:.85rem;font-weight:800;color:var(--text-main);font-family:monospace}.success-actions{display:flex;gap:16px;width:100%;max-width:450px;margin-bottom:32px}.action-btn{flex:1;padding:16px 24px;border-radius:16px;border:none;font-weight:700;font-size:.95rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0000000d}.action-btn.download{background:#fff;color:var(--text-main);border:1px solid var(--border)}.action-btn.share{background:var(--primary);color:#fff}.action-btn:hover{transform:translateY(-3px);box-shadow:0 10px 20px #0000001a}.action-btn:active{transform:scale(.96)}.btn-outline-full{width:100%;max-width:450px;padding:18px;border-radius:16px;border:2px solid var(--text-main);background:transparent;color:var(--text-main);font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:10px}.btn-outline-full:hover{background:var(--text-main);color:#fff;transform:translateY(-2px)}.action-footer{margin-top:48px;position:relative}.main-btn{width:100%;padding:24px;background:var(--text-main);color:#fff;border:none;border-radius:100px;font-size:1.25rem;font-weight:800;cursor:pointer;box-shadow:var(--shadow-md);transition:all .3s;display:flex;justify-content:center;align-items:center;gap:12px}.main-btn:hover{background:#000;transform:translateY(-4px);box-shadow:var(--shadow-lg)}.confirm-btn{background:var(--primary)}.confirm-btn:hover{background:var(--primary-dark)}.scanner-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000;z-index:2000;overflow:hidden}#reader{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;z-index:1!important;background:#000!important}#reader video{width:100%!important;height:auto!important}.scanner-ui{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;color:#fff;text-align:center}.scanner-frame{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:250px;height:250px;border:2.5px solid #38bdf8;border-radius:32px;box-shadow:0 0 0 2000px #0f172abf}.scanner-ui p{position:absolute;top:calc(50% + 156px);left:50%;transform:translate(-50%);width:90%;font-size:1rem;font-weight:600;letter-spacing:.02em;text-shadow:0 2px 4px rgba(0,0,0,.8);margin:0}.btn-cancel{position:absolute;bottom:50px;left:50%;transform:translate(-50%);background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);color:#fff;padding:14px 40px;border-radius:100px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0003}.btn-cancel:hover{background:#ffffff40;transform:translate(-50%) translateY(-2px)}.btn-cancel:active{transform:translate(-50%) translateY(0)}.loader-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000}.loader-3d-container{text-align:center;perspective:1000px}.loader-3d-container p{margin-top:60px;font-weight:700;color:var(--text-main);letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.cube{width:40px;height:40px;position:relative;transform-style:preserve-3d;transform:rotateX(-30deg) rotateY(-45deg);animation:rotateCube 2s infinite linear;margin:0 auto}@keyframes rotateCube{0%{transform:rotateX(0) rotateY(0)}to{transform:rotateX(360deg) rotateY(360deg)}}.cube-face{position:absolute;width:40px;height:40px;border:2px solid var(--primary);background:#2563eb1a}.front{transform:translateZ(20px)}.back{transform:rotateY(180deg) translateZ(20px)}.right{transform:rotateY(90deg) translateZ(20px)}.left{transform:rotateY(-90deg) translateZ(20px)}.top{transform:rotateX(90deg) translateZ(20px)}.bottom{transform:rotateX(-90deg) translateZ(20px)}@media(max-width:1200px){.app-sidebar{width:320px;padding:40px 24px}}@media(max-width:1024px){.app-sidebar{width:280px}.screen-container{padding:40px}}@media(max-width:900px){.app-layout{flex-direction:column}.app-sidebar{height:auto;width:100%;position:relative;padding:32px 24px;border-right:none;border-bottom:1px solid var(--border)}.booking-progress{flex-direction:row;justify-content:center;gap:20px}.step-label,.selection-summary{display:none}.business-brand{margin-bottom:24px;text-align:left;display:flex;align-items:center;gap:16px}.brand-logo img,.brand-icon{width:50px;height:50px;margin:0}.days-container{grid-template-columns:repeat(4,1fr)}.booking-flow-container{grid-template-columns:1fr}}@media(max-width:768px){.app-sidebar{display:none}.progress-bar-mobile{display:flex;gap:8px;margin-top:16px}.top-nav{padding:20px 24px}.screen-container{padding:24px}.hero-section h2{font-size:2.5rem}.qr-action-card{flex-direction:column;text-align:center;padding:32px 24px}.scan-btn-circle{margin:16px auto 0}.form-grid{grid-template-columns:1fr}.booking-flow-container{gap:24px}.action-footer{position:fixed;bottom:0;left:0;width:100%;padding:20px 24px;background:#fff;border-top:1px solid var(--border);z-index:100}.screen{padding-bottom:120px}.days-container{grid-template-columns:repeat(4,1fr);gap:8px}.day-pill-modern{padding:12px 4px;border-radius:12px}.day-num{font-size:1.1rem}.header-with-action{flex-direction:column-reverse;align-items:stretch;gap:16px}.custom-date-picker{width:100%}.picker-trigger-card{width:100%;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border)}.screen-header{margin-bottom:24px}.nav-header{gap:12px}.back-button{width:38px;height:38px;border-radius:10px;font-size:.95rem}.page-title,.brand-logo-text{font-size:1.35rem}.brand-logo-svg{width:24px;height:24px}.brand-logo-subtitle{font-size:.625rem}.header-right-placeholder{width:38px;height:38px}}@media(max-width:480px){.page-title,.brand-logo-text{font-size:1.2rem}.brand-logo-svg{width:22px;height:22px}.brand-logo-subtitle{font-size:.58rem}}.debug-console{position:fixed;bottom:0;left:0;width:100%;background:#0f172ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#38bdf8;font-family:monospace;font-size:.65rem;z-index:9999;border-top:1px solid rgba(255,255,255,.1);max-height:120px;display:flex;flex-direction:column}.debug-header{padding:4px 12px;background:#0000004d;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.05)}.debug-header button{background:transparent;border:1px solid #38bdf8;color:#38bdf8;padding:0 8px;border-radius:4px;font-size:.6rem;cursor:pointer}.debug-body{padding:8px 12px;overflow-y:auto}.log-item{margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conflict-banner{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border:1.5px solid #fca5a5;border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:28px;cursor:pointer;box-shadow:0 4px 16px #ef44441f;animation:slideDown .35s cubic-bezier(.16,1,.3,1),conflictPulse 2s ease-in-out .5s 2}.conflict-banner-content{display:flex;align-items:flex-start;gap:16px}.conflict-banner-content>i{font-size:1.4rem;color:#dc2626;margin-top:2px;flex-shrink:0}.conflict-banner-content>div{flex:1}.conflict-banner strong{display:block;font-size:1rem;color:#991b1b;margin-bottom:4px;font-weight:700}.conflict-banner p{font-size:.9rem;color:#b91c1c;margin:0}.conflict-close{background:transparent;border:none;color:#b91c1c;font-size:1.1rem;cursor:pointer;padding:4px;border-radius:6px;transition:background .2s;flex-shrink:0}.conflict-close:hover{background:#dc26261a}.conflict-hint{margin-top:10px;font-size:.82rem;color:#b91c1c;font-weight:600;letter-spacing:.01em;padding-left:36px}.time-button.booked{opacity:.4;cursor:not-allowed;background:#f1f5f9;position:relative;overflow:hidden}.time-button.booked .booked-label{display:block;font-size:.6rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.time-button:not(.booked) .booked-label{display:none}@keyframes conflictPulse{0%,to{box-shadow:0 4px 16px #ef44441f}50%{box-shadow:0 4px 24px #ef444447}}
