@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Prata&display=swap');
:root{--ink:#100807;--panel:#20100e;--panel2:#2a1311;--wine:#74121a;--gold:#c29358;--cream:#f2e3d0;--muted:#a98f79;--line:rgba(194,147,88,.25);--ok:#58a36b;--warn:#d0a64f;--bad:#c45b64}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#130908;color:var(--cream);font-family:Manrope,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.login-shell{min-height:100dvh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 70% 20%,#4b1114,transparent 35%),#100706}.login-card{width:min(100%,430px);padding:36px;border:1px solid var(--line);border-radius:22px;background:rgba(29,14,12,.95);box-shadow:0 40px 100px #0008}.admin-brand{display:flex;align-items:center;gap:13px}.admin-brand>span{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--cream);color:#160b09;font-size:1.7rem}.admin-brand h1{font:400 1.35rem Prata;margin:0}.admin-brand p{font-size:.7rem;color:var(--muted);margin:4px 0 0}.login-card form{display:grid;gap:16px;margin-top:32px}label{display:grid;gap:7px;font-size:.74rem;color:#c4ab95}input,select{width:100%;border:1px solid var(--line);border-radius:11px;background:#160b09;color:var(--cream);padding:13px 14px;outline:none}input:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c2935815}.login-card button,.primary{border:1px solid #ae5558;border-radius:11px;background:linear-gradient(#8a1922,#4e0b10);color:#fff;padding:13px 18px}.form-error{color:#dd777e;min-height:1.2em;font-size:.76rem}.app{min-height:100dvh;display:grid;grid-template-columns:245px 1fr}.sidebar{position:sticky;top:0;height:100dvh;padding:24px 18px;border-right:1px solid var(--line);background:#120907;display:flex;flex-direction:column}.sidebar nav{display:grid;gap:7px;margin-top:40px}.nav-item,.logout{border:0;border-radius:10px;background:transparent;color:#bfa995;text-align:left;padding:13px 15px}.nav-item:hover,.nav-item.active{color:#fff;background:#321512}.logout{margin-top:auto}.workspace{min-width:0}.topbar{height:78px;display:flex;align-items:center;gap:18px;padding:0 28px;border-bottom:1px solid var(--line);background:#160b09aa;backdrop-filter:blur(15px);position:sticky;top:0;z-index:5}.topbar>div{display:grid}.topbar small{color:var(--muted);font-size:.64rem}.refresh{margin-left:auto;border:1px solid var(--line);border-radius:9px;color:var(--cream);background:transparent;padding:9px 13px}.menu{display:none}.view{padding:34px 28px 70px;max-width:1450px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.page-head h2{font:400 clamp(1.8rem,3vw,2.7rem) Prata;margin:3px 0}.eyebrow{color:var(--gold);font-size:.67rem;text-transform:uppercase;letter-spacing:.18em}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px}.stat{border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#261310,#190c0a);padding:20px}.stat span{display:block;color:var(--muted);font-size:.7rem}.stat strong{display:block;font:400 clamp(1.5rem,2.4vw,2.3rem) Prata;margin-top:8px}.panel{border:1px solid var(--line);border-radius:18px;background:#1b0e0c;padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel h3{font:400 1.35rem Prata}.panel-head button{border:0;background:none;color:var(--gold)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px}.popular-services{display:grid;gap:10px;color:var(--muted);font-size:.76rem}.popular-services>div{display:flex;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}.popular-services b{color:var(--gold)}.booking-list,.services-list{display:grid;gap:10px}.booking-card,.service-row{display:grid;align-items:center;gap:15px;border:1px solid var(--line);border-radius:14px;background:#1c0e0c;padding:16px}.booking-card{grid-template-columns:115px 1fr 1fr 155px}.booking-time strong,.booking-client strong{display:block}.booking-card small,.service-row small{color:var(--muted)}.status{width:100%;padding:10px}.services-list{grid-template-columns:repeat(2,1fr)}.service-row{grid-template-columns:1fr auto}.service-row h3{font-size:.95rem;margin:0 0 5px}.service-meta{display:flex;gap:15px;color:var(--muted);font-size:.72rem}.service-actions{display:flex;gap:8px}.service-actions button,.secondary{border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--cream);padding:9px 11px}.inactive{opacity:.55}.hint{color:var(--muted);font-size:.76rem}dialog{width:min(92vw,520px);border:1px solid var(--line);border-radius:18px;background:#1c0e0c;color:var(--cream);padding:0;box-shadow:0 30px 100px #000b}dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}dialog form{padding:22px;display:grid;gap:15px}dialog header,dialog footer{display:flex;align-items:center;justify-content:space-between;gap:10px}dialog header h3{font:400 1.5rem Prata;margin:0}dialog header button{border:0;background:none;color:#fff;font-size:1.8rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.switch{display:flex;align-items:center}.switch input{width:auto}.toast{position:fixed;z-index:30;right:20px;top:20px;max-width:360px;padding:13px 16px;border-radius:11px;background:#f1e4d2;color:#1b0d0b;box-shadow:0 20px 60px #0008;opacity:0;transform:translateY(-15px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:none}
@media(max-width:980px){.stats{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.services-list{grid-template-columns:1fr}.booking-card{grid-template-columns:100px 1fr 145px}.booking-service{display:none}}
@media(max-width:720px){body{overflow-x:hidden}.app{display:block;max-width:100%;overflow-x:hidden}.sidebar{position:fixed;z-index:20;inset:0 25% 0 0;transform:translateX(-105%);transition:.25s;box-shadow:30px 0 80px #0009}.sidebar.open{transform:none}.topbar{height:68px;padding:0 14px}.menu{display:grid;place-items:center;width:44px;height:44px;border:0;background:none;color:#fff;font-size:1.35rem}.workspace,.view,.services-list,.service-row,.service-row>div{min-width:0;max-width:100%}.view{padding:24px 14px 90px}.stats{grid-template-columns:1fr 1fr}.booking-card{grid-template-columns:1fr;gap:10px}.booking-service{display:block}.page-head{align-items:start;flex-wrap:wrap}.page-head select{width:auto;max-width:100%}.service-row{grid-template-columns:minmax(0,1fr)}.service-row h3,.service-meta{overflow-wrap:anywhere}.service-meta{flex-wrap:wrap;gap:6px 12px}.service-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.service-actions button{min-width:0}.form-row{grid-template-columns:1fr}}
.promotions-list{display:grid;gap:12px}.promotion-row{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,#2b1210,#180b09);padding:20px}.promotion-row h3{font:400 1.25rem Prata;margin:8px 0}.promotion-row p{margin:0 0 8px;color:#c4ab95;font-size:.78rem}.promotion-row small{color:var(--muted)}.promo-state{display:flex;align-items:center;gap:9px}.promo-state span{border:1px solid #b45a59;border-radius:999px;padding:4px 9px;color:#e6ba7d;font-size:.65rem}.promo-state b{font-size:.65rem;color:var(--ok)}
@media(max-width:720px){.promotion-row{grid-template-columns:1fr}.promotion-row .service-actions{justify-content:flex-start}.page-head .primary{white-space:nowrap}}
.booking-client a{color:#d8b488}
.booking-actions{display:grid;gap:7px}.booking-actions>button,.schedule-row>button{border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--cream);padding:9px 11px}.schedule-list{display:grid;gap:10px}.schedule-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:14px;background:#1c0e0c;padding:17px}.schedule-row>div{display:grid;gap:5px}.schedule-row span{color:var(--muted);font-size:.74rem}
@media(max-width:720px){.schedule-row{align-items:flex-start;flex-direction:column}.booking-actions{grid-template-columns:1fr 1fr}.booking-actions>button{min-height:44px}}
