:root{--orange:#ee870b;--orange-dark:#b75c00;--ink:#21201e;--muted:#85817b;--line:#eeece8;--cream:#fff7ed;--green:#25846d;--radius:18px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#faf9f6;font:14px/1.55 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:-1.2px;line-height:1.18;margin-bottom:10px}h2{font-size:20px;letter-spacing:-.5px}h3{font-size:15px}p{color:#79756e}small{font-size:12px;color:var(--muted)}button,.btn{border:1px solid transparent;border-radius:10px;background:var(--orange);color:#24180b;padding:11px 18px;font-family:inherit;font-weight:600;font-size:13px;line-height:1.4;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;transition:.15s}button:hover,.btn:hover{filter:brightness(.96);transform:translateY(-1px)}button:disabled{opacity:.5;cursor:not-allowed}.outline{border-color:#d8d4ce;background:white;color:var(--ink)}.danger{color:#ae3737;background:#fff0ee;border-color:#f3d5ce}.link{background:none;border:none;padding:0;color:var(--muted);font:inherit}.small{padding:6px 10px;font-size:12px}.brand{font-size:32px;font-weight:750;letter-spacing:-1.7px;display:inline-block;line-height:1}.brand span{color:var(--orange);font-size:16px;margin-left:2px}aside{width:246px;position:fixed;inset:0 auto 0 0;background:white;border-right:1px solid var(--line);padding:34px 22px 20px;display:flex;flex-direction:column;z-index:20;overflow:auto}.business{display:flex;gap:10px;padding:16px 10px;border:1px solid var(--line);border-radius:12px;margin:32px 0 22px;align-items:center}.business-mark{background:#ffedda;color:#ba773b;border-radius:8px;width:34px;height:34px;display:grid;place-items:center;font-weight:bold;font-size:20px}.business strong{display:block;font-size:12px;max-width:145px;overflow:hidden;text-overflow:ellipsis}.business small{display:block}nav{display:grid;gap:4px}nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;color:#7d7973;border-radius:9px;font-size:13px}nav a span{font-size:19px;width:22px;line-height:1}.selected{background:var(--cream);color:#874c13;font-weight:650}nav a:hover{background:#faf6f0}.aside-bottom{margin-top:auto;padding-top:30px;display:grid;gap:12px;font-size:12px}.panel main{margin-left:246px;padding:36px 42px 60px;max-width:1700px;min-height:93vh}.panel footer{margin-left:246px}.page-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#a68e71;margin-bottom:12px}.page-head p{margin-bottom:0}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:22px}.card h2{margin-bottom:20px}.soft{padding:16px;background:#f8f6f2;border-radius:10px;color:#847768;line-height:1.8}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat{padding:22px;background:white;border:1px solid var(--line);border-radius:15px;position:relative;overflow:hidden}.stat:first-child{background:var(--cream);border-color:#ffe4c4}.stat small{display:block}.stat strong{display:block;font-size:28px;letter-spacing:-.7px;margin:7px 0}.stat-icon{position:absolute;right:18px;top:15px;font-size:24px;color:#c4b29e}.two-cols{display:grid;grid-template-columns:1.7fr 1fr;gap:22px}.equal-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px}.row{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line)}.row:last-child{border:0}.identity{display:flex;gap:12px;align-items:center}.avatar{height:40px;width:40px;flex:0 0 40px;border-radius:50%;background:#fceddb;color:#a27240;display:grid;place-items:center;font-size:13px;font-weight:650}.identity small{display:block}.time{font-size:15px;font-weight:650}.badge{font-size:11px;border-radius:6px;padding:5px 8px;background:#f3f1ee;display:inline-block;white-space:nowrap}.confirmed,.completed{background:#eaf5ef;color:#288362}.pending{background:#fff2de;color:#a86c17}.cancelled,.rejected,.noshow{background:#fff0ed;color:#b75c51}.pending-card{border-color:#f4dcbd;background:#fffdf9}.empty{padding:42px 20px;text-align:center;color:var(--muted)}.empty b{display:block;color:#696158;font-weight:500;margin-bottom:5px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{font-weight:500;color:#9b958e;font-size:11px;padding:13px 14px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:16px 14px;border-bottom:1px solid var(--line)}tr:last-child td{border-bottom:0}td small{display:block}td .actions{flex-wrap:nowrap}label{display:grid;gap:7px;font-size:12px;color:#6e685f;font-weight:550}input,select,textarea{background:white;border:1px solid #dedad3;border-radius:9px;padding:11px 12px;font-family:inherit;font-weight:400;font-size:14px;line-height:1.4;color:var(--ink);width:100%;min-width:0;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ee870b14}textarea{min-height:90px;resize:vertical}input[type=checkbox]{width:18px;height:18px;accent-color:var(--orange)}.check{display:flex;align-items:center;gap:10px;font-weight:400}.stack{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}.form-footer{border-top:1px solid var(--line);padding-top:20px;margin-top:20px;display:flex;justify-content:flex-end;gap:10px}.filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.filters label{min-width:130px}.filters input{max-width:300px}.notice{padding:14px 18px;background:#eaf5ef;color:#2d7761;border:1px solid #cee8de;border-radius:11px;margin-bottom:20px}.error{background:#fff0ec;border-color:#f5d5cc;color:#9f4739}.service-name{font-weight:600}.service-category{font-size:11px;color:var(--muted);font-weight:400}.calendar-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:white}.calendar{min-width:850px;display:grid;grid-template-columns:64px repeat(7,1fr);position:relative}.day-head{padding:16px 8px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;color:var(--muted);font-size:11px}.day-head strong{display:block;color:var(--ink);font-size:20px}.day-head.is-today{background:var(--cream);color:var(--orange)}.day-column{height:720px;border-left:1px solid var(--line);position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 29px,#f1efeb 29px,#f1efeb 30px)}.time-column{height:720px;position:relative;color:#a6a099;font-size:10px}.time-label{position:absolute;right:10px;transform:translateY(-7px)}.cal-event{position:absolute;left:4px;right:4px;border-radius:6px;padding:5px 7px;background:#fff0dd;border-left:3px solid var(--orange);overflow:hidden;font-size:10px;line-height:1.3;min-height:28px}.cal-event b{display:block;font-size:11px}.cal-event small{font-size:9px;color:#86715e;display:block}.calendar-day .calendar{grid-template-columns:64px 1fr;min-width:300px}.chart{height:210px;display:flex;align-items:end;gap:5px;padding-top:20px;border-bottom:1px solid var(--line);overflow:auto}.bar-item{flex:1;min-width:14px;max-width:70px;display:flex;align-items:center;flex-direction:column;justify-content:end;height:100%;gap:7px}.bar{width:65%;background:var(--orange);border-radius:5px 5px 0 0;min-height:2px}.bar-item small{font-size:9px}.progress{height:7px;border-radius:10px;background:#f2eeea;overflow:hidden}.progress span{height:100%;background:var(--orange);display:block}.heatmap{display:grid;grid-template-columns:36px repeat(12,1fr);gap:4px;font-size:10px;text-align:center;min-width:390px}.heatmap div{padding:7px 2px;border-radius:4px}.team-card{padding:22px;border:1px solid var(--line);border-radius:14px;background:white}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.public-nav{padding:26px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #efebe5;background:#fff}.public-main{max-width:1140px;margin:45px auto;padding:0 24px;min-height:73vh}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;margin-bottom:35px}.hero h1{font-size:52px;letter-spacing:-2px}.hero em,.auth-grid em{font-style:normal;color:var(--orange-dark)}.lead{font-size:16px;line-height:1.8}.hero-art{border-radius:24px;background:linear-gradient(140deg,#ffebd1,#f8d4a2);padding:35px}.mini-schedule{background:white;border-radius:14px;box-shadow:0 15px 50px #ad702225;padding:20px;transform:rotate(-3deg)}.mini-schedule .row{font-size:12px}.public .card{box-shadow:0 5px 30px #4d351004}.public .two-cols{grid-template-columns:1fr 1.5fr}.steps{display:flex;gap:8px;margin-bottom:25px}.step{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--cream);color:var(--orange-dark);font-weight:650}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot{position:relative}.slot input{position:absolute;opacity:0;width:0}.slot span{display:block;text-align:center;padding:10px;border:1px solid var(--line);border-radius:8px;color:#6f6556;cursor:pointer}.slot input:checked+span{background:var(--orange);border-color:var(--orange);color:#2c1a05}.slot input:focus-visible+span{outline:3px solid #d17824}.auth-card{max-width:510px;margin:60px auto;padding:32px;background:white;border:1px solid var(--line);border-radius:22px}.auth-card .brand{margin-bottom:36px}.auth-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:center;padding:30px 0}.auth-grid h1{font-size:44px}.auth-form{padding:34px}.auth-form small{display:block;margin-top:22px}.decoration{font-weight:750;font-size:120px;line-height:1.4;color:#f3dfc4;letter-spacing:-15px}.decoration span{color:var(--orange);font-size:45px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.photo-grid img{width:100%;height:170px;object-fit:cover;border-radius:12px}.profile-cover{width:100%;height:220px;object-fit:cover;border-radius:18px;margin-bottom:20px}footer{font-size:11px;color:#aaa297;text-align:center;padding:24px}.mobile-menu,.shade{display:none}dialog{border:1px solid var(--line);border-radius:18px;max-width:620px;width:90%;padding:25px}dialog::backdrop{background:#211d1955}pre{white-space:pre-wrap}.pill{background:white;border:1px solid var(--line);border-radius:50px;padding:7px 13px;font-size:11px;color:#83786b}.tick{font-size:54px;color:var(--green)}.tight{max-width:800px}.status-actions form{display:inline-block;margin:3px}.hours-row{display:grid;grid-template-columns:130px 100px 1fr 1fr;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.hours-row strong{font-size:13px}.account-label{color:#c78435}
@media(min-width:1500px){.panel main{padding:45px 65px}}@media(max-width:1100px){.panel main{padding:30px 24px}.stats{grid-template-columns:repeat(2,1fr)}.two-cols{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){aside{transform:translateX(-100%);transition:transform .2s}.menu-open aside{transform:translateX(0)}.menu-open .shade{display:block;position:fixed;inset:0;background:#1d191666;z-index:19}.mobile-menu{display:block;position:fixed;left:12px;top:14px;z-index:18;padding:8px 12px;background:white;border:1px solid var(--line)}.panel main{margin:0;padding:74px 17px 25px}.panel footer{margin:0}.page-head{align-items:start;margin-bottom:23px}.page-head h1{font-size:26px}.page-head .btn{padding:10px;font-size:11px}.page-head .actions{justify-content:end}.card{padding:18px;border-radius:14px}.stats{gap:10px}.stat{padding:16px}.stat strong{font-size:25px}.stat-icon{display:none}.equal-cols,.form-grid,.team-grid,.public .two-cols,.auth-grid,.hero{grid-template-columns:1fr}.hero h1{font-size:38px}.hero-art{display:none}.public-main{margin:26px auto;padding:0 18px}.public-nav{padding:22px 18px}.brand{font-size:28px}.auth-grid{gap:20px;padding:15px 0}.auth-grid h1{font-size:34px}.decoration{display:none}.auth-form{padding:24px}.auth-card{margin:20px 14px;padding:25px}.filters label{flex:1}.filters input{max-width:100%}.photo-grid{grid-template-columns:repeat(2,1fr)}.hours-row{grid-template-columns:90px 55px 1fr 1fr;gap:7px}.hours-row input{padding:8px 3px;font-size:12px}.hours-row strong{font-size:11px}.slots{grid-template-columns:repeat(3,1fr)}.identity{gap:8px}.row{gap:9px}.row .actions{max-width:145px}.row .identity strong{font-size:12px}.row .identity small{font-size:10px}.avatar{width:32px;height:32px;flex-basis:32px}.stat small{font-size:11px}.actions{gap:5px}.steps small{font-size:11px}.equal-cols{gap:0}}
