:root{
  --ink:#10243e;
  --ink-2:#263b53;
  --muted:#718096;
  --line:#e1e8f0;
  --bg:#f2f6f9;
  --panel:#ffffff;
  --nav:#0c2137;
  --nav-soft:#132d47;
  --brand:#0d7f88;
  --brand-dark:#08656d;
  --accent:#32c7b7;
  --blue:#3c70d9;
  --green:#0c8b68;
  --amber:#a96f09;
  --red:#bd3a30;
  --violet:#7558c8;
  --shadow:0 18px 50px rgba(18,43,68,.08);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);font-size:14px}
button,input,select,textarea{font:inherit}
button{color:inherit}
.app-shell{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:100vh}

.sidebar{background:linear-gradient(180deg,#0c2137 0%,#0a1c30 100%);color:#fff;padding:25px 17px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:30;box-shadow:8px 0 30px rgba(12,33,55,.08)}
.logo{display:flex;gap:12px;align-items:center;padding:0 8px 30px}
.logo-mark{width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,var(--accent),var(--brand));display:grid;place-items:center;font-weight:950;font-size:20px;box-shadow:0 10px 24px rgba(50,199,183,.18);position:relative}
.logo-mark:after{content:"";position:absolute;width:8px;height:8px;background:#fff;border-radius:50%;right:-2px;top:-2px;border:3px solid var(--nav)}
.logo b{display:block;font-size:16px;letter-spacing:-.02em}.logo small{display:block;color:#8fa3b8;font-size:10px;letter-spacing:.12em;font-weight:800;margin-top:3px}
.nav-label{font-size:9px;letter-spacing:.16em;color:#71869b;font-weight:900;padding:0 12px 9px}
nav{display:grid;gap:6px}
.nav-item{border:0;background:transparent;color:#9eb0c1;text-align:left;padding:12px 13px;border-radius:12px;cursor:pointer;display:flex;gap:11px;align-items:center;transition:.18s ease;position:relative}
.nav-item b{font-size:13px}.nav-item:hover{background:rgba(255,255,255,.045);color:#fff}.nav-item.active{background:linear-gradient(90deg,rgba(50,199,183,.16),rgba(50,199,183,.05));color:#fff;box-shadow:inset 3px 0 0 var(--accent)}
.nav-item span{width:23px;height:23px;display:grid;place-items:center;color:#8fa5b8;font-size:16px}.nav-item.active span{color:var(--accent)}
.nav-item i{font-style:normal;margin-left:auto;min-width:22px;height:21px;border-radius:7px;background:rgba(255,255,255,.08);display:grid;place-items:center;font-size:10px;font-weight:900}.nav-item.active i{background:var(--accent);color:#073839}
.sidebar-bottom{margin-top:auto}
.plan-card{background:linear-gradient(145deg,#15344f,#102a43);border:1px solid rgba(134,164,188,.13);border-radius:17px;padding:15px;margin-bottom:14px;box-shadow:0 14px 30px rgba(0,0,0,.12)}
.plan-top{display:flex;align-items:center;gap:7px;color:#69ddcf;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:11px}
.live-dot{width:8px;height:8px;border-radius:50%;background:#44d6a9;box-shadow:0 0 0 4px rgba(68,214,169,.1)}
.plan-card b,.plan-card small{display:block}.plan-card b{font-size:13px}.plan-card small{color:#93a8bb;line-height:1.45;margin-top:6px;font-size:11px}
.user-row{display:flex;align-items:center;gap:10px;padding:8px}.avatar{width:35px;height:35px;border-radius:11px;display:grid;place-items:center;background:#193954;color:#78ddd2;font-size:11px;font-weight:950}.user-row b,.user-row small{display:block;font-size:11px}.user-row small{color:#72889d;margin-top:2px}.user-row>span{margin-left:auto;color:#698198}

.main{padding:0 34px 54px;min-width:0;max-width:1600px;width:100%;margin:0 auto}
.topbar{min-height:102px;display:flex;justify-content:space-between;align-items:center;gap:22px}
.topbar-left,.top-actions{display:flex;align-items:center;gap:11px}.top-title h1{font-size:24px;letter-spacing:-.03em;margin:4px 0 0}.eyebrow{font-size:9px;letter-spacing:.15em;font-weight:950;color:#7b8999}.light{color:#8ee9de}
.search{height:43px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 13px;display:flex;align-items:center;gap:8px;min-width:260px;transition:.18s}.search:focus-within{border-color:#8fc4c8;box-shadow:0 0 0 4px rgba(13,127,136,.07)}.search span{color:#7b8a9d;font-size:18px}.search input{border:0;outline:0;width:100%;background:transparent;color:var(--ink);font-size:12px}
.network-pill{height:43px;background:#eaf0f5;border:1px solid #dde6ee;border-radius:12px;padding:0 12px;display:flex;align-items:center;gap:9px;min-width:142px}.network-pill>span{width:9px;height:9px;border-radius:50%;background:#9aa8b7;box-shadow:0 0 0 4px rgba(154,168,183,.12)}.network-pill.ready{background:#e7f7f2;border-color:#d0eee5}.network-pill.ready>span{background:#16a477;box-shadow:0 0 0 4px rgba(22,164,119,.12)}.network-pill small,.network-pill b{display:block}.network-pill small{font-size:9px;color:#78889a;text-transform:uppercase;font-weight:850}.network-pill b{font-size:10px;margin-top:2px;white-space:nowrap}
.btn{border:0;border-radius:11px;padding:11px 15px;font-weight:850;font-size:12px;cursor:pointer;transition:.18s;display:inline-flex;align-items:center;justify-content:center;gap:5px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:linear-gradient(135deg,var(--brand),#10949b);color:#fff;box-shadow:0 9px 22px rgba(13,127,136,.19)}.btn.primary:hover:not(:disabled){background:linear-gradient(135deg,var(--brand-dark),var(--brand))}.btn.secondary,.btn.ghost{background:#edf2f6;color:#385066}.btn.white{background:#fff;color:#173a4b;box-shadow:0 8px 24px rgba(8,35,57,.12)}.btn.glass{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.22)}.btn.wide{width:100%}.mobile-menu{display:none}

.view{display:none;animation:fadeIn .25s ease}.view.active{display:block}@keyframes fadeIn{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:none}}
.hero{border-radius:25px;min-height:306px;padding:37px 38px;background:radial-gradient(circle at 15% 120%,rgba(50,199,183,.28),transparent 36%),radial-gradient(circle at 85% 5%,rgba(62,127,180,.22),transparent 32%),linear-gradient(135deg,#0d2d46,#103b56 58%,#0b344c);color:#fff;display:grid;grid-template-columns:1.08fr .92fr;gap:40px;align-items:center;overflow:hidden;box-shadow:0 22px 55px rgba(15,47,70,.15);position:relative}
.hero:before{content:"";position:absolute;right:-90px;bottom:-120px;width:360px;height:360px;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018)}
.hero-copy{position:relative;z-index:1}.hero h2{font-size:37px;line-height:1.12;letter-spacing:-.045em;margin:11px 0 15px}.hero h2 span{color:#5ed9cc}.hero p{max-width:600px;line-height:1.6;color:#b8c9d7;margin:0 0 24px;font-size:14px}.hero-actions{display:flex;gap:9px}
.automation-card{position:relative;z-index:1;background:rgba(9,29,45,.58);border:1px solid rgba(156,199,213,.17);backdrop-filter:blur(14px);border-radius:21px;padding:19px;box-shadow:0 20px 40px rgba(2,19,31,.22)}
.automation-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:14px}.automation-head>div{display:flex;gap:9px;align-items:center}.automation-head>span{font-size:8px;letter-spacing:.12em;color:#7ee1d5;background:rgba(50,199,183,.12);border-radius:999px;padding:6px 8px;font-weight:900}.pulse{width:9px;height:9px;background:#43d5a8;border-radius:50%;box-shadow:0 0 0 5px rgba(67,213,168,.09)}
.automation-flow{padding:14px 0 9px}.automation-flow>div{display:flex;align-items:center;gap:11px}.flow-icon{width:29px;height:29px;border-radius:9px;background:#163f59;display:grid;place-items:center;color:#70d9d0;font-size:9px;font-weight:950}.automation-flow p{margin:0;flex:1}.automation-flow p b,.automation-flow p small{display:block}.automation-flow p b{font-size:12px}.automation-flow p small{font-size:10px;color:#8199ac;margin-top:2px}.automation-flow em{font-style:normal;color:#5ed9cc;font-weight:900}.automation-flow>i{display:block;width:1px;height:12px;background:#2d5269;margin-left:14px}.provider-note{background:rgba(255,255,255,.045);border-radius:10px;padding:9px 11px;color:#8399aa;font-size:9px;line-height:1.4}

.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.kpi{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px;display:flex;gap:13px;align-items:center;box-shadow:0 8px 26px rgba(18,43,68,.035);position:relative}.kpi-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;font-weight:950;flex:none}.kpi-icon.blue{background:#eaf0ff;color:var(--blue)}.kpi-icon.green{background:#e5f7f1;color:var(--green)}.kpi-icon.amber{background:#fff3d9;color:var(--amber)}.kpi-icon.violet{background:#f0ecff;color:var(--violet)}.kpi small,.kpi em{display:block;color:var(--muted);font-style:normal}.kpi>div>small{font-size:10px;font-weight:750}.kpi strong{display:block;font-size:27px;letter-spacing:-.03em;margin:2px 0}.kpi em{font-size:9px}.kpi-trend,.kpi-link{position:absolute;right:13px;top:13px;font-size:8px;font-weight:900;color:#708397;background:#f2f5f8;border:0;border-radius:7px;padding:5px 6px}.kpi-trend.good{color:#0c8563;background:#e5f7f1}.kpi-link{color:var(--brand);cursor:pointer}
.kpi-clickable{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;outline:none}.kpi-clickable:hover,.kpi-clickable:focus-visible{transform:translateY(-2px);border-color:#b7d7d9;box-shadow:0 14px 34px rgba(18,43,68,.09)}.kpi-clickable:hover .kpi-trend,.kpi-clickable:hover .kpi-link{background:#e4f4f3;color:var(--brand)}
.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 30px rgba(18,43,68,.035)}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.panel h3{margin:5px 0 0;font-size:17px;letter-spacing:-.02em}.text-btn{border:0;background:transparent;color:var(--brand);font-weight:850;font-size:11px;cursor:pointer}.round-btn{width:31px;height:31px;border-radius:10px;border:1px solid var(--line);background:#f7f9fb;color:var(--brand);font-weight:900;cursor:pointer}
.list-item{width:100%;border:0;background:transparent;display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #edf1f5;cursor:pointer;text-align:left}.list-item:first-child{border-top:0}.list-item:hover .list-main b{color:var(--brand)}.asset-icon{width:39px;height:39px;border-radius:12px;background:#eef3f7;display:grid;place-items:center;font-weight:950;color:#52687a;flex:none}.asset-icon.alert{color:#986309;background:#fff2d8}.list-main{min-width:0;flex:1}.list-main b,.list-main small{display:block}.list-main b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.list-main small{font-size:10px;color:var(--muted);margin-top:4px}.list-tail{text-align:right}.list-tail small{display:block;color:#8997a6;font-size:9px;margin-top:5px}.days-badge{font-size:9px;font-weight:900;color:#8a610d;background:#fff2d5;border-radius:7px;padding:6px 7px;white-space:nowrap}.days-badge.overdue{color:var(--red);background:#fee9e6}
.status{border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900;white-space:nowrap}.status.ok{background:#e2f6ef;color:var(--green)}.status.warn{background:#fff1d3;color:var(--amber)}.status.bad{background:#fee8e5;color:var(--red)}.status.neutral{background:#edf1f5;color:#657487}.empty-state{padding:28px;text-align:center;color:var(--muted);display:grid;justify-items:center}.empty-state>span{width:39px;height:39px;border-radius:50%;background:#e3f6ef;color:var(--green);display:grid;place-items:center;font-weight:950;margin-bottom:8px}.empty-state b,.empty-state small{display:block}.empty-state small{font-size:10px;margin-top:4px}.empty-state.large{min-height:200px;align-content:center;grid-column:1/-1}

.section-tools{display:flex;justify-content:space-between;align-items:flex-end;margin:7px 0 20px;gap:20px}.section-tools h2{font-size:27px;letter-spacing:-.035em;margin:5px 0}.section-tools p{color:var(--muted);margin:0;font-size:12px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;color:#68788b;font-weight:800;font-size:10px;cursor:pointer}.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.table-panel{padding:0;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;padding:14px 18px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#8190a1;background:#f8fafc}td{padding:15px 18px;border-top:1px solid #edf1f5;font-size:11px;vertical-align:middle}.asset-cell{display:flex;gap:10px;align-items:center}.table-asset-icon{width:35px;height:35px;background:#edf4f7;color:var(--brand);border-radius:10px;display:grid;place-items:center;font-weight:950;flex:none}.asset-cell b,.asset-cell small{display:block}.asset-cell small,.muted{color:var(--muted);margin-top:4px;font-size:9px}.company-name{font-size:11px}.qr-mini{width:40px;height:40px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:3px}.row-btn{border:0;background:#eef3f6;border-radius:9px;padding:8px 10px;cursor:pointer;font-weight:850;font-size:10px;white-space:nowrap}.row-btn span{color:var(--brand);margin-left:3px}

.reminder-heading{align-items:center}.mode-badge{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 13px}.mode-badge small,.mode-badge b{display:block}.mode-badge small{font-size:8px;color:#8391a0;font-weight:900;letter-spacing:.1em}.mode-badge b{font-size:10px;margin-top:2px}.integration-banner{background:linear-gradient(105deg,#e8f6f5,#f1f7f9);border:1px solid #d3eae8;border-radius:17px;padding:16px 18px;display:flex;align-items:center;gap:14px;margin-bottom:15px}.integration-icon{width:40px;height:40px;border-radius:12px;background:#d7eeec;color:var(--brand);display:grid;place-items:center;font-size:19px;font-weight:900}.integration-banner>div:nth-child(2){flex:1}.integration-banner b{font-size:12px}.integration-banner p{margin:4px 0 0;color:#65788a;font-size:10px;line-height:1.45}.integration-banner>span{background:#fff6dc;color:#8e630a;border-radius:999px;padding:7px 9px;font-size:8px;font-weight:900;white-space:nowrap}.reminder-summary{display:flex;gap:1px;background:#dfe6ed;border:1px solid #dfe6ed;border-radius:16px;overflow:hidden;margin-bottom:16px}.reminder-summary>div{background:#fff;flex:1;padding:13px 16px;display:flex;align-items:baseline;gap:7px}.reminder-summary span{font-size:21px;font-weight:950}.reminder-summary small{color:var(--muted);font-size:9px}.reminders-board{display:grid;gap:11px}.reminder-card{display:grid;grid-template-columns:84px 1fr auto;gap:17px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px;box-shadow:0 7px 22px rgba(18,43,68,.025);position:relative;overflow:hidden}.reminder-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#e7b543}.reminder-card.urgent:before{background:#d55449}.reminder-date{height:76px;border-radius:13px;background:#f7f9fb;border:1px solid #edf1f4;display:grid;place-items:center;align-content:center}.reminder-date span{font-size:7px;letter-spacing:.12em;font-weight:950;color:#9b761d}.urgent .reminder-date span{color:var(--red)}.reminder-date b{font-size:19px;margin:2px 0}.reminder-date small{font-size:8px;color:#778696}.reminder-content{min-width:0}.reminder-top{display:flex;align-items:center;gap:8px}.type-pill{font-size:8px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);background:#e4f4f3;border-radius:6px;padding:5px 6px}.reminder-content h3{font-size:15px;margin:7px 0 3px}.reminder-content p{color:var(--muted);font-size:10px;margin:0}.contact-line{display:flex;gap:10px;margin-top:8px}.contact-line span{color:#188261;font-size:9px;font-weight:850}.contact-line .missing{color:var(--red)}.notification-state{display:block;color:#8c99a7;font-size:8px;margin-top:6px}.reminder-actions{display:flex;gap:7px}.reminder-actions .btn{font-size:9px;padding:9px 11px}
.agenda-section{margin-top:18px;scroll-margin-top:18px}.agenda-section .panel-head p{margin:4px 0 0;color:var(--muted);font-size:9px}.agenda-count{font-size:9px;font-weight:900;color:var(--violet);background:#f0ecff;border-radius:999px;padding:7px 10px}.appointments-board{display:grid;gap:9px}.agenda-card{display:grid;grid-template-columns:62px minmax(0,1fr) 70px auto;gap:13px;align-items:center;border-top:1px solid #edf1f5;padding:13px 0}.agenda-card:first-child{border-top:0}.agenda-date{width:58px;height:58px;border-radius:13px;background:#f0ecff;color:var(--violet);display:grid;place-items:center;align-content:center}.agenda-date b{font-size:17px}.agenda-date span{font-size:7px;font-weight:800;margin-top:2px}.agenda-info h4{font-size:12px;margin:6px 0 3px}.agenda-info p{font-size:9px;color:var(--muted);margin:0}.agenda-time{text-align:center}.agenda-time b,.agenda-time small{display:block}.agenda-time b{font-size:15px}.agenda-time small{font-size:8px;color:var(--muted)}.agenda-empty{padding:35px}
.automation-coverage{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 15px}.automation-coverage span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 10px;color:#357164;font-size:9px;font-weight:850}
.export-panel{min-height:330px;display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:center;padding:38px;background:linear-gradient(135deg,#fff,#f7fbfc)}.export-visual{width:220px;height:220px;border-radius:34px;background:linear-gradient(145deg,#0d7f88,#07545c);display:grid;place-items:center;align-content:center;color:#fff;box-shadow:0 24px 50px rgba(13,127,136,.22);position:relative}.export-visual:before,.export-visual:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:24px;inset:20px}.export-visual:after{inset:39px;border-radius:17px}.export-visual span{font-size:53px;font-weight:950;letter-spacing:-.08em;position:relative;z-index:1}.export-visual i{font-style:normal;font-size:25px;color:#7eeee2;position:relative;z-index:1}.export-copy h3{font-size:27px;letter-spacing:-.035em;margin:7px 0 10px}.export-copy>p{color:var(--muted);line-height:1.6;margin:0 0 17px;max-width:660px}.export-sheets{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:22px}.export-sheets span{background:#e8f4f4;color:var(--brand);border-radius:8px;padding:7px 9px;font-size:9px;font-weight:900}.export-button{min-width:190px}.export-copy>small{display:block;color:#8493a3;font-size:9px;margin-top:10px}.export-note{display:flex;align-items:center;gap:12px;background:#e7f5f1;border:1px solid #d6ece5;border-radius:16px;padding:15px 18px;margin-top:14px}.export-note>span{width:34px;height:34px;border-radius:11px;background:#cfece3;color:var(--green);display:grid;place-items:center;font-weight:950}.export-note b,.export-note p{display:block;margin:0}.export-note b{font-size:11px}.export-note p{color:#627b77;font-size:9px;margin-top:3px;line-height:1.5}

.back-btn{border:0;background:transparent;color:#647487;font-weight:850;font-size:11px;cursor:pointer;margin:5px 0 15px}.detail-hero{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:16px}.detail-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:23px;box-shadow:0 8px 30px rgba(18,43,68,.035)}.asset-overview{border-top:4px solid var(--brand)}.detail-title{display:flex;justify-content:space-between;gap:20px}.detail-title h2{font-size:29px;letter-spacing:-.035em;margin:6px 0 5px}.detail-meta{color:var(--muted);font-size:11px}.detail-actions{display:flex;gap:7px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}.detail-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:24px}.mini-stat{background:#f6f8fa;border:1px solid #edf1f4;border-radius:13px;padding:12px;min-width:0}.mini-stat span,.mini-stat b,.mini-stat small{display:block}.mini-stat span{font-size:9px;color:var(--muted)}.mini-stat b{font-size:11px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-stat small{font-size:8px;color:#8896a5;margin-top:4px}.ok-text{color:var(--green)}.warn-text{color:var(--amber)}.bad-text{color:var(--red)}.qr-card{text-align:center}.qr-card img{display:block;width:154px;height:154px;margin:8px auto}.qr-card .code{font-size:9px;font-weight:950;letter-spacing:.13em}.qr-card>b{display:block;font-size:11px}.qr-card>small{display:block;color:var(--muted);margin:5px 0 12px;font-size:9px;line-height:1.4}.phone-url{font-size:7px;color:#8b98a6;word-break:break-all;margin-top:9px}.detail-lower{display:grid;grid-template-columns:1fr 300px;gap:16px;margin-top:16px}.timeline-event{display:grid;grid-template-columns:22px 1fr;gap:9px;padding:14px 0;border-top:1px solid #edf1f5}.timeline-event:first-of-type{border-top:0}.timeline-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(50,199,183,.1);margin-top:5px}.timeline-top{display:flex;justify-content:space-between;gap:15px}.timeline-top small{color:var(--muted);font-size:9px}.timeline-event h4{margin:5px 0 6px;font-size:12px}.timeline-event p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.appointment-row{display:flex;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #edf1f5}.appointment-row>span{width:33px;height:33px;border-radius:10px;background:#e8f5f4;color:var(--brand);display:grid;place-items:center}.appointment-row b,.appointment-row small{display:block}.appointment-row b{font-size:10px}.appointment-row small{color:var(--muted);font-size:8px;margin-top:4px}

.modal-backdrop{position:fixed;inset:0;background:rgba(7,23,38,.66);display:none;align-items:center;justify-content:center;padding:18px;z-index:50;backdrop-filter:blur(3px)}.modal-backdrop.open{display:flex}.modal{width:min(680px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;padding:23px;box-shadow:0 32px 90px rgba(0,0,0,.28)}.modal.large{width:min(870px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #edf1f4;padding-bottom:16px;margin-bottom:4px}.modal-head h2{font-size:21px;letter-spacing:-.025em;margin:5px 0 0}.modal-head p{font-size:10px;color:var(--muted);margin:5px 0 0}.icon-btn{border:0;background:#eef2f5;width:33px;height:33px;border-radius:10px;font-size:19px;cursor:pointer;flex:none}.form-section{padding:18px 0;border-top:1px solid #edf1f4;display:grid;grid-template-columns:42px 1fr;gap:13px}.form-section.first{border-top:0}.section-number{width:31px;height:31px;border-radius:10px;background:#e3f3f2;color:var(--brand);display:grid;place-items:center;font-size:9px;font-weight:950}.form-content h4{margin:6px 0 13px;font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-grid label{font-size:9px;font-weight:850;color:#5b6b7f}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:6px;border:1px solid #dce4ec;border-radius:10px;padding:10px 11px;outline:none;background:#fff;color:var(--ink);font-size:11px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#77b9be;box-shadow:0 0 0 3px rgba(13,127,136,.08)}.span2{grid-column:span 2}.hidden{display:none!important}.company-preview{display:none;align-items:center;gap:10px;background:#f2f8f8;border:1px solid #deeeee;border-radius:12px;padding:11px;margin-bottom:2px}.company-preview.show{display:flex}.company-avatar{width:34px;height:34px;border-radius:10px;background:#d9eeec;color:var(--brand);display:grid;place-items:center;font-size:9px;font-weight:950}.company-preview>div:nth-child(2){flex:1}.company-preview b,.company-preview small{display:block}.company-preview b{font-size:11px}.company-preview small{color:var(--muted);font-size:8px;margin-top:3px}.company-preview>span{font-size:8px;color:var(--brand);background:#fff;padding:5px 7px;border-radius:7px;font-weight:850}.compact-form{padding-top:15px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}.reminder-modal{width:min(640px,100%)}.channel-select-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-top:17px}.channel-select-head b,.channel-select-head small{display:block}.channel-select-head b{font-size:11px}.channel-select-head small{font-size:9px;color:var(--muted);margin-top:3px}.channel-select-head>span{font-size:8px;font-weight:900;color:var(--brand);background:#e7f4f4;border-radius:999px;padding:6px 8px;white-space:nowrap}.channel-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:10px 0 6px}.channel-option{border:1px solid #dfe6ee;border-radius:13px;padding:11px;display:grid;grid-template-columns:34px minmax(0,1fr) 21px;gap:9px;align-items:center;cursor:pointer;transition:.16s;background:#fff;position:relative}.channel-option:hover{border-color:#a8c9ce}.channel-option.selected{background:#edf8f6;border-color:#9fd6cc;box-shadow:0 0 0 3px rgba(31,156,137,.06)}.channel-option.disabled{cursor:not-allowed;opacity:.48;background:#f4f6f8}.channel-option input{position:absolute;opacity:0;pointer-events:none}.channel-icon{width:34px;height:34px;border-radius:10px;background:#e8eefc;color:#3556c5;display:grid;place-items:center;font-weight:950;font-size:10px}.channel-option:nth-child(2) .channel-icon{background:#e7f4f4;color:var(--brand)}.channel-copy{min-width:0}.channel-copy b,.channel-copy small{display:block}.channel-copy b{font-size:10px}.channel-copy small{color:var(--muted);font-size:8px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-check{width:20px;height:20px;border-radius:7px;border:1px solid #cfd8e2;color:transparent;display:grid;place-items:center;font-size:11px;font-weight:950;background:#fff}.channel-option.selected .channel-check{background:#1a9e83;border-color:#1a9e83;color:#fff}.channel-save-state{font-size:8px;color:#8190a0;margin:0 0 12px}.message-preview{background:#f5f8fa;border:1px solid #e4eaf0;border-radius:15px;padding:17px;font-size:11px;line-height:1.6;color:#354b60}.agenda-preview{display:flex;gap:11px;align-items:center;background:#eaf6f5;border-radius:13px;padding:12px;margin-top:11px}.agenda-preview>span{width:32px;height:32px;border-radius:10px;background:#d5ecea;color:var(--brand);display:grid;place-items:center}.agenda-preview b,.agenda-preview small{display:block}.agenda-preview b{font-size:10px}.agenda-preview small{font-size:8px;color:#617587;margin-top:3px;word-break:break-all}.toast{position:fixed;right:24px;bottom:24px;background:#10243e;color:#fff;border-radius:12px;padding:12px 16px;font-weight:800;font-size:11px;display:none;z-index:80;box-shadow:0 16px 40px rgba(0,0,0,.2)}.toast.show{display:block}.toast.error{background:#a9362e}.empty{padding:27px;text-align:center;color:var(--muted);font-size:10px}.empty.compact{padding:18px}

@media(max-width:1180px){.network-pill{display:none}.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr 380px}.detail-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.hero{grid-template-columns:1fr}.automation-card{max-width:520px}.detail-lower{grid-template-columns:1fr}.search{display:none}.reminder-card{grid-template-columns:75px 1fr}.reminder-actions{grid-column:2;justify-content:flex-start}.agenda-card{grid-template-columns:62px 1fr auto}.agenda-time{grid-column:3;grid-row:1}.agenda-card .row-btn{grid-column:2/4;justify-self:start}}
@media(max-width:780px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;width:258px;transition:.2s}.sidebar.open{left:0}.main{padding:0 16px 38px}.topbar{min-height:88px}.mobile-menu{display:inline-grid;place-items:center;border:1px solid var(--line);background:#fff;border-radius:9px;width:35px;height:35px}.top-title h1{font-size:19px}.hero{padding:26px}.hero h2{font-size:30px}.detail-hero{grid-template-columns:1fr}.section-tools{align-items:flex-start;flex-direction:column}.reminder-heading{align-items:flex-start}.integration-banner{align-items:flex-start}.integration-banner>span{display:none}.form-grid{grid-template-columns:1fr}.span2{grid-column:span 1}.form-section{grid-template-columns:1fr}.section-number{display:none}.top-actions .btn{padding:10px 12px}.top-actions .btn span{display:none}.reminder-summary{display:grid;grid-template-columns:1fr}.reminder-summary>div{border-bottom:1px solid var(--line)}.export-panel{grid-template-columns:1fr;padding:27px}.export-visual{width:160px;height:160px}.export-visual span{font-size:40px}}
@media(max-width:540px){.kpi-grid{grid-template-columns:1fr}.hero{padding:23px}.hero h2{font-size:28px}.hero-actions{flex-wrap:wrap}.automation-card{padding:15px}.detail-title{flex-direction:column}.detail-actions{justify-content:flex-start}.detail-stats{grid-template-columns:1fr}.reminder-card{grid-template-columns:1fr}.reminder-date{height:58px;display:flex;gap:6px}.reminder-actions{grid-column:1}.reminder-summary{display:none}.modal{padding:18px}.channel-row{grid-template-columns:1fr}.channel-select-head{align-items:flex-start;flex-direction:column;gap:8px}.integration-banner{padding:13px}.main{padding-left:12px;padding-right:12px}.agenda-card{grid-template-columns:54px 1fr}.agenda-time{grid-column:2;grid-row:auto;text-align:left}.agenda-card .row-btn{grid-column:2;justify-self:start}.automation-coverage{display:grid}.export-panel{padding:20px;gap:24px}.export-visual{width:130px;height:130px;border-radius:25px}.export-copy h3{font-size:23px}}

/* Panel principal v6: dirección visual inspirada en la referencia del usuario */
body{background:#f4f6fa}
.app-shell{grid-template-columns:226px minmax(0,1fr)}
.sidebar{padding:20px 13px 16px;background:linear-gradient(180deg,#071b38 0%,#07172f 100%);box-shadow:4px 0 18px rgba(4,22,48,.12)}
.logo{padding:3px 10px 27px;gap:10px}.logo-mark{background:transparent;box-shadow:none;border-radius:0;width:44px;height:44px}.logo-mark:after{display:none}.logo-mark img{width:100%;height:100%;display:block;object-fit:contain}.logo b{font-size:17px;letter-spacing:.04em}.logo small{color:#788aa5;font-size:8px;letter-spacing:.16em}
.nav-item{padding:11px 12px;color:#9aabc2}.nav-item.active{background:linear-gradient(105deg,#2858ee,#6945f2);box-shadow:0 8px 22px rgba(45,75,225,.28)}.nav-item.active span{color:#fff}.nav-item i{background:#e94552;color:#fff;border-radius:999px}
.nav-divider{height:1px;background:rgba(255,255,255,.08);margin:18px 9px}.sidebar-bottom .user-row{border-top:1px solid rgba(255,255,255,.08);padding-top:14px}
.main{max-width:none;padding:0 26px 48px}.topbar{min-height:78px;background:#fff;border-bottom:1px solid #e6ebf2;margin:0 -26px 18px;padding:0 26px}.top-title h1{font-size:20px}.top-title .eyebrow{color:#8a96a7}.top-actions{gap:9px}.search{height:40px;min-width:290px;background:#f7f9fc}.network-pill{height:40px;background:#f6f8fb}.notification-button{width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#52647a;display:grid;place-items:center;cursor:pointer;position:relative;font-size:18px}.notification-button i{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;border-radius:999px;background:#e74654;color:#fff;font-size:8px;font-style:normal;display:grid;place-items:center;font-weight:900}.top-user-menu{position:relative}.top-user{display:flex;align-items:center;gap:8px;padding:5px 7px;border:0;border-radius:12px;background:transparent;color:var(--ink);text-align:left;cursor:pointer;transition:background .16s,box-shadow .16s}.top-user:hover,.top-user[aria-expanded="true"]{background:#f2f6f9}.top-user:focus-visible{outline:2px solid #4d6bf2;outline-offset:2px}.top-user b,.top-user small{display:block}.top-user b{max-width:125px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-user small{font-size:8px;color:var(--muted);margin-top:2px}.profile-chevron{color:#8190a2;font-size:14px;line-height:1;transition:transform .16s}.top-user[aria-expanded="true"] .profile-chevron{transform:rotate(180deg)}.profile-dropdown{position:absolute;right:0;top:calc(100% + 10px);z-index:70;width:270px;padding:11px;background:#fff;border:1px solid #dfe6ee;border-radius:16px;box-shadow:0 22px 55px rgba(16,36,62,.18);opacity:0;visibility:hidden;transform:translateY(-7px) scale(.98);transform-origin:top right;transition:opacity .16s,visibility .16s,transform .16s}.top-user-menu.open .profile-dropdown{opacity:1;visibility:visible;transform:none}.profile-dropdown-head{display:flex;align-items:center;gap:10px;padding:8px 8px 12px}.profile-dropdown-head>div:last-child{min-width:0}.profile-dropdown-head b,.profile-dropdown-head small,.profile-dropdown-head span{display:block}.profile-dropdown-head b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-dropdown-head small{font-size:8px;color:var(--brand);font-weight:850;margin-top:3px}.profile-dropdown-head span{font-size:8px;color:#8492a2;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-session-state{display:flex;align-items:center;gap:7px;margin:0 6px 8px;padding:8px 9px;border-radius:9px;background:#edf8f5;color:#187e68;font-size:8px;font-weight:850}.profile-session-state i{width:7px;height:7px;border-radius:50%;background:#21ad87;box-shadow:0 0 0 4px rgba(33,173,135,.1)}.profile-logout{width:100%;display:flex;align-items:center;gap:10px;padding:10px 11px;border:0;border-top:1px solid #edf1f4;background:transparent;border-radius:9px;color:#bb3c43;font-size:10px;font-weight:850;text-align:left;cursor:pointer;transition:background .16s}.profile-logout:hover,.profile-logout:focus-visible{background:#fff1f1;outline:none}.profile-logout svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.kpi-grid{margin:0 0 15px;gap:12px}.kpi{min-height:91px;border-radius:14px;padding:15px;box-shadow:0 6px 18px rgba(17,42,76,.045)}.kpi-icon{width:39px;height:39px;border-radius:11px;font-size:18px}.kpi strong{font-size:25px}.kpi-trend,.kpi-link{top:auto;bottom:13px;background:transparent;padding:0}.kpi>div>small{font-size:9px}.kpi em{font-size:8px;color:#24a378;font-weight:800}
.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:14px;align-items:start}.dashboard-primary{display:grid;gap:14px}.dashboard-rail{display:grid;gap:14px}.dashboard-rail .panel{border-radius:15px;padding:16px}.dashboard-rail .panel h3{font-size:13px}
.hero{min-height:252px;border-radius:17px;padding:32px 31px;display:block;background-image:linear-gradient(90deg,rgba(7,26,68,.98) 0%,rgba(8,31,83,.93) 38%,rgba(9,27,69,.18) 66%,rgba(5,20,50,.08) 100%),url('/static/hero-connected-assets.png');background-size:cover;background-position:center;box-shadow:0 13px 32px rgba(21,49,118,.18)}.hero:before{display:none}.hero-copy{max-width:46%}.hero h2{font-size:34px;line-height:1.08;margin:12px 0 13px}.hero h2 span{color:inherit}.hero p{font-size:13px;line-height:1.55;margin-bottom:19px;color:#d4dcf1}.hero-actions{gap:8px}.hero-status{display:flex;align-items:center;gap:8px;margin-top:18px;color:#9fb2d6;font-size:9px;font-weight:750}.hero-status .pulse{width:7px;height:7px}
.recent-assets-panel{padding:0;border-radius:15px;overflow:hidden}.recent-assets-panel .panel-head{padding:16px 18px 11px;margin:0}.recent-table-head,.recent-asset-row{display:grid;grid-template-columns:minmax(230px,1.4fr) minmax(130px,1fr) 105px 115px;gap:12px;align-items:center}.recent-table-head{padding:9px 18px;background:#f7f9fc;color:#8895a6;font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.recent-asset-row{width:100%;border:0;border-top:1px solid #edf1f6;background:#fff;padding:10px 18px;text-align:left;cursor:pointer;transition:background .16s,box-shadow .16s;position:relative}.recent-asset-row:hover{background:#fafcff}.recent-asset-row.selected,.recent-asset-row.selected:hover{background:#f1f4ff;box-shadow:inset 4px 0 0 #4f55eb}.recent-asset-row:focus-visible{outline:2px solid #6974f2;outline-offset:-3px}.recent-asset-main{display:flex;align-items:center;gap:10px;min-width:0}.recent-asset-main b,.recent-asset-main small,.recent-client b,.recent-client small,.cell-date{display:block}.recent-asset-main b,.recent-client b{font-size:10px}.recent-asset-main small,.recent-client small,.cell-date{font-size:8px;color:var(--muted);margin-top:3px}.recent-asset-main>div:last-child,.recent-client{min-width:0}.recent-asset-main small,.recent-client b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.asset-photo{width:43px;height:43px;flex:none;border-radius:9px;overflow:hidden;background:#eaf0f7;border:1px solid #dfe7ef}.asset-photo img{width:100%;height:100%;display:block;object-fit:cover}.asset-photo.climate img{object-position:63% 8%}.asset-photo.vehicle img{object-position:91% 72%}.asset-photo.industrial img{object-position:52% 69%}.asset-photo.generic img{object-position:70% 50%}.asset-photo.small{width:34px;height:34px}.asset-photo.tiny{width:40px;height:40px}.asset-photo.table-photo{width:38px;height:38px}
.dashboard-qr-card{text-align:center}.dashboard-qr-card .panel-head{text-align:left}.panel-hint{margin:5px 0 0;color:#8290a1;font-size:8px;line-height:1.35}.dashboard-qr-image{display:block;width:150px;height:150px;margin:4px auto 7px;padding:7px;border:1px solid #e2e8f1;border-radius:12px;background:#fff}.dashboard-qr-code{display:block;font-size:9px;font-weight:950;letter-spacing:.1em;color:#52647a;margin-bottom:10px}.dashboard-qr-asset{display:flex;gap:9px;align-items:center;text-align:left;padding:10px 0;border-top:1px solid #edf1f5}.dashboard-qr-asset>div:last-child{min-width:0}.dashboard-qr-asset b,.dashboard-qr-asset small{display:block}.dashboard-qr-asset b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-qr-asset small{font-size:8px;color:var(--muted);line-height:1.4;margin-top:3px}.mobile-url-box{text-align:left;background:#f2f5fb;border:1px solid #e2e8f2;border-radius:10px;padding:9px;margin:5px 0 10px}.mobile-url-box span,.mobile-url-box b{display:block}.mobile-url-box span{font-size:7px;font-weight:950;color:#65758b;letter-spacing:.09em}.mobile-url-box b{font-size:8px;color:#2147b9;margin-top:4px;word-break:break-all}.mobile-help{font-size:8px;color:#7f8c9d;line-height:1.45;margin:9px 0 0;text-align:left}.compact-alerts .list-item{padding:9px 0}.compact-alerts .list-main b{font-size:9px}.compact-alerts .days-badge{font-size:7px;padding:5px}
.asset-cell .asset-photo{margin-right:1px}.table-asset-icon{display:none}.clients-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:center}.client-avatar{width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#e2e9ff,#d9f3f0);color:#3158d8;display:grid;place-items:center;font-weight:950}.client-main h3{font-size:14px;margin:5px 0}.client-main p{font-size:9px;color:var(--muted);line-height:1.55;margin:0}.client-count{text-align:center}.client-count strong,.client-count span{display:block}.client-count strong{font-size:22px;color:#3158d8}.client-count span{font-size:8px;color:var(--muted)}.client-card .row-btn{grid-column:2/4;justify-self:start}

@media(max-width:1240px){.top-user-copy,.profile-chevron{display:none}.top-user{padding:4px}.dashboard-layout{grid-template-columns:minmax(0,1fr) 265px}.hero-copy{max-width:54%}.recent-table-head,.recent-asset-row{grid-template-columns:minmax(210px,1.3fr) minmax(110px,.8fr) 95px 105px}.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.profile-action{width:100%;display:flex;align-items:center;gap:10px;padding:10px 11px;border:0;border-top:1px solid #edf1f4;background:transparent;border-radius:9px;color:#173a58;font-size:10px;font-weight:850;text-align:left;cursor:pointer;transition:background .16s,color .16s}.profile-action:hover,.profile-action:focus-visible{background:#eef7f7;color:var(--brand);outline:none}.profile-action svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-modal{width:min(520px,100%)}.password-form-grid{display:grid;gap:12px;padding-top:17px}.password-form-grid label{font-size:9px;font-weight:850;color:#5b6b7f}.password-form-grid input{display:block;width:100%;margin-top:6px;border:1px solid #dce4ec;border-radius:10px;padding:11px 12px;outline:none;background:#fff;color:var(--ink);font-size:11px}.password-form-grid input:focus{border-color:#77b9be;box-shadow:0 0 0 3px rgba(13,127,136,.08)}.password-security-note{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px;border-radius:12px;background:#edf8f5;color:#187e68}.password-security-note>span{width:29px;height:29px;border-radius:9px;background:#d6eee8;display:grid;place-items:center;font-weight:950;flex:none}.password-security-note b,.password-security-note small{display:block}.password-security-note b{font-size:10px}.password-security-note small{font-size:8px;line-height:1.45;margin-top:3px;color:#5f7e77}
.agenda-head-actions{display:flex;align-items:center;gap:9px}.agenda-note{display:block;margin-top:7px;padding:6px 8px;border-radius:8px;background:#f3f7f9;color:#52687b;font-size:8px;line-height:1.45}.assisted-send-note{display:flex;align-items:flex-start;gap:9px;margin-top:11px;padding:10px 12px;border-radius:12px;background:#fff8e6;color:#725116}.assisted-send-note>span{width:22px;height:22px;border-radius:7px;background:#f3d889;display:grid;place-items:center;font-size:10px;font-weight:950;flex:none}.assisted-send-note p{margin:0;font-size:8px;line-height:1.5}.assisted-send-note b{display:block;font-size:9px;margin-bottom:2px}#sendReminderBtn:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:980px){.dashboard-layout{grid-template-columns:1fr}.dashboard-rail{grid-template-columns:1fr 1fr}.hero-copy{max-width:52%}.recent-table-head,.recent-asset-row{grid-template-columns:minmax(220px,1.3fr) minmax(120px,1fr) 100px 110px}}
@media(max-width:780px){.app-shell{grid-template-columns:1fr}.sidebar{width:226px;left:-238px}.main{padding:0 14px 38px}.topbar{margin:0 -14px 14px;padding:0 14px}.top-title .eyebrow{display:none}.network-pill{display:flex}.top-actions .network-pill{min-width:120px}.hero{min-height:310px;background-position:65% center}.hero-copy{max-width:68%}.dashboard-rail{grid-template-columns:1fr}.clients-grid{grid-template-columns:1fr}.recent-table-head{display:none}.recent-asset-row{grid-template-columns:minmax(0,1fr) auto}.recent-asset-row .recent-client{display:none}.recent-asset-row>div:nth-child(3),.recent-asset-row>div:nth-child(4){display:none}}
@media(max-width:540px){.top-title{display:none}.top-actions{width:100%;justify-content:flex-end}.network-pill{margin-right:auto}.hero{min-height:360px;padding:25px 21px;background-image:linear-gradient(180deg,rgba(7,26,68,.96) 0%,rgba(8,31,83,.88) 48%,rgba(7,24,58,.22) 100%),url('/static/hero-connected-assets.png');background-position:70% center}.hero-copy{max-width:100%}.hero h2{font-size:30px;max-width:280px}.hero p{max-width:265px}.hero-status{margin-top:13px}.kpi-grid{grid-template-columns:1fr 1fr}.kpi{min-height:102px;align-items:flex-start}.kpi strong{font-size:22px}.kpi-icon{width:34px;height:34px}.notification-button{display:none}.top-actions>.btn{font-size:0;width:40px;padding:0}.top-actions>.btn span{display:block;font-size:18px}.clients-grid{grid-template-columns:1fr}}
.dashboard-qr-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.dashboard-qr-actions .btn{padding:9px 8px;font-size:9px}

/* Acceso seguro, permisos y operación técnica v9 */
.auth-pending{visibility:hidden}.role-hidden{display:none!important}.auth-screen{position:fixed;inset:0;z-index:200;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(420px,.95fr);background:#f5f7fb}.auth-screen.hidden{display:none}.auth-visual{padding:72px clamp(42px,7vw,110px);background:radial-gradient(circle at 70% 20%,rgba(79,85,235,.36),transparent 35%),linear-gradient(145deg,#071b38 0%,#092656 65%,#12398f 100%);color:#fff;display:flex;flex-direction:column;justify-content:center}.auth-visual>img{width:64px;height:64px;object-fit:contain;margin-bottom:18px}.auth-visual>span{font-size:10px;font-weight:900;letter-spacing:.18em;color:#72e5dc}.auth-visual h1{font-size:46px;line-height:1.04;letter-spacing:-.045em;max-width:560px;margin:19px 0}.auth-visual>p{font-size:15px;line-height:1.65;color:#b8c8e3;max-width:520px;margin:0 0 30px}.auth-feature{display:flex;align-items:center;gap:12px;margin-top:14px}.auth-feature i{width:31px;height:31px;border-radius:10px;background:rgba(60,218,196,.14);color:#56e0cb;display:grid;place-items:center;font-style:normal;font-weight:900}.auth-feature b,.auth-feature small{display:block}.auth-feature b{font-size:11px}.auth-feature small{font-size:9px;color:#9db1d1;margin-top:4px}.auth-panel{display:grid;place-items:center;padding:35px}.auth-form{width:min(410px,100%);background:#fff;border:1px solid #e2e7ef;border-radius:24px;padding:34px;box-shadow:0 24px 70px rgba(16,36,62,.1)}.auth-form h2{font-size:28px;letter-spacing:-.035em;margin:8px 0}.auth-form>p{color:var(--muted);font-size:11px;line-height:1.6;margin:0 0 22px}.auth-form label{display:block;font-size:9px;font-weight:850;color:#53657a;margin-top:12px}.auth-form input{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #d9e2eb;border-radius:11px;outline:none}.auth-form input:focus{border-color:#77b9be;box-shadow:0 0 0 3px rgba(13,127,136,.08)}.auth-form .btn{margin-top:19px}.auth-note{display:block;text-align:center;color:#8996a6;font-size:8px;margin-top:13px;line-height:1.5}.auth-loading{display:flex;align-items:center;gap:10px;color:#50637a}.auth-loading span{width:18px;height:18px;border:2px solid #d7e1ea;border-top-color:var(--brand);border-radius:50%;animation:authspin .8s linear infinite}@keyframes authspin{to{transform:rotate(360deg)}}
.user-session{width:100%;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer}.user-session>span{font-size:8px;color:#8fa3bd}.user-session:hover>span{color:#fff}
.workorder-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.workorder-summary article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;display:grid;grid-template-columns:1fr auto;align-items:center}.workorder-summary span,.workorder-summary small{color:var(--muted);font-size:9px}.workorder-summary b{grid-row:1/3;grid-column:2;font-size:26px;color:#3158d8}.workorder-summary small{margin-top:4px}.workorders-board{display:grid;gap:11px}.workorder-card{display:grid;grid-template-columns:145px minmax(0,1fr) 235px;gap:20px;align-items:center}.workorder-code b,.workorder-code small{display:block}.workorder-code b{font-size:13px;margin-top:10px}.workorder-code small{font-size:9px;color:var(--muted);margin-top:4px}.workorder-main h3{font-size:16px;margin:5px 0}.workorder-main>p{font-size:9px;color:var(--muted);margin:0}.workorder-detail{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.workorder-detail span{font-size:9px;color:#617286;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workorder-detail b{display:block;font-size:8px;text-transform:uppercase;color:#98a3b1;margin-bottom:3px}.workorder-side{text-align:right}.workorder-side>b{display:block;font-size:15px}.workorder-side>small{display:block;color:var(--muted);font-size:8px;margin:5px 0 10px}.workorder-side>div{display:flex;gap:6px;justify-content:flex-end}.row-btn.strong{background:#e8f4f3;color:var(--brand);padding:7px 9px;border-radius:8px}.checklist-field{border:1px solid #dce4ec;border-radius:12px;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.checklist-field legend{font-size:9px;font-weight:850;color:#5b6b7f;padding:0 5px}.checklist-field label{display:flex;align-items:center;gap:7px;margin:0;font-size:9px}.checklist-field input,.approval-check input{width:auto;margin:0}.approval-check{display:flex!important;align-items:center;gap:8px;padding:10px;border-radius:10px;background:#f2f8f7}.detail-side-stack{display:grid;gap:16px}.asset-order-row{width:100%;border:0;border-top:1px solid #edf1f5;background:#fff;padding:12px 0;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;text-align:left}.asset-order-row:first-of-type{border-top:0}.asset-order-row div b,.asset-order-row div small{display:block}.asset-order-row div b{font-size:9px}.asset-order-row div small{font-size:8px;color:var(--muted);margin-top:3px}.asset-order-row i{font-style:normal;color:var(--brand)}
.privacy-panel{margin-top:16px}.privacy-panel .panel-head p{font-size:9px;color:var(--muted);margin:5px 0 0}.privacy-state{font-size:8px;color:var(--green);background:#e5f5ef;border-radius:999px;padding:7px 9px}.privacy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.privacy-toggle{border:1px solid #e3e9ef;border-radius:13px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.privacy-toggle span b,.privacy-toggle span small{display:block}.privacy-toggle span b{font-size:10px}.privacy-toggle span small{font-size:8px;color:var(--muted);margin-top:3px}.privacy-toggle input{position:absolute;opacity:0}.privacy-toggle>i{width:34px;height:19px;border-radius:999px;background:#cfd7e1;position:relative;flex:none;transition:.16s}.privacy-toggle>i:after{content:"";position:absolute;width:15px;height:15px;border-radius:50%;background:#fff;top:2px;left:2px;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:.16s}.privacy-toggle input:checked+i{background:#159b83}.privacy-toggle input:checked+i:after{left:17px}
.role-explainer{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.role-explainer>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px}.role-explainer b,.role-explainer small{display:block}.role-explainer b{font-size:10px;color:#3158d8}.role-explainer small{font-size:8px;color:var(--muted);margin-top:4px}.role-badge{display:inline-flex;border-radius:999px;padding:6px 8px;background:#eef2f7;color:#536478;font-size:8px;font-weight:900}.role-badge.administrador{background:#e8edff;color:#4052c9}.role-badge.tecnico{background:#e4f6f2;color:#087760}.role-badge.cliente{background:#fff1d2;color:#8b6100}
@media(max-width:980px){.auth-screen{grid-template-columns:1fr}.auth-visual{display:none}.workorder-card{grid-template-columns:115px minmax(0,1fr)}.workorder-side{grid-column:2;text-align:left}.workorder-side>div{justify-content:flex-start}.privacy-grid{grid-template-columns:1fr}}
@media(max-width:620px){.auth-panel{padding:18px}.auth-form{padding:25px}.workorder-summary{grid-template-columns:1fr}.workorder-card{grid-template-columns:1fr}.workorder-side{grid-column:1}.role-explainer{grid-template-columns:1fr}.checklist-field{grid-template-columns:1fr}}

/* Cuentas de acceso desde Clientes v10 */
.client-card.has-access{border-top:3px solid #1caa8c}.client-card .access-count{display:block;margin-top:6px;padding:4px 6px;border-radius:999px;background:#fff0dd;color:#a26300;font-size:7px;font-weight:900}.client-card .access-count.ready{background:#e2f5ef;color:#08775a}.client-access-list,.client-no-access{grid-column:1/4;border-top:1px solid #edf1f5;padding-top:11px}.client-access-list{display:grid;gap:7px}.client-access-list>div{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;background:#f8fafc;border-radius:10px;padding:8px}.client-access-list p{margin:0;min-width:0}.client-access-list p b,.client-access-list p small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-access-list p b{font-size:9px}.client-access-list p small{font-size:8px;color:var(--muted);margin-top:2px}.client-access-list em{font-size:7px;font-style:normal;color:#7b8796;font-weight:850}.client-user-dot{width:7px;height:7px;border-radius:50%;background:#adb8c4}.client-user-dot.active{background:#20b78e;box-shadow:0 0 0 3px rgba(32,183,142,.11)}.more-users{font-size:8px;color:var(--muted);padding-left:15px}.client-no-access{display:flex;align-items:center;gap:9px;background:#fff9ef;border:1px solid #f5e8cb;border-radius:11px;padding:10px}.client-no-access>span{width:28px;height:28px;border-radius:9px;background:#ffe9bd;color:#9e6900;display:grid;place-items:center;font-weight:950}.client-no-access b,.client-no-access small{display:block}.client-no-access b{font-size:9px}.client-no-access small{font-size:8px;color:#826e4c;margin-top:3px}.client-card-actions{grid-column:1/4;display:flex;align-items:center;justify-content:flex-end;gap:7px}.client-card-actions .row-btn{margin-right:auto}.client-card-actions .btn{padding:8px 10px;font-size:8px}.client-scope-notice{display:flex;align-items:center;gap:10px;background:#edf8f6;border:1px solid #d3ece7;border-radius:12px;padding:11px}.client-scope-notice>span{width:30px;height:30px;border-radius:9px;background:#d8efea;color:#087867;display:grid;place-items:center}.client-scope-notice b,.client-scope-notice small{display:block}.client-scope-notice b{font-size:9px}.client-scope-notice small{font-size:8px;color:#65778a;margin-top:3px;line-height:1.4}
@media(max-width:540px){.client-card-actions{align-items:stretch;flex-direction:column}.client-card-actions .row-btn{margin-right:0}.client-card-actions .btn{width:100%}}
#companySelect:disabled{background:#edf8f6;color:#176d68;border-color:#cfe8e4;font-weight:800;cursor:not-allowed}
.table-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.table-row-actions .row-btn.edit{background:#eef4f7;color:#52687a;border-radius:7px;padding:6px 8px}
.section-help{margin:-7px 0 13px;color:var(--muted);font-size:9px;line-height:1.5}.asset-contact-strip{display:flex;align-items:center;gap:13px;margin-top:10px;padding:12px 14px;border:1px solid #dcebea;border-radius:13px;background:#eff8f7}.asset-contact-strip>span{font-size:8px;font-weight:950;color:var(--brand);background:#d9efec;border-radius:8px;padding:7px 9px;white-space:nowrap}.asset-contact-strip b,.asset-contact-strip small{display:block}.asset-contact-strip b{font-size:11px}.asset-contact-strip small{color:#728393;font-size:8px;margin-top:4px}.reminder-recipient{display:flex;align-items:center;gap:11px;margin:10px 0 2px;padding:11px 13px;border:1px solid #dcebea;border-radius:13px;background:#f0f8f7}.reminder-recipient>span{font-size:7px;font-weight:950;letter-spacing:.08em;color:var(--brand);background:#d8eeeb;border-radius:7px;padding:6px 8px}.reminder-recipient b,.reminder-recipient small{display:block}.reminder-recipient b{font-size:10px}.reminder-recipient small{font-size:8px;color:var(--muted);margin-top:3px}
@media(max-width:540px){.asset-contact-strip,.reminder-recipient{align-items:flex-start;flex-direction:column}}
.asset-view-controls{display:grid;justify-items:end;gap:10px}.asset-bulk-actions{display:flex;gap:7px}.asset-bulk-actions .btn{font-size:9px;padding:9px 12px;text-decoration:none}.inventory-pill{display:block;width:max-content;margin-top:5px;padding:4px 7px;border-radius:999px;background:#e9efff;color:#3557c7;font-size:7px;font-weight:950}.inventory-inline{display:inline-block;padding:3px 6px;border-radius:999px;background:#e9efff;color:#3557c7;font-size:8px;font-weight:900}.table-row-actions .row-btn.assign{background:#315ce8;color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.import-modal{width:min(790px,100%)}.import-company-field{margin:16px 0 10px}.import-company-field label{display:block;font-size:9px;font-weight:850;color:#5b6b7f}.import-company-field select{display:block;width:100%;margin-top:6px;border:1px solid #dce4ec;border-radius:10px;padding:10px 11px;background:#fff;color:var(--ink);font-size:11px}.import-dropzone{width:100%;border:1.5px dashed #a9c6ca;border-radius:16px;background:#f4faf9;padding:18px;display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;text-align:left;cursor:pointer;color:var(--ink);transition:.16s}.import-dropzone:hover,.import-dropzone.dragging{border-color:var(--brand);background:#eaf6f5}.import-dropzone>span{width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,#168a8f,#0b6066);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:950}.import-dropzone b,.import-dropzone small{display:block}.import-dropzone b{font-size:11px}.import-dropzone small{color:var(--muted);font-size:8px;margin-top:4px}.import-dropzone i{font-size:8px;font-style:normal;font-weight:900;color:var(--brand);background:#fff;border:1px solid #d6e7e7;border-radius:9px;padding:8px 10px}.import-result{margin-top:13px}.import-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.import-summary>div{border:1px solid #e1e8ef;background:#f7f9fb;border-radius:11px;padding:10px;text-align:center}.import-summary span,.import-summary b{display:block}.import-summary span{font-size:7px;color:var(--muted);font-weight:850}.import-summary b{font-size:17px;margin-top:4px}.import-summary .success{background:#eaf7f2;border-color:#d2ece2;color:#08785b}.import-summary .warning{background:#fff7e7;border-color:#f3e3bb;color:#976306}.import-summary .danger{background:#fff0ed;border-color:#f3d2cc;color:#a43a31}.import-issues{margin-top:10px}.import-issue-head{display:flex;align-items:flex-end;justify-content:space-between;padding:0 2px 7px}.import-issue-head b{font-size:10px}.import-issue-head small{font-size:8px;color:var(--muted)}.import-issue-list{border:1px solid #e1e8ef;border-radius:11px;max-height:155px;overflow:auto}.import-issue-list>div{display:grid;grid-template-columns:60px 1fr;gap:8px;padding:8px 10px;border-top:1px solid #edf1f4}.import-issue-list>div:first-child{border-top:0}.import-issue-list span{font-size:8px;font-weight:900;color:var(--red)}.import-issue-list .duplicate span{color:var(--amber)}.import-issue-list p{margin:0;font-size:8px;color:#56697d}.import-issue-list>small{display:block;padding:8px 10px;color:var(--muted);font-size:8px}.import-clean{display:flex;align-items:center;gap:10px;background:#eaf7f2;border:1px solid #d2ece2;border-radius:11px;padding:11px}.import-clean>span{width:29px;height:29px;border-radius:9px;background:#cceade;color:#08785b;display:grid;place-items:center;font-weight:950}.import-clean b,.import-clean small{display:block}.import-clean b{font-size:10px;color:#08785b}.import-clean small{font-size:8px;color:#5b7d72;margin-top:3px}
@media(max-width:900px){.section-tools{align-items:flex-start}.asset-view-controls{justify-items:start}.import-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:540px){.asset-bulk-actions{width:100%;flex-direction:column}.asset-bulk-actions .btn{width:100%;text-align:center}.import-dropzone{grid-template-columns:42px 1fr}.import-dropzone i{display:none}.import-summary{grid-template-columns:repeat(2,1fr)}.import-issue-head{align-items:flex-start;flex-direction:column;gap:4px}}
