/* MICITA VPRO2_14 ENTERPRISE REAL FIX - rebuilt global layout */
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}button,input,select,textarea{font-family:inherit}img{max-width:100%;display:block}
:root{--radius:22px;--radius-sm:16px;--sidebar-w:292px;--topbar-h:86px;--content-max:1320px;--line:rgba(148,163,184,.24);--line-strong:rgba(148,163,184,.36);--shadow:0 16px 45px rgba(15,23,42,.08);--shadow-hover:0 22px 60px rgba(15,23,42,.12);--input:#fff;--surface-2:rgba(255,255,255,.74)}
.theme-dark{--bg:#070b1a;--surface:#0d1428;--surface-2:#111b34;--text:#f8fafc;--muted:#a7b3c8;--line:rgba(148,163,184,.18);--line-strong:rgba(148,163,184,.28);--input:#0a1225;--shadow:0 22px 70px rgba(0,0,0,.28);--shadow-hover:0 28px 85px rgba(0,0,0,.35)}
.theme-light{--bg:#f5f7fb;--surface:#ffffff;--surface-2:#f8fafc;--text:#101828;--muted:#516173;--line:#d9e2ef;--line-strong:#c9d6e6;--input:#fff;--shadow:0 18px 50px rgba(15,23,42,.08);--shadow-hover:0 24px 70px rgba(15,23,42,.12)}
body{background:var(--bg);color:var(--text)}
body.theme-light{background:linear-gradient(180deg,#f8fafc 0%,#eef3f9 100%)}body.theme-dark{background:#050816}
/* LOGIN */
.login-enterprise{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);background:#060817;color:#fff;overflow:hidden}.login-hero{position:relative;min-height:100vh;background:radial-gradient(circle at 60% 45%,rgba(124,58,237,.38),transparent 36%),linear-gradient(135deg,#050816,#090d21);background-image:linear-gradient(90deg,rgba(5,8,22,.74),rgba(5,8,22,.32)),var(--hero-img);background-size:cover;background-position:center}.login-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,22,.28),rgba(5,8,22,.02) 55%,rgba(5,8,22,.35));pointer-events:none}.hero-content{position:relative;z-index:2;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:70px clamp(34px,6vw,86px);max-width:760px}.hero-eyebrow{font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#c4b5fd;margin-bottom:18px}.hero-content h1{margin:0;font-size:clamp(48px,6vw,86px);line-height:.95;letter-spacing:-.075em;font-weight:950}.hero-content h1 em{font-style:normal;background:linear-gradient(100deg,#8b5cf6,#0ea5e9);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-content p{max-width:520px;font-size:18px;line-height:1.55;color:rgba(255,255,255,.78);font-weight:650;margin:26px 0 0}.login-panel-wrap{position:relative;display:grid;place-items:center;padding:44px;background:linear-gradient(180deg,#080d1f,#080b18)}.login-panel{width:min(440px,100%);border:1px solid rgba(148,163,184,.22);background:rgba(12,18,36,.78);backdrop-filter:blur(18px);border-radius:30px;padding:34px;box-shadow:0 28px 80px rgba(0,0,0,.34)}.login-form-light .login-panel{background:rgba(255,255,255,.92);color:#101828;border-color:#d9e2ef;box-shadow:0 22px 80px rgba(15,23,42,.10)}.login-logo{width:78px;height:78px;border-radius:24px;margin:0 auto 22px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 18px 44px rgba(109,74,255,.26);color:#fff;font-weight:950;font-size:28px}.login-logo img{width:100%;height:100%;object-fit:cover}.login-title-wrap{text-align:center;margin-bottom:24px}.login-title-wrap h2{font-size:34px;line-height:1.05;letter-spacing:-.055em;margin:0;color:inherit}.login-title-wrap p{margin:9px 0 0;color:var(--muted);font-weight:700}.login-panel>label{display:block;font-size:13px;font-weight:900;margin:14px 0 7px;color:inherit}.input-premium{height:52px;border:1px solid var(--line-strong);border-radius:16px;background:var(--input);display:flex;align-items:center;gap:12px;padding:0 15px;transition:.18s}.login-form-dark .input-premium{background:#0b1326}.input-premium:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px rgba(109,74,255,.14)}.input-premium span{width:22px;display:grid;place-items:center;color:var(--muted);font-weight:900}.input-premium input{border:0;outline:0;background:transparent;width:100%;font-size:15px;font-weight:800;color:inherit}.form-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 18px;font-size:13px;font-weight:800}.form-row a{color:#a78bfa}.check{display:flex!important;align-items:center;gap:8px;margin:0!important}.check input{width:16px;height:16px;accent-color:var(--primary)}.submit-premium,.btn-primary,.btn-small{border:0;cursor:pointer;color:white;background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 18px 40px rgba(109,74,255,.22);font-weight:950;transition:.18s}.submit-premium{width:100%;height:56px;border-radius:17px;font-size:18px;display:flex;align-items:center;justify-content:center;gap:12px}.submit-premium span{width:34px;height:34px;border-radius:999px;background:#fff;color:var(--primary);display:grid;place-items:center}.submit-premium:hover,.btn-small:hover,.btn-primary:hover{transform:translateY(-2px);filter:saturate(1.1)}.btn-google{width:100%;height:50px;border-radius:15px;border:1px solid var(--line);background:#fff;color:#111827;font-weight:900;margin-top:14px}.trust-line{display:flex;align-items:center;justify-content:center;gap:7px;margin:16px auto 8px;color:var(--success);font-size:13px;font-weight:900}.login-small{display:block;text-align:center;margin-top:14px;color:var(--muted);font-weight:700}.login-small a{color:var(--primary);font-weight:950}.login-footer{position:absolute;left:44px;right:44px;bottom:18px;text-align:center;color:var(--muted);font-size:12px;font-weight:750}.login-footer a{opacity:.8}
/* APP LAYOUT */
.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);background:var(--bg);overflow:hidden}.main{min-width:0;width:100%;overflow-x:hidden}.sidebar{height:100vh;position:sticky;top:0;background:var(--surface);border-right:1px solid var(--line);padding:24px 18px 18px;display:flex;flex-direction:column;gap:20px;overflow-y:auto;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand-mark{width:58px;height:58px;border-radius:999px;background:linear-gradient(135deg,var(--primary),var(--secondary));display:grid;place-items:center;color:white;font-weight:950;overflow:hidden;box-shadow:0 16px 38px rgba(109,74,255,.20);flex:0 0 auto}.brand-mark img{width:100%;height:100%;object-fit:cover}.brand-copy{min-width:0}.brand-copy strong{display:block;font-size:22px;letter-spacing:-.04em;line-height:1;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy span{display:block;margin-top:5px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:900;line-height:1.25;max-width:150px}.sidebar nav{display:grid;gap:12px;flex:1}.nav-group{display:grid;gap:7px}.nav-group p{margin:14px 8px 5px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:950}.nav-group a{height:46px;border-radius:15px;display:flex;align-items:center;gap:12px;padding:0 12px;color:var(--muted);font-weight:900;transition:.16s;border:1px solid transparent}.nav-group a span{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary);font-size:15px}.nav-group a:hover{background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--text);border-color:var(--line)}.nav-group a.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--text);border-color:color-mix(in srgb,var(--primary) 35%,var(--line));box-shadow:none}.logout{height:44px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:14px;color:var(--muted);font-weight:900}.logout:hover{background:color-mix(in srgb,var(--danger) 9%,transparent);color:var(--danger)}
.topbar{height:var(--topbar-h);display:flex;align-items:center;gap:14px;padding:16px clamp(20px,3.2vw,42px);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 88%,transparent);position:sticky;top:0;z-index:20;backdrop-filter:blur(18px);min-width:0}.hamb{display:none}.search{height:54px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);display:flex;align-items:center;gap:12px;padding:0 16px;flex:1;min-width:220px;max-width:820px}.search input{border:0;outline:0;background:transparent;color:var(--text);font-weight:750;font-size:15px;width:100%}.search span{color:var(--muted)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px;position:relative}.top-icon{width:52px;height:52px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);color:var(--text);font-weight:950;position:relative;cursor:pointer;transition:.16s}.top-icon:hover,.top-profile:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 35%,var(--line));box-shadow:var(--shadow)}.top-icon b{position:absolute;top:-8px;right:-5px;background:#ef4444;color:white;border-radius:999px;padding:3px 7px;font-size:11px}.top-profile{height:56px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);display:flex;align-items:center;gap:12px;padding:5px 12px 5px 6px;color:var(--text);cursor:pointer;transition:.16s}.avatar{width:44px;height:44px;border-radius:999px;background:linear-gradient(135deg,var(--primary),var(--secondary));display:grid;place-items:center;overflow:hidden;color:#fff;font-weight:950;flex:0 0 auto}.avatar img{width:100%;height:100%;object-fit:cover}.top-profile strong{display:block;font-size:14px;line-height:1}.top-profile small{display:block;color:var(--muted);font-weight:700}.dropdown-menu{position:absolute;right:0;top:64px;width:280px;border:1px solid var(--line);background:var(--surface);border-radius:20px;box-shadow:var(--shadow-hover);padding:10px;display:none;z-index:40}.dropdown-menu.open{display:grid;gap:6px}.dropdown-menu a,.dropdown-menu p{display:block;margin:0;padding:12px 13px;border-radius:14px;color:var(--muted);font-weight:850}.dropdown-menu a:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--text)}
/* PAGES GLOBAL */
.page-head,.stats-grid,.dash-grid,.main>.panel,.config-form-v25{max-width:var(--content-max);margin-left:auto;margin-right:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:34px clamp(20px,3.2vw,42px) 18px}.page-head h1{margin:0;font-size:clamp(34px,4vw,54px);letter-spacing:-.075em;line-height:.95;font-weight:950}.page-head p{margin:12px 0 0;color:var(--muted);font-size:18px;font-weight:650}.btn-small{height:46px;border-radius:15px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.stats-grid{padding:0 clamp(20px,3.2vw,42px);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.stat{min-height:116px;border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:18px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;transition:.16s;overflow:hidden}.stat:hover,.panel:hover,.config-card-v25:hover,.asset-box:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);border-color:color-mix(in srgb,var(--primary) 25%,var(--line))}.stat-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font-weight:950;grid-column:2;grid-row:1 / span 3}.stat-body{min-width:0}.stat span{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.045em;color:var(--muted);font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat strong{display:block;font-size:28px;letter-spacing:-.055em;margin:8px 0 4px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:clip}.stat small{color:var(--success);font-weight:950;font-size:14px}.dash-grid{padding:18px clamp(20px,3.2vw,42px) 42px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px;align-items:start}.panel{border:1px solid var(--line);background:var(--surface);border-radius:24px;padding:22px;box-shadow:var(--shadow);transition:.16s;min-width:0;overflow:hidden}.panel h3{margin:0 0 18px;font-size:22px;letter-spacing:-.05em}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.panel-head h3{margin:0}.panel-head span{color:var(--muted);font-weight:850}.panel.big{min-height:320px}.chart{height:220px;border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 16%,transparent),color-mix(in srgb,var(--accent) 7%,transparent));position:relative;overflow:hidden}.chart:before{content:"";position:absolute;left:36px;right:36px;bottom:54px;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--accent));transform:rotate(-10deg);transform-origin:left center;box-shadow:0 0 24px color-mix(in srgb,var(--primary) 35%,transparent)}.donut{width:210px;height:210px;border-radius:50%;margin:6px auto 18px;background:conic-gradient(var(--primary) 0 47%,var(--accent) 47% 78%,#ec4899 78% 94%,#334155 94%);display:grid;place-items:center}.donut span{width:116px;height:116px;border-radius:50%;background:var(--surface);display:grid;place-items:center;text-align:center;font-weight:950;color:var(--text)}.legend{margin:0 auto;padding:0;list-style:none;max-width:220px;color:var(--muted);font-weight:850;line-height:1.7}.row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.row b,.row small{min-width:0;overflow:hidden;text-overflow:ellipsis}.row small{color:var(--muted);font-weight:700}.badge,.row em{min-height:26px;padding:0 12px;border-radius:999px;background:rgba(22,163,74,.12);color:var(--success);font-style:normal;font-size:12px;font-weight:950;display:inline-flex;align-items:center;justify-content:center;text-transform:capitalize;white-space:nowrap}.activity p{margin:0;padding:12px 0;border-bottom:1px solid var(--line);font-weight:850}.activity small{display:block;color:var(--muted);font-weight:700;margin-top:4px}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.quick-actions a{border:1px solid var(--line);background:var(--surface);border-radius:20px;min-height:70px;display:grid;place-items:center;box-shadow:var(--shadow);font-weight:950}.money{font-size:34px}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:950}td{font-weight:750}tr:hover td{background:color-mix(in srgb,var(--primary) 6%,transparent)}
/* CONFIG */
.config-form-v25{padding:0 clamp(20px,3.2vw,42px) 42px}.config-tabs{display:flex;gap:10px;margin:0 0 18px;flex-wrap:wrap;overflow:visible}.config-tabs button{height:40px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-weight:950;padding:0 16px;cursor:pointer}.config-tabs button:hover,.config-tabs button.active{background:color-mix(in srgb,var(--primary) 11%,var(--surface));border-color:color-mix(in srgb,var(--primary) 35%,var(--line));color:var(--text)}.config-panel{display:none}.config-panel.active{display:block}.config-card-v25{border:1px solid var(--line);background:var(--surface);border-radius:24px;box-shadow:var(--shadow);padding:24px;margin-bottom:18px;transition:.16s}.config-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid var(--line)}.config-card-title h3{margin:0;font-size:24px;letter-spacing:-.055em}.config-card-title p{margin:4px 0 0;color:var(--muted);font-weight:700}.asset-grid-v25{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.asset-box{border:1px solid var(--line);border-radius:20px;background:var(--surface-2);padding:18px;display:grid;gap:14px;justify-items:center;text-align:center;min-height:220px;transition:.16s}.asset-box b{font-size:15px;justify-self:start;text-align:left}.asset-box small{color:var(--muted);font-weight:750;line-height:1.4}.asset-thumb,.asset-empty{width:82px;height:82px;border-radius:999px;object-fit:cover;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 16%,var(--surface)),var(--surface));border:1px solid var(--line-strong);display:grid;place-items:center;font-weight:950;color:var(--muted);overflow:hidden}.mini-round{width:58px;height:58px}.upload-btn{height:40px;border-radius:14px;background:var(--surface);border:1px solid var(--line);display:inline-flex!important;align-items:center;justify-content:center;padding:0 16px;font-weight:950;cursor:pointer}.upload-btn:hover{border-color:var(--primary);color:var(--primary)}.upload-btn input{display:none}.form-grid-v25{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid-v25 label{display:grid;gap:8px}.form-grid-v25 label span{font-size:13px;font-weight:950;color:var(--text)}.form-grid-v25 input,.form-grid-v25 select,.form-grid-v25 textarea{width:100%;min-height:46px;border:1px solid var(--line);background:var(--input);color:var(--text);border-radius:14px;padding:12px 14px;font-weight:800;outline:0}.form-grid-v25 textarea{min-height:92px}.form-grid-v25 input:focus,.form-grid-v25 select:focus,.form-grid-v25 textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 13%,transparent)}.wide{grid-column:1/-1}.theme-grid-v25 input[type=color]{width:58px;height:42px;padding:4px;border-radius:14px;justify-self:end}.theme-grid-v25 label:has(input[type=color]){grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);padding:12px}.theme-grid-v25 label:has(input[type=color]) span{font-size:14px}.check-card{display:flex!important;align-items:center;gap:12px;border:1px solid var(--line);background:var(--surface-2);border-radius:16px;padding:12px 14px;font-weight:900;min-height:54px}.check-card input{width:18px;height:18px;accent-color:var(--primary)}.hero-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.hero-config-grid>div{border:1px solid var(--line);background:var(--surface-2);border-radius:20px;padding:18px;display:grid;gap:12px}.hero-thumb,.hero-empty{height:150px;width:100%;border-radius:18px;object-fit:cover;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;color:var(--muted);font-weight:900}.system-status-v27{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.system-status-v27 div{border:1px solid var(--line);border-radius:18px;background:var(--surface-2);padding:16px}.system-status-v27 b{display:block;margin-bottom:5px}.system-status-v27 span{color:var(--muted);font-weight:750}.config-actions{display:flex;justify-content:flex-end;margin-top:10px}
/* BOOKING */
.booking{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr) 340px;background:var(--bg)}.booking-steps,.summary{background:var(--surface);border-right:1px solid var(--line);padding:28px}.summary{border-left:1px solid var(--line);border-right:0}.booking-list{padding:34px;min-width:0}.booking-list h1{font-size:40px;letter-spacing:-.06em}.service-card{border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:16px;margin-bottom:12px;display:grid;grid-template-columns:72px 1fr auto;gap:14px;align-items:center;box-shadow:var(--shadow);transition:.16s}.service-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.photo{width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,var(--primary),var(--accent))}.center-404{min-height:100vh;display:grid;place-items:center;text-align:center}
@media(max-width:1180px){:root{--sidebar-w:260px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr}.asset-grid-v25,.system-status-v27{grid-template-columns:1fr}.booking{grid-template-columns:1fr}.booking-steps,.summary{display:none}}
@media(max-width:900px){.login-enterprise{display:block;background:#080d1f}.login-hero{display:none}.login-panel-wrap{min-height:100vh;padding:22px}.login-panel{padding:24px;border-radius:26px}.login-logo{width:58px;height:58px;border-radius:18px}.login-title-wrap h2{font-size:28px}.login-footer{position:static;margin-top:18px}.app-shell{display:block}.sidebar{position:fixed;z-index:100;left:0;top:0;bottom:0;width:286px;transform:translateX(-105%);transition:.22s;height:100dvh}.sidebar.open{transform:translateX(0)}.hamb{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text)}.topbar{height:auto;min-height:72px;padding:12px 16px;flex-wrap:wrap}.search{order:3;flex-basis:100%;min-width:0;height:48px}.top-profile span{display:none}.top-icon{width:42px;height:42px}.top-profile{height:44px;padding:3px}.top-profile .avatar{width:38px;height:38px}.page-head{padding:24px 16px 14px;align-items:flex-start;flex-direction:column}.page-head h1{font-size:34px}.stats-grid{padding:0 16px;grid-template-columns:1fr;gap:12px}.stat{min-height:92px;padding:14px}.dash-grid{padding:14px 16px 28px;gap:12px}.panel{padding:16px;border-radius:20px}.chart{height:160px}.config-form-v25{padding:0 16px 28px}.config-card-v25{padding:16px}.config-card-title{display:block}.form-grid-v25,.hero-config-grid{grid-template-columns:1fr}.config-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.config-tabs::-webkit-scrollbar{height:0}table{display:block;overflow-x:auto;white-space:nowrap}}



/* =========================================================
   MICITA VPRO2_15 ENTERPRISE FOUNDATION
   Global layout + typography + dashboard + configuration reset
   ========================================================= */

:root{
  --sidebar-w: 284px;
  --topbar-h: 82px;
  --content-max: 1180px;
  --page-x: clamp(28px, 3.2vw, 46px);
  --page-y: 34px;
  --radius: 22px;
  --radius-sm: 14px;
}
.theme-light{
  --bg:#F3F7FC;
  --surface:#FFFFFF;
  --surface-2:#F8FAFD;
  --text:#0F172A;
  --muted:#4F6076;
  --line:#D6E0EC;
  --line-strong:#C6D4E4;
  --input:#FFFFFF;
  --shadow:0 14px 34px rgba(15,23,42,.07);
  --shadow-hover:0 20px 54px rgba(15,23,42,.12);
}
.theme-dark{
  --bg:#050917;
  --surface:#0B1326;
  --surface-2:#101A31;
  --text:#F8FAFC;
  --muted:#A6B3C8;
  --line:rgba(148,163,184,.20);
  --line-strong:rgba(148,163,184,.34);
}

.app-shell{min-height:100vh!important;display:grid!important;grid-template-columns:var(--sidebar-w) minmax(0,1fr)!important;overflow:visible!important}
.main{min-width:0!important;overflow-x:hidden!important;background:var(--bg)!important}
.sidebar{position:sticky!important;top:0!important;height:100vh!important;min-height:100vh!important;overflow:hidden!important;padding:24px 18px 20px!important}
.sidebar nav{overflow-y:auto!important;overflow-x:hidden!important;padding-right:4px!important;margin-right:-4px!important;scrollbar-width:none!important}
.sidebar nav::-webkit-scrollbar{display:none!important}
.brand{margin-bottom:10px!important}.brand-mark{width:54px!important;height:54px!important;border-radius:18px!important}
.brand-copy strong{font-size:21px!important;line-height:1.05!important;letter-spacing:-.025em!important}
.brand-copy small{font-size:10px!important;letter-spacing:.13em!important;line-height:1.15!important;opacity:.72!important}
.nav-group{margin-top:14px!important}.nav-group p{margin:0 0 9px!important;font-size:11px!important;line-height:1!important;letter-spacing:.16em!important;color:var(--muted)!important;opacity:.75!important}
.nav-group a{min-height:46px!important;border-radius:16px!important;padding:0 13px!important;gap:12px!important;margin:4px 0!important;border:1px solid transparent!important;transition:.18s ease!important}
.nav-group a span{width:34px!important;height:34px!important;border-radius:12px!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--primary) 10%,transparent)!important;color:var(--primary)!important}
.nav-group a b{font-size:15px!important;font-weight:820!important;letter-spacing:-.01em!important}
.nav-group a:hover{background:color-mix(in srgb,var(--primary) 9%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary) 22%,var(--line))!important;transform:translateX(2px)!important}
.nav-group a.active{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 22%,var(--surface)), color-mix(in srgb,var(--secondary) 15%,var(--surface)))!important;border-color:color-mix(in srgb,var(--primary) 38%,var(--line))!important;box-shadow:none!important}
.nav-group a.active span{background:color-mix(in srgb,var(--primary) 18%,var(--surface))!important}
.logout{margin-top:auto!important;min-height:42px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:10px 13px!important;border-radius:14px!important;color:var(--muted)!important;font-weight:820!important}
.logout:hover{background:color-mix(in srgb,var(--danger) 9%,var(--surface))!important;color:var(--text)!important}

.topbar{height:var(--topbar-h)!important;padding:14px var(--page-x)!important;gap:12px!important}
.search{height:50px!important;max-width:720px!important;border-radius:17px!important}
.top-icon{width:48px!important;height:48px!important;border-radius:16px!important}
.top-icon:hover,.top-profile:hover{transform:translateY(-1px)!important;border-color:color-mix(in srgb,var(--primary) 30%,var(--line))!important;background:color-mix(in srgb,var(--primary) 6%,var(--surface))!important}
.top-profile{height:50px!important;border-radius:18px!important;padding:5px 13px 5px 5px!important}.avatar{width:40px!important;height:40px!important}
.dropdown-menu{min-width:250px!important;border-radius:20px!important;padding:14px!important;box-shadow:0 22px 60px rgba(0,0,0,.18)!important}
.dropdown-menu a,.dropdown-menu p{border-radius:13px!important;padding:10px 12px!important}

.page-head,.stats-grid,.dash-grid,.main>.panel,.config-form-v25{max-width:var(--content-max)!important;width:100%!important;margin-left:auto!important;margin-right:auto!important}
.page-head{padding:var(--page-y) var(--page-x) 20px!important;align-items:center!important}
.page-head h1{font-size:clamp(34px,3.2vw,50px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:830!important}
.page-head p{margin-top:9px!important;font-size:16px!important;line-height:1.5!important;font-weight:650!important}
.btn-small{height:44px!important;border-radius:15px!important;padding:0 20px!important;font-size:14px!important}

.stats-grid{padding:0 var(--page-x)!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important}
.stat{min-height:104px!important;border-radius:20px!important;padding:16px!important;display:grid!important;grid-template-columns:1fr 42px!important;align-items:start!important;gap:10px!important;overflow:hidden!important}
.stat:hover,.panel:hover,.asset-box:hover,.config-card-v25:hover{transform:translateY(-3px)!important;box-shadow:var(--shadow-hover)!important}
.stat-icon{width:42px!important;height:42px!important;border-radius:14px!important}
.stat span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:12px!important;line-height:1.18!important;letter-spacing:.035em!important}
.stat strong{font-size:26px!important;line-height:1.05!important;letter-spacing:-.03em!important;white-space:nowrap!important}
.stat small{font-size:13px!important}
.dash-grid{padding:20px var(--page-x) 46px!important;display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important}
.panel{border-radius:22px!important;padding:22px!important;min-width:0!important;overflow:hidden!important}
.panel.big{grid-column:span 7!important}.dash-grid>.panel:not(.big){grid-column:span 5!important}
.panel h3,.panel-head h3{font-size:22px!important;line-height:1.16!important;letter-spacing:-.025em!important;font-weight:820!important;margin:0 0 16px!important}
.chart{height:220px!important;border-radius:18px!important}.donut{width:210px!important;height:210px!important;margin:10px auto 16px!important}
.legend{margin:0!important;padding-left:22px!important;color:var(--muted)!important}
.row{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;gap:14px!important;padding:12px 0!important}
.row em,.badge{height:28px!important;min-width:74px!important;padding:0 12px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-style:normal!important;line-height:1!important;font-size:13px!important;font-weight:850!important;color:var(--success)!important;background:color-mix(in srgb,var(--success) 13%,transparent)!important}

.main>.panel{padding:24px 28px!important;border-radius:24px!important}
table{table-layout:fixed!important;width:100%!important}
th,td{padding:15px 18px!important;line-height:1.25!important;vertical-align:middle!important}
th{font-size:12px!important;letter-spacing:.08em!important}
td{font-size:15px!important;font-weight:720!important;overflow:hidden!important;text-overflow:ellipsis!important}
tr:hover td{background:color-mix(in srgb,var(--primary) 5%,transparent)!important}

.config-form-v25{padding:0 var(--page-x) 52px!important}
.config-tabs{gap:8px!important;margin:0 0 18px!important;overflow:visible!important;flex-wrap:wrap!important}
.config-tabs button{height:40px!important;padding:0 16px!important;border-radius:999px!important;font-size:14px!important;line-height:1!important}
.config-card-v25{border-radius:24px!important;padding:24px!important;overflow:hidden!important}
.config-card-title{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:24px!important;padding-bottom:16px!important;margin-bottom:18px!important;border-bottom:1px solid var(--line)!important}
.config-card-title h3{font-size:24px!important;line-height:1.15!important;letter-spacing:-.025em!important;margin:0!important}
.config-card-title p{margin:3px 0 0!important;max-width:520px!important;color:var(--muted)!important;font-weight:650!important}
.asset-grid-v25{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.asset-box{min-height:190px!important;padding:16px!important;border-radius:20px!important;align-content:start!important;justify-items:center!important}
.asset-box b{justify-self:start!important;font-size:14px!important}.asset-box small{font-size:13px!important}
.asset-thumb,.asset-empty{width:72px!important;height:72px!important;font-size:13px!important;line-height:1.1!important}.mini-round{width:52px!important;height:52px!important;border-radius:15px!important}
.upload-btn{width:100%!important;max-width:260px!important;height:38px!important;font-size:13px!important;border-radius:14px!important}
.form-grid-v25{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.form-grid-v25 label{min-width:0!important}.form-grid-v25 label span{font-size:13px!important;font-weight:850!important;margin-bottom:7px!important;color:var(--text)!important}
.form-grid-v25 input:not([type=color]),.form-grid-v25 select,.form-grid-v25 textarea{height:46px!important;border-radius:15px!important;font-size:14px!important;font-weight:720!important;padding:0 14px!important}
.form-grid-v25 textarea{height:88px!important;padding-top:12px!important}
.theme-grid-v25 label:has(input[type=color]){display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border-radius:16px!important;padding:12px 14px!important}
.theme-grid-v25 input[type=color]{width:44px!important;height:44px!important;padding:3px!important;border-radius:14px!important;cursor:pointer!important}
.check-card{min-height:52px!important;padding:12px 14px!important;border-radius:16px!important;gap:12px!important}
.check-card input[type=checkbox]{appearance:none!important;width:42px!important;height:24px!important;border-radius:999px!important;border:1px solid var(--line-strong)!important;background:var(--surface)!important;position:relative!important;flex:0 0 auto!important}
.check-card input[type=checkbox]::after{content:""!important;position:absolute!important;width:18px!important;height:18px!important;border-radius:999px!important;background:var(--muted)!important;top:2px!important;left:2px!important;transition:.18s!important}
.check-card input[type=checkbox]:checked{background:linear-gradient(135deg,var(--primary),var(--secondary))!important}
.check-card input[type=checkbox]:checked::after{left:20px!important;background:#fff!important}
.hero-config-grid{gap:14px!important}.hero-config-grid>div{padding:16px!important;border-radius:20px!important}.hero-thumb,.hero-empty{height:120px!important;border-radius:16px!important}

.login-title-wrap p:empty{display:none!important}
.trust-line{margin:14px 0 0!important;font-size:13px!important;font-weight:850!important;color:var(--success)!important;text-align:center!important}
.login-access-link{display:block!important;margin-top:12px!important;text-align:center!important;color:var(--muted)!important;font-weight:750!important}

@media(max-width:1320px){
  :root{--content-max:1080px}
  .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .panel.big,.dash-grid>.panel:not(.big){grid-column:span 6!important}
}
@media(max-width:980px){
  .app-shell{grid-template-columns:1fr!important}
  .sidebar{position:fixed!important;z-index:60!important;transform:translateX(-104%)!important;transition:.2s!important;width:284px!important}
  .sidebar.open{transform:translateX(0)!important}
  .hamb{display:inline-grid!important}
  .topbar{padding:12px 16px!important}
  .top-profile span{display:none!important}
  .page-head{padding:26px 18px 16px!important;flex-direction:column!important;align-items:flex-start!important}
  .stats-grid,.dash-grid,.config-form-v25{padding-left:18px!important;padding-right:18px!important}
  .stats-grid{grid-template-columns:1fr 1fr!important}
  .panel.big,.dash-grid>.panel:not(.big){grid-column:1/-1!important}
  .asset-grid-v25,.form-grid-v25,.hero-config-grid{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .login-enterprise{display:block!important;background:var(--bg)!important}
  .login-hero{display:none!important}
  .login-panel-wrap{min-height:100vh!important;padding:22px!important;background:var(--bg)!important}
  .login-panel{padding:26px 20px!important;border-radius:26px!important}
  .login-logo{width:68px!important;height:68px!important;margin-bottom:16px!important}
  .login-title-wrap h2{font-size:30px!important}
  .input-premium{height:50px!important}
  .form-row{font-size:12px!important}
  .stats-grid{grid-template-columns:1fr!important}
}



/* =========================================================
   MICITA VPRO2_16 - SIDEBAR GUTTER + PREMIUM ICON SYSTEM
   ========================================================= */
:root{
  --sidebar-w:292px;
  --app-gutter:42px;
  --content-max:1280px;
  --module-top:42px;
  --title-track:-0.032em;
  --title-lh:1.08;
}

/* Global layout: one clean gutter for every module */
.app-shell{
  display:grid!important;
  grid-template-columns:var(--sidebar-w) minmax(0,1fr)!important;
  min-height:100vh!important;
  overflow-x:clip!important;
}
.main{
  min-width:0!important;
  overflow-x:clip!important;
  padding:0 var(--app-gutter) 56px!important;
}
.topbar{
  margin-left:calc(var(--app-gutter) * -1)!important;
  margin-right:calc(var(--app-gutter) * -1)!important;
  padding-left:var(--app-gutter)!important;
  padding-right:var(--app-gutter)!important;
}

/* Sidebar: no ugly square cut, no visible internal bars */
.sidebar{
  position:sticky!important;
  top:0!important;
  height:100vh!important;
  max-height:100vh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:none!important;
  border-radius:0 0 34px 0!important;
  border-right:1px solid var(--line)!important;
  box-shadow:12px 0 38px rgba(0,0,0,.10)!important;
}
.sidebar::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}
.sidebar nav{padding-bottom:10px!important}
.logout{margin-top:16px!important}

/* All main content inherits the same width and breathing */
.page-head,
.stats-grid,
.dash-grid,
.main>.panel,
.config-form-v25{
  width:min(100%,var(--content-max))!important;
  max-width:var(--content-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.page-head{
  padding:var(--module-top) 0 24px!important;
  align-items:flex-start!important;
}
.stats-grid,
.dash-grid{
  padding-left:0!important;
  padding-right:0!important;
}

/* Typography: no more crushed enterprise titles */
.page-head h1,
.config-card-title h3,
.panel h3{
  letter-spacing:var(--title-track)!important;
  line-height:var(--title-lh)!important;
}
.page-head h1{
  font-size:clamp(42px,4.4vw,64px)!important;
  font-weight:850!important;
  max-width:860px!important;
}
.page-head p{
  font-size:18px!important;
  line-height:1.45!important;
  margin-top:12px!important;
  max-width:720px!important;
}
.config-card-title h3,
.panel h3{
  font-weight:820!important;
}

/* Premium unified SVG icon language */
.nav-group a span,
.stat-icon,
.top-icon,
.brand-mark,
.avatar{
  flex:0 0 auto!important;
}
.nav-group a span svg,
.stat-icon svg,
.logout svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
  fill:currentColor!important;
}
.nav-group a span{
  color:var(--primary)!important;
  background:color-mix(in srgb,var(--primary) 12%,var(--surface))!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,transparent)!important;
}
.nav-group a{
  border-radius:16px!important;
  min-height:48px!important;
}
.nav-group a:hover{
  transform:translateX(3px)!important;
  background:color-mix(in srgb,var(--primary) 10%,var(--surface))!important;
  border-color:color-mix(in srgb,var(--primary) 24%,var(--line))!important;
}
.nav-group a.active{
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 22%,var(--surface)),color-mix(in srgb,var(--secondary) 12%,var(--surface)))!important;
  border-color:color-mix(in srgb,var(--primary) 38%,var(--line))!important;
  box-shadow:none!important;
}
.nav-group a.active span{
  background:linear-gradient(135deg,var(--primary),var(--secondary))!important;
  color:#fff!important;
}

/* Dashboard KPI strip */
.stats-grid{
  grid-template-columns:repeat(auto-fit,minmax(185px,1fr))!important;
  gap:18px!important;
}
.stat{
  min-height:118px!important;
  padding:20px!important;
  border-radius:24px!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
}
.stat-icon{
  grid-column:1!important;
  grid-row:auto!important;
  width:54px!important;
  height:54px!important;
  border-radius:18px!important;
  color:var(--primary)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,var(--surface)),color-mix(in srgb,var(--accent) 8%,var(--surface)))!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line))!important;
}
.stat-icon svg{width:22px!important;height:22px!important;fill:currentColor!important}
.stat span{
  white-space:normal!important;
  line-height:1.15!important;
  font-size:12px!important;
  letter-spacing:.055em!important;
}
.stat strong{
  font-size:clamp(25px,2.3vw,36px)!important;
  line-height:1.05!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.stat small{
  font-size:15px!important;
}

/* Better dashboard proportions */
.dash-grid{
  gap:22px!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  align-items:stretch!important;
}
.panel{
  border-radius:26px!important;
  padding:26px!important;
  min-width:0!important;
}
.panel.big{
  grid-column:span 7!important;
}
.dash-grid>.panel:not(.big){
  grid-column:span 5!important;
}
.chart.purple{
  height:250px!important;
  border-radius:22px!important;
}
.donut{
  max-width:260px!important;
  margin:18px auto!important;
}
.legend{
  margin:16px 0 0!important;
  padding-left:22px!important;
}

/* Tables: cards with true padding and not glued to sidebar */
.table-panel{
  padding:26px 30px!important;
  overflow:hidden!important;
}
.table-panel table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
.table-panel th,
.table-panel td{
  padding:18px 18px!important;
  vertical-align:middle!important;
}
.table-panel th{
  font-size:12px!important;
  letter-spacing:.08em!important;
}
.table-panel tr:hover td{
  background:color-mix(in srgb,var(--primary) 5%,transparent)!important;
}

/* Badges compact, aligned and premium */
.badge,
.row em,
table em{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  line-height:1!important;
  font-size:12px!important;
  font-weight:850!important;
  text-transform:none!important;
  white-space:nowrap!important;
}

/* Config page: assets aligned; no huge broken controls */
.asset-grid-v25{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.asset-box{
  min-height:220px!important;
  padding:20px!important;
  align-content:start!important;
  justify-items:center!important;
  text-align:center!important;
}
.asset-box>b{
  justify-self:start!important;
  text-align:left!important;
  width:100%!important;
}
.asset-thumb.round,
.asset-empty.round{
  width:92px!important;
  height:92px!important;
  border-radius:999px!important;
}
.asset-thumb.mini-round,
.asset-empty.mini-round{
  width:64px!important;
  height:64px!important;
  border-radius:20px!important;
}
.asset-empty{
  font-size:12px!important;
  line-height:1.1!important;
  overflow:hidden!important;
}
.upload-btn{
  width:100%!important;
  height:46px!important;
  border-radius:15px!important;
  margin-top:12px!important;
}
.form-grid-v25{
  gap:18px!important;
}
.form-grid-v25 label span{
  font-size:13px!important;
  font-weight:850!important;
  letter-spacing:.005em!important;
}
.form-grid-v25 input,
.form-grid-v25 select,
.form-grid-v25 textarea{
  min-height:50px!important;
  font-size:15px!important;
  font-weight:650!important;
}

/* Color palette: swatch card, not ugly long bars */
.theme-grid-v25 label:has(input[type=color]){
  min-height:72px!important;
  padding:14px 16px!important;
  display:grid!important;
  grid-template-columns:1fr 52px!important;
  gap:14px!important;
}
.theme-grid-v25 input[type=color]{
  width:52px!important;
  height:52px!important;
  border-radius:16px!important;
  padding:5px!important;
  overflow:hidden!important;
}
.theme-grid-v25 input[type=color]::-webkit-color-swatch-wrapper{padding:0!important}
.theme-grid-v25 input[type=color]::-webkit-color-swatch{border:none!important;border-radius:12px!important}

/* Toggle cards instead of giant checkboxes */
.check-card{
  min-height:58px!important;
  justify-content:space-between!important;
  padding:14px 16px!important;
  font-size:15px!important;
}
.check-card input[type=checkbox]{
  order:2!important;
}

/* Topbar functions clearer */
.dropdown-menu{
  min-width:240px!important;
  border-radius:22px!important;
  padding:16px!important;
}
.dropdown-menu b{
  display:block!important;
  margin-bottom:8px!important;
  color:var(--text)!important;
}
.dropdown-menu a,
.dropdown-menu p{
  border-radius:14px!important;
  padding:11px 12px!important;
}

/* Light theme stronger contrast */
.theme-light{
  --bg:#f4f7fb!important;
  --surface:#ffffff!important;
  --surface-2:#f8fafc!important;
  --text:#0f172a!important;
  --muted:#475569!important;
  --line:#d4deeb!important;
  --line-strong:#bfccd9!important;
}
.theme-light .sidebar,
.theme-light .topbar{
  background:rgba(255,255,255,.92)!important;
}
.theme-light .nav-group p,
.theme-light .brand-copy span{
  color:#64748b!important;
}
.theme-light .panel,
.theme-light .stat,
.theme-light .config-card-v25,
.theme-light .asset-box{
  box-shadow:0 18px 50px rgba(15,23,42,.07)!important;
}

/* Responsive */
@media(max-width:1280px){
  :root{--app-gutter:30px;--content-max:1120px}
  .stats-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important}
}
@media(max-width:980px){
  .main{padding:0 18px 44px!important}
  .topbar{margin-left:-18px!important;margin-right:-18px!important;padding-left:18px!important;padding-right:18px!important}
  .page-head{padding-top:28px!important}
  .page-head h1{font-size:clamp(34px,10vw,48px)!important}
  .panel.big,.dash-grid>.panel:not(.big){grid-column:1/-1!important}
  .asset-grid-v25{grid-template-columns:1fr!important}
}



/* =========================================================
   MICITA VPRO2_17 - ENTERPRISE MONEY-FIRST + UX REBUILD
   ========================================================= */
:root{
  --content-gutter:42px;
  --module-max:1420px;
  --kpi-blue:#2563eb;
  --kpi-teal:#14b8a6;
  --kpi-indigo:#6366f1;
  --kpi-amber:#f59e0b;
  --kpi-green:#16a34a;
  --kpi-magenta:#d946ef;
  --kpi-cyan:#06b6d4;
}
.app-shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100vh;gap:0}
.main{min-width:0;padding:0 var(--content-gutter) 48px;max-width:calc(100vw - var(--sidebar-w));overflow-x:hidden}
.topbar{position:sticky;top:0;z-index:50;margin:18px auto 28px;max-width:var(--module-max);height:70px;border-radius:26px;padding:0 18px;background:color-mix(in srgb,var(--surface) 92%, transparent);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.page-head,.stats-grid,.dash-grid,.money-grid,.business-focus-grid,.panel.table-panel,.config-form-v25{max-width:var(--module-max);margin-left:auto!important;margin-right:auto!important;width:100%}
.page-head-enterprise{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;padding:0 2px}
.page-head h1{font-weight:820!important;letter-spacing:-.035em!important;line-height:1.08!important;margin:0 0 8px!important}
.eyebrow{display:inline-flex;align-items:center;height:26px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
.page-head p{margin:0;color:var(--muted);font-weight:650;line-height:1.45}
.head-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}
.sidebar{height:calc(100vh - 24px)!important;margin:12px 0 12px 12px;border-radius:30px!important;overflow:hidden!important;box-shadow:0 24px 80px rgba(0,0,0,.20)!important}
.sidebar nav{overflow-y:auto;max-height:calc(100vh - 190px);padding-right:4px;scrollbar-width:none}
.sidebar nav::-webkit-scrollbar{display:none}
.sidebar:after{content:"";position:absolute;right:-1px;bottom:-1px;width:46px;height:46px;background:var(--bg);border-top-left-radius:34px;pointer-events:none}
.sidebar a{transition:.18s ease;border:1px solid transparent}
.sidebar a:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.10);transform:translateX(3px)}
.theme-light .sidebar a:hover{background:rgba(109,74,255,.08);border-color:rgba(109,74,255,.14)}
.sidebar a.active{box-shadow:none!important;background:linear-gradient(90deg,rgba(109,74,255,.18),rgba(14,165,233,.08))!important;border-color:rgba(109,74,255,.18)}
.sidebar a.active:before{content:"";width:4px;height:24px;border-radius:999px;background:linear-gradient(180deg,var(--primary),var(--accent));position:absolute;left:10px}
.sidebar a span{background:transparent!important;box-shadow:none!important}
.sidebar svg{width:20px;height:20px;fill:currentColor;opacity:.95}
.stat{min-height:112px!important;padding:22px!important;border-radius:26px!important;border:1px solid var(--line)!important;background:var(--surface)!important;box-shadow:var(--shadow)!important;transition:.2s ease!important;display:flex!important;align-items:center!important;gap:16px!important}
.stat:hover,.panel:hover,.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)!important}
.stat-icon{width:48px!important;height:48px!important;border-radius:18px!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--tone) 14%, transparent)!important;color:var(--tone)!important;box-shadow:none!important;flex-shrink:0}
.stat-icon svg{width:24px;height:24px;fill:currentColor}
.stat-body span{font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:var(--muted)!important}
.stat-body strong{display:block;margin-top:6px;font-size:30px!important;letter-spacing:-.035em!important;line-height:1!important}
.stat-body small{display:inline-flex;margin-top:8px;font-weight:850;color:var(--tone)}
.stat-blue{--tone:var(--kpi-blue)}.stat-teal{--tone:var(--kpi-teal)}.stat-indigo{--tone:var(--kpi-indigo)}.stat-amber{--tone:var(--kpi-amber)}.stat-green{--tone:var(--kpi-green)}.stat-magenta{--tone:var(--kpi-magenta)}.stat-cyan{--tone:var(--kpi-cyan)}.stat-purple{--tone:var(--primary)}
.stats-grid{gap:18px!important;margin-bottom:22px!important}
.dash-grid-v217{display:grid!important;grid-template-columns:1.45fr .85fr!important;gap:20px!important}
.panel{border-radius:28px!important;padding:24px!important;border:1px solid var(--line)!important;background:var(--surface)!important;box-shadow:var(--shadow)!important;transition:.2s ease!important;min-width:0}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}
.panel-head h3{margin:0;font-size:17px;letter-spacing:-.02em;line-height:1.2}
.panel-head p{margin:5px 0 0;color:var(--muted);font-size:13px;font-weight:650}
.panel-head span{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:28px;padding:0 10px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%, transparent);color:var(--primary);font-size:12px;font-weight:900}
.enterprise-row,.row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:6px 12px;align-items:center;padding:13px 0!important;border-bottom:1px solid var(--line)}
.row em{align-self:center;display:inline-flex;align-items:center;justify-content:center;height:28px;border-radius:999px;padding:0 10px;background:rgba(22,163,74,.12);color:#16a34a;font-style:normal;font-size:12px;font-weight:900}
.table-panel{padding:22px!important;border-radius:30px!important;overflow:hidden}
.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.search.mini{max-width:360px;height:44px}
.btn-ghost{height:42px;border-radius:14px;border:1px solid var(--line);background:transparent;color:var(--text);font-weight:850;padding:0 14px;margin-left:8px}
table{width:100%;border-collapse:separate!important;border-spacing:0!important}
th,td{padding:16px 18px!important;text-align:left;border-bottom:1px solid var(--line)}
tbody tr{transition:.16s}
tbody tr:hover{background:color-mix(in srgb,var(--primary) 5%, transparent)}
.badge{height:26px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;padding:0 10px!important;font-size:11px!important;font-weight:900!important;line-height:1!important;background:rgba(22,163,74,.12)!important;color:#16a34a!important}
.success,.alert{max-width:var(--module-max);margin:0 auto 18px!important;border-radius:18px!important;padding:14px 16px!important;border:1px solid rgba(22,163,74,.22)!important;background:rgba(22,163,74,.10)!important;color:#16a34a!important;font-weight:850!important}
.login-enterprise{grid-template-columns:minmax(0,1.08fr) minmax(390px,.82fr)!important}
.login-panel{padding:30px!important}
.login-title-wrap h2{letter-spacing:-.035em!important;line-height:1.1!important}
.trust-line{margin:14px 0 0!important;padding:0!important;border:0!important;background:transparent!important;color:var(--muted)!important;font-size:12px!important;font-weight:850!important;text-align:center}
.login-small{display:block;text-align:center;margin-top:14px!important;color:var(--muted)!important}
.form-row{margin:12px 0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;font-size:13px!important}
.input-premium{height:50px!important}
.input-premium span{font-weight:900;color:var(--primary)}
.business-focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.business-focus-grid .calendar-card,.business-focus-grid .alert-card{min-height:220px}
.money-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px}
.appointment-carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none}
.appointment-carousel::-webkit-scrollbar{display:none}
.appt-slide{scroll-snap-align:start;min-width:245px;border:1px solid var(--line);border-radius:22px;padding:18px;background:color-mix(in srgb,var(--surface-2) 80%, transparent)}
.appt-slide time{display:inline-flex;height:30px;align-items:center;border-radius:999px;padding:0 10px;background:rgba(14,165,233,.13);color:var(--accent);font-weight:900;margin-bottom:12px}
.appt-slide strong{display:block;font-size:18px;letter-spacing:-.02em}
.appt-slide span,.appt-slide small{display:block;color:var(--muted);font-weight:750;margin-top:5px}
.appt-charge button{width:100%;height:42px;border:0;border-radius:14px;margin-top:14px;background:linear-gradient(135deg,#16a34a,#22c55e);color:white;font-weight:950;cursor:pointer}
.cash-toast{position:fixed;right:26px;top:96px;z-index:9999;border-radius:20px;padding:16px 18px;background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;font-weight:950;box-shadow:0 22px 60px rgba(22,163,74,.35);animation:cashpop 3s ease forwards}
@keyframes cashpop{0%{transform:translateY(-12px) scale(.95);opacity:0}12%{transform:translateY(0) scale(1);opacity:1}85%{opacity:1}100%{transform:translateY(-10px);opacity:0}}
.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;align-items:end;height:150px}
.week-strip div{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px}
.week-strip span{display:block;width:100%;max-width:30px;border-radius:999px;background:linear-gradient(180deg,var(--accent),var(--primary))}
.week-strip b,.week-strip small{font-size:12px;color:var(--muted);font-weight:900}
.config-form-v25 .config-card-v25{max-width:var(--module-max);margin-left:auto;margin-right:auto}
.check-card{border-radius:16px!important;padding:16px 18px!important;display:flex!important;align-items:center!important;gap:12px!important}
.check-card input{width:42px!important;height:24px!important;appearance:none;border-radius:999px;background:var(--line-strong);position:relative;flex:none}
.check-card input:checked{background:var(--primary)}
.check-card input:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.18s}
.check-card input:checked:before{left:21px}
.theme-grid-v25 input[type=color]{height:46px!important;border-radius:16px!important;padding:4px!important;max-width:90px}
@media(max-width:1100px){
  .money-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .business-focus-grid,.dash-grid-v217{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  :root{--content-gutter:18px}
  .app-shell{display:block}
  .main{max-width:none;padding:0 16px 36px}
  .topbar{margin:12px 0 18px;height:64px;border-radius:22px}
  .page-head-enterprise{align-items:flex-start;flex-direction:column}
  .stats-grid,.money-grid{grid-template-columns:1fr!important}
  .stat{min-height:96px!important}
  .business-focus-grid{display:block}
  .business-focus-grid .panel{margin-bottom:16px}
  .appointment-carousel{display:flex}
  .appt-slide{min-width:calc(100vw - 70px)}
  .login-enterprise{display:block!important;min-height:100vh}
  .login-hero{display:none!important}
  .login-panel-wrap{min-height:100vh;padding:22px!important}
  .login-panel{width:100%;max-width:430px;padding:26px!important}
}



/* ============================================================
   MICITA VPRO2_18 ENTERPRISE REFINEMENT
   Refinamiento visual + UX + estabilidad de sesión.
   ============================================================ */

/* Typography engine: menos peso, más legibilidad */
:root{
  --content-max: 1360px;
  --content-gutter: clamp(28px, 3.2vw, 52px);
  --module-gap: 22px;
  --radius: 22px;
  --radius-lg: 28px;
  --card-pad: 24px;
}
.page-head-enterprise h1,
.config-head h1,
.money-head h1{
  font-weight: 850 !important;
  letter-spacing: -0.038em !important;
  line-height: 1.05 !important;
  font-size: clamp(42px, 5.2vw, 72px) !important;
  max-width: 980px;
}
.page-head-enterprise p,
.config-head p{
  margin-top: 10px !important;
  line-height: 1.45 !important;
}

/* Sidebar vuelve a una lectura V2_16: sólido, no tarjeta gigante */
.app-shell{
  grid-template-columns: var(--sidebar-w) minmax(0,1fr) !important;
  overflow: hidden !important;
}
.sidebar{
  background: linear-gradient(180deg,#0b1427 0%,#080f20 100%) !important;
  border-right: 1px solid rgba(148,163,184,.18) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 22px 16px 18px !important;
}
.theme-light .sidebar{
  background: linear-gradient(180deg,#ffffff 0%,#f7f9fc 100%) !important;
}
.sidebar .brand{
  padding: 8px 8px 16px !important;
  margin-bottom: 6px !important;
}
.brand-copy strong{
  letter-spacing: -0.025em !important;
  font-weight: 850 !important;
}
.brand-copy span{
  letter-spacing: .10em !important;
  line-height: 1.25 !important;
}
.nav-group a{
  border-radius: 15px !important;
  height: 46px !important;
}
.nav-group a.active{
  background: color-mix(in srgb,var(--primary) 13%,var(--surface)) !important;
  border-color: color-mix(in srgb,var(--primary) 30%,var(--line)) !important;
  box-shadow: inset 3px 0 0 var(--primary) !important;
}
.nav-group a:hover{
  transform: translateX(2px);
}
.nav-group a span{
  border-radius: 12px !important;
}

/* Topbar con respiración, no pegada al menú */
.main{
  min-width: 0 !important;
  padding-left: var(--content-gutter) !important;
  padding-right: var(--content-gutter) !important;
  overflow-x: hidden !important;
}
.topbar{
  margin: 18px auto 14px !important;
  max-width: var(--content-max) !important;
  width: 100% !important;
  border: 1px solid var(--line) !important;
  border-radius: 24px !important;
  height: 74px !important;
  padding: 12px 16px !important;
  background: color-mix(in srgb,var(--surface) 86%,transparent) !important;
}
.search-v27{
  height: 48px !important;
  border-radius: 16px !important;
}
.top-actions-v27{gap:10px!important}
.top-icon{
  width:48px!important;
  height:48px!important;
  border-radius:16px!important;
}
.top-icon svg{width:18px;height:18px;fill:currentColor}
.dropdown-menu{
  border-radius: 20px !important;
  padding: 18px !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.22) !important;
}
.theme-light .dropdown-menu{
  box-shadow: 0 22px 70px rgba(15,23,42,.14) !important;
}

/* Layout global uniforme: todos los módulos respirando */
.page-head-enterprise,
.config-head,
.stats-grid,
.money-grid,
.dash-grid,
.dash-grid-v217,
.dash-grid-v218,
.business-focus-grid,
.table-panel,
.config-form-v25 .config-card-v25,
.config-tabs-v27{
  max-width: var(--content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.page-head-enterprise,
.config-head{
  padding-top: 22px !important;
  margin-bottom: 24px !important;
}
.head-actions .btn-small{
  border-radius: 18px !important;
  height: 52px !important;
  padding: 0 24px !important;
}

/* KPI cards: semánticas, menos "caja dentro de caja" */
.stats-grid,
.money-grid{
  gap: 18px !important;
}
.stat{
  min-height: 126px !important;
  padding: 20px !important;
  border-radius: 24px !important;
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
.stat:hover{
  transform: translateY(-3px);
  box-shadow: var(--shadow-hover) !important;
  border-color: color-mix(in srgb,var(--primary) 26%,var(--line)) !important;
}
.stat-icon{
  width:52px!important;
  height:52px!important;
  border-radius:18px!important;
  border:0!important;
  background: transparent !important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto;
}
.stat-icon svg{width:28px;height:28px;fill:currentColor}
.stat-blue .stat-icon{color:#38bdf8!important}
.stat-teal .stat-icon{color:#2dd4bf!important}
.stat-indigo .stat-icon{color:#818cf8!important}
.stat-amber .stat-icon{color:#f59e0b!important}
.stat-green .stat-icon{color:#22c55e!important}
.stat-purple .stat-icon{color:#a78bfa!important}
.stat-body span{
  font-size:13px!important;
  letter-spacing:.035em!important;
  font-weight:850!important;
  line-height:1.15!important;
  color:var(--muted)!important;
  text-transform:uppercase!important;
}
.stat-body strong{
  font-size: clamp(30px, 3vw, 42px)!important;
  letter-spacing: -0.035em!important;
  line-height:1!important;
}
.stat-body small{
  color:#22c55e!important;
  font-weight:900!important;
}

/* Dashboard rebalanced: menos card-heavy */
.dash-grid-v218{
  display:grid!important;
  grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr) !important;
  gap:22px!important;
}
.panel{
  border-radius: 24px !important;
  padding: 24px !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
.panel:hover{
  transform: translateY(-2px);
  box-shadow: var(--shadow-hover) !important;
}
.panel-compact{
  min-height: unset!important;
}
.panel-head{
  margin-bottom: 18px!important;
}
.panel-head h3{
  font-size: clamp(22px, 2vw, 30px)!important;
  line-height:1.08!important;
  letter-spacing:-.03em!important;
}
.panel-head p{
  line-height:1.4!important;
}
.chart-panel{min-height:360px!important}
.compact-chart,
.chart-premium{
  height:220px!important;
  min-height:220px!important;
  border-radius:22px!important;
}
.license-panel{min-height:360px!important}
.donut-compact{width:190px!important;height:190px!important;margin:10px auto 14px!important}
.legend-compact{
  display:flex!important;
  justify-content:center!important;
  gap:14px!important;
  flex-wrap:wrap!important;
}

/* Business money-first */
.money-grid-v218{
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  margin-bottom: 22px !important;
}
.business-focus-v218{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:20px!important;
}
.priority-card{
  position:relative;
  border-color: color-mix(in srgb,var(--accent) 20%,var(--line)) !important;
}
.priority-card:before{
  content:"";
  position:absolute;
  left:24px;
  right:24px;
  top:0;
  height:3px;
  border-radius:99px;
  background:linear-gradient(90deg,#22c55e,#0ea5e9,#8b5cf6);
}
.charge-priority:before{background:linear-gradient(90deg,#f59e0b,#22c55e)}
.priority-card .panel-head>span{
  background: color-mix(in srgb,var(--primary) 15%,transparent)!important;
  color:#a78bfa!important;
  border-radius:999px!important;
  padding:6px 12px!important;
  font-weight:950!important;
}
.appointment-carousel{
  gap:14px!important;
  padding:2px 0 6px!important;
}
.appt-slide{
  min-width: 230px!important;
  border-radius: 20px!important;
  padding: 16px!important;
  background: color-mix(in srgb,var(--surface-2) 72%,transparent)!important;
}
.appt-next{
  border-color: color-mix(in srgb,#0ea5e9 32%,var(--line))!important;
}
.appt-charge{
  border-color: color-mix(in srgb,#22c55e 32%,var(--line))!important;
}
.appt-charge button{
  height: 40px!important;
  border-radius: 14px!important;
  background:linear-gradient(135deg,#16a34a,#22c55e)!important;
}
.important-empty{
  min-width:100%!important;
  padding:18px!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--surface-2) 68%,transparent)!important;
  color:var(--muted)!important;
  font-weight:850!important;
}

/* Alertas premium */
.success,.alert{
  max-width: var(--content-max) !important;
  margin: 0 auto 18px !important;
  border-radius: 18px !important;
  padding: 13px 16px !important;
  font-weight: 850 !important;
  display:flex;
  align-items:center;
  gap:10px;
}
.success:before,.alert:before{content:"✓";font-weight:950;color:#22c55e}

/* Configuración menos pesada */
.config-card-v25{
  padding: 26px !important;
  border-radius: 26px !important;
}
.config-card-title{
  gap: 12px!important;
  align-items:flex-start!important;
}
.asset-grid-v25{
  gap:18px!important;
}
.asset-box{
  min-height: 220px !important;
  padding:20px!important;
  border-radius:22px!important;
}
.asset-thumb.round,.asset-empty.round{
  width:82px!important;
  height:82px!important;
}
.upload-btn{
  height:44px!important;
  border-radius:14px!important;
}
.theme-grid-v25 input[type=color]{
  width:64px!important;
  height:42px!important;
  max-width:64px!important;
}
.check-card{
  min-height:62px!important;
  padding:14px 16px!important;
  background:color-mix(in srgb,var(--surface-2) 70%,transparent)!important;
}

/* Login: desktop hero legible; mobile sin hero */
.hero-content h1{
  font-weight: 850!important;
  letter-spacing:-.045em!important;
  line-height:1.02!important;
  font-size:clamp(46px,5.5vw,78px)!important;
}
.login-panel{
  border-radius:26px!important;
}
.login-title-wrap h2{
  font-weight:850!important;
  letter-spacing:-.035em!important;
  line-height:1.08!important;
}
.login-panel>label{
  font-weight:850!important;
}
.input-premium{
  height:50px!important;
}

/* Tables */
.enterprise-table{
  padding: 24px !important;
}
.enterprise-table table th,
.enterprise-table table td{
  padding-left: 18px!important;
  padding-right:18px!important;
}
.badge{
  height:28px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* mobile */
@media(max-width:1100px){
  .dash-grid-v218,
  .business-focus-v218{
    grid-template-columns:1fr!important;
  }
  .money-grid-v218{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  :root{--content-gutter:16px}
  .main{padding-left:16px!important;padding-right:16px!important}
  .topbar{height:62px!important;margin:12px auto 14px!important}
  .page-head-enterprise h1,.config-head h1,.money-head h1{
    font-size:36px!important;
    line-height:1.08!important;
  }
  .stats-grid,.money-grid-v218{grid-template-columns:1fr!important}
  .stat{min-height:104px!important}
  .appointment-carousel{overflow-x:auto!important;scroll-snap-type:x mandatory!important}
  .appt-slide{min-width:calc(100vw - 74px)!important;scroll-snap-align:start!important}
  .login-hero{display:none!important}
  .login-enterprise{display:block!important}
  .login-panel-wrap{min-height:100vh!important;padding:22px!important}
}


/* =========================================================
   MICITA VPRO2_19 - COMPACT SIDEBAR + BUSINESS KPI ARCHITECTURE
   ========================================================= */
:root{--sidebar-w:286px!important;--app-gutter:34px!important;--content-max:1280px!important;--module-top:28px!important}
html,body{overflow-x:hidden!important}.app-shell{display:block!important;min-height:100vh!important;overflow-x:clip!important;background:var(--bg)!important}.sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:var(--sidebar-w)!important;height:100vh!important;max-height:100vh!important;border-radius:0!important;margin:0!important;padding:18px 16px 16px!important;background:var(--surface)!important;border-right:1px solid var(--line)!important;box-shadow:10px 0 28px rgba(0,0,0,.12)!important;overflow-y:auto!important;overflow-x:hidden!important;gap:14px!important}.sidebar:before,.sidebar:after,.nav-group a.active:before{display:none!important;content:none!important}.sidebar .brand{margin:0 0 14px!important;padding:0!important}.brand-mark{width:52px!important;height:52px!important}.brand-copy strong{font-size:20px!important}.brand-copy span{font-size:10px!important;letter-spacing:.10em!important}.sidebar nav{gap:8px!important;padding-bottom:8px!important;flex:1 1 auto!important}.nav-group{gap:5px!important}.nav-group p{margin:10px 6px 4px!important;font-size:10px!important;letter-spacing:.12em!important}.nav-group a{height:42px!important;min-height:42px!important;border-radius:14px!important;padding:0 10px!important;gap:10px!important}.nav-group a span{width:29px!important;height:29px!important;border-radius:10px!important}.nav-group a b{font-size:14px!important;letter-spacing:-.01em!important}.nav-group a:hover{transform:none!important;background:color-mix(in srgb,var(--primary) 8%,var(--surface))!important;color:var(--text)!important}.nav-group a.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary) 38%,var(--line))!important}.nav-group a.active span{background:color-mix(in srgb,var(--primary) 16%,var(--surface))!important;color:var(--primary)!important}.logout{margin-top:auto!important;height:42px!important;border-radius:14px!important;padding:0 10px!important;background:transparent!important}.main{margin-left:var(--sidebar-w)!important;width:calc(100vw - var(--sidebar-w))!important;padding:0 var(--app-gutter) 44px!important;overflow-x:clip!important;min-width:0!important}.topbar{margin:0 calc(var(--app-gutter) * -1)!important;padding-left:var(--app-gutter)!important;padding-right:var(--app-gutter)!important;height:78px!important;min-height:78px!important}.search{max-width:720px!important;height:50px!important;border-radius:16px!important}.top-icon{width:48px!important;height:48px!important;border-radius:15px!important}.top-profile{height:50px!important;border-radius:16px!important}.top-profile .avatar{width:40px!important;height:40px!important}.page-head,.stats-grid,.dash-grid,.money-grid,.business-focus-grid,.config-form-v25,.main>.panel{width:min(100%,var(--content-max))!important;max-width:var(--content-max)!important;margin-left:auto!important;margin-right:auto!important}.page-head{padding:var(--module-top) 0 18px!important;gap:18px!important}.page-head h1{font-size:clamp(36px,3.65vw,58px)!important;line-height:1.04!important;letter-spacing:-.038em!important;font-weight:820!important}.page-head p{font-size:17px!important;margin-top:8px!important;line-height:1.42!important}.eyebrow{font-size:11px!important;letter-spacing:.10em!important}
.stats-grid{padding:0!important;gap:16px!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}.stat{min-height:108px!important;border-radius:22px!important;padding:18px!important;display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;align-items:center!important;gap:14px!important}.stat-icon{grid-column:auto!important;grid-row:auto!important;width:58px!important;height:58px!important;border-radius:18px!important;background:rgba(255,255,255,.04)!important}.stat-icon svg{width:26px!important;height:26px!important}.stat-body span{font-size:11px!important;letter-spacing:.08em!important;line-height:1.15!important;white-space:normal!important}.stat-body strong{font-size:clamp(28px,2.2vw,38px)!important;letter-spacing:-.04em!important;line-height:1.02!important;white-space:nowrap!important;max-width:100%!important;overflow:hidden!important;text-overflow:clip!important}.stat-body small{font-size:13px!important;line-height:1.1!important}.stat-blue .stat-icon{color:#38bdf8!important;background:rgba(56,189,248,.10)!important;border-color:rgba(56,189,248,.25)!important}.stat-teal .stat-icon{color:#2dd4bf!important;background:rgba(45,212,191,.10)!important;border-color:rgba(45,212,191,.25)!important}.stat-indigo .stat-icon{color:#818cf8!important;background:rgba(129,140,248,.11)!important;border-color:rgba(129,140,248,.25)!important}.stat-amber .stat-icon,.stat-orange .stat-icon{color:#f59e0b!important;background:rgba(245,158,11,.10)!important;border-color:rgba(245,158,11,.25)!important}.stat-green .stat-icon{color:#22c55e!important;background:rgba(34,197,94,.10)!important;border-color:rgba(34,197,94,.25)!important}.stat-magenta .stat-icon{color:#e879f9!important;background:rgba(232,121,249,.10)!important;border-color:rgba(232,121,249,.25)!important}.stat-cyan .stat-icon{color:#22d3ee!important;background:rgba(34,211,238,.10)!important;border-color:rgba(34,211,238,.25)!important}.dash-grid,.dash-grid-v218{padding:18px 0 38px!important;gap:18px!important;grid-template-columns:repeat(12,minmax(0,1fr))!important}.dash-grid .panel,.panel{padding:22px!important}.chart-panel{grid-column:span 7!important}.license-panel{grid-column:span 5!important}.chart.purple,.chart-premium,.compact-chart{height:190px!important}.donut{width:180px!important;height:180px!important}.donut span{width:96px!important;height:96px!important}.panel h3{font-size:24px!important;letter-spacing:-.03em!important;line-height:1.08!important}.panel-head{margin-bottom:14px!important}
.business-headline{display:flex!important;align-items:center!important;gap:16px!important}.business-logo-live{width:62px;height:62px;border-radius:20px;background:linear-gradient(135deg,var(--primary),var(--secondary));display:grid;place-items:center;color:#fff;font-weight:950;overflow:hidden;box-shadow:0 14px 38px rgba(109,74,255,.24)}.business-logo-live img{width:100%;height:100%;object-fit:cover}.business-money-v219{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:16px!important;margin-bottom:18px!important}.business-money-v219 .stat:nth-child(1),.business-money-v219 .stat:nth-child(2){grid-column:span 3!important;min-height:120px!important}.business-money-v219 .stat:nth-child(n+3){grid-column:span 2!important;min-height:92px!important}.business-money-v219 .stat:nth-child(n+3) .stat-icon{width:48px!important;height:48px!important}.business-money-v219 .stat:nth-child(n+3) strong{font-size:30px!important}.business-focus-v219{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}.priority-card{border-color:color-mix(in srgb,var(--warning) 22%,var(--line))!important;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 95%,transparent),color-mix(in srgb,var(--warning) 5%,var(--surface)))!important}.priority-card .panel-head span{background:rgba(245,158,11,.12)!important;color:#fbbf24!important}.appointment-carousel{display:flex!important;gap:12px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;padding-bottom:4px!important}.appointment-carousel::-webkit-scrollbar{height:0}.appt-slide{min-width:220px!important;scroll-snap-align:start!important;border:1px solid var(--line)!important;background:color-mix(in srgb,var(--surface-2) 82%,transparent)!important;border-radius:18px!important;padding:14px!important}.appt-slide time{display:block;color:var(--warning);font-weight:950;margin-bottom:8px}.appt-slide strong{display:block;font-size:17px}.appt-slide span,.appt-slide small{display:block;color:var(--muted);font-weight:750;margin-top:4px}.appt-charge button{margin-top:12px;width:100%;height:38px;border:0;border-radius:13px;background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;font-weight:950;cursor:pointer}.alert-minimal .activity p{display:grid!important;grid-template-columns:18px 1fr auto!important;gap:10px!important;align-items:center!important}.alert-minimal .activity p i{font-style:normal;color:#fbbf24!important;font-size:13px!important}.alert-minimal .activity p span{font-weight:850}.alert-minimal .activity small{margin:0!important;color:var(--muted)!important}.success,.alert{display:flex!important;align-items:center!important;gap:10px!important;border-radius:16px!important;padding:12px 14px!important;max-width:var(--content-max)!important;margin:0 auto 16px!important;font-size:14px!important;background:rgba(34,197,94,.10)!important;border:1px solid rgba(34,197,94,.22)!important;color:#bbf7d0!important}.success:before{content:'✓'!important;width:22px;height:22px;border-radius:999px;background:rgba(34,197,94,.16);display:grid;place-items:center;color:#22c55e;font-weight:950}.alert:before{content:'!'!important;width:22px;height:22px;border-radius:999px;background:rgba(245,158,11,.16);display:grid;place-items:center;color:#f59e0b;font-weight:950}.hero-content h1{letter-spacing:-.038em!important;line-height:1.04!important;font-weight:850!important}.login-title-wrap h2{letter-spacing:-.03em!important;line-height:1.08!important}.input-premium{height:50px!important}.login-panel>label{font-weight:850!important}.login-small{line-height:1.45!important}.trust-line{font-size:12px!important;color:var(--success)!important;background:transparent!important}.theme-grid-v25 label:has(input[type=color]){min-height:66px!important;grid-template-columns:1fr 46px!important}.theme-grid-v25 input[type=color]{width:46px!important;height:46px!important}.check-card{min-height:52px!important;border-radius:17px!important}.check-card input[type=checkbox]{width:42px!important;height:24px!important;appearance:none!important;border:0!important;border-radius:999px!important;background:color-mix(in srgb,var(--muted) 35%,transparent)!important;position:relative!important}.check-card input[type=checkbox]:checked{background:linear-gradient(135deg,var(--primary),var(--secondary))!important}.check-card input[type=checkbox]:before{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:999px;background:#fff;transition:.16s}.check-card input[type=checkbox]:checked:before{transform:translateX(18px)}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.business-money-v219{grid-template-columns:repeat(2,minmax(0,1fr))!important}.business-money-v219 .stat{grid-column:span 1!important}.business-focus-v219{grid-template-columns:1fr!important}.chart-panel,.license-panel,.dash-grid>.panel{grid-column:1/-1!important}}
@media(max-width:900px){:root{--sidebar-w:286px!important;--app-gutter:18px!important}.app-shell{display:block!important}.sidebar{transform:translateX(-105%);transition:.22s;z-index:100}.sidebar.open{transform:translateX(0)}.main{margin-left:0!important;width:100%!important;padding:0 16px 36px!important}.topbar{margin:0 -16px!important;padding-left:16px!important;padding-right:16px!important;height:auto!important;min-height:72px!important}.login-enterprise{display:block!important}.login-hero{display:none!important}.login-panel-wrap{min-height:100vh!important;padding:18px!important}.stats-grid,.business-money-v219{grid-template-columns:1fr!important}.business-money-v219 .stat{grid-column:auto!important}.business-focus-v219{display:block!important}.business-focus-v219 .panel{margin-bottom:14px}.appointment-carousel .appt-slide{min-width:100%!important}.page-head{padding-top:22px!important}.page-head h1{font-size:34px!important}.panel{border-radius:22px!important}.chart.purple,.chart-premium,.compact-chart{height:150px!important}}

/* =========================
   MICITA VPRO2_20 FINAL V2 LOCK
   ========================= */

/* Global lock: no dead strips, no horizontal overflow */
html,body{width:100%;overflow-x:hidden}
body{min-height:100vh}
.app-shell{min-height:100vh;display:block;background:var(--bg)}
.sidebar.sidebar-v27{
  position:fixed !important;
  inset:0 auto 0 0 !important;
  width:var(--sidebar-w) !important;
  height:100vh !important;
  min-height:100vh !important;
  border-radius:0 !important;
  padding:26px 22px 18px !important;
  background:linear-gradient(180deg,rgba(14,24,45,.98),rgba(9,16,33,.98)) !important;
  border-right:1px solid var(--line) !important;
  box-shadow:none !important;
  overflow:hidden !important;
  z-index:30;
}
.sidebar.sidebar-v27:before,.sidebar.sidebar-v27:after{display:none!important}
.sidebar nav{
  height:calc(100vh - 198px) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-right:3px;
  scrollbar-width:none;
}
.sidebar nav::-webkit-scrollbar{display:none}
.sidebar .brand{margin:0 0 24px !important;padding:0 !important}
.sidebar .brand .brand-mark{width:58px!important;height:58px!important;border-radius:18px!important}
.sidebar .brand-copy strong{font-size:22px!important;letter-spacing:-.02em}
.sidebar .brand-copy span{font-size:10px!important;line-height:1.15;letter-spacing:.14em}
.nav-group{margin:18px 0 20px !important}
.nav-group p{margin:0 0 8px!important;font-size:11px!important;letter-spacing:.16em!important;color:var(--muted)!important}
.nav-group a{
  height:44px!important;
  padding:0 10px!important;
  margin:6px 0!important;
  border-radius:14px!important;
  border:1px solid transparent!important;
  background:transparent!important;
  box-shadow:none!important;
  transition:.18s ease;
}
.nav-group a span{
  width:34px!important;height:34px!important;
  border-radius:12px!important;
  border:1px solid rgba(124,58,237,.22)!important;
  background:rgba(124,58,237,.08)!important;
}
.nav-group a b{font-size:15px!important;font-weight:800!important;letter-spacing:-.015em}
.nav-group a:hover{background:rgba(255,255,255,.045)!important;border-color:rgba(148,163,184,.18)!important;transform:translateX(2px)}
.nav-group a.active{
  background:linear-gradient(90deg,rgba(124,58,237,.22),rgba(14,165,233,.10))!important;
  border-color:rgba(124,58,237,.38)!important;
}
.nav-group a.active span{background:rgba(124,58,237,.20)!important;border-color:rgba(124,58,237,.45)!important}
.sidebar .logout{
  position:absolute!important;
  left:22px!important;
  right:22px!important;
  bottom:16px!important;
  height:46px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  border-radius:14px!important;
  padding:0 12px!important;
  color:var(--muted)!important;
  background:rgba(255,255,255,.025)!important;
  border:1px solid rgba(148,163,184,.10)!important;
}

/* Main and topbar breathing */
.main{
  margin-left:var(--sidebar-w)!important;
  min-height:100vh!important;
  width:calc(100% - var(--sidebar-w))!important;
  padding:22px 30px 48px!important;
  overflow-x:hidden!important;
}
.topbar.topbar-v27{
  position:sticky!important;
  top:16px!important;
  z-index:20!important;
  width:100%!important;
  min-height:76px!important;
  margin:0 0 34px!important;
  padding:12px 14px!important;
  border-radius:24px!important;
  background:rgba(13,22,42,.78)!important;
  backdrop-filter:blur(18px);
  border:1px solid var(--line)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.18)!important;
  display:flex!important;
  gap:14px!important;
  align-items:center!important;
}
.search-v27{height:52px!important;border-radius:18px!important;min-width:0!important;flex:1!important}
.top-actions-v27{gap:10px!important;display:flex!important;align-items:center!important;flex:0 0 auto!important}
.top-icon{width:52px!important;height:52px!important;border-radius:16px!important}
.top-profile{height:52px!important;border-radius:18px!important;max-width:250px!important;padding:6px 12px 6px 7px!important}
.dropdown-menu{border-radius:20px!important;box-shadow:0 26px 60px rgba(0,0,0,.28)!important}
.dropdown-menu p{display:flex!important;gap:9px!important;align-items:center!important}
.dropdown-menu p:before{content:"";width:9px;height:9px;border-radius:999px;background:#fbbf24;box-shadow:0 0 0 4px rgba(251,191,36,.12)}

/* Header compact and typography readable */
.page-head,.page-head-enterprise,.money-head,.config-head{
  margin:0 0 22px!important;
  padding:0!important;
  max-width:none!important;
}
.page-head h1,.money-head h1,.config-head h1{
  font-size:clamp(34px,4vw,58px)!important;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
  font-weight:850!important;
  margin:0 0 10px!important;
}
.page-head p,.money-head p,.config-head p{font-size:18px!important;line-height:1.4!important;margin:0;color:var(--muted)!important}
.eyebrow{font-size:11px!important;letter-spacing:.13em!important}

/* KPI system V2_20 */
.stats-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px!important;margin:0 0 22px!important}
.stat{
  min-height:138px!important;
  padding:20px!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(15,26,48,.92),rgba(11,18,36,.92))!important;
  border:1px solid var(--line)!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  align-items:center!important;
  gap:14px!important;
  overflow:hidden!important;
}
.stat-icon{
  width:58px!important;height:58px!important;border-radius:18px!important;
  display:grid!important;place-items:center!important;border:0!important;box-shadow:none!important;
}
.stat-icon svg{width:28px!important;height:28px!important}
.stat-body{min-width:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important}
.stat-body span{
  font-size:13px!important;line-height:1.08!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase!important;
  max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;color:var(--muted)!important;
}
.stat-body strong{
  display:block!important;max-width:100%!important;
  font-size:clamp(27px,2.3vw,38px)!important;
  line-height:1.02!important;font-weight:900!important;letter-spacing:-.04em!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.stat-body small{font-size:15px!important;font-weight:900!important;color:var(--success)!important}
.stat-blue .stat-icon{background:rgba(14,165,233,.14)!important;color:#38bdf8!important}
.stat-teal .stat-icon{background:rgba(20,184,166,.14)!important;color:#2dd4bf!important}
.stat-indigo .stat-icon{background:rgba(99,102,241,.14)!important;color:#818cf8!important}
.stat-amber .stat-icon{background:rgba(245,158,11,.14)!important;color:#f59e0b!important}
.stat-green .stat-icon{background:rgba(34,197,94,.14)!important;color:#22c55e!important}
.stat-purple .stat-icon{background:rgba(124,58,237,.14)!important;color:#8b5cf6!important}
.stat-orange .stat-icon{background:rgba(249,115,22,.14)!important;color:#fb923c!important}

/* Dashboard grids fill available width */
.dash-grid,.dash-grid-v218{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.panel{
  border-radius:24px!important;
  padding:22px!important;
  border:1px solid var(--line)!important;
  background:linear-gradient(180deg,rgba(15,26,48,.88),rgba(11,18,36,.88))!important;
  box-shadow:0 16px 42px rgba(0,0,0,.12)!important;
  overflow:hidden!important;
}
.panel h3{font-size:24px!important;line-height:1.1!important;letter-spacing:-.035em!important;margin:0!important;font-weight:850!important}
.panel p{line-height:1.35!important}
.chart-panel,.license-panel{min-height:330px!important}
.compact-chart,.chart-premium{height:230px!important;min-height:230px!important}
.donut-compact{width:230px!important;height:230px!important;margin:18px auto!important}
.legend-compact{display:flex!important;justify-content:center!important;gap:18px!important;flex-wrap:wrap!important}
.enterprise-row{padding:14px 0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important}
.enterprise-row em,.badge{min-height:28px!important;padding:5px 13px!important;border-radius:999px!important;font-size:13px!important}

/* Business dashboard final */
.business-headline{display:flex!important;gap:16px!important;align-items:center!important}
.business-logo-live{width:70px!important;height:70px!important;border-radius:22px!important;flex:0 0 auto!important}
.business-money-v219{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:16px!important;
}
.business-money-v219 .stat:nth-child(1),
.business-money-v219 .stat:nth-child(2){grid-column:span 3!important}
.business-money-v219 .stat:nth-child(n+3){grid-column:span 2!important;min-height:118px!important}
.business-money-v219 .stat-body strong{font-size:clamp(26px,3vw,42px)!important}
.business-focus-grid,.business-focus-v219{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:18px!important;
}
.priority-card{border-color:rgba(148,163,184,.30)!important;position:relative!important}
.priority-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--accent),var(--success));opacity:.75}
.priority-card .panel-head span{background:rgba(124,58,237,.18)!important;padding:6px 12px!important;border-radius:999px!important;color:#c4b5fd!important;font-weight:900!important}
.appointment-carousel{position:relative!important;padding:0 34px!important}
.car-track{
  display:flex!important;
  gap:12px!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:3px 0 6px!important;
}
.car-track::-webkit-scrollbar{display:none}
.appt-slide{
  min-width:260px!important;
  flex:0 0 260px!important;
  scroll-snap-align:start!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  padding:15px!important;
  background:rgba(255,255,255,.035)!important;
}
.car-arrow{
  position:absolute!important;top:50%!important;transform:translateY(-50%)!important;z-index:3!important;
  width:28px!important;height:28px!important;border-radius:50%!important;border:1px solid var(--line)!important;
  background:rgba(15,23,42,.72)!important;color:var(--text)!important;display:grid!important;place-items:center!important;
  cursor:pointer!important;font-size:18px!important;line-height:1!important;
}
.car-prev{left:0!important}.car-next{right:0!important}
.alert-minimal .activity p{display:grid!important;grid-template-columns:18px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important}
.alert-minimal .activity i{font-style:normal!important;color:#fbbf24!important;font-size:13px!important}
.alert-minimal .activity p i:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#fbbf24;box-shadow:0 0 0 4px rgba(251,191,36,.10);vertical-align:middle}
.alert-minimal .activity p i{font-size:0!important}

/* Configuration: compact color palette and switches */
.theme-grid-v25{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.theme-grid-v25 label{
  min-height:76px!important;
  padding:14px!important;
  border-radius:18px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
}
.theme-grid-v25 input[type=color]{width:44px!important;height:44px!important;border-radius:14px!important;padding:4px!important}
.check-card{
  min-height:54px!important;
  padding:12px 16px!important;
  border-radius:18px!important;
  display:flex!important;align-items:center!important;gap:12px!important;
}
.check-card input[type=checkbox]{
  appearance:none!important;width:46px!important;height:26px!important;border-radius:999px!important;
  background:rgba(148,163,184,.25)!important;border:1px solid var(--line-strong)!important;position:relative!important;flex:0 0 auto!important;
}
.check-card input[type=checkbox]:before{
  content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:999px;background:#fff;transition:.18s;
}
.check-card input[type=checkbox]:checked{background:linear-gradient(90deg,var(--primary),var(--secondary))!important}
.check-card input[type=checkbox]:checked:before{transform:translateX(20px)}

/* Success toast */
.success{
  position:fixed!important;right:28px!important;top:100px!important;z-index:100!important;
  display:flex!important;align-items:center!important;gap:10px!important;
  width:auto!important;max-width:360px!important;padding:14px 16px!important;border-radius:18px!important;
  background:rgba(16,185,129,.12)!important;color:#bbf7d0!important;border:1px solid rgba(34,197,94,.25)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.22)!important;font-weight:800!important;
}
.success:before{content:"✓";width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:rgba(34,197,94,.18);color:#22c55e}

/* Login final */
@media (max-width: 820px){
  .login-enterprise{display:block!important;background:var(--bg)!important}
  .login-hero{display:none!important}
  .login-panel-wrap{min-height:100vh!important;padding:22px!important}
  .login-panel{padding:28px 22px!important;border-radius:26px!important}
  .hero-content h1,.login-title-wrap h2{letter-spacing:-.045em!important;line-height:1.05!important}
}

/* responsive */
@media(max-width:1200px){
  .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .dash-grid,.dash-grid-v218,.business-focus-grid,.business-focus-v219{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  :root{--sidebar-w:280px}
  .sidebar.sidebar-v27{transform:translateX(-105%);transition:.22s}
  .sidebar.sidebar-v27.open{transform:translateX(0)}
  .main{margin-left:0!important;width:100%!important;padding:16px!important}
  .topbar.topbar-v27{top:10px!important;margin-bottom:22px!important}
  .stats-grid{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;padding-bottom:8px!important}
  .stats-grid .stat{min-width:86vw!important;scroll-snap-align:center!important}
  .business-money-v219{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .business-money-v219 .stat{grid-column:span 1!important}
  .business-money-v219 .stat:nth-child(1),
  .business-money-v219 .stat:nth-child(2){grid-column:span 1!important}
  .car-track .appt-slide{min-width:100%!important;flex-basis:100%!important}
  .theme-grid-v25{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .top-profile span{display:none!important}
  .top-profile{width:52px!important;padding:6px!important}
  .search-v27 input{font-size:14px!important}
  .page-head h1,.money-head h1,.config-head h1{font-size:36px!important}
  .business-money-v219{grid-template-columns:1fr!important}
  .theme-grid-v25{grid-template-columns:1fr!important}
}



/* =========================================================
   MICITA VPRO2_21 FINAL UI LOCK
   Cierre V2: layout compacto, sidebar fijo, topbar respirada,
   KPI anti-desborde, dashboard master 2/3 columnas, business money-first.
   ========================================================= */

:root{
  --sidebar-w: 286px;
  --topbar-h: 88px;
  --content-max: 1480px;
}

/* BASE LOCK */
html,body{width:100%;overflow-x:hidden}
.app-shell{min-height:100vh;background:var(--bg)}
.main{
  margin-left:var(--sidebar-w)!important;
  min-height:100vh;
  padding:18px 28px 48px!important;
  overflow-x:hidden;
}
.app-shell .main > section,
.app-shell .main > div,
.app-shell .main > form{
  max-width:var(--content-max);
  margin-left:auto;
  margin-right:auto;
}

/* SIDEBAR FINAL - sin franjas muertas / fijo 100vh */
.sidebar{
  position:fixed!important;
  inset:0 auto 0 0!important;
  width:var(--sidebar-w)!important;
  height:100vh!important;
  min-height:100vh!important;
  padding:28px 22px 22px!important;
  border-radius:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  background:linear-gradient(180deg,rgba(15,25,48,.98),rgba(8,14,30,.98))!important;
  border-right:1px solid var(--line)!important;
  box-shadow:none!important;
}
.sidebar:before,.sidebar:after{display:none!important}
.sidebar .brand{margin:0 0 30px!important;padding:0!important}
.sidebar .brand-mark{width:74px!important;height:74px!important;border-radius:22px!important}
.sidebar .brand-copy strong{font-size:28px!important;line-height:1!important;letter-spacing:-.035em!important}
.sidebar .brand-copy span{font-size:12px!important;line-height:1.25!important;letter-spacing:.12em!important}
.sidebar nav{
  flex:1!important;
  min-height:0!important;
  overflow:hidden auto!important;
  padding:0 2px 12px 0!important;
  scrollbar-width:none!important;
}
.sidebar nav::-webkit-scrollbar{width:0!important;height:0!important}
.nav-group{margin:0 0 22px!important}
.nav-group p{
  margin:0 0 10px!important;
  padding-left:6px!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.18em!important;
  color:var(--muted)!important;
}
.sidebar nav a{
  height:52px!important;
  min-height:52px!important;
  padding:0 14px!important;
  margin:0 0 8px!important;
  border-radius:16px!important;
  border:1px solid transparent!important;
  gap:12px!important;
  display:flex!important;
  align-items:center!important;
  transition:.18s ease!important;
}
.sidebar nav a span{
  width:38px!important;height:38px!important;
  border-radius:13px!important;
  display:grid!important;place-items:center!important;
  background:rgba(124,58,237,.10)!important;
  border:1px solid rgba(124,58,237,.22)!important;
}
.sidebar nav a svg{width:19px!important;height:19px!important;fill:#8b5cf6!important}
.sidebar nav a b{
  font-size:16px!important;
  line-height:1.1!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
  color:var(--muted)!important;
}
.sidebar nav a:hover{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(148,163,184,.20)!important;
  transform:translateX(2px)!important;
}
.sidebar nav a.active{
  background:linear-gradient(90deg,rgba(124,58,237,.20),rgba(14,165,233,.06))!important;
  border-color:rgba(124,58,237,.48)!important;
  box-shadow:inset 3px 0 0 #8b5cf6!important;
}
.sidebar nav a.active b{color:var(--text)!important}
.sidebar .logout{
  position:static!important;
  margin-top:auto!important;
  height:52px!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:0 18px!important;
  border-radius:16px!important;
  border:1px solid transparent!important;
  color:var(--muted)!important;
  font-weight:800!important;
}
.sidebar .logout:hover{
  background:rgba(255,255,255,.05)!important;
  border-color:var(--line)!important;
}
.sidebar .logout svg{width:18px;height:18px;fill:currentColor}

/* TOPBAR FINAL - respiración sin exageración */
.topbar{
  position:sticky!important;
  top:18px!important;
  z-index:30!important;
  height:74px!important;
  margin:0 auto 28px!important;
  padding:10px 12px!important;
  border-radius:24px!important;
  max-width:var(--content-max)!important;
  border:1px solid var(--line)!important;
  background:rgba(13,20,40,.82)!important;
  backdrop-filter:blur(16px)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.13)!important;
}
.theme-light .topbar{background:rgba(255,255,255,.86)!important}
.search-v27{
  height:52px!important;
  border-radius:18px!important;
  min-width:0!important;
}
.top-actions-v27{gap:10px!important}
.top-icon{width:52px!important;height:52px!important;border-radius:18px!important}
.top-profile{height:52px!important;border-radius:18px!important;padding:6px 12px 6px 6px!important}
.top-profile .avatar{width:42px!important;height:42px!important;border-radius:14px!important}
.dropdown-menu{
  top:64px!important;
  border-radius:20px!important;
  padding:18px!important;
}
.dropdown-menu p,.dropdown-menu a{font-size:15px!important;line-height:1.3!important}

/* HEADERS: menos vertical, más legibles */
.page-head-enterprise,
.config-head,
.money-head{
  padding:6px 0 22px!important;
  margin:0 auto 18px!important;
  min-height:auto!important;
}
.page-head-enterprise h1,
.config-head h1,
.money-head h1{
  font-size:clamp(36px,4.8vw,64px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  font-weight:850!important;
  margin:0!important;
  max-width:100%!important;
}
.page-head-enterprise p,
.config-head p,
.money-head p{
  font-size:18px!important;
  line-height:1.35!important;
  margin:10px 0 0!important;
  max-width:900px!important;
}
.eyebrow{font-size:11px!important;letter-spacing:.14em!important}

/* KPI FINAL anti-desborde */
.stats-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:16px!important;
  margin-bottom:24px!important;
}
.stat{
  min-width:0!important;
  height:134px!important;
  padding:20px!important;
  border-radius:22px!important;
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  align-items:center!important;
  gap:16px!important;
  overflow:hidden!important;
}
.stat-icon{
  width:56px!important;height:56px!important;
  border-radius:18px!important;
  display:grid!important;place-items:center!important;
  flex:none!important;
}
.stat-icon svg{width:28px!important;height:28px!important}
.stat-body{min-width:0!important;display:grid!important;gap:4px!important}
.stat-body span{
  font-size:13px!important;
  line-height:1.12!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  white-space:normal!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}
.stat-body strong{
  font-size:clamp(28px,2.45vw,42px)!important;
  line-height:.98!important;
  letter-spacing:-.04em!important;
  font-weight:850!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.stat-body small{font-size:16px!important;line-height:1!important;font-weight:900!important}
.stat-blue .stat-icon{background:rgba(14,165,233,.14)!important;color:#38bdf8!important}
.stat-teal .stat-icon{background:rgba(20,184,166,.14)!important;color:#2dd4bf!important}
.stat-indigo .stat-icon{background:rgba(99,102,241,.14)!important;color:#818cf8!important}
.stat-amber .stat-icon{background:rgba(245,158,11,.13)!important;color:#f59e0b!important}
.stat-green .stat-icon{background:rgba(34,197,94,.13)!important;color:#22c55e!important}

/* DASHBOARD MASTER FINAL */
.dash-grid-final-2{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:20px!important;
  margin-bottom:20px!important;
}
.dash-grid-final-3{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:20px!important;
  margin-bottom:20px!important;
}
.panel{
  border-radius:24px!important;
  padding:24px!important;
  min-width:0!important;
  overflow:hidden!important;
}
.panel h3{font-size:28px!important;line-height:1.05!important;letter-spacing:-.035em!important;margin:0!important}
.panel p{line-height:1.35!important}
.final-chart,.compact-chart{
  height:250px!important;
  min-height:250px!important;
  border-radius:20px!important;
}
.license-panel .donut{margin:16px auto 10px!important;transform:scale(.88)!important}
.legend-compact{display:flex!important;gap:14px!important;justify-content:center!important;flex-wrap:wrap!important;margin-top:8px!important}
.enterprise-row{
  min-height:54px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,.9fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:12px 0!important;
}
.enterprise-row b,.enterprise-row small,.enterprise-row em{
  min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
}
.enterprise-row em{
  display:inline-flex!important;
  height:28px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(34,197,94,.12)!important;
  color:#22c55e!important;
  font-style:normal!important;
  font-size:12px!important;
  font-weight:900!important;
}

/* BUSINESS FINAL */
.business-final-head .eyebrow{display:none!important}
.business-headline{gap:20px!important;align-items:center!important}
.business-logo-live{width:76px!important;height:76px!important;border-radius:22px!important;flex:none!important}
.business-final-head h1{
  font-size:clamp(34px,4vw,58px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
}
.business-kpi-layout{display:grid!important;gap:16px!important;margin-bottom:20px!important}
.business-money-main{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
.business-operational-kpis{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.business-money-main .stat{height:142px!important}
.business-operational-kpis .stat{height:118px!important}
.business-focus-final{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:20px!important;
  margin-bottom:20px!important;
}
.priority-card{
  border-color:rgba(245,158,11,.24)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.12)!important;
}
.priority-next .panel-head span,
.charge-priority .panel-head span{
  display:inline-flex!important;height:30px!important;min-width:30px!important;
  align-items:center!important;justify-content:center!important;
  border-radius:999px!important;background:rgba(245,158,11,.14)!important;color:#f59e0b!important;font-weight:900!important
}
.appointment-carousel{position:relative!important}
.car-track{
  display:flex!important;gap:12px!important;overflow:auto!important;scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;padding:2px 2px 8px!important
}
.car-track::-webkit-scrollbar{display:none!important}
.appt-slide{
  min-width:220px!important;
  scroll-snap-align:start!important;
  border-radius:18px!important;
  border:1px solid var(--line)!important;
  background:rgba(255,255,255,.035)!important;
  padding:14px!important;
}
.car-arrow{
  position:absolute!important;top:50%!important;transform:translateY(-50%)!important;z-index:3!important;
  width:28px!important;height:28px!important;border-radius:999px!important;
  border:1px solid var(--line)!important;background:rgba(15,23,42,.70)!important;color:var(--text)!important;
  display:grid!important;place-items:center!important;font-size:20px!important;line-height:1!important;cursor:pointer!important;
}
.car-prev{left:8px!important}.car-next{right:8px!important}
.activity-clean p{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:12px 0!important;
}
.activity-clean i{font-style:normal!important;font-size:13px!important;color:#fbbf24!important}
.activity-clean span{font-weight:800!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.activity-clean small{color:var(--muted)!important}

/* CONFIG FINAL */
.config-form-v25{max-width:var(--content-max)!important;margin:0 auto!important}
.config-card-v25{padding:26px!important;border-radius:24px!important}
.config-card-title{display:flex!important;gap:18px!important;align-items:flex-start!important;justify-content:space-between!important;margin-bottom:20px!important}
.config-card-title h3{font-size:30px!important;line-height:1.05!important;margin:0!important}
.theme-grid-v25{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}
.theme-grid-v25 label{
  min-height:72px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px 16px!important;
}
.theme-grid-v25 label span{font-size:13px!important}
.theme-grid-v25 input[type=color]{
  width:42px!important;height:42px!important;border-radius:14px!important;padding:0!important;
}
.check-card{
  min-height:56px!important;
  padding:12px 14px!important;
  border-radius:16px!important;
}
.check-card input{
  width:44px!important;height:24px!important;
  appearance:none!important;border:0!important;border-radius:999px!important;background:rgba(148,163,184,.28)!important;position:relative!important;
}
.check-card input:before{
  content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:999px;background:#fff;transition:.18s;
}
.check-card input:checked{background:linear-gradient(90deg,var(--primary),var(--accent))!important}
.check-card input:checked:before{transform:translateX(20px)}

/* Toast premium */
.success{
  max-width:var(--content-max)!important;margin:0 auto 16px!important;
  border-radius:16px!important;padding:14px 16px!important;
  border:1px solid rgba(34,197,94,.22)!important;
  background:rgba(34,197,94,.10)!important;color:#86efac!important;
  font-size:15px!important;font-weight:800!important;
}

/* LOGIN FINAL */
@media(max-width:820px){
  .login-enterprise{display:block!important;background:var(--bg)!important}
  .login-hero{display:none!important}
  .login-panel-wrap{min-height:100vh!important;padding:20px!important}
  .login-panel{padding:24px!important;border-radius:24px!important}
}

/* Responsive */
@media(max-width:1200px){
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dash-grid-final-2,.dash-grid-final-3,.business-focus-final{grid-template-columns:1fr!important}
  .theme-grid-v25{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  :root{--sidebar-w:0px}
  .main{margin-left:0!important;padding:12px 14px 32px!important}
  .sidebar{transform:translateX(-100%)!important;transition:.2s!important}
  .sidebar.open{transform:translateX(0)!important}
  .topbar{top:10px!important;margin-bottom:18px!important;border-radius:20px!important}
  .business-money-main,.business-operational-kpis{grid-template-columns:1fr!important}
  .stat{height:118px!important}
  .stats-grid{display:flex!important;overflow:auto!important;scroll-snap-type:x mandatory!important;padding-bottom:8px!important}
  .stats-grid .stat{min-width:84vw!important;scroll-snap-align:start!important}
  .appt-slide{min-width:100%!important}
}
@media(max-width:560px){
  .page-head-enterprise h1,.config-head h1,.money-head h1{font-size:34px!important}
  .panel{padding:18px!important}
  .theme-grid-v25{grid-template-columns:1fr!important}
  .top-profile span{display:none!important}
  .search-v27 input{font-size:14px!important}
}


/* =========================================================
   VPRO2_22 FINAL FIX - SOLO CORRECCIONES REPORTADAS
   Compacta menú, KPI sin desbordes, dashboard balanceado,
   configuración compacta, business más claro y notificaciones BD.
   ========================================================= */
:root{
  --sidebar-w:300px!important;
  --content-max:1480px!important;
  --gutter-x:28px!important;
  --topbar-gap:16px!important;
}
body{overflow-x:hidden!important;}
.app-shell{background:var(--bg)!important;}
.sidebar.sidebar-v27,
.sidebar{
  position:fixed!important;
  inset:0 auto 0 0!important;
  width:var(--sidebar-w)!important;
  height:100vh!important;
  max-height:100vh!important;
  padding:28px 22px 18px!important;
  border-radius:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  background:linear-gradient(180deg,#0c1528 0%,#0a1222 100%)!important;
}
.sidebar .brand{margin:0 0 22px!important;min-height:58px!important;gap:12px!important;}
.sidebar .brand-mark{width:56px!important;height:56px!important;border-radius:18px!important;}
.sidebar h6,
.sidebar .menu-section-title{
  margin:16px 0 8px!important;
  letter-spacing:.16em!important;
  font-size:12px!important;
  line-height:1!important;
}
.sidebar nav,
.sidebar .nav{gap:4px!important;}
.sidebar a,
.sidebar .nav-item{
  min-height:44px!important;
  height:44px!important;
  padding:6px 10px!important;
  margin:0 0 6px!important;
  border-radius:16px!important;
  gap:10px!important;
  font-size:15px!important;
  line-height:1!important;
}
.sidebar a svg,
.sidebar .nav-icon,
.sidebar a .icon-box{
  width:34px!important;height:34px!important;border-radius:12px!important;flex:0 0 34px!important;
}
.sidebar a.active,
.sidebar .nav-item.active{
  border-color:rgba(124,92,255,.56)!important;
  box-shadow:inset 3px 0 0 rgba(56,189,248,.85),0 12px 28px rgba(0,0,0,.14)!important;
  background:linear-gradient(90deg,rgba(124,92,255,.22),rgba(124,92,255,.09))!important;
}
.sidebar .logout,
.sidebar a[href="/logout"]{
  margin-top:auto!important;
  width:100%!important;
  min-height:48px!important;
  border-radius:16px!important;
}
.main{
  margin-left:var(--sidebar-w)!important;
  padding:var(--topbar-gap) var(--gutter-x) 34px!important;
  max-width:none!important;
  overflow-x:hidden!important;
}
.topbar.topbar-v27,
.topbar{
  position:sticky!important;
  top:var(--topbar-gap)!important;
  margin:0 auto 22px!important;
  width:100%!important;
  max-width:var(--content-max)!important;
  min-height:66px!important;
  padding:10px 12px!important;
  border-radius:24px!important;
  gap:10px!important;
}
.search-v27,.topbar .search{min-width:0!important;flex:1 1 auto!important;height:48px!important;border-radius:18px!important;}
.search-v27 input,.topbar .search input{height:48px!important;font-size:15px!important;}
.top-icon{width:48px!important;height:48px!important;border-radius:17px!important;flex:0 0 48px!important;}
.top-profile{height:50px!important;border-radius:18px!important;padding:6px 10px 6px 6px!important;max-width:240px!important;}
.top-profile .avatar{width:40px!important;height:40px!important;border-radius:14px!important;}
.dropdown-menu{border-radius:18px!important;padding:16px!important;min-width:280px!important;}
.dropdown-notifications-real p{display:grid!important;grid-template-columns:10px minmax(0,1fr);gap:10px!important;align-items:start!important;padding:10px 0!important;}
.dropdown-notifications-real p i,.activity-clean i{width:9px!important;height:9px!important;border-radius:99px!important;background:#fbbf24!important;display:inline-block!important;margin-top:7px!important;font-size:0!important;}
.dropdown-notifications-real p span{font-weight:800!important;color:var(--text)!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.dropdown-notifications-real p small{grid-column:2!important;color:var(--muted)!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:12px!important;}
.page-head-enterprise,
.compact-head-final,
.money-head,
.config-head{
  max-width:var(--content-max)!important;
  margin:0 auto 18px!important;
  padding:4px 0 0!important;
  min-height:auto!important;
}
.page-head-enterprise h1,.money-head h1,.config-head h1{
  font-size:clamp(34px,4.2vw,56px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  font-weight:800!important;
  margin:0 0 8px!important;
  max-width:100%!important;
}
.page-head-enterprise p,.money-head p,.config-head p{font-size:clamp(15px,1.4vw,20px)!important;line-height:1.28!important;margin:0!important;}
.eyebrow{font-size:12px!important;margin-bottom:8px!important;height:auto!important;}
.btn-small{height:46px!important;border-radius:16px!important;padding:0 20px!important;font-size:15px!important;}

/* KPI V22: no desborde, menos cajas gigantes */
.stats-grid,.stats-master,.stats-final{
  max-width:var(--content-max)!important;
  margin:0 auto 20px!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
}
.stat{
  height:124px!important;
  min-height:0!important;
  padding:18px!important;
  border-radius:22px!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:center!important;
  overflow:hidden!important;
}
.stat-icon{
  width:48px!important;height:48px!important;border-radius:16px!important;
  flex:0 0 48px!important;
  display:grid!important;place-items:center!important;
}
.stat-icon svg{width:25px!important;height:25px!important;}
.stat-body{min-width:0!important;width:100%!important;display:grid!important;gap:4px!important;align-content:center!important;}
.stat-body span{
  font-size:13px!important;line-height:1.05!important;letter-spacing:.06em!important;font-weight:850!important;
  max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.stat-body strong{
  font-size:clamp(25px,2.1vw,34px)!important;line-height:1!important;letter-spacing:-.035em!important;font-weight:850!important;
  max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;
}
.stat-body small{font-size:15px!important;line-height:1!important;font-weight:900!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.stat-green .stat-icon{background:rgba(34,197,94,.13)!important;color:#22c55e!important;}
.stat-amber .stat-icon,.stat-orange .stat-icon{background:rgba(245,158,11,.13)!important;color:#f59e0b!important;}
.stat-blue .stat-icon{background:rgba(56,189,248,.13)!important;color:#38bdf8!important;}
.stat-teal .stat-icon{background:rgba(45,212,191,.13)!important;color:#2dd4bf!important;}
.stat-indigo .stat-icon{background:rgba(129,140,248,.13)!important;color:#818cf8!important;}

/* Master dashboard balance */
.dash-grid-final-2,
.dash-grid-final-3{
  max-width:var(--content-max)!important;
  margin:0 auto 18px!important;
  gap:16px!important;
}
.dash-grid-final-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.dash-grid-final-3{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.panel{padding:18px!important;border-radius:22px!important;min-height:0!important;}
.panel h3{font-size:clamp(22px,2vw,30px)!important;line-height:1.08!important;letter-spacing:-.025em!important;font-weight:800!important;}
.panel p{font-size:14px!important;line-height:1.25!important;margin:4px 0 0!important;}
.panel-head{gap:12px!important;margin-bottom:12px!important;align-items:flex-start!important;}
.final-chart,.compact-chart,.chart-premium{height:180px!important;min-height:180px!important;border-radius:18px!important;}
.license-panel .donut{transform:scale(.66)!important;margin:-8px auto -18px!important;}
.legend-compact{font-size:12px!important;margin-top:0!important;gap:8px!important;}
.enterprise-row{min-height:42px!important;padding:8px 0!important;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto!important;}
.enterprise-row b{font-size:15px!important;}
.enterprise-row small,.enterprise-row em{font-size:12px!important;}
.enterprise-row em{height:24px!important;padding:0 10px!important;}
.empty-mini{font-size:14px!important;padding:14px!important;}

/* Config compacta y sin datos apiñados */
.config-form-v25{max-width:var(--content-max)!important;margin:0 auto!important;}
.config-tabs-v27{gap:10px!important;margin-bottom:16px!important;overflow:visible!important;flex-wrap:wrap!important;}
.config-tabs-v27 button{height:40px!important;border-radius:999px!important;padding:0 18px!important;font-size:14px!important;}
.config-card-v25{padding:20px!important;border-radius:22px!important;}
.config-card-title{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:20px!important;margin-bottom:18px!important;align-items:start!important;}
.config-card-title h3{font-size:clamp(24px,2vw,30px)!important;}
.config-card-title p{font-size:14px!important;line-height:1.3!important;}
.theme-grid-v25{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;}
.theme-grid-v25 label{min-height:58px!important;padding:10px 12px!important;border-radius:16px!important;}
.theme-grid-v25 label span{font-size:12px!important;line-height:1.1!important;}
.theme-grid-v25 input[type=color]{width:34px!important;height:34px!important;border-radius:11px!important;}
.config-grid,.hero-config-grid{gap:12px!important;}
.config-grid label,.hero-config-grid label{gap:7px!important;}
.config-grid input,.config-grid select,.hero-config-grid input,.hero-config-grid select{height:48px!important;border-radius:16px!important;font-size:14px!important;}
.check-card{min-height:48px!important;padding:10px 12px!important;font-size:14px!important;gap:10px!important;}

/* Business compact */
.business-final-head{margin-bottom:16px!important;}
.business-logo-live{width:58px!important;height:58px!important;border-radius:18px!important;}
.business-final-head h1{font-size:clamp(30px,3.8vw,48px)!important;line-height:1.04!important;}
.business-kpi-layout,.business-focus-final,.business-lower-grid{max-width:var(--content-max)!important;margin-left:auto!important;margin-right:auto!important;}
.business-money-main{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
.business-operational-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;}
.business-money-main .stat{height:118px!important;}
.business-operational-kpis .stat{height:104px!important;}
.business-focus-final{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;margin-bottom:18px!important;}
.business-lower-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;}
.priority-card{border-color:rgba(245,158,11,.18)!important;box-shadow:none!important;}
.priority-card .panel-head h3{font-size:clamp(22px,2vw,28px)!important;}
.appt-slide{min-width:190px!important;padding:12px!important;border-radius:16px!important;}
.appt-slide strong{font-size:15px!important;line-height:1.1!important;}
.appt-slide span,.appt-slide small{font-size:12px!important;}
.appt-charge button{height:34px!important;border-radius:12px!important;font-size:12px!important;}
.week-strip{min-height:120px!important;align-items:end!important;}
.alert-minimal .activity-clean p{grid-template-columns:12px minmax(0,1fr) auto!important;padding:9px 0!important;}
.activity-clean span{font-size:15px!important;}

@media(max-width:1280px){
  .stats-grid,.stats-master,.stats-final{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .dash-grid-final-3,.business-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:900px){
  :root{--sidebar-w:0px!important;--gutter-x:14px!important;--topbar-gap:10px!important;}
  .main{padding:10px 14px 28px!important;margin-left:0!important;}
  .stats-grid,.stats-master,.stats-final{display:flex!important;overflow:auto!important;gap:12px!important;}
  .stats-grid .stat{min-width:84vw!important;height:112px!important;scroll-snap-align:start!important;}
  .dash-grid-final-2,.dash-grid-final-3,.business-focus-final,.business-lower-grid{grid-template-columns:1fr!important;}
  .business-money-main{grid-template-columns:1fr!important;}
  .business-operational-kpis{display:flex!important;overflow:auto!important;}
  .business-operational-kpis .stat{min-width:78vw!important;}
  .theme-grid-v25{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .config-card-title{grid-template-columns:1fr!important;}
  .appt-slide{min-width:100%!important;}
}
@media(max-width:560px){
  .theme-grid-v25{grid-template-columns:1fr!important;}
  .topbar{gap:6px!important;padding:8px!important;}
  .top-icon{width:42px!important;height:42px!important;flex-basis:42px!important;}
  .top-profile{width:44px!important;padding:4px!important;}
  .top-profile span{display:none!important;}
}


/* =========================================================
   MICITA VPRO2_29 REAL CLEAN LOCK - CORRECCIONES FINALES
   ========================================================= */
:root{
  --content-max:1280px!important;
  --sidebar-w:278px!important;
  --page-gap:24px!important;
}
body{overflow-x:hidden!important;}
.app-shell{display:block!important;min-height:100vh!important;background:var(--bg)!important;}
.sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:var(--sidebar-w)!important;height:100vh!important;padding:18px 14px!important;border-radius:0!important;gap:14px!important;z-index:50!important;overflow-y:auto!important;overflow-x:hidden!important;}
.main{margin-left:var(--sidebar-w)!important;padding:16px 24px 34px!important;min-height:100vh!important;overflow-x:hidden!important;background:var(--bg)!important;}
.sidebar .brand{margin-bottom:8px!important;padding:0 6px!important;}
.sidebar .brand-mark{width:52px!important;height:52px!important;border-radius:18px!important;}
.sidebar .brand-copy strong{font-size:20px!important;line-height:1.05!important;}
.sidebar .brand-copy span{font-size:9px!important;line-height:1.2!important;letter-spacing:.12em!important;}
.sidebar nav{display:block!important;flex:1!important;padding:0!important;}
.nav-group{display:block!important;margin:8px 0 12px!important;}
.nav-group p{margin:0 8px 6px!important;font-size:10px!important;letter-spacing:.14em!important;line-height:1!important;}
.nav-group a{height:38px!important;min-height:38px!important;padding:0 10px!important;margin:0 0 5px!important;border-radius:14px!important;gap:10px!important;font-size:14px!important;line-height:1!important;width:calc(100% - 4px)!important;}
.nav-group a span{width:28px!important;height:28px!important;border-radius:10px!important;flex:0 0 28px!important;}
.nav-group a span svg{width:17px!important;height:17px!important;}
.nav-group a b{font-size:14px!important;line-height:1!important;font-weight:850!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.nav-group a.active{box-shadow:none!important;transform:none!important;outline:0!important;}
.logout{height:40px!important;min-height:40px!important;margin-top:auto!important;padding:0 10px!important;border-radius:14px!important;font-size:14px!important;width:100%!important;}
.topbar{position:sticky!important;top:16px!important;z-index:40!important;max-width:var(--content-max)!important;width:100%!important;margin:0 auto 18px!important;padding:9px 10px!important;min-height:60px!important;height:auto!important;border-radius:22px!important;background:var(--surface)!important;}
.search{height:44px!important;border-radius:16px!important;}
.search input{font-size:14px!important;height:44px!important;}
.top-icon{width:44px!important;height:44px!important;border-radius:15px!important;flex:0 0 44px!important;}
.top-profile{height:46px!important;border-radius:16px!important;max-width:210px!important;min-width:0!important;}
.top-profile .avatar{width:36px!important;height:36px!important;border-radius:13px!important;}
.top-profile strong{font-size:13px!important;line-height:1!important;}
.top-profile small{font-size:11px!important;line-height:1.1!important;}
.page-head,.page-head-enterprise,.config-head,.money-head{max-width:var(--content-max)!important;margin:0 auto 14px!important;padding:0!important;min-height:auto!important;}
.eyebrow{display:none!important;}
.page-head h1,.page-head-enterprise h1,.config-head h1,.money-head h1{font-size:clamp(34px,3.3vw,50px)!important;line-height:1.03!important;letter-spacing:-.035em!important;margin:0 0 6px!important;font-weight:850!important;}
.page-head p,.page-head-enterprise p,.config-head p,.money-head p{font-size:16px!important;line-height:1.35!important;margin:0!important;}
.head-actions{display:flex!important;align-items:center!important;gap:10px!important;}
.btn-small{height:42px!important;border-radius:14px!important;padding:0 18px!important;font-size:14px!important;}
/* KPI limpios sin cortes */
.stats-grid,.stats-master,.stats-final{max-width:var(--content-max)!important;margin:0 auto 16px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;padding:0!important;overflow:visible!important;}
.stat{height:104px!important;min-height:104px!important;padding:14px!important;border-radius:18px!important;display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;overflow:hidden!important;}
.stat-icon{width:42px!important;height:42px!important;border-radius:14px!important;display:grid!important;place-items:center!important;}
.stat-icon svg{width:21px!important;height:21px!important;}
.stat-body{min-width:0!important;display:grid!important;align-content:center!important;gap:3px!important;}
.stat-body span{font-size:11px!important;line-height:1.05!important;letter-spacing:.07em!important;font-weight:900!important;text-transform:uppercase!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--muted)!important;}
.stat-body strong{font-size:clamp(21px,1.8vw,30px)!important;line-height:1!important;font-weight:900!important;letter-spacing:-.035em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;max-width:100%!important;color:var(--text)!important;}
.stat-body small{font-size:13px!important;line-height:1!important;font-weight:900!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--success)!important;}
/* DASHBOARD MASTER: columnas reales */
.dash-grid,.dash-grid-final-2,.dash-grid-final-3{max-width:var(--content-max)!important;margin:0 auto 16px!important;padding:0!important;display:grid!important;gap:14px!important;grid-auto-flow:row!important;align-items:stretch!important;}
.dash-grid-final-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.dash-grid-final-3{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.dash-grid > .panel,.dash-grid-final-2 > .panel,.dash-grid-final-3 > .panel{grid-column:auto!important;width:auto!important;max-width:none!important;margin:0!important;min-width:0!important;}
.panel,.main>.panel{padding:16px!important;border-radius:18px!important;min-height:0!important;overflow:hidden!important;}
.panel-head{margin:0 0 12px!important;gap:10px!important;align-items:flex-start!important;}
.panel h3,.panel-head h3{font-size:clamp(20px,1.7vw,26px)!important;line-height:1.08!important;letter-spacing:-.02em!important;margin:0!important;font-weight:850!important;}
.panel p,.panel-head p{font-size:13px!important;line-height:1.25!important;margin:4px 0 0!important;color:var(--muted)!important;}
.chart,.final-chart,.compact-chart,.chart-premium{height:150px!important;min-height:150px!important;border-radius:16px!important;margin-top:10px!important;}
.donut,.donut-compact{width:150px!important;height:150px!important;margin:4px auto 10px!important;}
.donut span{font-size:20px!important;line-height:1.1!important;}
.donut small{font-size:11px!important;}
.legend,.legend-compact{display:flex!important;gap:12px!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;font-size:12px!important;}
.row,.enterprise-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto!important;gap:10px!important;align-items:center!important;padding:8px 0!important;min-height:38px!important;}
.row b,.enterprise-row b{font-size:14px!important;line-height:1.15!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.row small,.enterprise-row small{font-size:12px!important;line-height:1.15!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.row em,.enterprise-row em,.badge{height:22px!important;min-width:auto!important;padding:0 9px!important;font-size:11px!important;line-height:1!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;}
/* CONFIG: sin remontes, 3 columnas compactas */
.config-form-v25{max-width:var(--content-max)!important;margin:0 auto!important;padding:0 0 40px!important;}
.config-tabs,.config-tabs-v27{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin:0 0 14px!important;overflow:visible!important;}
.config-tabs button,.config-tabs-v27 button{height:36px!important;padding:0 14px!important;border-radius:999px!important;font-size:13px!important;font-weight:850!important;}
.config-card-v25{padding:18px!important;border-radius:18px!important;margin-bottom:14px!important;}
.config-card-title{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:14px!important;align-items:start!important;margin:0 0 14px!important;padding-bottom:12px!important;}
.config-card-title h3{font-size:24px!important;line-height:1.1!important;margin:0!important;}
.config-card-title p{font-size:13px!important;line-height:1.28!important;margin:0!important;}
.form-grid-v25,.theme-grid-v25{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:start!important;}
.form-grid-v25 label{min-width:0!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important;align-content:start!important;}
.form-grid-v25 label span{font-size:12px!important;line-height:1.1!important;font-weight:850!important;color:var(--text)!important;}
.form-grid-v25 input:not([type=color]),.form-grid-v25 select,.form-grid-v25 textarea{width:100%!important;height:42px!important;min-height:42px!important;border-radius:13px!important;font-size:13px!important;padding:0 12px!important;line-height:1.1!important;}
.form-grid-v25 textarea{height:78px!important;padding-top:10px!important;}
.form-grid-v25 .wide{grid-column:span 2!important;}
.theme-grid-v25 label:has(input[type=color]){display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-height:50px!important;padding:9px 10px!important;border-radius:14px!important;}
.theme-grid-v25 input[type=color]{width:32px!important;height:32px!important;border-radius:10px!important;padding:2px!important;}
.asset-grid-v25{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;}
.asset-box{min-height:160px!important;padding:14px!important;border-radius:16px!important;}
.asset-thumb,.asset-empty{width:64px!important;height:64px!important;font-size:12px!important;}
.upload-btn{height:34px!important;border-radius:12px!important;font-size:12px!important;}
/* Switches premium horizontales */
.check-card{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:54px!important;padding:10px 12px!important;border-radius:15px!important;font-size:13px!important;line-height:1.15!important;}
.check-card input[type="checkbox"]{appearance:none!important;-webkit-appearance:none!important;width:52px!important;height:28px!important;min-width:52px!important;border-radius:999px!important;border:1px solid var(--line-strong)!important;background:#cbd5e1!important;position:relative!important;box-shadow:inset 0 2px 6px rgba(15,23,42,.12)!important;cursor:pointer!important;}
.check-card input[type="checkbox"]::after{content:""!important;position:absolute!important;left:3px!important;top:3px!important;width:20px!important;height:20px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 2px 6px rgba(15,23,42,.20)!important;transition:.18s ease!important;}
.check-card input[type="checkbox"]:checked{background:linear-gradient(135deg,var(--primary),var(--secondary))!important;}
.check-card input[type="checkbox"]:checked::after{transform:translateX(24px)!important;}
/* Notificaciones limpias */
.dropdown-notifications-real{width:330px!important;padding:16px!important;}
.dropdown-notifications-real b{display:block!important;font-size:18px!important;margin:0 0 10px!important;color:var(--text)!important;}
.notif-list{display:grid!important;gap:0!important;}
.notif-row{display:grid!important;grid-template-columns:12px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;padding:10px 0!important;border-bottom:1px solid var(--line)!important;}
.notif-row:last-child{border-bottom:0!important;}
.notif-dot{width:8px!important;height:8px!important;border-radius:50%!important;background:#fbbf24!important;display:block!important;margin-top:7px!important;box-shadow:0 0 0 5px rgba(251,191,36,.12)!important;}
.notif-row strong{display:block!important;color:var(--text)!important;font-size:14px!important;line-height:1.2!important;font-weight:850!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;}
.notif-row small,.notif-row time{display:block!important;color:var(--muted)!important;font-size:12px!important;line-height:1.25!important;margin-top:3px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;}
.dropdown-notifications-real a{display:block!important;margin-top:10px!important;color:var(--primary)!important;font-weight:900!important;}
.dropdown-notifications-real p{display:none!important;}
/* Toast */
.success{position:fixed!important;right:24px!important;top:94px!important;z-index:80!important;max-width:420px!important;height:auto!important;padding:13px 16px!important;border-radius:16px!important;display:flex!important;align-items:center!important;gap:10px!important;animation:micitaToast 4s ease forwards!important;}
@keyframes micitaToast{0%,80%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-10px);pointer-events:none}}
/* BUSINESS: columnas reales */
.business-kpi-layout,.business-focus-final,.business-lower-grid{max-width:var(--content-max)!important;margin:0 auto 16px!important;padding:0!important;}
.business-money-main{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-bottom:12px!important;}
.business-operational-kpis{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;}
.business-focus-final{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
.business-lower-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;}
.business-money-main .stat{height:104px!important;}
.business-operational-kpis .stat{height:94px!important;}
.business-lower-grid .panel{min-height:190px!important;}
.week-strip{min-height:105px!important;align-items:end!important;}
.alert-minimal .activity-clean p{display:grid!important;grid-template-columns:12px minmax(0,1fr) auto!important;gap:10px!important;padding:8px 0!important;align-items:center!important;}
.activity-clean i{width:8px!important;height:8px!important;border-radius:50%!important;background:#fbbf24!important;box-shadow:0 0 0 5px rgba(251,191,36,.12)!important;display:block!important;font-size:0!important;}
.activity-clean span{font-size:14px!important;line-height:1.2!important;}
.activity-clean small{font-size:12px!important;line-height:1.2!important;color:var(--muted)!important;}
/* Theme Light real + Sidebar Style */
body.theme-light{--bg:#f6f8fc!important;--surface:#ffffff!important;--surface-2:#f8fafc!important;--text:#0f172a!important;--muted:#475569!important;--input:#ffffff!important;--line:#d8e2ef!important;--line-strong:#c9d6e6!important;background:#f6f8fc!important;color:#0f172a!important;}
body.theme-light .main, body.theme-light .panel, body.theme-light .stat, body.theme-light .config-card-v25, body.theme-light .topbar, body.theme-light .dropdown-menu, body.theme-light .input-premium, body.theme-light .form-grid-v25 input:not([type=color]), body.theme-light .form-grid-v25 select, body.theme-light .form-grid-v25 textarea, body.theme-light .table-panel{background:#ffffff!important;color:#0f172a!important;border-color:#d8e2ef!important;}
body.theme-light .chart, body.theme-light .week-strip, body.theme-light .asset-box, body.theme-light .check-card, body.theme-light .theme-grid-v25 label, body.theme-light .search{background:#f8fafc!important;color:#0f172a!important;border-color:#d8e2ef!important;}
body.theme-light.sidebar-style-auto .sidebar, body.theme-light.sidebar-style-light .sidebar{background:#ffffff!important;color:#0f172a!important;border-color:#d8e2ef!important;}
body.theme-light.sidebar-style-auto .nav-group a, body.theme-light.sidebar-style-light .nav-group a{color:#334155!important;}
body.theme-light.sidebar-style-auto .nav-group a.active, body.theme-light.sidebar-style-light .nav-group a.active{background:#ede9fe!important;border-color:#a78bfa!important;color:#0f172a!important;}
body.theme-light.sidebar-style-auto .nav-group a.active b, body.theme-light.sidebar-style-light .nav-group a.active b{color:#0f172a!important;}
body.theme-light.sidebar-style-auto .logout, body.theme-light.sidebar-style-light .logout{background:#f8fafc!important;color:#334155!important;}
body.theme-dark.sidebar-style-light .sidebar{background:#ffffff!important;color:#0f172a!important;}
body.sidebar-style-dark .sidebar{background:#071025!important;color:#f8fafc!important;}
/* Dark sidebar active legible */
body.theme-dark .nav-group a.active b, body.sidebar-style-dark .nav-group a.active b{color:#f8fafc!important;}
/* Responsive */
@media(max-width:1280px){
  .stats-grid,.stats-master,.stats-final{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .dash-grid-final-3,.business-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:980px){
  :root{--sidebar-w:0px!important;}
  .sidebar{transform:translateX(-102%)!important;width:278px!important;transition:.2s!important;}
  .sidebar.open{transform:translateX(0)!important;}
  .main{margin-left:0!important;padding:12px 14px 28px!important;}
  .hamb{display:inline-grid!important;}
  .stats-grid,.stats-master,.stats-final{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;}
  .stats-grid .stat,.stats-master .stat,.stats-final .stat{min-width:82vw!important;scroll-snap-align:start!important;}
  .dash-grid-final-2,.dash-grid-final-3,.business-money-main,.business-operational-kpis,.business-focus-final,.business-lower-grid{grid-template-columns:1fr!important;}
  .form-grid-v25,.theme-grid-v25,.asset-grid-v25{grid-template-columns:1fr!important;}
  .config-card-title{grid-template-columns:1fr!important;}
  .top-profile span{display:none!important;}
}


/* =========================================================
   MICITA V3 MASTER CERRADO - FULL PREMIUM ENTERPRISE
   ========================================================= */

:root{
  --v3-primary: var(--primary,#7c3aed);
  --v3-secondary: var(--secondary,#2563eb);
  --v3-accent: var(--accent,#06b6d4);
  --v3-success: var(--success,#22c55e);
  --v3-warning: var(--warning,#f59e0b);
  --v3-danger: var(--danger,#ef4444);
  --v3-surface: var(--panel,#0b1224);
  --v3-surface-2: var(--panel-2,#101a31);
  --v3-line: var(--line,rgba(148,163,184,.22));
  --v3-text: var(--text,#f8fafc);
  --v3-muted: var(--muted,#9aa8bd);
  --v3-soft: color-mix(in srgb,var(--v3-primary) 14%, transparent);
  --v3-soft-line: color-mix(in srgb,var(--v3-primary) 38%, transparent);
  --v3-button: linear-gradient(135deg,var(--v3-primary),var(--v3-secondary));
}

html[data-theme="light"]{
  --v3-surface:#ffffff;
  --v3-surface-2:#f6f9ff;
  --v3-line:#dbe5f3;
  --v3-text:#0b1224;
  --v3-muted:#64748b;
}

/* LOGIN DEFINITIVO */
.login-enterprise{
  background:var(--bg,var(--v3-surface-2))!important;
}
.login-hero{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.login-hero:before{
  opacity:.86!important;
  filter:saturate(1.14) contrast(1.06)!important;
}
.login-hero .hero-content{
  max-width:680px!important;
}
.login-hero .hero-eyebrow,
.module-badge,
.eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:32px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  border:1px solid var(--v3-soft-line)!important;
  background:color-mix(in srgb,var(--v3-primary) 16%, transparent)!important;
  color:var(--v3-text)!important;
  backdrop-filter:blur(14px)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.login-hero h1{
  letter-spacing:-.058em!important;
  line-height:.92!important;
}
.login-panel{
  max-width:430px!important;
  padding:28px!important;
  border-radius:26px!important;
  background:color-mix(in srgb,var(--v3-surface) 96%, transparent)!important;
  border:1px solid var(--v3-line)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.16)!important;
}
.login-panel label{
  font-size:13px!important;
  font-weight:950!important;
  margin:14px 0 7px!important;
}
.input-premium{
  height:50px!important;
  min-height:50px!important;
  border-radius:15px!important;
  border:1px solid var(--v3-line)!important;
  background:var(--v3-surface-2)!important;
  box-shadow:none!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.input-premium input{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  font-weight:850!important;
  color:var(--v3-text)!important;
}
.pass-toggle{
  height:30px!important;
  padding:0 10px!important;
  border-radius:10px!important;
  border:1px solid var(--v3-line)!important;
  background:color-mix(in srgb,var(--v3-primary) 11%, transparent)!important;
  color:var(--v3-text)!important;
  font-size:12px!important;
  font-weight:950!important;
  white-space:nowrap!important;
}

/* BOTONES PALETA */
.btn-primary,.btn-small,.btn-action,.submit-premium,.save-btn,.primary-btn,.enterprise-btn,.add-btn,button[type="submit"],button.btn,a.btn-small{
  background:var(--v3-button)!important;
  color:#fff!important;
  border:1px solid color-mix(in srgb,var(--v3-primary) 42%, transparent)!important;
  box-shadow:0 12px 30px color-mix(in srgb,var(--v3-primary) 18%, transparent)!important;
  border-radius:14px!important;
  font-weight:950!important;
  min-height:44px!important;
}

/* BUSCADOR SIN DOBLE TARJETA */
.search,.search.mini,.top-search,.searchbar,.search-box{
  height:46px!important;
  min-height:46px!important;
  max-width:560px!important;
  border:1px solid var(--v3-line)!important;
  background:var(--v3-surface)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  padding:0 14px!important;
}
.search input,.search.mini input,.searchbar input,.search-box input{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  min-height:0!important;
  padding:0!important;
}

/* HEADERS COMPACTOS */
.page-head,.page-head-enterprise,.module-head,.dashboard-hero{
  min-height:auto!important;
  padding:18px 2px 16px!important;
  margin-bottom:14px!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.page-head h1,.page-head-enterprise h1,.module-head h1,.dashboard-hero h1{
  font-size:clamp(31px,3vw,46px)!important;
  line-height:1.05!important;
  letter-spacing:-.048em!important;
  margin:8px 0 0!important;
  font-weight:950!important;
}
.page-head p,.page-head-enterprise p,.module-head p,.dashboard-hero p{
  margin:7px 0 0!important;
  line-height:1.34!important;
  color:var(--v3-muted)!important;
}

/* KPI COMPACTOS 6/3/2 */
.stats-grid,.stats-master,.stats-final,.business-operational-kpis,.business-money-main{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
}
.stat{
  min-height:86px!important;
  height:auto!important;
  padding:12px!important;
  border-radius:17px!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--v3-surface) 98%,#fff 2%),color-mix(in srgb,var(--v3-surface) 92%,#000 8%))!important;
  border:1px solid var(--v3-line)!important;
  box-shadow:none!important;
}
.stat-icon{
  width:38px!important;
  height:38px!important;
  border-radius:13px!important;
  display:grid!important;
  place-items:center!important;
  background:color-mix(in srgb,var(--v3-accent) 15%, transparent)!important;
  color:var(--v3-accent)!important;
}
.stat-body span{
  font-size:10px!important;
  line-height:1.1!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  color:var(--v3-muted)!important;
  font-weight:950!important;
  margin:0 0 3px!important;
}
.stat-body strong{
  font-size:clamp(20px,1.55vw,27px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
  margin:0!important;
}
.stat-body small{
  font-size:11px!important;
  line-height:1.1!important;
  color:var(--v3-success)!important;
  font-weight:900!important;
}

/* MASTER GRID: INGRESOS PRIMERO / 2 COLUMNAS */
.v3-master-money,.dash-grid-final-2{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:start!important;
  margin-bottom:14px!important;
}
.v3-card-grid,.dash-grid-final-3,.dash-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:start!important;
}
.panel,.panel-compact,.card-panel,.enterprise-card,.table-panel,.config-card,.widget-card,.dashboard-card,.info-card{
  min-height:auto!important;
  padding:16px!important;
  border-radius:20px!important;
  box-shadow:none!important;
}
.panel-head{
  margin-bottom:12px!important;
  gap:10px!important;
}
.panel-head h3,.panel h2{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:var(--v3-soft)!important;
  border:1px solid var(--v3-soft-line)!important;
  color:var(--v3-text)!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  margin:0 0 6px!important;
}
.panel-head p{
  margin:0!important;
  font-size:13px!important;
  color:var(--v3-muted)!important;
}
.v3-money-main strong{
  display:block!important;
  font-size:clamp(34px,4vw,54px)!important;
  line-height:1!important;
  letter-spacing:-.06em!important;
}
.v3-money-main small{
  color:var(--v3-muted)!important;
  font-weight:850!important;
}
.final-chart,.compact-chart,.chart-premium{
  height:150px!important;
  min-height:150px!important;
  max-height:170px!important;
}
.donut,.donut-compact{
  width:126px!important;
  height:126px!important;
}
.v3-license-grid{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:10px!important;
}
.v3-license-grid div{
  border:1px solid var(--v3-line)!important;
  background:var(--v3-surface-2)!important;
  border-radius:16px!important;
  padding:14px!important;
}
.v3-license-grid b{
  display:block!important;
  font-size:28px!important;
  line-height:1!important;
}
.v3-license-grid small{
  color:var(--v3-muted)!important;
}
.v3-row,.enterprise-row{
  min-height:42px!important;
  padding:9px 0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  gap:10px!important;
  align-items:center!important;
}
.enterprise-row b{
  font-size:14px!important;
  line-height:1.15!important;
}
.enterprise-row small,.enterprise-row em{
  font-size:12px!important;
  line-height:1!important;
}
.enterprise-row em{
  font-style:normal!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:var(--v3-soft)!important;
  color:var(--v3-text)!important;
}

/* NOTIFICACIONES COMPACTAS */
.dropdown-notifications-real,.notification-menu,.notify-pop,.notifications-popover,.notification-dropdown{
  width:min(360px,calc(100vw - 22px))!important;
  max-height:285px!important;
  overflow:auto!important;
  padding:12px!important;
  border-radius:18px!important;
}
.dropdown-notifications-real>b,.notification-menu h3,.notify-pop h3{
  display:block!important;
  font-size:17px!important;
  line-height:1!important;
  margin:0 0 9px!important;
  padding:0!important;
}
.notif-list{
  display:grid!important;
  gap:8px!important;
}
.notif-row,.notice-item,.notification-item,.notify-item{
  min-height:50px!important;
  padding:9px 10px!important;
  border-radius:14px!important;
  display:grid!important;
  grid-template-columns:9px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  background:var(--v3-surface-2)!important;
}
.notif-row strong{
  font-size:13px!important;
  line-height:1.15!important;
}
.notif-row small,.notif-row time{
  display:block!important;
  font-size:11px!important;
  line-height:1.15!important;
  margin-top:2px!important;
  color:var(--v3-muted)!important;
}

/* SWITCH PREMIUM */
input[type="checkbox"]:not(.native-checkbox){
  appearance:none!important;
  -webkit-appearance:none!important;
  width:46px!important;
  height:26px!important;
  min-width:46px!important;
  border-radius:999px!important;
  border:1px solid var(--v3-line)!important;
  background:var(--v3-surface-2)!important;
  position:relative!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
input[type="checkbox"]:not(.native-checkbox)::before{
  content:""!important;
  position:absolute!important;
  width:20px!important;
  height:20px!important;
  top:2px!important;
  left:3px!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(0,0,0,.18)!important;
  transition:.18s ease!important;
}
input[type="checkbox"]:not(.native-checkbox):checked{
  background:var(--v3-button)!important;
}
input[type="checkbox"]:not(.native-checkbox):checked::before{
  transform:translateX(20px)!important;
}

/* LIGHT CONSISTENTE */
html[data-theme="light"] .stat,
html[data-theme="light"] .panel,
html[data-theme="light"] .login-panel,
html[data-theme="light"] .input-premium,
html[data-theme="light"] .search{
  background:#fff!important;
  border-color:#dbe5f3!important;
}
html[data-theme="light"] .dropdown-notifications-real,
html[data-theme="light"] .notif-row{
  background:#fff!important;
  border-color:#dbe5f3!important;
}

/* RESPONSIVE 3 / 2 COLUMNAS */
@media (min-width:821px) and (max-width:1320px){
  .stats-grid,.stats-master,.stats-final,.business-operational-kpis,.business-money-main{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:820px){
  .stats-grid,.stats-master,.stats-final,.business-operational-kpis,.business-money-main{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .stat{
    min-height:76px!important;
    padding:10px!important;
    border-radius:15px!important;
    grid-template-columns:32px minmax(0,1fr)!important;
  }
  .stat-icon{
    width:32px!important;
    height:32px!important;
    border-radius:11px!important;
  }
  .stat-body strong{
    font-size:20px!important;
  }
  .v3-master-money,.dash-grid-final-2,.v3-card-grid,.dash-grid-final-3,.dash-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .panel,.panel-compact{
    padding:13px!important;
    border-radius:17px!important;
  }
  .page-head h1,.page-head-enterprise h1{
    font-size:30px!important;
  }
  .dropdown-notifications-real{
    max-height:240px!important;
  }
}
