@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',system-ui,sans-serif;color:#162440;background:#f5f7fb;--accent:#ef4d83;--pale:#ffedf3;--line:#e6ebf2}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:Manrope,system-ui;letter-spacing:-.048em}h1,h2,h3,p{margin-top:0}p{line-height:1.5}button:disabled{opacity:.45;cursor:not-allowed}img{max-width:100%}.hidden{display:none!important}.muted{color:#8190a4}.fine{font-size:11px;color:#8490a3;line-height:1.5}.btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;font-size:12px;border:1px solid #dce5ee;background:white;color:#25334e;border-radius:10px;padding:11px 15px;font-weight:800}.btn:hover{filter:brightness(.97)}.btn.accent{background:var(--accent);color:white;border-color:var(--accent)}.btn.dark{background:#172849;color:white;border-color:#172849}.btn.danger{color:#c23f5d;border-color:#f5d3db}.btn.small{padding:8px 10px;font-size:11px}.btn.icon{padding:8px 11px}.pill{font-size:10px;font-weight:800;border:1px solid #dee5ed;background:#f7f9fb;border-radius:99px;color:#63758d;padding:5px 9px;display:inline-block;white-space:nowrap}.status{background:#edf2fe;color:#4d6aa3;border:0}.status.Pendiente{background:#fff4e3;color:#9d6816}.status.Confirmada{background:#eaf7f0;color:#27805b}.status.Completada{background:#e9efff;color:#425caa}.status.Cancelada{background:#feecee;color:#b64d5a}.layout{min-height:100vh;display:grid;grid-template-columns:254px minmax(0,1fr)}.sidebar{background:#0e1a34;color:#c4d0e3;display:flex;flex-direction:column;padding:27px 16px;min-width:0;min-height:100vh;position:sticky;top:0;height:100vh}.sideBrand{display:flex;align-items:center;gap:11px;padding:0 10px 23px;border-bottom:1px solid #273653}.sideBrand img{width:38px;height:38px;border-radius:11px}.sideBrand b{font:800 15px Manrope;color:#fff;letter-spacing:.02em}.sideBrand small{display:block;color:#94dbc9;text-transform:uppercase;letter-spacing:.22em;font-size:9px}.businessBox{display:flex;align-items:center;gap:11px;background:#182746;border:1px solid #2b3c61;border-radius:12px;padding:13px;margin:23px 1px 18px;min-width:0}.bizIcon{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border-radius:10px;background:var(--pale);font-size:20px}.bizInfo{min-width:0}.bizInfo b{color:white;display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bizInfo span{display:block;font-size:10px;color:#98aac7;margin-top:4px}.sideLabel{padding:12px 12px 7px;color:#7286aa;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.sidenav{display:grid;gap:4px}.navBtn{width:100%;display:flex;align-items:center;gap:13px;text-align:left;color:#b3c2d9;border:0;background:none;border-radius:10px;padding:12px 13px;font-weight:700;font-size:12px}.navBtn:hover{background:#1a2a4b;color:#fff}.navBtn.active{background:#254363;color:#92f4d6}.navIcon{font-size:17px;width:21px;text-align:center}.sideEnd{margin-top:auto;padding:20px 8px 0;border-top:1px solid #273652}.sideEnd p{font-size:11px;color:#91a7c7;margin:0 0 12px}.sideEnd .btn{background:#25395c;border-color:#33486d;color:#fff;width:100%}.main{min-width:0}.topbar{min-height:79px;background:#fff;border-bottom:1px solid var(--line);padding:16px 38px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar .crumb{font-size:12px;color:#8290a4;font-weight:700}.topbar .crumb b{color:#253b55}.topActions{display:flex;align-items:center;gap:10px}.demoFlag{border-radius:99px;background:#e8f7f1;color:#1e8b67;font-size:10px;font-weight:800;padding:9px 12px}.mobileMenu{display:none}.page{padding:35px 38px 70px;max-width:1580px;margin:auto}.screen{display:none}.screen.on{display:block}.pageHead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:25px}.pageHead h1{font-size:clamp(1.65rem,2.5vw,2.15rem);margin-bottom:5px}.pageHead p{font-size:13px;color:#8390a4;margin:0}.pageHead .actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.banner{display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(95deg,#13264b,#1a3762);border-radius:16px;padding:21px 25px;margin-bottom:23px;color:white}.banner b{font:800 17px Manrope}.banner p{font-size:12px;color:#afc6dd;margin:5px 0 0}.banner .btn{background:#acf3dc;border-color:#acf3dc;color:#0f3a35}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.kpi{background:white;border-radius:14px;border:1px solid var(--line);padding:22px}.kpi .kTop{display:flex;justify-content:space-between;gap:10px;align-items:center}.kpi small{font-size:11px;color:#7e8fa4;font-weight:700}.kpi i{font-style:normal;width:30px;height:30px;border-radius:9px;background:#eef3fc;display:grid;place-items:center}.kpi strong{display:block;font:800 clamp(1.4rem,2vw,2rem) Manrope;letter-spacing:-.04em;margin:13px 0 7px}.kpi span{font-size:10px;color:#92a0b1}.columns{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.columns.equal{grid-template-columns:1fr 1fr}.card{background:white;border-radius:15px;border:1px solid var(--line);padding:23px;min-width:0;margin-bottom:18px}.card h2{font-size:16px;letter-spacing:-.025em;margin-bottom:5px}.cardSub{color:#8b97a7;font-size:11px;margin-bottom:19px}.cardHead{display:flex;justify-content:space-between;gap:10px;align-items:start}.tableWrap{overflow:auto}.table{border-collapse:collapse;width:100%;font-size:12px;min-width:580px}.table th{color:#8795a8;text-align:left;letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:800;border-bottom:1px solid #ebeff5;padding:13px 10px;white-space:nowrap}.table td{border-bottom:1px solid #f0f3f8;padding:14px 10px;color:#42516b}.table tr:last-child td{border-bottom:0}.table strong{color:#1d2e49}.actionsInline{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.actionsInline button{border:1px solid #e3e9f0;border-radius:7px;background:#fff;color:#65758a;font-size:10px;font-weight:800;padding:6px 8px}.actionsInline button:hover{background:#f0f4fa}.searchBar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:17px}.searchBar input,.searchBar select,.input{padding:11px 12px;border:1px solid #dde6ef;border-radius:10px;background:#fff;color:#233450;outline:none;font-size:12px;min-width:0}.searchBar input{min-width:210px;flex:1}.searchBar input:focus,.input:focus{border-color:#6f85f2;box-shadow:0 0 0 3px #758ffa20}.empty{text-align:center;padding:45px 15px;color:#8997a8;font-size:13px}.empty strong{display:block;color:#45566d;margin:12px 0}.split{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}.field label{font-size:11px;color:#61718a;font-weight:800}.field .input{width:100%}.field textarea{min-height:75px;resize:vertical}.field small{font-size:10px;color:#8995a4}.tabs{display:flex;align-items:center;gap:8px;margin-bottom:20px;flex-wrap:wrap}.tab{border:1px solid #dae3ed;background:white;border-radius:10px;padding:10px 16px;font-size:12px;color:#60708a;font-weight:800}.tab.active{background:#172949;border-color:#172949;color:white}.calControls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.calControls h3{font-size:16px;text-transform:capitalize;margin:0}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.weekday{text-align:center;color:#99a4b3;font-size:10px;font-weight:800;padding:10px 2px}.day{height:84px;min-width:0;border:1px solid #e8edf3;background:#fff;border-radius:9px;text-align:left;padding:10px;display:flex;flex-direction:column;gap:5px;color:#667890;font-size:12px}.day:not(.blank):hover{border-color:#93a4ef;box-shadow:0 3px 14px #182e5012}.day.blank{background:#f6f8fb;border:0}.day.today{border-color:var(--accent)}.day.selected{background:var(--pale);border-color:var(--accent)}.day small{font-size:10px;color:#277ab2;font-weight:800}.day .dots{display:flex;gap:3px;margin-top:auto}.day .dots i{height:5px;width:5px;border-radius:50%;background:var(--accent)}.scheduleItem{display:flex;gap:11px;border-bottom:1px solid #eef2f7;padding:13px 0;align-items:center}.scheduleTime{font-size:12px;font-weight:800;width:57px;flex-shrink:0}.scheduleSide{border-left:3px solid var(--accent);padding-left:12px;flex:1;min-width:0}.scheduleSide b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scheduleSide small{display:block;font-size:10px;color:#8b98ab;margin-top:5px}.miniChart{display:flex;align-items:end;gap:10px;height:148px;margin-top:20px;padding-bottom:19px;border-bottom:1px solid #e2e8f2}.barGroup{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}.bar{width:100%;max-width:38px;min-height:3px;background:linear-gradient(0deg,var(--accent),#9ebafa);border-radius:6px 6px 0 0}.barGroup span{position:absolute;top:100%;font-size:10px;color:#9aa6b6;padding-top:5px}.checklist{display:grid;gap:10px;margin-top:15px}.checklist div{border:1px solid #e7ecf4;padding:13px;border-radius:10px;color:#586980;font-size:12px}.checklist b{color:#1f304b}.colorPreview{display:flex;align-items:center;gap:13px}.colorPreview input[type=color]{width:56px;height:42px;border:0;background:none;padding:0}.photoThumb{width:45px;height:45px;border-radius:9px;object-fit:cover;flex-shrink:0}.recordCard{display:flex;gap:13px;align-items:center;padding:14px;border:1px solid #e9eef5;border-radius:12px;margin-bottom:9px}.recordCard .avatar{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:var(--pale);font-size:20px;flex-shrink:0}.recordCard .detail{flex:1;min-width:0}.recordCard .detail b{display:block;font-size:12px}.recordCard .detail small{display:block;color:#96a0b1;margin-top:3px}.recordCard .btn{font-size:10px;padding:8px 10px}.services{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.service{border:1px solid #e6ebf3;border-radius:10px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:15px}.service strong{font-size:12px}.service small{font-size:10px;color:#8b99ab;display:block;margin-top:5px}.settingGrid{display:grid;grid-template-columns:1.3fr 1fr;gap:18px}.notice{background:#fff9e9;border:1px solid #f4e2aa;padding:14px;border-radius:11px;font-size:11px;color:#866321;margin:14px 0}.notice.info{background:#eef6ff;color:#51729a;border-color:#d8e8fc}.modalBackdrop{position:fixed;z-index:100;background:#081125ba;inset:0;display:none;justify-content:center;align-items:center;padding:16px}.modalBackdrop.on{display:flex}.modal{max-height:min(90vh,850px);overflow:auto;width:min(530px,100%);background:#fff;border-radius:19px;padding:27px;box-shadow:0 35px 100px #0005}.modal.large{width:min(730px,100%)}.modalHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modalHead h2{font-size:20px;margin:0}.modalHead button{background:#f0f3f7;border:0;border-radius:8px;padding:8px 11px}.modalActions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.toaster{position:fixed;bottom:24px;right:24px;z-index:150;background:#122446;color:#fff;border-radius:11px;box-shadow:0 15px 50px #0004;padding:14px 18px;display:none;font-size:12px;font-weight:800}.toaster.on{display:block}.bottomNav{display:none}.tableBtn{color:#2679b2;font-weight:800}.screen h3{font-size:15px}
@media(max-width:1140px){.kpis{grid-template-columns:repeat(2,1fr)}.columns,.settingGrid{grid-template-columns:1fr}.sidebar{width:220px}.layout{grid-template-columns:220px minmax(0,1fr)}.page{padding:28px 22px}}
@media(max-width:760px){.layout{display:block;padding-bottom:68px}.sidebar{display:none;position:fixed;z-index:75;left:0;top:0;bottom:0;width:265px;min-height:0;height:100vh;box-shadow:0 0 0 100vmax #050f2275}.sidebar.open{display:flex}.topbar{min-height:69px;padding:13px 17px}.mobileMenu{display:inline-flex}.topActions .btn{display:none}.page{padding:23px 14px 50px}.pageHead{align-items:start;display:block}.pageHead .actions{margin-top:15px}.banner{align-items:flex-start;padding:17px;flex-direction:column}.card{padding:17px}.bottomNav{display:flex;z-index:70;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e0e7ef;justify-content:space-around;padding:7px 2px max(7px,env(safe-area-inset-bottom));box-shadow:0 -8px 25px #10244410}.bottomNav button{background:none;border:0;color:#7f8da1;padding:4px 2px;display:grid;place-items:center;gap:3px;min-width:46px;font-size:9px;font-weight:800}.bottomNav button.active{color:var(--accent)}.bottomNav button span{font-size:18px}.calControls h3{font-size:14px}.day{height:59px;padding:6px;font-size:10px}.day small{font-size:8px}.services{grid-template-columns:1fr}.modal{padding:20px}.modalActions{flex-wrap:wrap}}
@media(max-width:430px){.split{grid-template-columns:1fr}.topActions{gap:4px}.topActions .demoFlag{font-size:9px;padding:7px}.kpis{gap:8px}.kpi{padding:14px}.kpi strong{font-size:20px}.table{min-width:540px}.pageHead h1{font-size:1.7rem}.cardHead{flex-wrap:wrap}}

/* Vista celular V2.1 */
.phonePreviewBtn{background:#e5f8f2;color:#135344;border-color:#b4dfd0;white-space:nowrap}.phonePreviewInline{background:#eef8f5;border:1px solid #cfece2;color:#236c58}.topActions .phonePreviewBtn{display:inline-flex}@media(max-width:760px){.topActions .phonePreviewBtn{display:inline-flex;font-size:10px;padding:8px 9px}.phonePreviewInline{font-size:11px}}


/* V2.2 · Identidad visual por rubro */
body{--theme-sidebar:#0f1d3b;--theme-sidebar-2:#0a1428;--theme-sidebar-border:#172d4f;--theme-box:#132545;--theme-box-border:#2b4671;--theme-banner:#fff4f8;--theme-banner-border:#f3d4df;--theme-banner-shadow:rgba(18,36,70,.08);--theme-nav-soft:#fff2f6;--theme-nav-border:#f3d4df;--theme-nav-text:#8f3f62;--theme-flag-bg:#fff4ea;--theme-flag-fg:#9b6130;--theme-flag-border:#f0d2ac;--theme-top-soft:#f9fbff;--theme-kpi-shadow:rgba(16,36,68,.08);--theme-bottom-bg:#ffffff}
body[data-rubro="pet"]{--theme-sidebar:#3d1530;--theme-sidebar-2:#200b1b;--theme-sidebar-border:#6b2c4e;--theme-box:#5a2244;--theme-box-border:#a04f79;--theme-banner:#fff1f6;--theme-banner-border:#f7cade;--theme-nav-soft:#fff0f5;--theme-nav-border:#f6cbdd;--theme-nav-text:#a33967;--theme-flag-bg:#fff1f6;--theme-flag-fg:#a63a68;--theme-flag-border:#f3c7da;--theme-top-soft:#fff9fc;--theme-kpi-shadow:rgba(239,77,131,.12)}
body[data-rubro="barber"]{--theme-sidebar:#2a1d12;--theme-sidebar-2:#15100a;--theme-sidebar-border:#58412a;--theme-box:#392817;--theme-box-border:#84613a;--theme-banner:#fbf6ed;--theme-banner-border:#e8d6b6;--theme-nav-soft:#fbf5ea;--theme-nav-border:#ead6b4;--theme-nav-text:#7c5b2f;--theme-flag-bg:#fbf4e8;--theme-flag-fg:#866031;--theme-flag-border:#ead7b8;--theme-top-soft:#fffdf9;--theme-kpi-shadow:rgba(212,168,102,.14)}
body[data-rubro="beauty"]{--theme-sidebar:#2a1639;--theme-sidebar-2:#140b1f;--theme-sidebar-border:#5d3677;--theme-box:#391f4c;--theme-box-border:#8660a7;--theme-banner:#f8f1fe;--theme-banner-border:#e2d0f6;--theme-nav-soft:#f7f0fd;--theme-nav-border:#e4d4f7;--theme-nav-text:#7d4cad;--theme-flag-bg:#f7effd;--theme-flag-fg:#7f53aa;--theme-flag-border:#e2cff5;--theme-top-soft:#fcfaff;--theme-kpi-shadow:rgba(173,119,219,.14)}
body[data-rubro="detail"]{--theme-sidebar:#112946;--theme-sidebar-2:#09131f;--theme-sidebar-border:#284a73;--theme-box:#17395b;--theme-box-border:#4d79a9;--theme-banner:#eef7ff;--theme-banner-border:#cce2f9;--theme-nav-soft:#eef6ff;--theme-nav-border:#cfe3fa;--theme-nav-text:#2f76b8;--theme-flag-bg:#eef7ff;--theme-flag-fg:#2f76b8;--theme-flag-border:#cee2f9;--theme-top-soft:#f9fcff;--theme-kpi-shadow:rgba(84,168,250,.14)}
body[data-rubro="servicios"]{--theme-sidebar:#0f2d2b;--theme-sidebar-2:#071615;--theme-sidebar-border:#26524e;--theme-box:#15403c;--theme-box-border:#3b8a81;--theme-banner:#eefcf8;--theme-banner-border:#c9eee2;--theme-nav-soft:#ecfbf7;--theme-nav-border:#c9eee2;--theme-nav-text:#1f8978;--theme-flag-bg:#ecfbf7;--theme-flag-fg:#187a6c;--theme-flag-border:#caeee3;--theme-top-soft:#f8fffd;--theme-kpi-shadow:rgba(59,199,179,.15)}
body[data-rubro="pro"]{--theme-sidebar:#1b2148;--theme-sidebar-2:#0c1126;--theme-sidebar-border:#39437f;--theme-box:#242c61;--theme-box-border:#616bc5;--theme-banner:#f2f4ff;--theme-banner-border:#d7dcfa;--theme-nav-soft:#f1f4ff;--theme-nav-border:#d7dcfa;--theme-nav-text:#5762cb;--theme-flag-bg:#f2f4ff;--theme-flag-fg:#525dc7;--theme-flag-border:#d6dcfa;--theme-top-soft:#fafbff;--theme-kpi-shadow:rgba(124,133,248,.14)}
body .sidebar{background:linear-gradient(180deg,var(--theme-sidebar) 0%,var(--theme-sidebar-2) 100%)!important;border-right:1px solid var(--theme-sidebar-border)!important}
body .businessBox{background:var(--theme-box)!important;border-color:var(--theme-box-border)!important}
body .topbar{background:linear-gradient(180deg,var(--theme-top-soft) 0%,#ffffff 100%)!important}
body .banner{background:var(--theme-banner)!important;border-color:var(--theme-banner-border)!important;box-shadow:0 14px 34px var(--theme-banner-shadow)!important}
body .kpi{box-shadow:0 16px 34px var(--theme-kpi-shadow)!important}
body .demoFlag{background:var(--theme-flag-bg)!important;color:var(--theme-flag-fg)!important;border:1px solid var(--theme-flag-border)!important}
body .phonePreviewBtn,body .phonePreviewInline{background:var(--theme-nav-soft)!important;border-color:var(--theme-nav-border)!important;color:var(--theme-nav-text)!important}
body .navBtn.active{background:var(--theme-nav-soft)!important;border-color:var(--theme-nav-border)!important;color:var(--theme-nav-text)!important}
body .bottomNav{background:var(--theme-bottom-bg)!important}
body .bottomNav button.active{background:var(--theme-nav-soft)!important;border-radius:14px;padding:6px 10px!important;color:var(--theme-nav-text)!important}
body .pill:not(.status){background:var(--theme-nav-soft)!important;color:var(--theme-nav-text)!important;border:1px solid var(--theme-nav-border)!important}
body .scheduleItem:hover,body .service:hover{border-color:var(--theme-nav-border)!important;box-shadow:0 10px 24px var(--theme-kpi-shadow)!important}
