:root{--bg: #06130f;--bg-2: #0a1f18;--panel: #0d261d;--panel-2: #113126;--gold: #d8b46a;--gold-2: #f0d69a;--text: #f7f2e8;--muted: #a8b7ae;--line: rgba(216,180,106,.22);--green: #1cc477;--danger: #ef6b6b;--shadow: 0 24px 70px rgba(0,0,0,.32)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Montserrat,Arial,sans-serif;background:radial-gradient(circle at 70% 10%,#153626 0,#071813 33%,#04100d 75%);color:var(--text);min-height:100vh}button,input,select{font:inherit}.shell{width:min(1180px,calc(100% - 32px));margin:auto}.narrow{width:min(720px,calc(100% - 32px));margin:auto}.muted{color:var(--muted);line-height:1.6}.eyebrow{display:block;color:var(--gold);font-size:.75rem;letter-spacing:.18em;font-weight:700;margin-bottom:10px}.brand{display:flex;align-items:center;gap:12px;color:var(--gold)}.brand .monogram{font-family:Cormorant Garamond,serif;font-size:46px;line-height:.8;border-right:1px solid var(--line);padding-right:12px;letter-spacing:-.08em}.brand strong,.brand span{display:block}.brand strong{font-size:.68rem;letter-spacing:.28em}.brand span{font-family:Cormorant Garamond,serif;font-size:1.15rem;letter-spacing:.12em}.brand-compact .monogram{font-size:34px}.brand-compact span{font-size:.95rem}.btn{border:0;border-radius:10px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;cursor:pointer;transition:.2s}.btn:disabled{opacity:.6;cursor:wait}.btn-gold{color:#112018;background:linear-gradient(135deg,var(--gold-2),#b88638);box-shadow:0 8px 24px #d8b46a2e}.btn-gold:hover{transform:translateY(-1px);filter:brightness(1.05)}.btn-large{padding:15px 22px}.btn-ghost{background:transparent;color:var(--gold)}.btn-outline{background:transparent;color:var(--gold);border:1px solid var(--line);padding:8px 12px}.full{width:100%}.icon-btn{background:transparent;border:0;color:var(--text);cursor:pointer;padding:8px;border-radius:8px}.icon-btn:hover{background:#ffffff0f}.public-page{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:22px 0}.hero{min-height:590px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:40px;padding:70px 0}.hero-copy h1,.booking h1,.appointments-page h1,.success-panel h1,.admin-top h1{font-family:Cormorant Garamond,serif;font-size:clamp(2.7rem,6vw,5.2rem);line-height:.92;margin:0 0 20px;font-weight:600}.hero-copy p{font-size:1.05rem;color:#c9d3cc;max-width:560px;line-height:1.7;margin-bottom:28px}.feature-row{display:flex;gap:22px;flex-wrap:wrap;margin-top:24px;color:#c5d1c9;font-size:.84rem}.feature-row span{display:flex;align-items:center;gap:7px}.hero-art{position:relative;height:470px;display:grid;place-items:center}.hero-ring{width:350px;height:350px;border-radius:50%;border:1px solid var(--line);box-shadow:0 0 0 45px #d8b46a08,0 0 0 90px #d8b46a05}.hero-card{position:absolute;background:linear-gradient(145deg,#133226f7,#07140ff7);border:1px solid var(--line);width:290px;padding:30px;border-radius:22px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;color:var(--gold)}.hero-card strong{font-family:Cormorant Garamond,serif;font-size:2rem;line-height:1.05}.hero-card span{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:70px}.step{background:#071b14;padding:20px;text-align:center}.step b{display:block;color:var(--gold);font-family:Cormorant Garamond,serif;font-size:1.6rem}.step span{font-size:.78rem;color:#c9d2cc}footer{text-align:center;color:#71857a;padding:30px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;display:grid;place-items:center;z-index:100;padding:16px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.modal{position:relative;background:linear-gradient(180deg,#0b241b,#071811);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:var(--shadow);width:min(480px,100%);max-height:92vh;overflow:auto}.modal-close{position:absolute;right:14px;top:14px}.auth-card .brand{justify-content:center;margin-bottom:28px}.modal h2,.profile-card h1,.booking h2{font-family:Cormorant Garamond,serif;font-size:2rem;margin:18px 0 8px}.modal p,.profile-card p{color:var(--muted);line-height:1.55}.modal label,.profile-card label,.admin-modal label{font-size:.78rem;color:#cfdbd3;margin:16px 0 7px;display:block}.modal input,.modal select,.profile-card input,.admin-toolbar input,.date-input,.admin-modal input,.admin-modal select{width:100%;background:#0e2a20;color:var(--text);border:1px solid rgba(255,255,255,.11);border-radius:9px;padding:12px;outline:none}.modal input:focus,.modal select:focus,.profile-card input:focus,.date-input:focus{border-color:var(--gold)}.otp-input{text-align:center;font-size:1.5rem;letter-spacing:.4em}.form-message{margin-top:14px;color:var(--gold);font-size:.85rem;text-align:center}.error-box{padding:11px 12px;background:#ef6b6b17;border:1px solid rgba(239,107,107,.28);color:#ffb2b2;border-radius:9px;margin:14px 0;font-size:.85rem}.center-page,.splash{min-height:100vh;display:grid;place-items:center;padding:22px}.profile-card{width:min(560px,100%);background:#091d16;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:var(--shadow)}.checkline{display:flex!important;align-items:flex-start;gap:10px;line-height:1.45}.checkline input{width:auto!important;margin-top:3px;accent-color:var(--gold)}.app-header{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.06)}.app-header nav{display:flex;align-items:center;gap:8px}.app-header nav>button:not(.icon-btn){background:transparent;color:#bdcbc2;border:0;padding:10px 12px;cursor:pointer}.app-header nav>button.active{color:var(--gold)}.booking,.appointments-page{padding:42px 0 70px}.booking-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.booking-heading h1,.appointments-page h1{font-size:3.1rem;margin:0}.progress{padding:9px 12px;border:1px solid var(--line);border-radius:999px;color:var(--gold);font-size:.8rem}.back-link{background:none;border:0;color:var(--gold);display:flex;align-items:center;gap:4px;cursor:pointer;margin-bottom:18px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.service-card{background:linear-gradient(145deg,#0b241b,#081b14);border:1px solid rgba(255,255,255,.08);color:var(--text);border-radius:14px;padding:16px;text-align:left;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;cursor:pointer}.service-card:hover,.professional-card:hover,.slot:hover{border-color:var(--gold);transform:translateY(-1px)}.service-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#d8b46a1f;color:var(--gold)}.service-main b,.service-main small{display:block}.service-main small{color:var(--muted);margin-top:5px}.price{text-align:right;font-size:.68rem;color:#c9b88f}.price strong{color:var(--gold);font-size:.96rem}.professional-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.professional-card{background:#0b241b;border:1px solid rgba(255,255,255,.08);color:var(--text);border-radius:14px;padding:15px;display:flex;gap:12px;text-align:left;align-items:center;cursor:pointer}.avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold),#7b5b25);color:#081510;font-family:Cormorant Garamond,serif;font-size:1.5rem}.professional-card small{display:block;color:var(--muted);margin-top:5px;line-height:1.4}.selection-strip{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.selection-strip span{display:flex;align-items:center;gap:6px;border:1px solid var(--line);padding:8px 10px;border-radius:999px;color:#dbc99f;font-size:.78rem}.narrow-content{max-width:720px}.date-input{max-width:330px;margin-top:10px}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.slot{background:#0d2a20;color:var(--text);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:13px;cursor:pointer}.summary-card{background:#0b241b;border:1px solid var(--line);border-radius:16px;padding:18px;margin:18px 0;display:grid;gap:14px}.summary-card>div{display:flex;align-items:center;gap:12px}.summary-card svg{color:var(--gold)}.summary-card small,.summary-card b{display:block}.summary-card small{color:var(--muted);margin-bottom:3px}.whatsapp-note{display:flex;align-items:center;gap:9px;background:#1cc47717;border:1px solid rgba(28,196,119,.3);color:#9de2bf;border-radius:10px;padding:12px;margin-bottom:14px}.success-panel{text-align:center;padding:70px 0}.success-panel h1{font-size:3.3rem}.success-icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#1cc4771f;border:1px solid rgba(28,196,119,.35);color:var(--green);margin:0 auto 20px}.empty-state{border:1px dashed rgba(255,255,255,.13);border-radius:14px;padding:24px;color:var(--muted);text-align:center}.appointment-list{display:grid;gap:10px}.appointment-card{display:grid;grid-template-columns:140px 1fr auto auto;align-items:center;gap:16px;background:#0b241b;border:1px solid rgba(255,255,255,.07);padding:16px;border-radius:14px}.appointment-date b,.appointment-date span,.appointment-info b,.appointment-info span{display:block}.appointment-date span,.appointment-info span{color:var(--muted);font-size:.82rem;margin-top:4px}.status{display:inline-flex;border-radius:999px;padding:6px 9px;font-size:.7rem;font-weight:700}.status-confirmed{background:#1cc4771c;color:#61d99c}.status-pending{background:#d8b46a1c;color:var(--gold)}.status-canceled_customer,.status-canceled_admin{background:#ef6b6b1a;color:#ff9a9a}.status-completed{background:#60a5fa1f;color:#93c5fd}.status-no_show{background:#ffffff14;color:#bbb}.admin-page{min-height:100vh;display:grid;grid-template-columns:260px 1fr;background:#f4f6f5;color:#17201b}.sidebar{background:#082219;color:var(--text);padding:24px 18px;display:flex;flex-direction:column;min-height:100vh}.sidebar .brand{margin-bottom:30px}.admin-user{display:flex;gap:10px;align-items:center;padding:12px;background:#ffffff0d;border-radius:12px;color:var(--gold);margin-bottom:22px}.admin-user small,.admin-user b{display:block}.admin-user small{color:#82968b;font-size:.68rem}.sidebar nav{display:grid;gap:6px}.sidebar nav button,.sidebar-logout{border:0;background:transparent;color:#c8d2cc;text-align:left;padding:11px 12px;border-radius:9px;display:flex;gap:9px;align-items:center;cursor:pointer}.sidebar nav button.active{background:#164b37;color:#fff}.sidebar-logout{margin-top:auto}.admin-content{padding:34px;overflow:auto}.admin-top{display:flex;justify-content:space-between;align-items:center}.admin-top h1{color:#16221b;font-size:3rem}.admin-toolbar{margin:18px 0}.admin-toolbar label{font-size:.75rem;color:#526159}.admin-toolbar input{display:block;background:#fff;color:#17201b;border-color:#d8dfdb;width:auto;margin-top:5px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat-card{background:#fff;border:1px solid #e1e6e3;border-radius:14px;padding:18px;display:flex;gap:13px;align-items:center}.stat-icon{width:44px;height:44px;border-radius:12px;background:#eef7f2;color:#0f6244;display:grid;place-items:center}.stat-card b{display:block;font-size:1.5rem}.stat-card small{color:#7b8881}.admin-notice{display:flex;gap:12px;background:#fff9e9;border:1px solid #ead59a;padding:15px;border-radius:12px;margin:18px 0;color:#6e5722}.admin-notice span,.admin-notice b{display:block}.admin-notice span{font-size:.78rem;margin-top:4px}.table-wrap{background:#fff;border:1px solid #e1e6e3;border-radius:14px;overflow:auto}.table-wrap table{width:100%;border-collapse:collapse}.table-wrap th,.table-wrap td{padding:13px 14px;border-bottom:1px solid #edf0ee;text-align:left;font-size:.82rem;white-space:nowrap}.table-wrap th{color:#718078;font-size:.72rem}.empty-cell{text-align:center!important;color:#86928c;padding:30px!important}.override-badge{display:inline-flex;background:#fff2c7;color:#87630c;padding:5px 8px;border-radius:999px;font-size:.68rem;font-weight:700}.admin-modal{color:var(--text)}.admin-check{background:#d8b46a12;border:1px solid var(--line);border-radius:11px;padding:12px}.admin-check b,.admin-check small{display:block}.admin-check small{color:var(--muted);margin-top:4px;line-height:1.45}.date-help{margin-top:-2px;margin-bottom:16px}.date-grid{display:grid;grid-template-columns:repeat(5,minmax(92px,1fr));gap:10px}.date-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#0b241b;color:var(--text);padding:13px 10px;min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:.18s}.date-card.available{cursor:pointer;border-color:#d8b46a47;background:linear-gradient(145deg,#0d2a20,#081b14)}.date-card.available:hover{border-color:var(--gold);transform:translateY(-1px);box-shadow:0 10px 24px #00000029}.date-card.unavailable{opacity:.38;cursor:not-allowed;filter:saturate(.45)}.date-card span{text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;color:#c5d1c9}.date-card b{font-family:Cormorant Garamond,serif;font-size:2rem;line-height:1;color:var(--gold);margin:4px 0}.date-card small{text-transform:uppercase;color:#cbbd9a;font-size:.65rem}.date-card em{font-style:normal;font-size:.62rem;color:#95aa9e;margin-top:6px}.date-card.available em{color:#d9c48e}.availability-settings{background:#fff;border:1px solid #e1e6e3;border-radius:14px;padding:18px;margin:0 0 18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.availability-settings>div:first-child{max-width:650px}.availability-settings .eyebrow{color:#8f6a18;margin-bottom:5px}.availability-settings>div:first-child>b,.availability-settings>div:first-child>small{display:block}.availability-settings>div:first-child>b{font-size:1rem;color:#1d2922}.availability-settings>div:first-child>small{color:#6f7c75;line-height:1.45;margin-top:4px}.availability-options{display:grid;grid-template-columns:repeat(3,110px);gap:8px;flex:0 0 auto}.availability-options button{border:1px solid #dce4df;background:#f8faf9;color:#3e4a43;border-radius:11px;padding:10px;cursor:pointer;transition:.18s}.availability-options button:hover{border-color:#b99646}.availability-options button.active{background:#0f4a36;border-color:#0f4a36;color:#fff;box-shadow:0 8px 20px #0f4a3629}.availability-options button:disabled{cursor:wait;opacity:.65}.availability-options b,.availability-options span{display:block}.availability-options b{font-size:.78rem}.availability-options span{font-size:.66rem;opacity:.72;margin-top:2px}.loader{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:900px){.date-grid{grid-template-columns:repeat(4,1fr)}.availability-settings{align-items:flex-start;flex-direction:column}.availability-options{width:100%;grid-template-columns:repeat(3,1fr)}.hero{grid-template-columns:1fr;min-height:auto;padding-top:45px}.hero-art{height:300px}.hero-ring{width:230px;height:230px}.steps,.service-grid,.professional-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(3,1fr)}.admin-page{grid-template-columns:1fr}.sidebar{min-height:auto;position:relative}.sidebar nav{display:flex;overflow:auto}.sidebar-logout{position:absolute;right:18px;top:20px}.admin-content{padding:20px}.stats-grid{grid-template-columns:1fr}.appointment-card{grid-template-columns:1fr auto}.appointment-info{grid-column:1/2}.admin-top{align-items:flex-start;gap:18px}.admin-top h1{font-size:2.2rem}.sidebar .admin-user{display:none}}@media (max-width:600px){.date-grid{grid-template-columns:repeat(3,1fr)}.date-card{min-height:108px;padding:10px 6px}.availability-options{grid-template-columns:1fr}.availability-options button{display:flex;justify-content:space-between;align-items:center}.topbar .brand span,.topbar .brand strong,.app-header .brand span,.app-header .brand strong{display:none}.hero-copy h1{font-size:3.1rem}.hero-art{display:none}.feature-row{display:grid}.booking-heading{align-items:flex-start;flex-direction:column}.booking-heading h1,.appointments-page h1{font-size:2.4rem}.service-card{grid-template-columns:auto 1fr}.service-card .price{grid-column:2;text-align:left}.slot-grid{grid-template-columns:repeat(3,1fr)}.appointment-card{grid-template-columns:1fr}.steps{display:none}.app-header nav>button:not(.icon-btn){font-size:.72rem;padding:8px}.profile-card{padding:24px}.admin-content{padding:14px}.admin-top{flex-direction:column}.admin-top .btn{width:100%}}.service-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 16px}.service-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;flex:1;max-width:760px}.service-search-field{min-width:0;display:flex;align-items:center;gap:9px;background:#0e2a20;border:1px solid rgba(212,175,55,.35);border-radius:12px;padding:0 12px;color:var(--gold);box-shadow:inset 0 0 0 1px #ffffff08}.service-search-field:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px #d4af371f}.service-search-field input{width:100%;min-width:0;background:transparent;border:0;outline:0;color:var(--text);padding:12px 0}.service-search-field input::placeholder{color:#82968b}.service-search-submit{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;padding:0 16px;min-height:48px;background:linear-gradient(180deg,#173d2f,#102a20);border:1px solid rgba(212,175,55,.55);color:var(--gold);box-shadow:0 10px 24px #0000002e}.service-search-submit:hover{transform:translateY(-1px);background:linear-gradient(180deg,#1b4736,#123123)}.service-search .search-clear{padding-left:10px;padding-right:10px}.client-category-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:9px 12px;color:var(--gold);font-size:.78rem;white-space:nowrap}.search-result-label{color:#9fb1a7;font-size:.8rem;margin:0 0 12px}.search-result-label b{color:var(--gold)}.service-empty{margin-top:12px}.admin-category-note{display:flex;gap:12px;align-items:flex-start;background:#eef8f3;border:1px solid #cfe5d9;color:#315a47;border-radius:12px;padding:15px;margin:18px 0}.admin-category-note b,.admin-category-note span{display:block}.admin-category-note span{font-size:.78rem;color:#60756a;margin-top:4px;line-height:1.45}.admin-service-filters{background:#fff;border:1px solid #e1e6e3;border-radius:14px;padding:16px;margin:0 0 18px;display:grid;gap:14px}.admin-service-search{display:flex;align-items:center;gap:9px;background:#f7f9f8;border:1px solid #dde5e0;border-radius:10px;padding:0 12px;color:#557066;max-width:520px}.admin-service-search:focus-within{border-color:#b99646}.admin-service-search input{width:100%;background:transparent;border:0;outline:0;padding:11px 0;color:#17201b}.category-filters{display:flex;flex-wrap:wrap;gap:8px}.category-filters button{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce4df;background:#f8faf9;color:#3e4a43;border-radius:999px;padding:8px 11px;cursor:pointer}.category-filters button.active{background:#0f4a36;border-color:#0f4a36;color:#fff}.category-status{font-size:.6rem;font-weight:700;border-radius:999px;padding:3px 6px}.category-status.is-active{background:#daf3e6;color:#17643f}.category-status.is-inactive{background:#ecefed;color:#77837d}.category-filters button.active .category-status.is-active{background:#ffffff2e;color:#fff}.category-filters button.active .category-status.is-inactive{background:#ffffff26;color:#e6ece8}.service-status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:700}.service-status.active{background:#e1f5e9;color:#17643f}.service-status.inactive{background:#ecefed;color:#77837d}@media (max-width:760px){.service-tools{align-items:stretch;flex-direction:column}.service-search{max-width:none;grid-template-columns:minmax(0,1fr) auto}.service-search .search-clear{grid-column:1/-1;justify-self:start}.client-category-badge{align-self:flex-start}.admin-service-search{max-width:none}}@media (max-width:520px){.service-search{grid-template-columns:minmax(0,1fr) auto}.service-search-submit{padding:0 14px;min-width:110px}.service-search .search-clear{grid-column:1/-1;justify-self:start}.category-filters{display:grid;grid-template-columns:1fr}.category-filters button{justify-content:space-between}}.agenda-toolbar{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.agenda-toolbar>label{min-width:168px}.agenda-mode-switch{display:inline-flex;background:#e8eeea;border:1px solid #d8e0db;border-radius:12px;padding:4px}.agenda-mode-switch button{border:0;background:transparent;color:#526159;padding:9px 14px;border-radius:9px;font-weight:700;cursor:pointer}.agenda-mode-switch button.active{background:#0f4a36;color:#fff;box-shadow:0 5px 16px #0f4a362e}.week-range-label{color:#66766d;font-size:.8rem;padding-bottom:10px}.week-agenda{display:grid;gap:16px}.week-day-card{background:#fff;border:1px solid #e1e6e3;border-radius:16px;overflow:hidden}.week-day-card>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;border-bottom:1px solid #e8ecea;background:#fbfcfb}.week-day-card>header span,.week-day-card>header b{display:block}.week-day-card>header span{text-transform:capitalize;color:#0f6244;font-size:.75rem;font-weight:800}.week-day-card>header b{color:#1c2821;font-size:1rem;margin-top:2px}.week-day-card>header strong{font-size:.72rem;color:#6f7d75;background:#eff4f1;border-radius:999px;padding:7px 10px}.week-day-card .table-wrap{border:0;border-radius:0}.admin-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.admin-light-outline{color:#285943;border-color:#c9d7cf;background:#fff}.admin-light-outline:hover{background:#eef7f2}.hidden-file-input{display:none}.clients-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid #e1e6e3;border-radius:14px;padding:14px 16px;margin-bottom:14px}.clients-tools>span{color:#6b7971;font-size:.78rem;white-space:nowrap}.clients-search{flex:1;max-width:620px}.client-import-message{background:#edf8f2;border:1px solid #cfe8da;color:#285943;border-radius:12px;padding:12px 14px;margin-bottom:14px;font-size:.82rem}.client-import-help{display:flex;gap:12px;align-items:flex-start;background:#fff9e9;border:1px solid #ead59a;color:#6e5722;border-radius:12px;padding:14px;margin-bottom:16px}.client-import-help b,.client-import-help span{display:block}.client-import-help span{font-size:.76rem;line-height:1.45;margin-top:3px}.nested-modal-layer{z-index:180}.modal textarea,.admin-modal textarea{width:100%;min-height:90px;resize:vertical;background:#0e2a20;color:var(--text);border:1px solid rgba(255,255,255,.11);border-radius:9px;padding:12px;outline:none}.modal textarea:focus,.admin-modal textarea:focus{border-color:var(--gold)}.admin-appointment-modal{width:min(620px,100%)}.label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.label-row label{margin:0}.inline-new-client{display:inline-flex;align-items:center;gap:5px;background:transparent;border:0;color:var(--gold);font-weight:700;font-size:.78rem;cursor:pointer;padding:6px}.admin-appointment-modal form>select+.new-client-inline,.new-client-inline{margin-top:12px}.new-client-inline{background:#d8b46a12;border:1px solid var(--line);border-radius:13px;padding:14px}.new-client-inline>b{display:block;color:var(--gold);margin-bottom:6px}.new-client-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.new-client-grid label{margin:7px 0 0}.new-client-grid .wide{grid-column:1/-1}.compact-check{font-size:.72rem!important;margin:12px 0!important;color:#c7d3cc!important}.new-client-save{border-color:#d8b46a73;width:100%}@media (max-width:900px){.admin-top-actions{justify-content:flex-start}.agenda-toolbar{align-items:stretch}.agenda-toolbar>label{width:100%}.agenda-toolbar>label input{width:100%}.week-range-label{padding:4px 0}.clients-tools{align-items:stretch;flex-direction:column}.clients-search{max-width:none;width:100%}.clients-tools>span{align-self:flex-start}}@media (max-width:600px){.agenda-mode-switch{display:grid;grid-template-columns:1fr 1fr;width:100%}.week-day-card>header{align-items:flex-start;flex-direction:column}.admin-top-actions{display:grid;width:100%;grid-template-columns:1fr}.admin-top-actions .btn{width:100%}.new-client-grid{grid-template-columns:1fr}.new-client-grid .wide{grid-column:auto}.admin-appointment-modal{padding:24px 18px}.label-row{align-items:flex-start}.inline-new-client{padding-right:0}}.account-page{padding:44px 0 72px}.account-heading h1,.admin-account-page .admin-top h1{font-family:Cormorant Garamond,serif;font-size:3.1rem;line-height:1;margin:0 0 18px}.account-card{background:#0b241b;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow)}.account-card>p{color:var(--muted);line-height:1.6;margin-top:0}.account-form label{display:block;font-size:.78rem;color:#cfdbd3}.account-form input{width:100%;background:#0e2a20;color:var(--text);border:1px solid rgba(255,255,255,.11);border-radius:9px;padding:12px;outline:none;margin-top:7px}.account-form input:focus{border-color:var(--gold)}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.account-grid .wide{grid-column:1/-1}.account-consent{margin:18px 0!important}.success-box{padding:11px 12px;background:#1cc47717;border:1px solid rgba(28,196,119,.3);color:#8ce2b7;border-radius:9px;margin:14px 0;font-size:.85rem}.admin-account-page{display:grid;gap:16px}.admin-account-card{background:#fff;border:1px solid #e1e6e3;border-radius:16px;padding:22px;color:#1d2922}.admin-account-card>p{color:#6a7971;line-height:1.55;margin-top:0}.admin-account-card .account-form label{color:#405047}.admin-account-card .account-form input{background:#f7f9f8;color:#1d2922;border-color:#dce4df}.admin-account-card .account-consent{color:#405047!important}.admin-account-card .success-box{color:#1f6b48;background:#eef9f3;border-color:#cfe8da}.category-manager-card{background:#fff;border:1px solid #e1e6e3;border-radius:16px;padding:18px;margin:0 0 18px;color:#1d2922}.category-manager-title b,.category-manager-title span{display:block}.category-manager-title b{font-size:1rem}.category-manager-title span{font-size:.77rem;color:#6b7971;margin-top:4px}.category-manager-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.category-manager-item{display:flex;align-items:center;border:1px solid #dce4df;border-radius:12px;overflow:hidden;background:#f9fbfa}.category-manager-item>button{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:9px 10px;color:#35463d;cursor:pointer}.category-manager-item>button.selected{background:#eef7f2}.row-actions{display:inline-flex;align-items:center;gap:4px}.row-actions button{width:32px;height:32px;display:grid;place-items:center;border:1px solid #dbe3de;background:#fff;color:#335246;border-radius:8px;cursor:pointer}.row-actions button:hover{background:#eef7f2}.row-actions button.danger{color:#aa4747;border-color:#ead1d1}.row-actions button.danger:hover{background:#fff0f0}.row-actions button:disabled{opacity:.5;cursor:wait}.status-toggle{border:0;cursor:pointer}.entity-editor-modal{width:min(540px,100%)}.service-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-editor-grid label{margin-top:16px}.admin-services-page table td:last-child{width:92px}.admin-services-page .admin-top{margin-bottom:18px}@media (max-width:700px){.account-grid,.service-editor-grid{grid-template-columns:1fr}.account-grid .wide{grid-column:auto}.category-manager-list{display:grid}.category-manager-item{justify-content:space-between}.app-header nav{flex-wrap:wrap;justify-content:flex-end}}.client-origin-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:700}.client-origin-badge.managed{background:#e6f5ec;color:#17643f}.client-origin-badge.account{background:#eef1ef;color:#6c7972}.read-only-client{font-size:.72rem;color:#87928c;white-space:nowrap}.admin-hours-page .admin-top{margin-bottom:18px}.hours-professional-card,.hours-card{background:#fff;border:1px solid #e1e6e3;border-radius:16px;color:#1d2922}.hours-professional-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;margin-bottom:18px}.hours-professional-card b,.hours-professional-card span{display:block}.hours-professional-card span{font-size:.77rem;color:#6b7971;margin-top:4px}.hours-professional-card select{min-width:260px;background:#f8faf9;border:1px solid #d9e2dd;color:#1d2922;border-radius:10px;padding:11px 12px;outline:none}.hours-card{padding:20px;margin-bottom:18px}.hours-card-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.hours-card-title>div>b,.hours-card-title>div>small{display:block}.hours-card-title>div>b{font-size:1.05rem}.hours-card-title>div>small{color:#6f7c75;font-size:.78rem;line-height:1.45;margin-top:4px;max-width:760px}.hours-card .eyebrow{color:#966d17;margin-bottom:4px}.hours-message{background:#eef8f3;border:1px solid #cfe5d9;color:#315a47;border-radius:12px;padding:12px 14px;margin-bottom:16px}.weekly-hours-list{display:grid;gap:8px}.weekly-hours-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:18px;border:1px solid #e2e8e4;border-radius:12px;padding:12px 14px;background:#fbfcfb}.weekly-hours-row.is-off{background:#f5f7f6;color:#7b8781}.day-toggle{display:flex;align-items:center;gap:11px;cursor:pointer}.day-toggle input{width:18px;height:18px;accent-color:#0f5a40}.day-toggle b,.day-toggle small{display:block}.day-toggle small{font-size:.7rem;color:#718078;margin-top:2px}.time-pair{display:flex;align-items:end;gap:10px}.time-pair>span{padding-bottom:12px;color:#87938c;font-size:.75rem}.time-pair label,.block-form label{font-size:.7rem;color:#65736c}.time-pair input,.block-form input{display:block;margin-top:5px;background:#fff;border:1px solid #d8e0dc;color:#17201b;border-radius:9px;padding:10px 11px;outline:none}.time-pair input:focus,.block-form input:focus{border-color:#b9943d}.time-pair input:disabled{opacity:.45;background:#edf1ef}.block-form{display:grid;grid-template-columns:1fr 1fr 1.2fr auto;gap:12px;align-items:end;margin-bottom:16px}.block-form .btn{min-height:42px}.block-list{display:grid;gap:8px}.block-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid #e2e8e4;border-radius:11px;padding:12px;color:#315a47}.block-row b,.block-row span{display:block}.block-row b{font-size:.82rem}.block-row span{font-size:.72rem;color:#718078;margin-top:3px}.icon-danger{width:34px;height:34px;display:grid;place-items:center;border:1px solid #ead1d1;background:#fff;color:#aa4747;border-radius:8px;cursor:pointer}.icon-danger:hover{background:#fff0f0}@media (max-width:900px){.hours-professional-card,.hours-card-title{align-items:flex-start;flex-direction:column}.hours-professional-card select{min-width:0;width:100%}.weekly-hours-row{grid-template-columns:1fr}.time-pair{justify-content:flex-start}.block-form{grid-template-columns:1fr 1fr}.block-reason,.block-form .btn{grid-column:1/-1}}@media (max-width:520px){.time-pair{display:grid;grid-template-columns:1fr auto 1fr;align-items:end}.time-pair input{width:100%;min-width:0}.block-form{grid-template-columns:1fr}.block-reason,.block-form .btn{grid-column:auto}}.professional-page .sidebar{background:#06271d}.professional-sidebar .admin-user{border-color:#d8b46a29}.professional-access-note{display:flex;gap:12px;align-items:flex-start;background:#eef8f3;border:1px solid #cfe5d9;color:#315a47;border-radius:14px;padding:15px 16px;margin:0 0 18px}.professional-access-note>b,.professional-access-note span{display:block}.professional-access-note span{font-size:.78rem;line-height:1.45;margin-top:4px;color:#60756a}.professional-services-page .admin-top{margin-bottom:18px}.table-subtext{display:block;color:#7a8780;font-size:.7rem;margin-top:4px}.professional-access-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:.67rem;font-weight:700}.professional-access-badge.linked{background:#e1f5e9;color:#17643f}.professional-access-badge.pending{background:#fff5da;color:#83631d}.professional-access-badge.none{background:#ecefed;color:#77837d}.admin-professionals-page .admin-top{margin-bottom:18px}.professional-editor-modal{width:min(650px,100%)}.field-help{font-size:.72rem;color:#9cb0a5;line-height:1.45;margin:7px 0 0}.professional-service-picker{margin:18px 0 4px;padding:16px;border:1px solid rgba(216,180,106,.26);border-radius:13px;background:#d8b46a0d}.professional-service-picker.compact{margin-top:16px}.professional-service-picker>div:first-child>b,.professional-service-picker>div:first-child>span{display:block}.professional-service-picker>div:first-child>b{color:var(--gold)}.professional-service-picker>div:first-child>span{color:#a9b8b0;font-size:.72rem;margin-top:4px;line-height:1.4}.professional-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;max-height:310px;overflow:auto;padding-right:3px}.professional-service-option{display:flex!important;align-items:flex-start;gap:10px;margin:0!important;border:1px solid rgba(255,255,255,.1);border-radius:11px;padding:11px;background:#0c2a20;cursor:pointer;color:#d9e3dd!important}.professional-service-option.selected{border-color:#d8b46ab3;background:#133327}.professional-service-option input{width:17px;height:17px;margin:2px 0 0;accent-color:#d8b46a}.professional-service-option span b,.professional-service-option span small{display:block}.professional-service-option span b{font-size:.8rem;color:#fff}.professional-service-option span small{font-size:.66rem;color:#9fb1a7;margin-top:3px;line-height:1.35}.admin-content .professional-service-picker{background:#f8fbf9;border-color:#dce7e0}.admin-content .professional-service-picker>div:first-child>b{color:#214f3b}.admin-content .professional-service-picker>div:first-child>span{color:#728178}.admin-content .professional-service-option{background:#fff;border-color:#dce4df;color:#34473e!important}.admin-content .professional-service-option.selected{background:#eef8f3;border-color:#87b69e}.admin-content .professional-service-option span b{color:#1d2922}.admin-content .professional-service-option span small{color:#738078}.professional-editor-modal textarea{min-height:78px}.professional-picker-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.professional-selection-count{flex:0 0 auto;display:inline-flex;align-items:center;border-radius:999px;background:#e7f3ec;color:#1c6545;padding:6px 9px;font-size:.66rem;font-weight:800}.professional-category-step,.professional-services-step{margin-top:15px}.professional-step-title{display:flex;align-items:flex-start;gap:9px}.professional-step-title>span{width:25px;height:25px;flex:0 0 25px;border-radius:50%;display:grid;place-items:center;background:#0f5a40;color:#fff;font-weight:800;font-size:.72rem}.professional-step-title b,.professional-step-title small{display:block}.professional-step-title b{font-size:.82rem;color:#233b30}.professional-step-title small{font-size:.67rem;color:#79867f;line-height:1.4;margin-top:2px}.professional-category-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.professional-category-option{display:inline-flex;align-items:center;gap:8px;border:1px solid #d9e3dd;background:#fff;color:#385145;border-radius:999px;padding:9px 13px;cursor:pointer;font-weight:700}.professional-category-option:hover{border-color:#9abaaa}.professional-category-option.active{background:#0f5a40;border-color:#0f5a40;color:#fff}.professional-category-option b{min-width:21px;height:21px;border-radius:999px;display:grid;place-items:center;background:#e4f3ea;color:#17643f;font-size:.63rem}.professional-category-option.active b{background:#ffffff2b;color:#fff}.professional-services-step{border-top:1px solid #e1e9e4;padding-top:14px}.professional-services-step-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.professional-select-all{border:0;background:transparent;color:#17643f;font-size:.7rem;font-weight:800;cursor:pointer;padding:5px 0;white-space:nowrap}.professional-select-all:hover{text-decoration:underline}.professional-category-empty{margin-top:15px;min-height:92px;border:1px dashed #cddbd3;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:9px;color:#78877f;font-size:.75rem;background:#fbfcfb}.professional-category-empty svg{color:#b18a38}@media (max-width:700px){.professional-service-grid{grid-template-columns:1fr}.professional-editor-modal{padding:24px 18px}.professional-picker-heading,.professional-services-step-head{flex-direction:column}.professional-selection-count{align-self:flex-start}.professional-category-grid{display:grid;grid-template-columns:1fr 1fr;width:100%}.professional-category-option{justify-content:space-between}.professional-select-all{align-self:flex-start}}@media (max-width:440px){.professional-category-grid{grid-template-columns:1fr}}.booking-category-section{margin:18px 0 14px}.booking-services-section{margin:18px 0 12px}.booking-section-title{display:flex;align-items:flex-start;gap:10px;margin-bottom:11px}.booking-section-title>span{width:27px;height:27px;flex:0 0 27px;border-radius:50%;display:grid;place-items:center;background:#d8b46a24;border:1px solid var(--line);color:var(--gold);font-size:.72rem;font-weight:800}.booking-section-title b,.booking-section-title small{display:block}.booking-section-title b{font-size:.9rem;color:#f5efe5}.booking-section-title small{font-size:.72rem;color:var(--muted);margin-top:3px;line-height:1.4}.booking-category-tabs{display:flex;flex-wrap:wrap;gap:9px}.booking-category-tabs button{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.1);background:#0b241b;color:#d5dfd9;border-radius:999px;padding:10px 13px;cursor:pointer;transition:.2s}.booking-category-tabs button:hover{border-color:#d8b46a8c}.booking-category-tabs button.active{background:linear-gradient(135deg,#154936,#0e3527);border-color:var(--gold);color:#fff;box-shadow:0 9px 24px #0000002e}.booking-category-tabs button svg{color:var(--gold)}.booking-category-tabs button b{min-width:22px;height:22px;border-radius:999px;display:grid;place-items:center;background:#d8b46a1f;color:var(--gold);font-size:.65rem}.booking-category-tabs button.active b{background:#ffffff21;color:#fff}.appointment-row-actions{display:flex;align-items:center;gap:6px}.appointment-row-actions button{display:inline-flex;align-items:center;gap:5px;border:1px solid #d8e2dc;background:#fff;color:#285943;border-radius:8px;padding:7px 9px;cursor:pointer;font-size:.7rem;font-weight:800}.appointment-row-actions button:hover{background:#eef7f2}.appointment-row-actions button.danger{color:#a54343;border-color:#ead1d1}.appointment-row-actions button.danger:hover{background:#fff1f1}.admin-changed-badge{display:inline-flex;margin-left:6px;background:#fff1c8;color:#80601c;border-radius:999px;padding:4px 7px;font-size:.62rem;font-weight:800}.appointment-edit-modal textarea{width:100%;min-height:82px;resize:vertical;background:#0e2a20;color:var(--text);border:1px solid rgba(255,255,255,.11);border-radius:9px;padding:12px;outline:none}.appointment-edit-modal textarea:focus{border-color:var(--gold)}.edit-appointment-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:13px;margin:10px 0 4px}.edit-appointment-summary small,.edit-appointment-summary b{display:block}.edit-appointment-summary small{color:#90a39a;font-size:.66rem}.edit-appointment-summary b{color:#fff;font-size:.78rem;margin-top:3px}.change-whatsapp-note{display:flex;align-items:flex-start;gap:9px;margin:14px 0;padding:11px 12px;background:#1cc47714;border:1px solid rgba(28,196,119,.24);border-radius:10px;color:#a8dfc2;font-size:.74rem;line-height:1.45}.client-appointment-change{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px;background:#d8b46a14;border:1px solid rgba(216,180,106,.26);border-radius:10px;padding:10px 11px;color:#ead394}.client-appointment-change.canceled{background:#ef6b6b14;border-color:#ef6b6b40;color:#ffb2b2}.client-appointment-change b,.client-appointment-change small{display:block}.client-appointment-change small{font-size:.7rem;color:#b8c4bd;margin-top:3px;line-height:1.4}.admin-mobile-header{display:none}.admin-sidebar-head{display:flex;align-items:center;justify-content:space-between}.admin-sidebar-close{display:none;border:0;background:#ffffff0f;color:#fff;width:38px;height:38px;border-radius:10px;place-items:center;cursor:pointer}.admin-mobile-backdrop{display:none}.admin-mobile-menu-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(216,180,106,.28);background:#113126;color:var(--gold);border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}@media (max-width:900px){.admin-main-page{display:block;min-height:100vh;padding-top:68px}.admin-main-page .admin-mobile-header{display:flex;position:fixed;top:0;left:0;right:0;height:68px;z-index:80;align-items:center;justify-content:space-between;padding:10px 14px;background:#082219;border-bottom:1px solid rgba(216,180,106,.14);box-shadow:0 8px 26px #0000002e}.admin-main-page .admin-mobile-header .brand .monogram{font-size:31px}.admin-main-page .admin-mobile-header .brand span{font-size:.82rem}.admin-main-page .admin-mobile-header .brand strong{font-size:.56rem}.admin-main-page .admin-sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,88vw);min-height:100vh;z-index:100;transform:translate(-105%);transition:transform .23s ease;box-shadow:20px 0 60px #00000059;padding:18px 16px}.admin-main-page .admin-sidebar.mobile-open{transform:translate(0)}.admin-main-page .admin-sidebar .admin-sidebar-close{display:grid}.admin-main-page .admin-sidebar .brand{margin-bottom:22px}.admin-main-page .admin-sidebar .admin-user{display:flex}.admin-main-page .admin-sidebar nav{display:grid;overflow:visible;gap:6px}.admin-main-page .admin-sidebar nav button{width:100%;font-size:.9rem;padding:12px}.admin-main-page .admin-sidebar .sidebar-logout{position:static;margin-top:auto}.admin-main-page .admin-mobile-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#00000080;border:0;padding:0}.admin-main-page .admin-content{padding:18px 14px 42px;overflow:visible}.admin-main-page .admin-top{gap:12px}.admin-main-page .admin-top .btn{min-height:44px}.admin-main-page .agenda-toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}.admin-main-page .agenda-toolbar>label{min-width:0}.admin-main-page .admin-toolbar input{width:100%}.admin-main-page .agenda-mode-switch{width:100%;display:grid;grid-template-columns:1fr 1fr}.admin-main-page .agenda-mode-switch button{width:100%}.admin-main-page .week-range-label{padding:0}}@media (max-width:700px){.appointment-admin-table{border:0;background:transparent;overflow:visible}.appointment-admin-table table,.appointment-admin-table tbody{display:block}.appointment-admin-table thead{display:none}.appointment-admin-table tr{display:block;background:#fff;border:1px solid #dfe7e2;border-radius:14px;padding:10px 12px;margin-bottom:10px;box-shadow:0 5px 14px #20392e0a}.appointment-admin-table td{display:flex!important;align-items:flex-start;justify-content:space-between;gap:14px;white-space:normal!important;border-bottom:1px solid #edf1ef!important;padding:9px 0!important;text-align:right!important}.appointment-admin-table td:last-child{border-bottom:0!important}.appointment-admin-table td:before{content:attr(data-label);flex:0 0 92px;text-align:left;color:#78877f;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.appointment-admin-table td.empty-cell{display:block!important;text-align:center!important}.appointment-admin-table td.empty-cell:before{display:none}.appointment-row-actions{justify-content:flex-end;flex-wrap:wrap}.appointment-row-actions button{min-height:36px}.admin-changed-badge{margin-left:4px}.edit-appointment-summary{grid-template-columns:1fr}.appointment-edit-modal{padding:26px 18px}.booking-category-tabs{display:grid;grid-template-columns:1fr 1fr}.booking-category-tabs button{justify-content:space-between;border-radius:12px;min-height:48px}.booking-category-tabs button svg{flex:0 0 auto}}@media (max-width:480px){.booking-category-tabs{grid-template-columns:1fr}.booking-category-tabs button{width:100%}.admin-main-page .admin-mobile-header .brand span,.admin-main-page .admin-mobile-header .brand strong{display:block}}
