:root{--bg:#f5f7fb;--panel:#fff;--ink:#122033;--muted:#6d7888;--line:#e5eaf1;--navy:#101d32;--navy2:#182941;--accent:#18aeea;--accent2:#0c89c6;--success:#199b68;--warning:#c98216;--danger:#d84b5b;--shadow:0 12px 40px rgba(21,35,58,.07);--radius:18px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}body{font-size:14px}.app-shell{min-height:100vh;display:flex}.sidebar{width:272px;background:linear-gradient(180deg,#0f1d31 0%,#101a2a 100%);color:#d8e1ee;padding:26px 18px 18px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;padding:0 10px 28px}.brand strong{font-size:22px;letter-spacing:-.5px}.brand small{display:block;color:#8290a3;font-size:10px;margin-top:1px}.brand-mark{width:35px;height:35px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;align-items:end}.brand-mark i{display:block;background:linear-gradient(180deg,#2ac7ff,#0d8ec9);border-radius:4px}.brand-mark i:nth-child(1){height:62%}.brand-mark i:nth-child(2){height:100%}.brand-mark i:nth-child(3){height:78%}.brand-mark.small{width:25px;height:25px}.workspace-label{font-size:10px;color:#627188;letter-spacing:.12em;font-weight:700;padding:0 12px 10px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:11px;text-decoration:none;color:#9eabbc;font-weight:600;transition:.18s}.sidebar nav a svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}.sidebar nav a:hover{background:rgba(255,255,255,.04);color:#fff}.sidebar nav a.active{background:linear-gradient(90deg,rgba(24,174,234,.16),rgba(24,174,234,.06));color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.sidebar nav a em{font-style:normal;font-size:10px;background:#e55868;color:#fff;padding:2px 6px;border-radius:20px;margin-left:auto}.sidebar-bottom{margin-top:auto;display:grid;gap:13px}.security-pill{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035);border-radius:13px;padding:12px;display:flex;align-items:center;gap:10px}.security-pill svg{width:20px;height:20px;fill:none;stroke:#49c6f5;stroke-width:1.8}.security-pill strong,.user-card strong{display:block;color:#e8eff7;font-size:12px}.security-pill small,.user-card small{display:block;color:#77869a;font-size:10px;margin-top:2px}.user-card{display:flex;align-items:center;gap:9px;padding:8px}.user-card button{margin-left:auto;background:none;border:0;color:#7b899d}.avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#2bbcf2,#0f79b8);display:grid;place-items:center;color:#fff;font-size:11px;font-weight:800}.main{margin-left:272px;width:calc(100% - 272px);min-height:100vh}.topbar{height:72px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:20}.breadcrumbs{display:flex;gap:9px;align-items:center;color:#929cac;font-size:12px}.breadcrumbs b{font-weight:400;color:#ccd3dc}.breadcrumbs strong{color:#334055}.top-actions{display:flex;align-items:center;gap:8px}.top-icon{width:36px;height:36px;border:1px solid var(--line);background:#fff;border-radius:10px;color:#5b6878;position:relative}.top-icon i{position:absolute;width:6px;height:6px;border-radius:50%;background:#e65563;top:7px;right:7px}.role-switcher{display:flex;align-items:center;gap:8px;margin-left:7px;border-left:1px solid var(--line);padding-left:14px}.role-switcher span{font-size:10px;color:#8994a4;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.role-switcher select,.panel-head select,.toolbar select{border:1px solid var(--line);background:#fff;padding:9px 11px;border-radius:10px;color:#344154}.content{padding:34px;max-width:1580px;margin:0 auto}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:27px}.eyebrow,.panel-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#199ed8}.page-heading h1{font-size:30px;letter-spacing:-.8px;margin:5px 0 6px}.page-heading p{margin:0;color:var(--muted);font-size:13px}.btn{border:0;border-radius:10px;padding:10px 15px;font-weight:700;font-size:12px;cursor:pointer}.btn.primary{background:linear-gradient(180deg,#1ab8f5,#1097d0);color:#fff;box-shadow:0 8px 20px rgba(20,160,217,.2)}.btn.secondary{background:#fff;color:#263348;border:1px solid var(--line)}.btn.ghost{background:#f6f8fb;color:#536174}.btn.tiny{padding:7px 10px;background:#f1f5f8;color:#334054}.btn.full{width:100%}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.stats-grid.three{grid-template-columns:repeat(3,1fr)}.stat-card,.panel,.plan-card,.person-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.stat-card{padding:20px 21px}.stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#8490a0;margin-bottom:10px}.stat-row{display:flex;align-items:end;justify-content:space-between;gap:8px}.stat-value{font-size:26px;font-weight:800;letter-spacing:-.6px}.delta{font-size:11px;font-weight:700;background:#eef8f4;color:var(--success);padding:5px 7px;border-radius:7px}.delta.negative{background:#fff0f1;color:var(--danger)}.panel{padding:22px;margin-bottom:18px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.panel-head h2,.settings-grid h2{margin:4px 0 0;font-size:17px;letter-spacing:-.2px}.grid-2{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px}.chart-panel{min-height:335px}.chart-bars{height:210px;display:flex;align-items:end;gap:11px;padding:20px 4px 0;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 51px,#eef2f6 52px)}.chart-bars span{flex:1;background:linear-gradient(180deg,#48c7f6,#1199d1);border-radius:6px 6px 2px 2px;opacity:.92}.chart-legend{display:flex;justify-content:space-between;margin-top:14px;color:#8994a3;font-size:11px}.chart-legend strong{color:#243247}.health-list{display:grid;gap:6px}.health-list>div{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:11px 8px;border-bottom:1px solid #eff2f6}.health-list>div:last-child{border-bottom:0}.service-icon{width:34px;height:34px;border-radius:9px;background:#f0f8fc;color:#118fc5;display:grid;place-items:center;font-size:10px;font-weight:800}.health-list strong{display:block;font-size:12px}.health-list small{display:block;color:#8a95a5;font-size:10px;margin-top:3px}.health-ok{font-size:10px;color:var(--success);font-weight:800}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:5px 8px;font-size:10px;font-weight:800;white-space:nowrap}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-success{background:#edf8f4;color:#19885f}.badge-warning{background:#fff6e9;color:#b77312}.badge-danger{background:#fff0f2;color:#cb4151}.badge-info{background:#edf8fd;color:#118fc6}.badge-neutral{background:#f1f3f6;color:#677384}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:#8c97a6;font-weight:800;padding:10px 12px;border-bottom:1px solid var(--line)}td{padding:14px 12px;border-bottom:1px solid #eef1f5;color:#3c495a;font-size:12px}td strong{display:block;color:#243247}td small{display:block;color:#929cab;font-size:10px;margin-top:3px}tbody tr:last-child td{border-bottom:0}.text-link{font-size:11px;color:#118fc6;text-decoration:none;font-weight:700}.toolbar{display:flex;gap:10px;margin-bottom:16px}.search{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 11px;min-width:340px}.search input{border:0;outline:none;padding:10px;width:100%;font:inherit;color:#3a4658}.icon-btn{border:0;background:#f2f5f8;border-radius:8px;padding:6px 8px}.plan-card{padding:22px;position:relative;overflow:hidden}.plan-card.featured{border-color:#8dd8f4;box-shadow:0 14px 38px rgba(17,153,209,.12)}.plan-card.featured:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:#16aee9}.plan-head{display:flex;align-items:center;justify-content:space-between;color:#607084;font-size:10px;letter-spacing:.08em;font-weight:800}.plan-card h3{font-size:16px;margin:17px 0 8px}.price{font-size:27px;font-weight:800;letter-spacing:-.6px}.price small{font-size:11px;color:#8d98a8}.plan-card p{color:#7a8697;font-size:11px;line-height:1.6;margin:10px 0 20px}.monitor-grid{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:center}.big-gauge{text-align:center}.gauge-ring{width:180px;height:180px;border-radius:50%;display:grid;place-items:center;margin:10px auto 15px;background:conic-gradient(#19aee8 0 99.982%,#e8edf3 99.982%);position:relative}.gauge-ring:after{content:"";position:absolute;inset:13px;border-radius:50%;background:#fff}.gauge-ring span{position:relative;z-index:1;font-size:29px;font-weight:800}.gauge-ring small{font-size:13px}.big-gauge>strong{display:block}.big-gauge>small{color:#8b96a5}.incident-feed h3{font-size:14px;margin:0 0 10px}.incident-feed>div{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-bottom:1px solid #edf1f5}.incident-feed p{margin:0}.incident-feed strong,.incident-feed small{display:block}.incident-feed small{color:#8c97a6;margin-top:4px;font-size:10px}.event-dot{width:9px;height:9px;border-radius:50%;margin-top:5px}.event-dot.ok{background:#23aa79}.event-dot.info{background:#1aa9e2}.event-dot.warn{background:#d79427}.security-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.security-strip>div{background:#132139;color:#fff;border-radius:14px;padding:15px;display:flex;align-items:center;gap:11px}.security-strip svg{width:22px;height:22px;fill:none;stroke:#32bff4;stroke-width:1.7}.security-strip strong,.security-strip small{display:block}.security-strip small{color:#8796a9;font-size:10px;margin-top:3px}.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid #edf1f5}.setting-row strong,.setting-row small{display:block}.setting-row small{font-size:10px;color:#8994a3;margin-top:4px}.switch{position:relative;width:42px;height:24px}.switch input{opacity:0}.switch span{position:absolute;inset:0;background:#cfd6df;border-radius:30px}.switch span:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+span{background:#16a9e2}.switch input:checked+span:after{transform:translateX(18px)}.crypto-card{padding:14px;border:1px solid #eaf0f5;border-radius:12px;margin-top:10px}.crypto-card span{font-weight:800;font-size:12px;color:#149bd2}.crypto-card p{margin:5px 0 0;color:#7c8998;font-size:10px}.ticket-list{display:grid}.ticket-list>div{display:grid;grid-template-columns:40px 1fr auto;gap:11px;align-items:center;padding:13px 0;border-bottom:1px solid #edf1f5}.ticket-list>div:last-child{border-bottom:0}.ticket-list strong,.ticket-list small{display:block}.ticket-list small{color:#8b96a5;font-size:10px;margin-top:4px}.priority{width:34px;height:28px;border-radius:8px;display:grid;place-items:center;font-size:9px;font-weight:900}.priority.p1{background:#fff0f2;color:#cb4051}.priority.p2{background:#fff6e8;color:#be7915}.priority.p3{background:#edf8f4;color:#19885f}.capacity{display:grid;gap:17px}.capacity>div{display:grid;grid-template-columns:120px 1fr 40px;align-items:center;gap:10px}.capacity span,.capacity strong{font-size:11px}.capacity strong{text-align:right}progress{width:100%;height:7px;border:0;border-radius:20px;overflow:hidden;background:#edf1f5}progress::-webkit-progress-bar{background:#edf1f5}progress::-webkit-progress-value{background:#20a9df;border-radius:20px}.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:start}.kanban>article{background:#edf1f5;border-radius:15px;padding:12px;min-height:420px}.kanban header{display:flex;justify-content:space-between;align-items:center;padding:3px 4px 12px;font-size:11px;font-weight:800}.kanban header strong{background:#fff;padding:4px 7px;border-radius:7px;color:#687487}.ticket-card{background:#fff;border:1px solid #e2e7ed;border-radius:12px;padding:13px;margin-bottom:10px;box-shadow:0 7px 20px rgba(29,42,61,.05)}.ticket-card h3{font-size:12px;margin:10px 0 4px}.ticket-card p{font-size:10px;color:#7f8a99;line-height:1.5}.ticket-card>div{display:flex;justify-content:space-between;color:#8390a0;font-size:9px}.ticket-card b{color:#38465a}.people-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.person-card{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:18px}.person-card .avatar{width:44px;height:44px;border-radius:13px}.person-card h3{font-size:13px;margin:0}.person-card p{margin:5px 0 0;color:#8591a0;font-size:10px}.util{grid-column:1/-1;display:grid;grid-template-columns:70px 1fr 35px;gap:10px;align-items:center;font-size:10px;color:#788596}.empty-state{text-align:center;padding:60px 20px}.empty-icon{width:54px;height:54px;border-radius:15px;background:#edf8fd;color:#139bcf;display:grid;place-items:center;margin:0 auto 14px}.empty-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8}.empty-state p{color:#7d8897;max-width:540px;margin:8px auto}.technician-main{margin:0;width:100%;background:linear-gradient(180deg,#eff5f8,#f7f9fb)}.technician-main .content{padding:20px;max-width:540px}.mobile-shell{min-height:calc(100vh - 40px);background:#fff;border:1px solid #e0e7ee;border-radius:28px;box-shadow:0 26px 80px rgba(19,34,55,.12);overflow:hidden}.mobile-top{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1f5}.mobile-top>div{display:flex;align-items:center;gap:9px}.small-avatar{width:34px;height:34px;border-radius:50%}.mobile-hero{padding:28px 22px 20px;background:linear-gradient(135deg,#10213a,#173555);color:#fff;display:flex;justify-content:space-between;align-items:center}.mobile-hero small{color:#76ccec;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}.mobile-hero h1{font-size:25px;margin:6px 0}.mobile-hero p{margin:0;color:#b2c0d2;font-size:11px}.route-count{width:58px;height:58px;border-radius:16px;background:#19ade6;display:grid;place-items:center;font-size:25px;font-weight:800}.mobile-stat{display:grid;grid-template-columns:repeat(3,1fr);padding:15px 18px;border-bottom:1px solid #edf1f5}.mobile-stat span{text-align:center;border-right:1px solid #edf1f5}.mobile-stat span:last-child{border-right:0}.mobile-stat strong,.mobile-stat small{display:block}.mobile-stat small{color:#8c97a5;font-size:9px;margin-top:3px}.mobile-section-head{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 10px}.mobile-section-head h2{font-size:14px;margin:0}.job-card{margin:0 18px;border:1px solid #dfe7ee;border-radius:17px;overflow:hidden;box-shadow:0 10px 28px rgba(29,45,66,.08)}.job-map{height:110px;background:linear-gradient(135deg,#e6eef3,#d8e4ea);position:relative;display:flex;justify-content:space-between;align-items:center;padding:0 55px;color:#0f88be;font-weight:900}.route-line{position:absolute;left:80px;right:80px;top:54px;border-top:3px dashed #38b6e5}.job-map span{width:33px;height:33px;background:#fff;border-radius:50%;display:grid;place-items:center;z-index:1;box-shadow:0 5px 15px rgba(31,49,70,.15)}.job-body{padding:16px}.job-body h3{font-size:15px;margin:0 0 4px}.job-body p{font-size:10px;color:#8190a0;margin:0 0 13px}.issue{background:#f7f9fb;border-radius:10px;padding:11px}.issue strong,.issue small{display:block}.issue strong{font-size:11px}.issue small{font-size:9px;color:#8b97a6;margin-top:3px}.job-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.timeline{padding:0 20px 25px}.timeline>div{display:grid;grid-template-columns:44px 16px 1fr;align-items:start;gap:8px;min-height:58px}.timeline time{font-size:10px;color:#7f8b9a;padding-top:2px}.timeline span{width:9px;height:9px;border:2px solid #b9c5d0;border-radius:50%;position:relative}.timeline span:after{content:"";position:absolute;top:8px;left:2px;height:43px;border-left:1px solid #d9e0e7}.timeline .active span{background:#17ace5;border-color:#17ace5}.timeline strong,.timeline small{display:block}.timeline strong{font-size:11px}.timeline small{font-size:9px;color:#8a96a5;margin-top:4px}.route-map{height:360px;margin:18px;background:linear-gradient(160deg,#e6eef3,#d4e1e8);border-radius:18px;position:relative;overflow:hidden}.map-road{position:absolute;background:#f9fbfc;border:10px solid #f9fbfc;box-shadow:0 0 0 1px #cbd7df;border-radius:50%}.r1{width:430px;height:70px;transform:rotate(32deg);left:-50px;top:95px}.r2{width:340px;height:60px;transform:rotate(-28deg);left:90px;top:210px}.pin{position:absolute;width:34px;height:34px;border-radius:50% 50% 50% 0;background:#139fd7;color:#fff;transform:rotate(-45deg);display:grid;place-items:center;font-weight:800;z-index:2}.pin::after{content:attr(class);display:none}.pin.one{left:80px;top:85px}.pin.two{left:245px;top:175px}.pin.three{left:155px;top:255px}.pin{font-size:0}.pin:before{transform:rotate(45deg);font-size:11px}.pin.one:before{content:"1"}.pin.two:before{content:"2"}.pin.three:before{content:"3"}.map-label{position:absolute;background:#fff;padding:6px 8px;border-radius:7px;font-size:9px;font-weight:700;box-shadow:0 4px 12px rgba(24,44,64,.12)}.l1{left:28px;top:50px}.l2{left:270px;top:145px}.l3{left:92px;top:296px}.mobile-shell>.btn.full{width:calc(100% - 36px);margin:0 18px 20px}
@media(max-width:1100px){.sidebar{width:230px}.main{margin-left:230px;width:calc(100% - 230px)}.stats-grid{grid-template-columns:repeat(2,1fr)}.grid-2,.settings-grid{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{display:none}.main{margin:0;width:100%}.topbar{padding:0 16px}.role-switcher span{display:none}.content{padding:20px}.page-heading{align-items:flex-start;flex-direction:column}.stats-grid,.stats-grid.three,.grid-3,.people-grid,.security-strip,.kanban{grid-template-columns:1fr}.toolbar{flex-direction:column}.search{min-width:0}.top-actions>.top-icon{display:none}}

/* Etapa 17.4 — server/subdirectory layout hardening */
.sidebar{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
.sidebar .nav{padding-bottom:24px}
.topbar{gap:16px}
.top-actions{min-width:0}
.top-actions>span{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.flash{padding:13px 15px;border-radius:12px;background:#eef8fd;color:#185f80;margin-bottom:18px}
.warning-box{padding:14px 16px;border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:12px;margin:14px 0}
.capacity-bar{height:8px;background:#e7edf4;border-radius:999px;overflow:hidden}.capacity-bar span{display:block;height:100%;background:linear-gradient(90deg,#1ab8f5,#1097d0)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.field{min-width:0}.field label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:#718096;margin-bottom:7px}
.field input,.field select,.field textarea,select,input{max-width:100%}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;color:var(--ink)}
.metric-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.metric-row>div{padding:12px;background:#f7f9fc;border-radius:11px}.metric-row small{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}
.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.photo-card{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff}.photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photo-meta{padding:10px 12px;font-size:11px;color:var(--muted)}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr 1fr}.content{padding:24px}}
@media(max-width:760px){.sidebar{position:relative;width:100%;height:auto;max-height:none}.app-shell{display:block}.main{margin-left:0;width:100%}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:0 18px}.content{padding:18px}.page-heading{align-items:flex-start;flex-direction:column}.stats-grid,.grid-3,.form-grid,.metric-row{grid-template-columns:1fr}.top-actions>span{display:none}}

/* Stage 18 — Platform admin & RBAC */
.permission-matrix th:not(:first-child),.permission-matrix td:not(:first-child){text-align:center}
.permission-matrix input[type=checkbox],.check-row input[type=checkbox]{width:17px;height:17px;accent-color:#149ed8}
.scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.scope-box{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fbfcfe;max-height:310px;overflow:auto}
.scope-box h3{margin:0 0 12px;font-size:13px}.check-row{display:flex;gap:8px;align-items:center;padding:7px 3px;color:#465568;font-size:12px}
.printer-scope-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:12px;max-height:420px;overflow:auto;border:1px solid var(--line);padding:12px;border-radius:12px}
.superadmin-banner{background:#17263b;color:#e8f3fb;padding:9px 34px;font-size:11px;display:flex;justify-content:space-between;align-items:center}
.superadmin-banner strong{color:#55c8f2}.superadmin-banner a{color:#fff;text-decoration:none;font-weight:700}
@media(max-width:900px){.scope-grid,.printer-scope-list{grid-template-columns:1fr}}


/* =========================================================
   Stage 19 — Premium UI / Microinteractions / Onboarding
   ========================================================= */
:root{
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-spring:cubic-bezier(.2,.9,.2,1.15);
  --focus-ring:0 0 0 4px rgba(24,174,234,.13);
}
html{scroll-behavior:smooth}
body{overflow-x:hidden}
body.ui-loading .content{opacity:0;transform:translateY(6px)}
.content{opacity:1;transform:none;transition:opacity .34s var(--ease-out),transform .45s var(--ease-out)}
.page-progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:9999;pointer-events:none}
.page-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#1ac1f5,#168ed5);box-shadow:0 0 16px rgba(24,174,234,.5);transition:width .18s ease,opacity .28s ease}
.page-transition{position:fixed;inset:0;background:rgba(245,247,251,.56);backdrop-filter:blur(2px);opacity:0;pointer-events:none;z-index:900;transition:opacity .16s ease}
body.is-navigating .page-transition{opacity:1}
.sidebar{box-shadow:12px 0 40px rgba(4,17,35,.08)}
.sidebar nav a{position:relative;overflow:hidden;transition:background .22s var(--ease-out),color .22s ease,transform .22s var(--ease-out)}
.sidebar nav a:hover{transform:translateX(3px)}
.sidebar nav a.active:after{content:"";position:absolute;right:12px;width:6px;height:6px;border-radius:50%;background:#40c7f4;box-shadow:0 0 0 5px rgba(64,199,244,.1)}
.brand-mark i{animation:brandBars 2.8s ease-in-out infinite}
.brand-mark i:nth-child(2){animation-delay:.14s}.brand-mark i:nth-child(3){animation-delay:.28s}
@keyframes brandBars{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.82)}}
.topbar{transition:box-shadow .2s ease,background .2s ease}
.topbar.scrolled{box-shadow:0 8px 30px rgba(20,35,55,.07);background:rgba(255,255,255,.96)}
.topbar-title{display:flex;align-items:center;gap:12px}.topbar-title>div{display:grid;gap:2px}.topbar-title small{font-size:9px;color:#96a1af;text-transform:uppercase;letter-spacing:.12em}.topbar-title strong{font-size:13px}
.mobile-nav-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:9px;width:36px;height:36px;color:#344154}
.stat-card,.panel,.person-card,.plan-card{transition:transform .28s var(--ease-out),box-shadow .28s ease,border-color .28s ease}
.stat-card:hover,.person-card:hover,.plan-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(21,35,58,.1);border-color:#d9e3ed}
.panel:hover{box-shadow:0 15px 42px rgba(21,35,58,.085)}
.btn{position:relative;overflow:hidden;transition:transform .18s var(--ease-out),box-shadow .2s ease,background .2s ease,border-color .2s ease}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0) scale(.985)}
.btn.primary:hover{box-shadow:0 11px 26px rgba(20,160,217,.26)}
.btn-ripple{position:absolute;border-radius:50%;transform:scale(0);animation:ripple .55s linear;background:rgba(255,255,255,.4);pointer-events:none}
@keyframes ripple{to{transform:scale(4);opacity:0}}
input,select,textarea{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
input:focus,select:focus,textarea:focus{outline:none;border-color:#65bfe5!important;box-shadow:var(--focus-ring);background:#fff}
tbody tr{transition:background .18s ease}tbody tr:hover{background:#fafcff}
.flash{animation:toastIn .42s var(--ease-spring);box-shadow:0 10px 30px rgba(21,35,58,.08)}
.flash.is-hiding{opacity:0;transform:translateY(-8px);transition:.28s ease}
@keyframes toastIn{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}
.badge{transition:transform .18s ease}.badge:hover{transform:translateY(-1px)}
.heading-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce8f0;background:#fff;border-radius:999px;padding:9px 13px;font-size:11px;font-weight:700;color:#4d5c6d;box-shadow:0 7px 22px rgba(21,35,58,.05)}
.pulse-dot{width:7px;height:7px;border-radius:50%;background:#26ad7a;box-shadow:0 0 0 0 rgba(38,173,122,.35);animation:pulseDot 2s infinite}
@keyframes pulseDot{70%{box-shadow:0 0 0 7px rgba(38,173,122,0)}100%{box-shadow:0 0 0 0 rgba(38,173,122,0)}}
.page-heading-premium{align-items:center}
.onboarding-shell{display:grid;gap:18px}
.onboarding-progress{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 20px;display:flex;align-items:center;box-shadow:var(--shadow)}
.onboarding-step{display:flex;align-items:center;gap:10px;min-width:175px}.onboarding-step>span{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:#eef3f7;color:#758293;font-size:11px;font-weight:800}.onboarding-step.active>span{background:linear-gradient(135deg,#24baf0,#0e8fc9);color:#fff;box-shadow:0 7px 18px rgba(24,174,234,.22)}
.onboarding-step strong{display:block;font-size:11px}.onboarding-step small{display:block;color:#97a1ad;font-size:9px;margin-top:2px}.onboarding-line{height:1px;background:#e6ebf1;flex:1;margin:0 15px}
.premium-form{display:grid;gap:18px}
.form-section{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow);animation:sectionReveal .45s var(--ease-out) both}
.form-section:nth-child(3){animation-delay:.06s}.form-section:nth-child(4){animation-delay:.12s}
@keyframes sectionReveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.form-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.form-section-head>div:first-child{display:flex;align-items:center;gap:12px}.form-section-head h2{margin:3px 0 0;font-size:18px}
.section-number{width:38px;height:38px;border-radius:12px;background:#f0f8fc;color:#1599cf;display:grid;place-items:center;font-size:10px;font-weight:900}
.ares-badge,.security-note{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#738193;border:1px solid var(--line);padding:7px 9px;border-radius:8px;background:#fafbfd}
.ares-lookup-card{border:1px solid #cae8f5;background:linear-gradient(135deg,#f4fbfe,#fbfdff);border-radius:15px;padding:16px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;margin-bottom:22px;position:relative;overflow:hidden}
.ares-lookup-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-80px;top:-110px;background:rgba(24,174,234,.07)}
.ares-copy{display:flex;align-items:center;gap:11px;position:relative}.ares-copy strong{display:block;font-size:12px}.ares-copy small{display:block;color:#778596;font-size:10px;margin-top:3px}
.ares-icon{width:36px;height:36px;border-radius:11px;background:#152841;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:900;box-shadow:0 8px 18px rgba(17,35,57,.15)}
.ares-controls{display:flex;align-items:stretch;gap:8px;position:relative}.smart-input{border:1px solid #d9e6ed;background:#fff;border-radius:10px;display:flex;align-items:center;padding-left:10px;min-width:190px}.smart-input span{font-size:9px;font-weight:800;color:#8b98a7;letter-spacing:.08em;border-right:1px solid #e5ebf0;padding-right:9px}.smart-input input{border:0!important;box-shadow:none!important;padding:10px;width:130px;font-weight:750;letter-spacing:.08em;background:transparent}
.btn-ares{min-width:132px}.btn-spinner{display:none;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.btn-ares.loading .btn-label{display:none}.btn-ares.loading .btn-spinner{display:block}
@keyframes spin{to{transform:rotate(360deg)}}
.ares-status{grid-column:1/-1;display:none;font-size:11px;padding:10px 12px;border-radius:9px}.ares-status.success{display:block;background:#eaf8f2;color:#167551}.ares-status.error{display:block;background:#fff0f2;color:#b73647}.ares-status.info{display:block;background:#edf8fd;color:#147ea9}
.premium-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.field-wide{grid-column:span 2}.field small{display:block;margin-top:6px;color:#96a0ac;font-size:9px}
.premium-form .field input,.premium-form .field select{min-height:43px}
.plan-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.plan-option{cursor:pointer;border:1px solid var(--line);border-radius:13px;padding:14px;background:#fff;transition:.22s var(--ease-out);display:block}.plan-option:hover{transform:translateY(-2px);border-color:#bcdceb}.plan-option input{position:absolute;opacity:0;pointer-events:none}.plan-option span{display:block}.plan-option b{display:block;font-size:12px}.plan-option small{display:block;color:#8895a4;font-size:9px;margin-top:4px}.plan-option.selected{border-color:#52b9e2;background:#f3fbfe;box-shadow:0 0 0 3px rgba(24,174,234,.08)}
.sticky-form-actions{position:sticky;bottom:16px;z-index:15;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:15px;padding:13px 16px;display:flex;justify-content:space-between;align-items:center;gap:15px;box-shadow:0 16px 45px rgba(21,35,58,.13)}.sticky-form-actions>div:last-child{display:flex;gap:8px}.sticky-form-actions strong{display:block;font-size:11px}.sticky-form-actions small{display:block;color:#8a96a5;font-size:9px;margin-top:3px}.btn-lg{padding:11px 18px}
.sidebar-backdrop{display:none}
@media(max-width:1050px){.premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ares-lookup-card{grid-template-columns:1fr}.ares-controls{justify-content:flex-start}}
@media(max-width:760px){
  .mobile-nav-toggle{display:grid;place-items:center}
  .sidebar{position:fixed;transform:translateX(-102%);transition:transform .3s var(--ease-out);z-index:1000;width:min(86vw,300px)}
  body.nav-open .sidebar{transform:translateX(0)}
  .sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(8,18,31,.4);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:.25s;z-index:990}
  body.nav-open .sidebar-backdrop{opacity:1;pointer-events:auto}
  .main{margin-left:0;width:100%}.sidebar nav{grid-template-columns:1fr}
  .premium-grid,.plan-picker{grid-template-columns:1fr}.field-wide{grid-column:auto}
  .onboarding-progress{overflow:auto}.onboarding-line{min-width:24px}.onboarding-step{min-width:150px}
  .ares-controls{display:grid}.smart-input{width:100%}.sticky-form-actions{position:static;align-items:flex-start;flex-direction:column}.sticky-form-actions>div:last-child{width:100%;justify-content:flex-end}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.field-autofilled{animation:autofillGlow .85s var(--ease-out)}
@keyframes autofillGlow{0%{background:#eaf8ff;box-shadow:0 0 0 4px rgba(24,174,234,.12)}100%{background:#fff;box-shadow:none}}
.loading-submit{opacity:.72;cursor:wait}

/* Stage 20 — True SaaS tenant separation */
.superadmin-banner.support-active{background:linear-gradient(90deg,#7c2d12,#9a3412);color:#fff}
.superadmin-banner.support-active strong{color:#ffedd5}
.superadmin-banner .inline-form{margin:0}
.superadmin-banner .inline-form input{display:none}
.superadmin-banner .inline-form button{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff;border-radius:8px;padding:6px 10px;font-size:10px;font-weight:800;cursor:pointer}
.superadmin-banner .inline-form button:hover{background:rgba(255,255,255,.18)}
.support-mode-card{border-color:#fed7aa;background:linear-gradient(180deg,#fff,#fffaf5)}

/* Stage 21 — Geography / territory / mass import */
.country-setting-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.country-setting-card{display:flex;gap:11px;align-items:flex-start;border:1px solid var(--line);border-radius:13px;padding:14px;cursor:pointer;background:#fff;transition:.2s var(--ease-out)}
.country-setting-card:hover{transform:translateY(-2px);border-color:#bcddec;box-shadow:0 10px 28px rgba(21,35,58,.07)}
.country-setting-card input{width:17px;height:17px;margin-top:1px}.country-setting-card strong,.country-setting-card small{display:block}.country-setting-card small{color:#8794a3;font-size:9px;margin-top:5px;line-height:1.5}
.inline-create-form{display:grid;grid-template-columns:100px 1fr auto;gap:8px;margin-bottom:16px}
.territory-list{display:grid;gap:7px;max-height:430px;overflow:auto}.territory-row{display:flex;justify-content:space-between;align-items:center;border:1px solid #edf1f4;border-radius:10px;padding:10px 12px}.territory-row strong,.territory-row small{display:block}.territory-row small{color:#9aa4af;font-size:9px}.territory-row>div:last-child{display:flex;gap:13px;align-items:center;font-size:10px;color:#7f8b99}.territory-row b{color:#354457}
.upload-zone{border:1.5px dashed #b9d9e8;border-radius:15px;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#fbfeff,#f7fbfd);position:relative;text-align:center;transition:.2s}
.upload-zone:hover{border-color:#55b9e1;background:#f3fbfe}.upload-zone input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-zone strong{font-size:12px}.upload-zone small{font-size:9px;color:#8b97a4;margin-top:5px}.upload-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#e9f7fc;color:#148fbe;font-size:19px;margin-bottom:10px}
.import-progress{height:10px;border-radius:99px;background:#eef2f5;overflow:hidden}.import-progress span{display:block;height:100%;background:linear-gradient(90deg,#22b7e9,#168ec8);border-radius:99px;transition:width .45s var(--ease-out)}
.import-counters{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:14px}.import-counters div{border:1px solid var(--line);border-radius:11px;padding:11px;background:#fbfcfd}.import-counters b,.import-counters small{display:block}.import-counters b{font-size:17px}.import-counters small{font-size:9px;color:#8b97a5;margin-top:3px}.muted-note{font-size:10px;color:#8491a0;line-height:1.55}
@media(max-width:1000px){.country-setting-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.country-setting-grid,.import-counters{grid-template-columns:1fr 1fr}.inline-create-form{grid-template-columns:1fr}}

/* FIX23 organization */
.country-add-form{display:grid;grid-template-columns:140px minmax(220px,1fr) auto;gap:10px;align-items:end;max-width:720px}
.country-code-pill{min-width:38px;height:30px;border-radius:8px;background:#edf7fc;color:#178fbf;display:grid;place-items:center;font-size:10px;font-weight:900}
@media(max-width:700px){.country-add-form{grid-template-columns:1fr}}

/* Stage 21 FIX24 — import upload feedback */
.upload-zone.has-file{border-color:#47b9df;background:#f4fbfe}
.upload-zone.is-uploading{pointer-events:none;opacity:.72}
.selected-import-file{display:flex;align-items:center;gap:11px;border:1px solid #cfe8f2;background:#f7fcfe;border-radius:12px;padding:11px 12px;margin-top:10px}
.selected-import-file[hidden],.import-analysis-state[hidden]{display:none!important}
.selected-file-icon{width:31px;height:31px;border-radius:9px;background:#e4f7ef;color:#16825a;display:grid;place-items:center;font-weight:900}
.selected-import-file>div:nth-child(2){flex:1}.selected-import-file strong,.selected-import-file small{display:block}
.selected-import-file strong{font-size:11px;color:#314155}.selected-import-file small{font-size:9px;color:#8794a3;margin-top:3px}
.import-analysis-state{display:flex;align-items:center;gap:12px;margin-top:12px;border:1px solid #d9e8ef;background:#fbfdfe;border-radius:12px;padding:12px}
.import-analysis-state strong,.import-analysis-state small{display:block}.import-analysis-state strong{font-size:11px}.import-analysis-state small{font-size:9px;color:#8995a3;margin-top:4px;line-height:1.5}
.analysis-spinner{width:24px;height:24px;border-radius:50%;border:3px solid #d7edf5;border-top-color:#199bce;animation:spin .75s linear infinite;flex:0 0 auto}
.empty-import-state{text-align:center;padding:28px;color:#708091}.empty-import-state strong,.empty-import-state small{display:block}.empty-import-state small{margin-top:5px;font-size:9px}

/* Stage 22 — Device 360 & Identity */
.app-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:24px}.app-modal.is-open{display:flex}.app-modal-backdrop{position:absolute;inset:0;background:rgba(8,18,31,.52);backdrop-filter:blur(4px);animation:modalFade .18s ease}.app-modal-dialog{position:relative;width:min(720px,96vw);max-height:88vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 28px 90px rgba(8,18,31,.24);animation:modalUp .28s var(--ease-out)}.modal-wide{width:min(980px,96vw)}.app-modal-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.app-modal-head h2{margin:3px 0 0}.app-modal-head>button{border:0;background:#f1f4f7;width:32px;height:32px;border-radius:9px;font-size:20px;cursor:pointer}.app-modal-body{padding:20px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.btn.danger,.danger-soft{border-color:#fecdd3!important}.btn.danger{background:#be123c!important;color:#fff!important}.danger-soft{background:#fff5f6!important;color:#a51c3a!important}
@keyframes modalFade{from{opacity:0}to{opacity:1}}@keyframes modalUp{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.audit-timeline{display:grid;gap:0}.audit-entry{position:relative;display:grid;grid-template-columns:20px 1fr;gap:10px;padding:0 0 18px}.audit-entry:before{content:"";position:absolute;left:5px;top:13px;bottom:0;width:1px;background:#e3e9ee}.audit-entry:last-child:before{display:none}.audit-dot{width:11px;height:11px;border-radius:50%;background:#20a7d8;box-shadow:0 0 0 4px #eaf7fc;margin-top:3px}.audit-entry-head{display:flex;justify-content:space-between;gap:12px}.audit-entry-head span,.audit-entry small{font-size:9px;color:#8794a3}.audit-entry details{margin-top:7px}.audit-entry pre{font-size:10px;white-space:pre-wrap;background:#f7f9fb;border-radius:8px;padding:10px;max-height:180px;overflow:auto}
.test-print-options{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.test-print-option{border:1px solid var(--line);background:#fff;border-radius:13px;padding:14px;cursor:pointer;transition:.2s var(--ease-out);text-align:left}.test-print-option:hover{transform:translateY(-2px);border-color:#67c3e5;box-shadow:0 10px 25px rgba(21,35,58,.08)}.test-print-option strong,.test-print-option small{display:block}.test-print-option strong{font-size:20px}.test-print-option small{font-size:9px;color:#8794a3;margin-top:3px}.permission-note{border:1px dashed var(--line);border-radius:10px;padding:12px;color:#8693a1;font-size:10px}
.account-chip{display:flex;align-items:center;gap:9px;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:11px;padding:6px 9px;background:#fff;transition:.2s}.account-chip:hover{border-color:#b9dce9;transform:translateY(-1px)}.account-avatar{width:29px;height:29px;border-radius:9px;background:#edf8fc;color:#148dbd;display:grid;place-items:center;font-size:11px;font-weight:900}.account-chip strong,.account-chip small{display:block}.account-chip strong{font-size:10px}.account-chip small{font-size:8px;color:#8c98a5;margin-top:1px}
.force-password-shell{min-height:100vh;display:grid;place-items:center;background:#f4f7fa;padding:24px}.force-password-card{width:min(480px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 28px 80px rgba(21,35,58,.12)}.force-password-card h1{font-size:24px;margin:24px 0 8px}.force-password-card>p{color:#7d8a99;margin-bottom:20px}.force-password-card .field{margin-bottom:12px}
.password-requirements{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin:12px 0 0;padding:0;list-style:none}.password-requirements li{position:relative;padding-left:18px;color:#768495;font-size:10px;line-height:1.35}.password-requirements li:before{content:'○';position:absolute;left:0;font-weight:900}.password-requirements li.is-valid{color:#17754a}.password-requirements li.is-valid:before{content:'✓'}.password-requirements li.is-invalid{color:#b4233c}.password-requirements li.is-invalid:before{content:'×'}.password-match-feedback{display:block;margin-top:6px;color:#768495;font-size:10px}.password-match-feedback.is-valid{color:#17754a}.password-match-feedback.is-invalid{color:#b4233c}.force-password-card .auth-error{margin:14px 0}.permission-matrix input[disabled]{opacity:1;accent-color:#168fc7;cursor:not-allowed}
@media(max-width:520px){.password-requirements{grid-template-columns:1fr}}
@media(max-width:700px){.test-print-options{grid-template-columns:1fr 1fr}.account-chip>span:last-child{display:none}}

/* Stage 23 */
.assistant-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:linear-gradient(120deg,#0f263b,#153d58);color:#fff;border-radius:18px;padding:20px 22px;margin-bottom:16px}.assistant-orb{width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.1);display:flex;gap:4px;align-items:center;justify-content:center}.assistant-orb span{width:5px;border-radius:99px;background:#8ee0ff;animation:assistantPulse 1.25s ease-in-out infinite}.assistant-orb span:nth-child(1){height:12px}.assistant-orb span:nth-child(2){height:23px;animation-delay:.13s}.assistant-orb span:nth-child(3){height:16px;animation-delay:.26s}.assistant-copy small{font-size:8px;letter-spacing:.16em;color:#82cce8}.assistant-copy h2{margin:4px 0;color:#fff}.assistant-copy p{margin:0;color:#cfdae2;font-size:11px}@keyframes assistantPulse{50%{transform:scaleY(.55);opacity:.65}}
.quick-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-action-grid a{display:block;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.quick-action-grid strong,.quick-action-grid small{display:block}.quick-action-grid small{font-size:9px;color:#8995a2;margin-top:3px}.activity-list{display:grid;gap:12px}.activity-row{display:grid;grid-template-columns:9px 1fr;gap:9px}.activity-dot{width:8px;height:8px;border-radius:50%;background:#2cafd9;margin-top:3px}.activity-row strong,.activity-row small{display:block}.activity-row small{font-size:9px;color:#8d98a5;margin-top:3px}
.integration-status-card{display:grid;grid-template-columns:1fr 1fr;gap:10px}.integration-status-card>div{border:1px solid var(--line);border-radius:11px;padding:11px}.integration-status-card small,.integration-status-card strong{display:block}.integration-status-card small{font-size:8px;color:#8794a3}.password-meter{height:6px;background:#edf1f4;border-radius:99px;overflow:hidden;margin-top:7px}.password-meter span{display:block;width:0;height:100%;border-radius:99px;background:#d33;transition:width .22s ease}.password-meter span[data-level=medium]{background:#d49b1f}.password-meter span[data-level=strong]{background:#269a69}.password-meter-label{font-size:8px;color:#7e8b99;margin-top:4px}
@media(max-width:720px){.assistant-card{grid-template-columns:auto 1fr}.assistant-card>.btn{grid-column:1/-1}.quick-action-grid{grid-template-columns:1fr}}

/* Stage 24 — scalable organization */
.organization-stats{margin-bottom:16px}
.organization-filter-bar{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(130px,1fr)) auto;gap:10px;align-items:end;margin-bottom:15px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fafcfd}
.pagination-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;margin-top:6px;border-top:1px solid var(--line);font-size:10px;color:#7d8996}.pagination-actions{display:flex;gap:8px}
.organization-structure .table-wrap{max-height:680px}
@media(max-width:900px){.organization-filter-bar{grid-template-columns:1fr 1fr}}@media(max-width:600px){.organization-filter-bar{grid-template-columns:1fr}.pagination-bar{align-items:flex-start;flex-direction:column}}

/* Stage 26 — warehouse management */
.low-stock-hero{border-color:#f3d3a4;background:linear-gradient(180deg,#fffdfa,#fff)}
.low-stock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.low-stock-card{display:flex;justify-content:space-between;gap:12px;border:1px solid #f1dfc3;background:#fff;border-radius:12px;padding:12px}.low-stock-card strong,.low-stock-card small{display:block}.low-stock-card small{font-size:8px;color:#8a7760;margin-top:3px}.low-stock-number{text-align:right}.low-stock-number>strong{font-size:18px;color:#a46113}
.warehouse-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.warehouse-card{border:1px solid var(--line);border-radius:13px;padding:13px;background:#fff}.warehouse-card-head{display:flex;justify-content:space-between;gap:10px}.warehouse-card-head strong,.warehouse-card-head small{display:block}.warehouse-card-head small{font-size:8px;color:#8693a1;margin-top:3px}.warehouse-card-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;font-size:9px;color:#6f7e8d}.warehouse-card-meta span{background:#f4f7f9;border-radius:8px;padding:5px 7px}
.inline-stock-min{display:flex;gap:6px}.inline-stock-min input{max-width:88px}
@media(max-width:1000px){.low-stock-grid,.warehouse-card-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.low-stock-grid,.warehouse-card-grid{grid-template-columns:1fr}}

/* Stage 29 — unified application shell */
.nav-group-label{padding:18px 14px 6px;font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#778697}.nav-group-label:first-child{padding-top:6px}
.sidebar{display:flex;flex-direction:column}.sidebar .nav{flex:1;overflow-y:auto;padding-bottom:12px}.sidebar-bottom{margin-top:auto;padding:12px;border-top:1px solid rgba(148,163,184,.16)}
.sidebar-user{display:flex;align-items:center;gap:9px;text-decoration:none;color:inherit;padding:8px;border-radius:10px;margin-top:8px}.sidebar-user:hover{background:rgba(148,163,184,.08)}
.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user strong{font-size:10px}.sidebar-user small{font-size:8px;color:#8b98a6;margin-top:2px}.sidebar-logout{display:block;padding:7px 8px;margin-top:2px}.sidebar-brand{text-decoration:none;color:inherit}
.topbar-notifications{white-space:nowrap}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px;color:#475569}.field input,.field select{width:100%;padding:11px 12px;border:1px solid #dbe2ea;border-radius:10px;background:#fff}
.impersonation{padding:10px 14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:12px;margin-bottom:16px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.metric-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:14px}.metric-row strong{display:block;font-size:20px}.secret{font-family:ui-monospace,monospace;padding:10px 12px;border:1px dashed #94a3b8;border-radius:10px;background:#f8fafc;word-break:break-all}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.photo-card{border:1px solid #e5eaf0;border-radius:14px;overflow:hidden;background:#fff}.photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.photo-meta{padding:9px 10px;font-size:12px;color:#64748b}
.capacity-bar{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden}.capacity-bar>span{display:block;height:100%;background:#0f172a}
@media(max-width:1000px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.form-grid{grid-template-columns:1fr}.content form[style*="grid-template-columns:2fr"]{grid-template-columns:1fr!important}}@media(max-width:600px){.photo-grid{grid-template-columns:1fr}}

/* Stage 31 — sidebar cleanup */
.sidebar .nav{
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-width:none;
  -ms-overflow-style:none;
  overscroll-behavior:contain;
}
.sidebar .nav::-webkit-scrollbar{width:0;height:0;display:none}
.sidebar-bottom{padding-top:12px}
.sidebar .security-pill{margin-top:2px}

/* Stage 33 — contextual help */
.info-tip{position:relative;display:inline-grid;place-items:center;width:16px;height:16px;margin-left:4px;border:1px solid #cbd5df;border-radius:50%;font-size:9px;font-weight:800;line-height:1;color:#64748b;background:#fff;cursor:help;vertical-align:middle;outline:none}
.info-tip:hover,.info-tip:focus{border-color:#65bfe5;color:#118fc6;background:#f4fbfe}
.info-tip:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%) translateY(3px);width:max-content;max-width:300px;padding:8px 10px;border-radius:9px;background:#162235;color:#f5f8fb;font-size:10px;font-weight:500;line-height:1.45;letter-spacing:0;text-transform:none;box-shadow:0 10px 28px rgba(15,29,49,.18);opacity:0;visibility:hidden;pointer-events:none;z-index:1000;transition:.15s}
.info-tip:hover:after,.info-tip:focus:after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.security-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.security-flow>div{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fbfcfd}.security-flow strong,.security-flow small{display:block}.security-flow small{margin-top:5px;color:#7a8796;font-size:10px;line-height:1.5}
@media(max-width:760px){.security-flow{grid-template-columns:1fr}.info-tip:after{max-width:220px}}

/* Stage 34 — Printer 360 Intelligence */
.printer360-kpis .stat-card{min-height:132px}
.printer360-kpis .stat-card small{display:block;margin-top:8px;color:var(--muted);font-size:10px}
.printer360-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:-2px 0 18px}
.printer360-summary-strip>div{background:#fff;padding:13px 16px;min-width:0}.printer360-summary-strip span,.printer360-summary-strip strong{display:block}.printer360-summary-strip span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#8793a2;font-weight:800}.printer360-summary-strip strong{font-size:13px;margin-top:4px;color:#29384b;overflow:hidden;text-overflow:ellipsis}
.printer360-intelligence-grid{grid-template-columns:1fr 1fr;margin-bottom:18px}.printer360-intelligence-grid .panel{margin-bottom:0}
.printer360-chart-panel{overflow:hidden}.printer360-chart-value{font-size:11px;font-weight:800;color:#526173;background:#f4f7fa;border-radius:8px;padding:6px 8px}
.printer360-chart{position:relative;min-height:210px;padding-top:4px}.printer360-chart svg{width:100%;height:190px;overflow:visible}
.printer360-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.printer360-pages-line{stroke:#159fd8}.printer360-toner-line{stroke:#243247}
.chart-axis{stroke:#dfe6ed;stroke-width:1}.chart-grid-line{stroke:#eef2f6;stroke-width:1;stroke-dasharray:4 5}
.printer360-chart-labels{display:flex;justify-content:space-between;color:#8995a4;font-size:9px;margin-top:-2px}
.printer360-status-strip{display:flex;gap:2px;height:24px;align-items:stretch}.printer360-status-strip span{flex:1;min-width:2px;border-radius:3px;background:#dce4eb}.printer360-status-strip .online{background:#42b883}.printer360-status-strip .offline{background:#aeb9c5}.printer360-status-strip .service{background:#e0a33b}.printer360-status-strip .error{background:#d85a68}
.status-strip-legend{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:12px;color:#718096;font-size:10px}.status-strip-legend span{display:inline-flex;align-items:center;gap:6px}.status-strip-legend i{width:8px;height:8px;border-radius:3px;background:#dce4eb}.status-strip-legend i.online{background:#42b883}.status-strip-legend i.offline{background:#aeb9c5}.status-strip-legend i.service{background:#e0a33b}.status-strip-legend i.error{background:#d85a68}
@media(max-width:1100px){.printer360-intelligence-grid{grid-template-columns:1fr}.printer360-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.printer360-summary-strip{grid-template-columns:1fr}.printer360-status-strip{gap:1px}.printer360-chart{overflow-x:auto}.printer360-chart svg{min-width:620px}}

/* Stage 36 — Printer 360 lazy/progressive loading */
.printer360-lazy{min-height:360px}
.printer360-loading-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:2px 0 14px;padding:0 2px}.printer360-loading-head>div:first-child{display:grid;gap:4px}.printer360-loading-head strong{font-size:12px;color:#657386}
.lazy-spinner{width:22px;height:22px;border-radius:50%;border:2px solid #dbe5ec;border-top-color:#149fd8;animation:printexusSpin .75s linear infinite;flex:0 0 auto}
@keyframes printexusSpin{to{transform:rotate(360deg)}}
.skeleton-card{overflow:hidden;position:relative}.skeleton-card:after,.lazy-chart-placeholder:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.75) 48%,transparent 76%);transform:translateX(-100%);animation:skeletonSweep 1.25s ease-in-out infinite}
@keyframes skeletonSweep{to{transform:translateX(100%)}}
.skeleton-line{display:block;height:9px;border-radius:999px;background:#e8edf2;margin:8px 0}.skeleton-line.short{width:42%;height:8px}.skeleton-line.value{width:58%;height:28px;margin:15px 0 10px}
.printer360-summary-skeleton strong.skeleton-line{height:14px;width:68%;margin-top:8px}
.lazy-chart-placeholder{min-height:270px;position:relative;display:grid;place-items:center}.lazy-chart-loader{display:flex;align-items:center;justify-content:center;gap:10px;color:#7b8796;font-size:11px;min-height:220px}.lazy-chart-loader.compact{min-height:72px}.printer360-status-placeholder{min-height:105px}
.lazy-reveal{opacity:0;transform:translateY(8px);transition:opacity .42s var(--ease-out),transform .48s var(--ease-out);transition-delay:var(--lazy-delay,0ms)}.lazy-reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.lazy-spinner{animation-duration:1.5s}.skeleton-card:after,.lazy-chart-placeholder:after{animation:none}.lazy-reveal{opacity:1;transform:none;transition:none}}

/* Stage 37 — enterprise progressive modules */
.module-lazy-root{min-height:260px}
.lazy-table-skeleton{display:grid;gap:12px;padding:8px 4px}.lazy-table-skeleton .skeleton-line{height:16px}
.lazy-more-wrap{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:18px 4px 2px}.lazy-more-wrap small{color:var(--muted);font-size:10px}
.lazy-ops-row{padding:14px 0;border-bottom:1px solid #edf1f5}.lazy-ops-row:last-child{border-bottom:0}.lazy-ops-row>strong,.lazy-ops-row>small{display:block}.lazy-ops-row>small{color:#64748b;margin-top:4px}.lazy-ops-row p{margin:7px 0}

/* Stage 40 — Health Center & API Security */
.health-component-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.health-component{border:1px solid var(--line);border-radius:13px;padding:15px;background:#fbfcfe}
.health-component-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.health-latency{font-size:24px;font-weight:800;margin:14px 0 4px;color:#27364a}.health-component small{color:var(--muted);font-size:10px}
.health-job-list{display:grid}.health-job-list>div{padding:12px 0;border-bottom:1px solid #edf1f5}.health-job-list>div:last-child{border-bottom:0}.health-job-list strong,.health-job-list small{display:block}.health-job-list small{margin-top:4px;color:var(--muted)}
.security-principles{display:grid;gap:12px}.security-principles>div{padding:12px;border:1px solid var(--line);border-radius:11px}.security-principles strong,.security-principles small{display:block}.security-principles small{color:var(--muted);margin-top:5px;line-height:1.55}
.api-doc-lines{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:14px 0}.api-doc-lines>div{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;padding:11px 13px}.api-doc-lines span{font-size:10px;color:var(--muted);font-weight:700}.api-doc-lines code{font-size:11px;color:#27364a}

/* Stage 41 — subscription lifecycle */
.subscription-state{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;border:1px solid #dfe7ee;border-radius:12px;margin-bottom:16px;background:#f8fbfd}.subscription-state>div:first-child{display:grid;gap:4px}.subscription-state small{color:var(--muted)}.subscription-state.expired{background:#fff8f8;border-color:#f1d7d9}.subscription-state.future{background:#f7f9fd}
.subscription-blocked-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f4f7fb}.subscription-blocked-card{width:min(560px,100%);background:#fff;border:1px solid #e1e7ee;border-radius:22px;padding:34px;box-shadow:0 24px 70px rgba(15,23,42,.08)}.subscription-blocked-card h1{margin:18px 0 8px}.subscription-blocked-card>p{color:#637083;line-height:1.6}.subscription-lock-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;margin-top:26px;background:#fff3e7;color:#b96612;font-size:23px;font-weight:900}

/* Stage 42 — Billing */
.invoice-preview-box{margin-top:14px;border:1px dashed #cfd9e3;border-radius:12px;padding:14px;background:#fbfcfe}.invoice-preview-total{display:flex;align-items:center;justify-content:space-between;gap:12px}.invoice-preview-total strong{font-size:20px}.invoice-preview-items{display:grid;gap:7px;margin-top:10px}.invoice-preview-items>div{display:flex;justify-content:space-between;gap:16px;font-size:11px}
.billing-formula{padding:14px;border-radius:12px;background:#f5f8fb;border:1px solid var(--line);overflow:auto}.billing-formula code{font-size:11px;white-space:normal}
.invoice-totals{display:grid;gap:8px;margin:18px 0 0 auto;max-width:360px}.invoice-totals>div{display:flex;justify-content:space-between;gap:18px}.invoice-totals .grand{font-size:16px;padding-top:10px;border-top:1px solid var(--line)}
.invoice-paper-preview{background:#fff}.invoice-paper-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.invoice-paper-head>div:first-child{display:flex;align-items:center;gap:12px}.invoice-paper-head img{max-width:120px;max-height:54px;object-fit:contain}.invoice-paper-head h2{margin:2px 0 0}

/* Stage 43 — Billing tabs & customer catalog */
.module-tabs{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin:0 0 18px;padding:5px;background:#eef3f7;border-radius:12px;width:max-content;max-width:100%}
.module-tabs a{display:flex;align-items:center;gap:7px;padding:9px 13px;border-radius:9px;text-decoration:none;color:#5a6878;font-size:11px;font-weight:750}.module-tabs a.active{background:#fff;color:#182638;box-shadow:0 2px 8px rgba(15,23,42,.07)}.module-tabs a span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#edf3f7;font-size:9px}
.company-filter-bar{display:grid;grid-template-columns:minmax(240px,2fr) minmax(150px,1fr) minmax(150px,1fr) auto;gap:12px;align-items:end}.company-filter-actions{display:flex;gap:7px;padding-bottom:1px}
@media(max-width:850px){.company-filter-bar{grid-template-columns:1fr 1fr}.company-filter-bar .field:first-of-type{grid-column:1/-1}.company-filter-actions{grid-column:1/-1}}

/* Stage 44 — secure password recovery */
.auth-shell{min-height:100vh;display:grid;place-items:center;background:#f4f7fb;padding:24px}.auth-card{width:min(440px,100%);background:#fff;border:1px solid #e3e9ef;border-radius:22px;padding:34px;box-shadow:0 20px 60px rgba(15,23,42,.08)}.auth-card h1{margin:0 0 8px}.auth-brand{color:#0f172a;margin-bottom:24px}.auth-brand small{color:#64748b}.auth-lead{color:#64748b;line-height:1.6;margin:0 0 22px}.auth-field{display:block;margin-bottom:14px;font-size:11px;font-weight:750;color:#425166}.auth-field input{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #d8dee8;border-radius:10px;background:#fff}.auth-between{display:flex;justify-content:flex-end;margin:-3px 0 18px}.auth-between a,.auth-back{font-size:11px;color:#178ec5;text-decoration:none}.auth-back{display:block;text-align:center;margin-top:16px}.auth-error{padding:11px 13px;background:#fff1f2;color:#be123c;border-radius:10px;margin-bottom:14px}.auth-note{padding:12px;border:1px solid #dfe7ee;background:#f8fafc;border-radius:11px;color:#64748b;font-size:11px;line-height:1.55;margin:18px 0}.auth-security-icon,.auth-success-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;margin-bottom:18px;font-weight:900}.auth-security-icon{background:#eef7fc;color:#168fc7}.auth-success-icon{background:#ecf9f0;color:#23864b;font-size:22px}
.admin-password-reset{position:relative}.admin-password-reset>summary{list-style:none;cursor:pointer}.admin-password-reset>summary::-webkit-details-marker{display:none}.admin-password-reset[open] form{position:absolute;right:0;z-index:30;width:330px;margin-top:8px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 18px 48px rgba(15,23,42,.13)}.admin-password-reset form .field{margin-bottom:10px}
@media(max-width:700px){.admin-password-reset[open] form{position:fixed;left:18px;right:18px;bottom:18px;width:auto}}

/* Stage 45 — plan management */
.plan-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:14px}.plan-admin-card{border:1px solid var(--line);border-radius:15px;padding:18px;background:#fff}.plan-admin-card.inactive{opacity:.72;background:#f8fafc}.plan-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.plan-admin-head strong,.plan-admin-head small{display:block}.plan-admin-head strong{font-size:16px}.plan-admin-head small{color:var(--muted);margin-top:3px}.plan-model-label{font-size:10px;color:#168fc7;font-weight:800;letter-spacing:.04em;margin-bottom:15px}.plan-admin-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.toggle-row{display:flex;align-items:center;gap:8px;min-height:40px}.toggle-row input{width:auto!important}.toggle-row span{font-size:11px;color:#536273}
@media(max-width:650px){.plan-admin-grid{grid-template-columns:1fr}.plan-admin-actions{align-items:flex-start;flex-direction:column}}

/* Stage 46 — multilingual UX */
.auth-language-switch{display:flex;justify-content:center;gap:6px;margin:-4px 0 16px}.auth-language-switch a{padding:5px 9px;border:1px solid #dbe4ec;border-radius:8px;font-size:10px;font-weight:800;text-decoration:none;color:#4b5c70;background:#fff}.auth-language-switch a:hover{border-color:#1ba6df;color:#087bad}

/* Stage 55 — premium public login */
.premium-login-body{margin:0;background:#f5f8fb;color:#0d2030;min-height:100vh}.login-site-header{height:78px;padding:0 clamp(24px,5vw,78px);display:flex;align-items:center;gap:36px;background:rgba(255,255,255,.94);border-bottom:1px solid #dfe8ef;position:relative;z-index:4;backdrop-filter:blur(18px)}.login-site-header .auth-brand{margin:0;text-decoration:none}.login-site-header nav{display:flex;gap:28px;margin-left:auto}.login-site-header nav a{font-size:12px;font-weight:750;color:#526676;text-decoration:none;transition:.2s}.login-site-header nav a:hover{color:#0b93cc}.login-site-header .auth-language-switch{margin:0}.premium-login-shell{min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(450px,.92fr)}.login-story{position:relative;overflow:hidden;display:flex;align-items:center;padding:clamp(48px,7vw,110px);color:#fff;background:radial-gradient(circle at 18% 12%,rgba(26,183,225,.28),transparent 34%),radial-gradient(circle at 82% 86%,rgba(22,153,193,.18),transparent 28%),linear-gradient(145deg,#071b2b 0%,#0b3044 56%,#0d4358 100%)}.login-story:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 88%)}.login-story:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(80,211,241,.15);border-radius:50%;right:-140px;top:12%;box-shadow:0 0 0 70px rgba(80,211,241,.035),0 0 0 140px rgba(80,211,241,.025);animation:loginOrbit 9s ease-in-out infinite}.login-story-inner{position:relative;z-index:2;max-width:720px}.login-eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:850;letter-spacing:.18em;color:#79dbf3}.login-eyebrow i{width:7px;height:7px;border-radius:50%;background:#49d4f2;box-shadow:0 0 0 6px rgba(73,212,242,.12)}.login-story h1{font-size:clamp(35px,4.3vw,66px);line-height:1.06;letter-spacing:-.045em;margin:24px 0 22px;max-width:760px}.login-story>div>p{font-size:clamp(15px,1.3vw,19px);line-height:1.7;color:#b7cbd6;max-width:650px}.login-security-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:42px 0 24px}.login-security-grid>div{padding:18px;border:1px solid rgba(173,223,235,.14);background:rgba(255,255,255,.045);border-radius:15px;transition:transform .25s,border-color .25s}.login-security-grid>div:hover{transform:translateY(-3px);border-color:rgba(84,207,237,.38)}.login-security-grid span{display:block;color:#5ad4ee;font-size:9px;font-weight:850;letter-spacing:.16em;margin-bottom:18px}.login-security-grid strong{display:block;font-size:12px;margin-bottom:6px}.login-security-grid small{display:block;color:#99b3c0;line-height:1.5;font-size:10px}.login-live-card{display:flex;align-items:center;gap:12px;padding:15px 17px;border:1px solid rgba(102,219,242,.2);border-radius:14px;background:rgba(3,18,29,.28);max-width:490px}.login-live-card div{display:flex;flex-direction:column}.login-live-card strong{font-size:11px}.login-live-card small{font-size:9px;color:#90adba;margin-top:3px}.login-live-card b{font-size:9px;letter-spacing:.13em;color:#69dbb1;margin-left:auto}.login-form-side{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px clamp(28px,6vw,92px);background:linear-gradient(145deg,#fff,#f4f8fb)}.premium-auth-card{width:min(480px,100%);border:0;background:transparent;box-shadow:none;padding:0}.login-mobile-brand{display:none}.login-form-kicker{font-size:9px;font-weight:900;letter-spacing:.18em;color:#0d9ed0;margin-bottom:12px}.premium-auth-card h2{font-size:34px;letter-spacing:-.035em;margin:0 0 9px}.premium-auth-card .auth-lead{font-size:13px;margin-bottom:28px}.premium-auth-card .auth-field{font-size:10px;letter-spacing:.05em;color:#3d5363;margin-bottom:17px}.premium-auth-card .auth-field input{height:49px;border-radius:12px;border-color:#d5e1e8;padding:0 15px;font-size:13px;transition:border-color .2s,box-shadow .2s}.premium-auth-card .auth-field input:focus{outline:0;border-color:#20a9d5;box-shadow:0 0 0 4px rgba(32,169,213,.11)}.password-input-wrap{display:block;position:relative}.password-input-wrap input{padding-right:82px!important}.password-reveal{position:absolute;right:9px;top:50%;transform:translateY(-50%);border:0;background:#edf5f8;color:#28728c;padding:6px 9px;border-radius:7px;font-size:9px;font-weight:800;cursor:pointer}.trusted-device-note{display:flex;align-items:center;gap:7px;font-size:10px;color:#657b89}.security-check{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#e5f8ef;color:#168054;font-size:9px;font-weight:900}.premium-auth-card .auth-between{justify-content:space-between;align-items:center;margin:0 0 20px}.premium-login-button{height:51px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:0 14px 30px rgba(13,151,199,.2);transition:transform .2s,box-shadow .2s}.premium-login-button:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(13,151,199,.28)}.premium-login-button b{font-size:16px}.login-protection-note{display:flex;gap:11px;margin-top:22px;padding:14px 15px;border:1px solid #deeaef;border-radius:12px;background:rgba(255,255,255,.72);color:#667b89}.login-protection-note>span{color:#18a0ca;font-size:11px}.login-protection-note p{font-size:9px;line-height:1.55;margin:0}.login-protection-note strong{color:#294757}.login-footer{width:min(480px,100%);display:flex;justify-content:space-between;gap:14px;margin-top:35px;color:#8395a1;font-size:9px}.login-footer span:last-child{display:flex;gap:14px}.login-footer a{color:#718794;text-decoration:none}@keyframes loginOrbit{50%{transform:translate(-14px,18px) scale(1.04)}}@media(max-width:980px){.login-site-header nav{display:none}.premium-login-shell{grid-template-columns:1fr}.login-story{display:none}.login-form-side{min-height:calc(100vh - 78px)}.login-mobile-brand{display:flex;margin-bottom:38px}}@media(max-width:560px){.login-site-header{height:66px;padding:0 18px}.login-site-header .auth-brand small{display:none}.login-site-header .auth-language-switch a{padding:5px 7px}.login-form-side{min-height:calc(100vh - 66px);padding:30px 22px}.premium-auth-card h2{font-size:29px}.login-footer{flex-direction:column;align-items:center}.premium-login-button{height:49px}}@media(prefers-reduced-motion:reduce){.login-story:after,.premium-login-button,.login-security-grid>div{animation:none;transition:none}}
.language-first-shell{min-height:100vh;display:grid;place-items:center;background:#f4f7fb;padding:24px}.language-first-card{width:min(650px,100%);background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:36px;box-shadow:0 24px 70px rgba(15,23,42,.09)}.language-first-card>h1{margin:0 0 8px}.language-first-card>p{color:#64748b;margin:0 0 24px;line-height:1.6}.language-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.language-choice-grid label{cursor:pointer}.language-choice-grid input{position:absolute;opacity:0;pointer-events:none}.language-choice-grid span{display:block;padding:18px;border:1px solid #dbe4ec;border-radius:14px;background:#fbfdff;transition:.15s}.language-choice-grid b,.language-choice-grid small{display:block}.language-choice-grid b{font-size:15px;color:#1f2d3d}.language-choice-grid small{margin-top:5px;color:#6b7b8e}.language-choice-grid input:checked+span{border-color:#16a5dd;background:#eef9fd;box-shadow:0 0 0 3px rgba(22,165,221,.12)}.language-managed-note{display:flex;align-items:center;min-height:42px;padding:10px 12px;border:1px dashed #ced9e4;border-radius:10px;color:#66778a;font-size:11px;background:#fafcfe}
@media(max-width:650px){.language-choice-grid{grid-template-columns:1fr}.language-first-card{padding:25px}}

/* Stage 49 — dashboard loading status */
.dashboard-load-status{transition:border-color .18s ease,background .18s ease}
.dashboard-load-status[data-state="success"]{background:#fbfefc}
.dashboard-load-status[data-state="error"]{background:#fffafa}
.dashboard-load-badge{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.04em}
.dashboard-load-badge.loading{background:#eef6fb;color:#2d718f}
.dashboard-load-badge.success{background:#edf8f1;color:#26764b}
.dashboard-load-badge.error{background:#fff0f1;color:#a9414b}
.dashboard-load-state{display:flex;align-items:center;gap:12px;min-height:54px}
.dashboard-load-state>div:last-child{display:grid;gap:4px;min-width:0}
.dashboard-load-state strong{font-size:12px}.dashboard-load-state small{color:var(--muted);font-size:10px;line-height:1.5}
.dashboard-load-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;font-weight:900}
.dashboard-load-icon.success{background:#edf8f1;color:#26764b}
.dashboard-load-icon.error{background:#fff0f1;color:#a9414b}
.dashboard-load-state .btn{width:max-content;margin-top:5px}

/* Stage 50 — Ticket 360 technician selector */
.technician-recommendations{display:grid;gap:0}.technician-recommendation-card{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #edf1f5}.technician-recommendation-copy{min-width:0}.technician-recommendation-copy>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.technician-recommendation-copy small{display:block;color:#64748b;margin-top:4px;line-height:1.5}.technician-manual-assignment{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.panel-subhead{margin-bottom:13px}.panel-subhead strong,.panel-subhead small{display:block}.panel-subhead small{margin-top:4px;color:var(--muted);line-height:1.5}.technician-select-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.technician-search-field{margin-bottom:10px}.technician-search-field>span{display:block;margin-bottom:6px;font-size:11px;font-weight:750;color:#425166}
@media(max-width:720px){.technician-recommendation-card{align-items:flex-start;flex-direction:column}.technician-select-form{grid-template-columns:1fr}.technician-select-form .btn{width:100%}}
.technician-workspace-heading{background:linear-gradient(135deg,#071f30,#0d455b);color:#fff;border-radius:20px;padding:24px}.technician-workspace-heading p{color:#b5ced8}.technician-heading-status{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 10px;text-align:right}.technician-heading-status strong{font-size:26px}.technician-heading-status small{grid-column:2;color:#a7c0cb}.technician-job-list{overflow:hidden}.technician-job-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid #e8eef2}.technician-job-card:last-child{border-bottom:0}.technician-job-priority{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#edf5f8;color:#1d718d;font-weight:900}.technician-job-priority.priority-p1{background:#fff0f1;color:#b4233c}.technician-job-priority.priority-p2{background:#fff7e7;color:#a35c0b}.technician-job-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:#748393;font-size:10px}.technician-job-copy h2{margin:7px 0 5px;font-size:17px}.technician-job-device,.technician-job-address{margin:4px 0;color:#607080;font-size:11px}.technician-job-address{display:flex;gap:7px;align-items:center}.technician-job-address span{color:#16a1d1}.technician-job-actions{display:flex;gap:8px;flex-direction:column}.ticket-location-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:18px;margin-bottom:18px}.ticket-location-card address{font-style:normal;font-size:15px;line-height:1.7;color:#405467}.ticket-location-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.ticket-site-contact{display:grid;gap:4px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.ticket-site-contact span{font-size:9px;font-weight:850;letter-spacing:.08em;color:#80909e}.ticket-site-contact a{font-size:11px;color:#168fc7;text-decoration:none}.ticket-map-card{min-height:285px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#eaf1f4}.ticket-map-card iframe{display:block;width:100%;height:100%;min-height:285px;border:0}.ticket-map-empty{height:100%;min-height:285px;display:grid;place-items:center;align-content:center;gap:6px;color:#6c7c89}.ticket-map-empty span{font-size:34px;color:#17a0cf}.ticket-map-empty small{color:#8795a1}.ticket-field-heading{border-left:4px solid #1ca8d5;padding-left:18px}
@media(max-width:850px){.ticket-location-grid{grid-template-columns:1fr}.technician-job-card{grid-template-columns:40px 1fr}.technician-job-actions{grid-column:1/-1;flex-direction:row;padding-left:56px}.technician-job-actions .btn{flex:1}.technician-workspace-heading{align-items:flex-start}.technician-heading-status{display:none}}@media(max-width:540px){.technician-job-card{grid-template-columns:1fr}.technician-job-priority{width:auto;height:28px;justify-self:start;padding:0 10px}.technician-job-actions{padding-left:0;flex-direction:column}.ticket-location-actions .btn{width:100%}}

/* Stage 51 — Data Protection Center */
.data-protection-warning{border-color:#e9c96f;background:#fffdf6}.data-protection-warning pre{white-space:pre-wrap;padding:14px;border-radius:11px;background:#111827;color:#e5e7eb;overflow:auto}.data-protection-warning code{font-size:11px}


/* Stage 53.2 — MFA QR enrollment */
#printexus-mfa-qr svg{display:block;width:100%;height:auto;aspect-ratio:1/1}
@media (max-width:760px){
  .mfa-enrollment-grid{grid-template-columns:1fr!important}
}
.auth-divider{display:flex;align-items:center;gap:10px;color:#91a1ab;font-size:9px;margin:15px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#dce7ec}.passkey-login-button{height:49px;border-radius:12px}.passkey-inline-error{margin-top:10px;padding:10px;border-radius:9px;background:#fff1f2;color:#be123c;font-size:10px}.passkey-panel{margin-top:18px}.passkey-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}.passkey-row>div{display:flex;flex-direction:column}.passkey-row small{margin-top:4px;color:var(--muted)}.passkey-row details form{min-width:240px;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:12px}.passkey-prompt-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#eaf8fd;color:#119cca;font-size:22px;margin-bottom:16px}.audit-tabs{display:flex;gap:8px;margin-bottom:14px}.audit-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.audit-filter .field{min-width:160px;flex:1}.audit-filter .btn{margin-bottom:1px}

/* Stage 60 — adaptive service automation */
.automation-heading{background:radial-gradient(circle at 86% 30%,rgba(64,210,237,.2),transparent 24%),linear-gradient(135deg,#071d2d,#0d4258);color:#fff;border-radius:21px;padding:25px}.automation-heading p{color:#b9ced8}.automation-heading-score{display:flex;flex-direction:column;align-items:flex-end}.automation-heading-score strong{font-size:34px;line-height:1}.automation-heading-score small{color:#9fb8c4;margin-top:5px}.automation-tabs{position:sticky;top:0;z-index:12;display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px;padding:9px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}.automation-tabs a{padding:8px 11px;border-radius:9px;color:#526273;font-size:10px;font-weight:800;text-decoration:none}.automation-tabs a:hover{background:#eaf7fc;color:#1688b6}.automation-profile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:17px}.automation-choice{cursor:pointer}.automation-choice input{position:absolute;opacity:0;pointer-events:none}.automation-choice span{display:block;height:100%;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fbfdfe;transition:.18s}.automation-choice b,.automation-choice small{display:block}.automation-choice small{margin-top:7px;color:#778695;font-size:9px;line-height:1.5}.automation-choice input:checked+span{border-color:#27a9d5;background:#eef9fd;box-shadow:0 0 0 3px rgba(39,169,213,.1)}.automation-settings-grid{padding:16px;border:1px solid #e4ecf1;border-radius:14px;background:#fafcfd}.automation-save{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:14px}.automation-save span{font-size:10px;color:#778695}.proposal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.proposal-card{padding:17px;border:1px solid #e2eaf0;border-left:4px solid #f0a12b;border-radius:14px;background:linear-gradient(180deg,#fff,#fffdfa)}.proposal-card-top,.proposal-card-top>div{display:flex;align-items:center;gap:8px}.proposal-card-top{justify-content:space-between}.proposal-card-top time{font-size:9px;color:#9a6317}.proposal-card h3{margin:14px 0 7px}.proposal-card p{color:#687887;font-size:10px;line-height:1.6}.proposal-evidence{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.proposal-evidence span{padding:5px 7px;border-radius:7px;background:#f3f6f8;color:#687887;font-size:8px}.proposal-actions{display:grid;grid-template-columns:1fr auto auto;gap:7px}.proposal-actions input{min-width:0}.automation-rule-layout{align-items:start}.rule-list{display:grid}.rule-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #edf1f4}.rule-row>div:first-child strong,.rule-row>div:first-child small{display:block}.rule-row small{margin-top:4px;color:#7e8b98}.rule-row>div:last-child{display:flex;align-items:center;gap:8px;font-size:9px;color:#788695}.sla-layout{display:grid;grid-template-columns:minmax(380px,.9fr) minmax(0,1.1fr);gap:20px;align-items:start}.sla-editor{padding:16px;border:1px solid #e3ebf0;border-radius:14px;background:#fbfdfe}.location-card-picker{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:end;max-width:780px}.location-access-editor{margin-top:18px;padding:19px;border:1px solid #dce8ee;border-radius:16px;background:linear-gradient(180deg,#fbfeff,#f8fbfc)}.location-access-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:17px}.location-access-title strong,.location-access-title span{display:block}.location-access-title strong{font-size:17px}.location-access-title span{margin-top:4px;color:#788695;font-size:10px}.ticket-access-card{display:grid;gap:11px;margin-top:18px;padding:15px;border:1px solid #cde3ec;border-radius:13px;background:#f6fbfd}.ticket-access-card-head{display:flex;justify-content:space-between;align-items:center}.ticket-access-card-head>span{font-size:9px;font-weight:900;letter-spacing:.1em;color:#168db9}.ticket-access-card small,.ticket-access-card strong{display:block}.ticket-access-card small{color:#7b8b98;font-size:8px;text-transform:uppercase;letter-spacing:.07em}.ticket-access-card strong,.ticket-access-card p{margin:3px 0 0;font-size:10px;line-height:1.5}.ticket-access-warning{padding:9px;border-radius:9px;background:#fff5e8;color:#8c5413}.ticket-access-code{display:flex!important;justify-content:space-between;align-items:center;padding:10px;border-radius:9px;background:#102b3b;color:#fff}.ticket-access-code small{color:#8fcde0}.ticket-access-code strong{font-size:15px;letter-spacing:.08em}.recurring-fault-alert{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(250px,.7fr);gap:16px;align-items:center;margin-bottom:16px;padding:18px;border:1px solid #f1c6c9;border-radius:16px;background:linear-gradient(135deg,#fff8f8,#fff);color:#68262d}.recurring-fault-alert.compact{grid-template-columns:auto 1fr}.recurring-fault-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:#fee8e9;color:#b83443;font-size:22px;font-weight:900}.recurring-fault-alert span{font-size:8px;font-weight:850;letter-spacing:.13em;color:#bd4a56}.recurring-fault-alert h2{margin:3px 0;font-size:16px}.recurring-fault-alert p{margin:0;color:#8b5960;font-size:10px}.recurring-fault-list{display:grid;gap:6px}.recurring-fault-list>div{display:flex;justify-content:space-between;gap:8px;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.8)}.recurring-fault-list strong{font-size:9px}.recurring-fault-list span{font-size:8px;letter-spacing:0;color:#95616a}
@media(max-width:1050px){.automation-profile-grid{grid-template-columns:1fr 1fr}.sla-layout{grid-template-columns:1fr}.proposal-grid{grid-template-columns:1fr}}
@media(max-width:720px){.automation-profile-grid{grid-template-columns:1fr}.automation-save,.location-access-title{align-items:flex-start;flex-direction:column}.proposal-actions,.location-card-picker{grid-template-columns:1fr}.recurring-fault-alert{grid-template-columns:auto 1fr}.recurring-fault-list{grid-column:1/-1}.automation-tabs{position:static}}
.location-access-photo,.ticket-access-photo{display:block;width:100%;max-height:340px;object-fit:cover;border-radius:13px;border:1px solid #d7e5eb;background:#eaf1f4}.location-photo-upload,.ticket-device-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:13px;padding:13px;border:1px dashed #cbdde5;border-radius:12px;background:#fff}.location-photo-upload .field,.ticket-device-search .field{margin:0}.ticket-access-photo{max-height:260px}.ticket-device-search{margin:0 0 17px;background:#f8fbfc}@media(max-width:720px){.location-photo-upload,.ticket-device-search{grid-template-columns:1fr}}
.automation-support-context{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-5px 0 16px;padding:15px 18px;border:1px solid #b7ddea;border-radius:14px;background:linear-gradient(120deg,#eefaff,#fff);box-shadow:0 9px 30px rgba(16,122,158,.08)}.automation-support-context div{display:grid;gap:3px}.automation-support-context span{font-size:8px;font-weight:900;letter-spacing:.13em;color:#168db9}.automation-support-context strong{font-size:13px;color:#17384a}.automation-support-context small{font-size:9px;color:#68808d}@media(max-width:720px){.automation-support-context{align-items:flex-start;flex-direction:column}}
.company-onboarding-hero{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;padding:35px 40px;margin-bottom:18px;border-radius:22px;background:linear-gradient(125deg,#10233c,#173a5b 62%,#135e7a);color:#fff;box-shadow:0 20px 55px rgba(15,40,67,.18)}.company-onboarding-hero h1{max-width:800px;margin:8px 0 10px;font-size:34px;line-height:1.16;letter-spacing:-1px}.company-onboarding-hero p{max-width:760px;margin:0;color:#aec1d2;line-height:1.7}.readiness-ring{width:146px;height:146px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#31c7f3 var(--ready),rgba(255,255,255,.12) 0);position:relative}.readiness-ring:after{content:"";position:absolute;inset:11px;border-radius:50%;background:#16324c}.readiness-ring>div{position:relative;z-index:1;text-align:center}.readiness-ring strong,.readiness-ring small{display:block}.readiness-ring strong{font-size:26px}.readiness-ring small{margin-top:4px;color:#91adc0;font-size:9px}.onboarding-alert{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:18px 20px;margin-bottom:18px;border:1px solid #f0cf9e;border-radius:15px;background:#fff9ef}.onboarding-alert>div{display:flex;gap:14px}.onboarding-alert>div>span{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:#f3a83b;color:#fff;font-weight:900}.onboarding-alert strong{color:#714714}.onboarding-alert ul{display:flex;gap:8px 25px;flex-wrap:wrap;margin:7px 0 0;padding-left:17px;color:#8a673a;font-size:10px}.onboarding-profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.onboarding-profile-grid article{padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.onboarding-profile-grid article.selected{border-color:#68c8e9;box-shadow:0 12px 35px rgba(24,174,234,.13),inset 0 3px 0 #1aafe9}.onboarding-profile-grid span{color:#19a3db;font-size:9px;font-weight:900}.onboarding-profile-grid h3{margin:10px 0 7px;font-size:14px}.onboarding-profile-grid p{margin:0;color:#7c8998;font-size:10px;line-height:1.6}.onboarding-roadmap{padding:25px}.onboarding-steps{display:grid}.onboarding-check{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 4px;border-bottom:1px solid #e9edf2}.onboarding-check:last-child{border-bottom:0}.check-state{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#f1f4f7;color:#8290a0;font-size:10px;font-weight:900}.onboarding-check.complete .check-state{background:#e8f8f2;color:#188c64}.check-copy>div{display:flex;align-items:center;gap:10px}.check-copy h3{margin:0;font-size:13px}.check-copy p{margin:6px 0 0;color:#7c8998;font-size:10px}.check-actions{display:flex;align-items:center;justify-content:flex-end;gap:13px}.onboarding-validation-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.onboarding-validation-grid article{padding:20px;border:1px solid var(--line);border-radius:15px;background:#fff}.onboarding-validation-grid span,.onboarding-validation-grid strong,.onboarding-validation-grid small{display:block}.onboarding-validation-grid span{font-size:25px;font-weight:900;color:#15324c}.onboarding-validation-grid strong{margin-top:4px;font-size:11px}.onboarding-validation-grid small{margin-top:5px;color:#8a96a4;font-size:9px;line-height:1.5}.onboarding-launch{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:28px 30px}.onboarding-launch h2{margin:7px 0 8px}.onboarding-launch p{max-width:820px;margin:0;color:#748293;font-size:11px;line-height:1.7}.onboarding-launch>div:last-child{display:flex;gap:8px;flex:0 0 auto}@media(max-width:900px){.company-onboarding-hero{grid-template-columns:1fr}.readiness-ring{width:120px;height:120px}.onboarding-profile-grid,.onboarding-validation-grid{grid-template-columns:repeat(2,1fr)}.onboarding-check{grid-template-columns:40px 1fr}.check-actions{grid-column:2;justify-content:flex-start}.onboarding-launch{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.company-onboarding-hero{padding:27px 24px}.company-onboarding-hero h1{font-size:27px}.onboarding-profile-grid,.onboarding-validation-grid{grid-template-columns:1fr}.onboarding-alert,.onboarding-launch>div:last-child{align-items:flex-start;flex-direction:column}.onboarding-check{gap:10px}.check-copy>div{align-items:flex-start;flex-direction:column}.check-actions{align-items:flex-start;flex-direction:column}}
.workspace-tabs{display:flex;gap:5px;margin:0 0 18px;padding:5px;border:1px solid var(--line);border-radius:13px;background:#fff;width:max-content;max-width:100%}.workspace-tabs a{padding:10px 14px;border-radius:9px;color:#6f7c8d;font-size:11px;font-weight:800;text-decoration:none}.workspace-tabs a.active{background:#10243d;color:#fff;box-shadow:0 6px 15px rgba(15,35,59,.16)}.ticket-responsibility-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 0 18px;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:var(--line)}.ticket-responsibility-strip>div{padding:16px 18px;background:#fff}.ticket-responsibility-strip span,.ticket-responsibility-strip strong,.ticket-responsibility-strip small{display:block}.ticket-responsibility-strip span{color:#8995a5;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.ticket-responsibility-strip strong{margin-top:6px;font-size:12px}.ticket-responsibility-strip small{margin-top:4px;color:#8d98a6;font-size:9px}.resolved-review-actions{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.resolved-review-actions form{margin:0}.resolved-review-panel td{vertical-align:middle}@media(max-width:720px){.workspace-tabs{width:100%;overflow:auto}.workspace-tabs a{white-space:nowrap}.ticket-responsibility-strip{grid-template-columns:1fr}.resolved-review-actions{align-items:flex-start;flex-direction:column}}
.closed-dispatch-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:18px;padding:24px 26px;border:1px solid #dce7f1;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#f2f8fc 65%,#e8f4fa 100%);box-shadow:0 12px 32px rgba(21,56,87,.06)}.closed-dispatch-hero h2{margin:5px 0 6px}.closed-dispatch-hero p{margin:0;color:#708094;font-size:12px}.closed-window{min-width:270px;padding:14px 16px;border:1px solid rgba(37,136,183,.18);border-radius:12px;background:rgba(255,255,255,.8)}.closed-window span,.closed-window strong{display:block}.closed-window span{font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#7790a4}.closed-window strong{margin-top:5px;font-size:10px;color:#28435b}.closed-stats{margin-bottom:18px}.dispatch-filter-panel{padding:18px 20px}.dispatch-quick-periods{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:15px}.dispatch-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:12px;align-items:end}.dispatch-filter-grid .field{margin:0}.dispatch-filter-grid label{font-size:8px}.dispatch-search{grid-column:span 2}.dispatch-filter-actions{display:flex;gap:7px;align-items:center}.closed-interventions-panel{margin-top:18px}.closed-interventions-panel td{vertical-align:middle}.closed-interventions-panel td small{display:block;margin-top:4px;color:#8a97a5;font-size:9px}@media(max-width:1100px){.dispatch-filter-grid{grid-template-columns:repeat(3,1fr)}.dispatch-search{grid-column:span 2}}@media(max-width:720px){.closed-dispatch-hero{align-items:flex-start;flex-direction:column;padding:20px}.closed-window{min-width:0;width:100%}.dispatch-filter-grid{grid-template-columns:1fr 1fr}.dispatch-search{grid-column:1/-1}.dispatch-filter-actions{grid-column:1/-1}.closed-stats{grid-template-columns:1fr 1fr}}
.service-command-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:14px;padding:23px 25px;border:1px solid #d9e6f0;border-radius:18px;background:linear-gradient(125deg,#fff 0%,#f4f9fc 58%,#eaf5fa 100%);box-shadow:0 12px 32px rgba(19,54,86,.06)}.service-command-copy h2{margin:5px 0 5px}.service-command-copy p{margin:0;color:#718194;font-size:11px}.service-command-badge{display:flex;align-items:center;gap:10px;min-width:145px;padding:12px 14px;border:1px solid rgba(31,136,184,.18);border-radius:12px;background:#fff}.service-command-badge strong{font-size:25px;color:#0d91cf}.service-command-badge span{font-size:9px;font-weight:800;color:#758699}.service-filter-panel{margin-bottom:18px;padding:19px 21px}.service-search-row{display:flex;align-items:end;gap:16px;margin-bottom:16px}.service-search-main{flex:1;margin:0}.enterprise-search{display:flex;align-items:center;gap:8px;padding:5px 5px 5px 13px;border:1px solid #cfdae5;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(20,52,82,.04)}.enterprise-search:focus-within{border-color:#249bd0;box-shadow:0 0 0 3px rgba(36,155,208,.11)}.enterprise-search>span{font-size:20px;color:#7990a4}.enterprise-search input{flex:1;min-width:120px;border:0!important;box-shadow:none!important;background:transparent!important}.service-quick-filters{display:flex;gap:6px;flex-wrap:wrap;padding-bottom:2px}.service-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(115px,1fr)) auto;gap:12px;align-items:end}.service-filter-grid .field{margin:0}.service-filter-grid label,.service-search-main label{font-size:8px}.service-filter-actions{display:flex;gap:7px;align-items:center}.service-results-panel .panel-head small{display:block;margin-top:5px;color:#8794a3;font-size:9px}.service-results-panel td{vertical-align:middle}.service-results-panel td small{display:block;margin-top:4px;color:#8794a3;font-size:9px}.service-empty-result{padding:28px;text-align:center}.service-empty-result strong,.service-empty-result small{display:block}.service-empty-result small{margin-top:6px}@media(max-width:1100px){.service-search-row{align-items:stretch;flex-direction:column}.service-filter-grid{grid-template-columns:repeat(3,1fr)}.service-filter-actions{grid-column:span 3}}@media(max-width:720px){.service-command-bar{align-items:flex-start;flex-direction:column;padding:20px}.service-command-badge{width:100%}.enterprise-search{align-items:stretch;flex-wrap:wrap}.enterprise-search input{width:calc(100% - 35px)}.enterprise-search button{width:100%}.service-filter-grid{grid-template-columns:1fr 1fr}.service-filter-actions{grid-column:1/-1}.service-quick-filters{width:100%}}
.manual-ticket-layout{align-items:start}.manual-ticket-layout .field{margin-bottom:13px}.manual-ticket-policy{background:linear-gradient(145deg,#092437,#0d465c);color:#fff}.manual-ticket-policy h2{color:#fff}.policy-step{display:grid;grid-template-columns:34px 1fr;gap:11px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1)}.policy-step:last-child{border-bottom:0}.policy-step>b{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:rgba(89,211,238,.13);color:#73d9ee;font-size:9px}.policy-step strong,.policy-step span{display:block}.policy-step strong{font-size:11px}.policy-step span{margin-top:4px;color:#a9c0cb;font-size:9px;line-height:1.5}
.rule-row{display:block}.rule-row>summary{display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:pointer;list-style:none}.rule-row>summary::-webkit-details-marker{display:none}.rule-row>summary>div:first-child strong,.rule-row>summary>div:first-child small{display:block}.rule-row>summary>div:last-child{display:flex;align-items:center;gap:8px;font-size:9px;color:#788695}.rule-inline-editor{display:grid;grid-template-columns:1.2fr 1fr 80px 100px 100px 100px;gap:8px;align-items:end;margin-top:13px;padding:12px;border-radius:11px;background:#f6f9fb}.rule-inline-editor .field,.rule-inline-editor .check-row{margin:0}@media(max-width:1050px){.rule-inline-editor{grid-template-columns:1fr 1fr}}@media(max-width:600px){.rule-inline-editor{grid-template-columns:1fr}.rule-row>summary{align-items:flex-start;flex-direction:column}}
