:root{--bg: #060606;--bg-soft: #111111;--card: rgba(18, 18, 18, .92);--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .16);--text: #f7f7f5;--muted: #b4b4b0;--gold: #c7a56a;--gold-soft: rgba(199, 165, 106, .16);--danger: #ef4444;--success: #22c55e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(199,165,106,.1),transparent 26%),radial-gradient(circle at top right,rgba(255,255,255,.06),transparent 24%),linear-gradient(180deg,#0c0c0c 0%,var(--bg) 55%)}a{color:inherit;text-decoration:none}button,input,select,textarea{width:100%;font:inherit;color:var(--text);background:#0d0d0d;border:1px solid var(--line);border-radius:18px;padding:14px 16px}button{cursor:pointer}textarea{resize:vertical}img{max-width:100%;display:block}.app-shell{min-height:100vh}.content{max-width:1180px;margin:0 auto;padding:24px 16px 60px}.topbar{position:sticky;top:0;z-index:15;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080808d1}.topbar h1{margin:4px 0;font-size:clamp(1.2rem,2vw,1.6rem)}.topbar p{margin:0;color:var(--muted);font-size:.92rem}.topbar nav{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.topbar nav a,.topbar nav button{width:auto;background:transparent;border:1px solid var(--line);padding:10px 14px;border-radius:999px}.brand-box{display:flex;align-items:center;gap:16px}.brand-logo{width:84px;height:84px;object-fit:cover;border-radius:22px;border:1px solid var(--line);background:#0d0d0d}.brand-logo.admin-preview{width:60px;height:60px}.brand-kicker,.pill,.card-label{letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;color:var(--gold)}.pill,.secondary{display:inline-flex;width:auto;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(199,165,106,.18);background:var(--gold-soft)}.hero-card,.card,.auth-card,.sub-card{background:linear-gradient(180deg,#ffffff08,#ffffff03);border:1px solid var(--line);border-radius:28px;box-shadow:0 30px 80px #00000061}.hero-card{min-height:430px;padding:34px;display:flex;align-items:end;overflow:hidden}.hero-content{max-width:760px}.hero-card h2{font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.02;margin:18px 0}.hero-card p{max-width:720px;color:var(--muted);font-size:1.05rem;line-height:1.7}.card,.auth-card,.sub-card{padding:22px}.auth-card{max-width:560px;margin:0 auto}.inline-btn{width:auto}.primary-btn,.ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:18px;font-weight:600}.primary-btn{background:linear-gradient(135deg,#fff,#dcc9a1);color:#060606;border:none}.ghost-btn{background:transparent}.ghost-btn.danger{border-color:#ef444452;color:#f8b4b4}.compact{min-height:42px;padding:10px 14px}.badge{width:auto;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;border:1px solid rgba(199,165,106,.2);background:#c7a56a24;color:var(--gold);font-size:.84rem}.grid{display:grid;gap:16px}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stack-sm>*+*{margin-top:10px}.stack-md>*+*{margin-top:14px}.stack-lg>*+*{margin-top:22px}.stack-xl>*+*{margin-top:28px}.section-head h2{margin:0 0 6px;font-size:clamp(1.7rem,3vw,2.4rem)}.section-head p,.card p,.muted-box{color:var(--muted);line-height:1.6}.hero-actions,.button-row,.row-between,.appointment-row{display:flex;gap:12px}.row-between,.appointment-row{justify-content:space-between;align-items:center}.align-end{align-items:flex-end}.booking-layout{align-items:start}.slots-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.slot-btn{min-height:54px;border-radius:18px;background:#111}.slot-btn.active{outline:2px solid var(--gold);border-color:transparent}.slot-btn:disabled{opacity:.3;cursor:not-allowed}.metric-card strong{display:block;font-size:1.8rem;margin-top:10px}.metric-card span{color:var(--muted)}.mini-panel{padding:14px;border:1px solid var(--line);border-radius:20px;background:#ffffff05}.mini-panel.warning{border-color:#c7a56a38;background:#c7a56a14}.schedule-row{padding:14px;border:1px solid var(--line);border-radius:20px;background:#ffffff05}.switch-line{display:flex;align-items:center;gap:10px;margin-bottom:12px}.switch-line input{width:auto}.mini-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-row{padding:16px 0;border-top:1px solid var(--line)}.appointment-row:first-of-type{border-top:none;padding-top:0}.error-text{color:#fca5a5}.success-text{color:#86efac}.accent-card{border-color:#c7a56a2e}.compact-wrap{flex-wrap:wrap}.barber-card{text-align:center}.barber-avatar{width:100%;aspect-ratio:4 / 4.5;object-fit:cover;border-radius:22px;margin-bottom:16px;border:1px solid var(--line)}.avatar-fallback{width:100%;aspect-ratio:4 / 4.5;display:grid;place-items:center;border-radius:22px;margin-bottom:16px;background:#c7a56a1f;color:var(--gold);font-size:3rem;border:1px solid rgba(199,165,106,.18)}.avatar-fallback.mini{width:52px;height:52px;aspect-ratio:auto;font-size:1.2rem;margin-bottom:0;border-radius:16px}.mini-avatar{width:52px;height:52px;object-fit:cover;border-radius:16px}.barber-highlight{display:flex;gap:12px;align-items:center}.accent-line{height:4px;border-radius:999px;margin-top:14px}.service-edit-card{padding:14px;border-radius:20px;border:1px solid var(--line);background:#ffffff05}.service-admin-list{max-height:650px;overflow:auto}@media (max-width: 900px){.cols-2,.cols-3,.cols-4,.booking-layout{grid-template-columns:1fr}.slots-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 720px){.topbar,.brand-box{flex-direction:column;align-items:flex-start}.hero-card{min-height:auto;padding:24px}.slots-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.row-between,.appointment-row,.hero-actions{flex-direction:column;align-items:flex-start}}.compact-hero{min-height:280px}.selectable{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.selectable:hover{transform:translateY(-3px);border-color:var(--line-strong)}.selectable.selected{border-color:#c7a56a6b;box-shadow:0 0 0 1px #c7a56a1f,0 30px 80px #00000061}.service-color-card{position:relative;overflow:hidden}.service-color-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--service-color, var(--gold))}.service-preview{border-width:2px}.muted-text{color:var(--muted)}.fresha-grid .slot-btn{transition:transform .16s ease,border-color .16s ease,background .16s ease,opacity .16s ease;background:linear-gradient(180deg,#ffffff08,#ffffff03)}.fresha-grid .slot-btn:hover:not(:disabled){transform:translateY(-2px);border-color:#ffffff38}.slot-btn.active{background:#c7a56a1f;box-shadow:0 12px 30px #0000003d}.slot-skeleton{min-height:54px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(90deg,#ffffff08,#ffffff14,#ffffff08);background-size:200% 100%;animation:pulse-slide 1.2s linear infinite}@keyframes pulse-slide{0%{background-position:200% 0}to{background-position:-200% 0}}.calendar-board{display:grid;grid-template-columns:repeat(7,minmax(170px,1fr));gap:12px;overflow-x:auto;padding-bottom:4px}.calendar-day{min-width:170px;border:1px solid var(--line);border-radius:22px;background:#ffffff05;overflow:hidden}.calendar-day-head{padding:14px 16px;border-bottom:1px solid var(--line);color:var(--muted);font-weight:600}.calendar-day-body{min-height:280px;padding:12px;display:flex;flex-direction:column;gap:10px}.calendar-event{border-left:4px solid var(--gold);border-radius:16px;padding:12px;background:#ffffff08}.calendar-event p,.calendar-event small{margin:4px 0 0;color:var(--muted)}.calendar-empty{min-height:96px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:16px;color:var(--muted)}.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.assign-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.appointment-row{border-left:4px solid transparent;padding-left:16px}@media (max-width: 1100px){.calendar-board{grid-template-columns:repeat(4,minmax(170px,1fr))}}@media (max-width: 720px){.assign-list{grid-template-columns:1fr}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-confirm-box{border-top:1px solid rgba(255,255,255,.08);padding-top:1rem;display:grid;gap:.9rem}.confirm-summary span{color:var(--muted);font-size:.95rem}.brand-link{color:inherit}.burger-area{position:relative;margin-left:auto}.burger-btn{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:#ffffff08}.burger-btn span{display:block;width:22px;height:2px;background:var(--text);margin:3px 0;transition:transform .18s ease,opacity .18s ease}.burger-btn.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.burger-btn.open span:nth-child(2){opacity:0}.burger-btn.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.burger-panel{position:absolute;right:0;top:calc(100% + 12px);min-width:240px;padding:12px;border-radius:24px;border:1px solid var(--line);background:#0a0a0af5;box-shadow:0 30px 80px #00000073;display:none}.burger-panel.open{display:grid;gap:10px}.burger-link{display:flex;align-items:center;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:#ffffff05}button.burger-link{width:100%;text-align:left}.burger-logout{color:#f5c6c6}.site-footer{border-top:1px solid var(--line);background:#080808d1}.footer-inner{display:flex;justify-content:space-between;align-items:center;padding-top:18px;padding-bottom:18px}.footer-brand{font-weight:700;letter-spacing:.08em;text-transform:uppercase}.calendar-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;overflow-x:auto}.calendar-day{min-width:180px;border-radius:26px;border:1px solid var(--line);background:#ffffff05;overflow:hidden}.calendar-day-head{padding:14px 16px;font-weight:700;border-bottom:1px solid var(--line);color:var(--muted)}.calendar-day-body{padding:12px;display:grid;gap:10px;min-height:200px}.calendar-event{width:100%;text-align:left;border-left:4px solid var(--gold);border-radius:18px;background:#ffffff0a;padding:14px}.calendar-event p,.calendar-event small{margin:6px 0 0;color:var(--muted);display:block}.event-button{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.event-button:hover{transform:translateY(-2px);box-shadow:0 20px 40px #00000038}.calendar-empty{border:1px dashed var(--line);border-radius:18px;min-height:86px;display:grid;place-items:center;color:var(--muted)}.appointment-editor-card{border-color:#c7a56a38;box-shadow:0 30px 80px #00000073}.active-chip{border-color:#c7a56a52;background:#c7a56a1f}.service-stat-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.service-stat-row:first-of-type{border-top:none;padding-top:0}.service-dot{width:12px;height:12px;border-radius:999px;flex:0 0 12px}.appointment-action-row{background:transparent;border:none;border-top:1px solid var(--line);border-radius:0;padding-left:0;padding-right:0}.appointment-action-row:hover{opacity:.92}@media (max-width: 900px){.calendar-board{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media (max-width: 720px){.topbar{flex-direction:row;align-items:center}.brand-box p{display:none}.brand-logo{width:64px;height:64px}.footer-inner{flex-direction:column;align-items:flex-start;gap:6px}.calendar-board{grid-template-columns:repeat(7,minmax(220px,1fr))}}.burger-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;border:none;z-index:19}.burger-panel{z-index:20}.global-toast{position:sticky;top:14px;z-index:40;margin:0 auto 14px;width:min(92vw,560px);padding:14px 18px;border-radius:18px;border:1px solid var(--line);background:#0c0c0cf5;box-shadow:0 18px 40px #00000047;text-align:center;font-weight:600}.global-toast.success{border-color:#86efac40;color:#d1fae5}.global-toast.error{border-color:#fca5a540;color:#fecaca}.empty-state-box{min-height:88px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:18px;color:var(--muted);padding:16px;text-align:center}.readable-calendar .calendar-day-head{font-size:1.05rem;color:var(--text);background:#ffffff05}.readable-calendar .calendar-day-body{gap:12px;min-height:260px}.readable-calendar .calendar-event{padding:16px;background:linear-gradient(180deg,#ffffff0d,#ffffff06)}.readable-calendar .calendar-event strong{display:block;font-size:1.02rem;line-height:1.35}.readable-calendar .calendar-event p{font-size:1rem;color:#ece7dd}.readable-calendar .calendar-event small{font-size:.93rem}@media (max-width: 720px){.global-toast{width:calc(100vw - 28px)}.burger-area{align-self:flex-start}}.specialist-card .primary-btn{margin-top:10px}.burger-area{position:relative;isolation:isolate;z-index:40}.burger-panel{display:grid;gap:10px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px) scale(.98);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}.burger-panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}.burger-link{justify-content:center}
