/* SPU Interface 2 — shared visual system for the console and community app. */
:root{color-scheme:light;--navy:#102338;--navy-deep:#0b1929;--mint:#087f74;--mint-soft:#e8f5f1;--bg:#f5f7fa;--ink:#162b41;--muted:#627286;--line:#e1e7ee;--red:#c43d4f;--amber:#a96c14;--surface:#fff;--focus:#2479c9}
body.spu-console,body.spu-community{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.55;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}
.ui-icon{display:inline-block;width:19px;height:19px;vertical-align:middle;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.spu-console h1,.spu-console h2,.spu-community h1,.spu-community h2{letter-spacing:-.035em;line-height:1.18}
.spu-console h3,.spu-community h3{letter-spacing:-.015em;line-height:1.35}
.spu-console button,.spu-community button{font-family:inherit;font-weight:600;transition:background-color .15s,border-color .15s,box-shadow .15s;min-height:42px;border-radius:10px}
.spu-console button:disabled,.spu-community button:disabled{cursor:not-allowed;opacity:.5}
.spu-console .primary,.spu-community .primary,.spu-community button[type=submit]{background:var(--mint);border:1px solid var(--mint);color:#fff;box-shadow:0 2px 4px #087f7414}
.spu-console .primary:hover,.spu-community .primary:hover,.spu-community button[type=submit]:hover{background:#066b62;border-color:#066b62;color:#fff}
.spu-console .danger,.spu-community .danger{color:#b12f43;background:#fff5f6;border-color:#f2d3d9}
.spu-console input,.spu-console select,.spu-console textarea,.spu-community input,.spu-community select,.spu-community textarea{min-height:44px;border:1px solid #d4dde7;background:white;color:var(--ink);border-radius:9px;font-size:14px;padding:10px 12px;box-shadow:0 1px 2px #10233803}
.spu-console input:hover,.spu-console select:hover,.spu-console textarea:hover,.spu-community input:hover,.spu-community select:hover,.spu-community textarea:hover{border-color:#aabcca}
.spu-console label,.spu-community label{font-size:12px;font-weight:650;color:#374d63;letter-spacing:.005em}
.spu-console input[type=checkbox],.spu-community input[type=checkbox]{width:18px;height:18px;min-height:18px;box-shadow:none;accent-color:var(--mint)}
.spu-console :focus-visible,.spu-community :focus-visible{outline:3px solid #9ac9f5;outline-offset:3px}
.spu-console input:focus-visible,.spu-community input:focus-visible,.spu-console textarea:focus-visible,.spu-community textarea:focus-visible,.spu-console select:focus-visible,.spu-community select:focus-visible{outline:0;border-color:#448ecf;box-shadow:0 0 0 3px #e4f0fb}
.spu-console .eyebrow,.spu-community .eyebrow{color:var(--mint);font-size:10px;letter-spacing:.14em;font-weight:750}
.spu-console .muted,.spu-community .muted,.spu-console small,.spu-community small{color:var(--muted)}
.spu-console .card,.spu-community .card{border:1px solid var(--line);border-radius:16px;background:white;box-shadow:0 2px 5px #10233803;padding:22px}
.spu-console .card>h3{font-size:15px;margin-bottom:18px;font-weight:700;color:#233d54}
.spu-console .empty,.spu-community .empty{border:1px dashed #dbe4ec;border-radius:12px;padding:25px 18px;background:#fbfcfd;color:#667a8b;font-size:13px;text-align:center}
.spu-console .badge{font-size:10px;font-weight:650;padding:5px 9px;border-radius:7px;border:1px solid transparent;white-space:nowrap}
.spu-console .badge.service,.spu-console .badge.active,.spu-console .badge.approved{background:#e9f6ef;color:#176d49;border-color:#d3ebdc}
.spu-console .badge.break,.spu-console .badge.pending{background:#fff7e8;color:#916010;border-color:#f3e7c8}
.spu-console .badge.closed,.spu-console .badge.informed{background:#eef2f6;color:#526579;border-color:#e1e7ee}
.spu-console .badge.referred{background:#eaf2fc;color:#285f9d;border-color:#d7e6f7}
.spu-console .badge.suspended,.spu-console .badge.rejected,.spu-console .badge.deleted{background:#fceef1;color:#a63046;border-color:#f4d8df}

/* Console shell */
.spu-console .sidebar{width:244px;background:var(--navy-deep);padding:27px 17px 20px;border-right:1px solid #0e2438;z-index:70}
.spu-console .sidebar .brand{margin:0 10px 35px;gap:11px;font-size:26px;letter-spacing:-.045em}
.spu-console .logo{display:grid;place-items:center;position:static;width:42px;height:44px;border-radius:12px;background:#17394a;border:1px solid #27535e;color:#8ce1c7;box-shadow:none}
.spu-console .logo .ui-icon{width:26px;height:26px;position:static;color:inherit}
.spu-console .brand small{font-size:8px;letter-spacing:.13em;color:#9aafbf;font-weight:500;margin-top:2px}
.spu-console .group-switch{padding:14px 12px;background:#13283c;border:1px solid #243b4d;border-radius:12px;margin:0 0 27px}
.spu-console .group-switch label{color:#afbdc9;font-size:10px;letter-spacing:.04em}
.spu-console .group-switch select{font-size:12px;background:#102338;border-color:#294356;color:#f0f5f8;min-height:39px;padding:8px}
.spu-console .group-switch select option{background:#102338;color:white}
.spu-console .nav-caption{font-size:9px;color:#9dafbf;padding:0 13px;letter-spacing:.13em;margin:0 0 12px;display:block}
.spu-console #nav{display:flex;flex-direction:column;gap:5px}
.spu-console #nav button{display:flex;gap:11px;align-items:center;padding:11px 13px;background:transparent;border:1px solid transparent;color:#b9c8d5;font-size:12px;font-weight:500;border-radius:9px;min-height:44px;text-align:left;line-height:1.35}
.spu-console #nav button:hover{background:#ffffff09;color:white}
.spu-console #nav button.active{background:#173e43;color:#b0f0dc;border-color:#24534f;font-weight:650}
.spu-console #nav .nav-icon{display:inline-flex;align-items:center;justify-content:center;width:21px;color:#8ea6b8;font-size:18px}
.spu-console #nav button.active .nav-icon{color:#9de6cb}
.spu-console .sidebar-bottom{border-top:1px solid #24384a;color:#a4b8c9;padding-top:18px;font-size:10px;gap:8px}
.spu-console .sidebar-bottom small{color:#8195a8;font-size:9px}
.spu-console #nav .inspector-sos-menu{background:#432633;border:1px solid #723448;color:#ffccd4;margin-top:15px;min-height:50px;font-weight:700}
.spu-console #nav .inspector-sos-menu:hover{background:#623143;color:white}
.spu-console .main{margin-left:244px;padding:0 30px 30px;min-width:0;max-width:none;background:var(--bg)}
.spu-console .topbar{min-height:92px;padding:20px 0 18px;margin-bottom:25px;border-bottom:1px solid var(--line);background:var(--bg);gap:18px}
.spu-console #breadcrumb{font-size:10px;color:#7a8999;letter-spacing:.015em}
.spu-console .topbar h1{font-size:23px;margin-top:4px;font-weight:700}
.spu-console #avatar{background:#e5f2ef;color:#147367;border:1px solid #d1e8e2;font-size:13px;font-weight:700;width:37px;height:37px;border-radius:11px}
.spu-console #account-name{font-size:12px}.spu-console #role-label{font-size:10px;margin-top:2px}
.spu-console #logout{font-size:19px;border:1px solid #dce4ec;color:#687d91;width:37px;height:37px;min-height:37px;background:white;border-radius:10px}
.spu-console .account{gap:11px}.spu-console .sidebar-backdrop{display:none}
.spu-console #content{max-width:1600px;margin:0 auto;min-width:0}
.spu-console .hero{background:white;border:1px solid var(--line);border-radius:17px;padding:26px 28px;position:relative;overflow:hidden;box-shadow:0 2px 5px #10233803;color:var(--ink);margin-bottom:19px}
.spu-console .hero:before{content:"";position:absolute;left:0;top:25px;bottom:25px;width:4px;border-radius:0 4px 4px 0;background:#129780}
.spu-console .hero h2{color:var(--ink);font-size:29px;letter-spacing:-.045em;font-weight:700;margin:8px 0 7px}
.spu-console .hero .eyebrow{color:var(--mint)}.spu-console .hero p{color:#64798b;font-size:12px;margin:0}
.spu-console .hero-date{font-size:11px;line-height:1.5;color:#7b8a99;border:1px solid #e8edf2;background:#f9fbfc;border-radius:12px;padding:12px 18px;min-width:140px}
.spu-console .hero-date strong{font-size:24px;font-weight:600;color:#213c50;letter-spacing:-.025em}
.spu-console .community-admin-access{margin:0 0 22px;display:flex;justify-content:flex-end}
.spu-console .community-admin-link{display:inline-flex;align-items:center;gap:12px;background:white;border:1px solid #d9e4e9;border-radius:9px;padding:10px 15px;color:#146f66;font-size:12px;text-decoration:none;box-shadow:none;font-weight:600}
.spu-console .community-admin-link:hover{border-color:#9bc9be;background:#f5fbf8}
.spu-console .stats{gap:15px;margin:19px 0 26px}
.spu-console .stat{display:block;background:white;border:1px solid var(--line);border-radius:14px;padding:18px 19px;min-height:147px;color:var(--ink);box-shadow:0 2px 5px #10233803;text-align:left}
.spu-console .stat:hover{border-color:#bdcdd9;background:#fff}
.spu-console .stat-top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:30px}
.spu-console .stat-top small{font-size:11px;font-weight:550;color:#62758a}
.spu-console .stat-icon{display:grid;place-items:center;background:#eef5f5;width:33px;height:33px;border-radius:10px;color:#328d80;font-size:18px}
.spu-console .stat strong{font-size:33px;color:#15314a;font-weight:650;line-height:1.15;letter-spacing:-.04em;margin:12px 0 6px;font-variant-numeric:tabular-nums}
.spu-console .stat p,.spu-console .stat-sub{font-size:10px;color:#7d8b99;line-height:1.5;margin:0;font-weight:400}
.spu-console .stat-detail-hint{font-size:10px;color:#348a80}
.spu-console .section-heading{margin:28px 0 17px;gap:16px;align-items:center;flex-wrap:wrap}
.spu-console .section-heading h2{font-size:20px;font-weight:700;margin:0}
.spu-console .section-heading p{font-size:12px;margin:7px 0 0;color:#6c7c8f;line-height:1.6}
.spu-console .section-heading>div+div{display:flex;gap:8px;flex-wrap:wrap}
.spu-console .module-grid{gap:16px}.spu-console .module-card{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:23px;background:white;border:1px solid var(--line);border-radius:15px;min-height:176px;position:relative;text-align:left;box-shadow:0 2px 5px #10233803}
.spu-console .module-card:hover{background:#fcfefd;border-color:#a8cfc2;box-shadow:0 5px 18px #10233807}
.spu-console .module-icon{display:grid;place-items:center;width:40px;height:40px;background:#eaf5f0;border-radius:12px;color:#268c76;font-size:24px;margin-bottom:3px}
.spu-console .module-icon .ui-icon{width:22px;height:22px}
.spu-console .module-card strong{font-size:15px;font-weight:650;color:#1f3a4e}
.spu-console .module-card small{font-size:11px;line-height:1.65;font-weight:400;max-width:250px}
.spu-console .module-card .arrow{position:absolute;right:22px;top:24px;font-size:19px;color:#9aabb7}
.spu-console .columns{gap:20px;align-items:start}.spu-console .columns>*,.spu-console .central-book-layout>*{min-width:0}
.spu-console .table-scroll{border:1px solid #e6ecf2;border-radius:10px;background:white;overflow:auto;max-width:100%}
.spu-console table{width:100%;border-collapse:collapse;font-size:12px}
.spu-console th{background:#f7f9fb;border-bottom:1px solid #e2e9f0;color:#63768a;font-size:10px;font-weight:650;letter-spacing:.025em;padding:12px 13px;white-space:nowrap}
.spu-console td{border-bottom:1px solid #edf1f5;padding:13px;color:#30495e;font-size:12px;line-height:1.5}
.spu-console tr:last-child td{border-bottom:0}.spu-console tbody tr:hover{background:#fafcfd}
.spu-console td strong{color:#233d52;font-weight:600}.spu-console td small{font-size:10px;margin-top:4px;line-height:1.55}
.spu-console td button{font-size:10px;min-height:32px;padding:6px 9px;margin:2px 4px 2px 0;border-color:#e0e8ef;background:#fff}
.spu-console td button.danger{color:#b0394d;background:#fff9fa;border-color:#f1dce1}
.spu-console .toolbar{gap:12px;padding:14px 17px;border:1px solid var(--line);background:white;border-radius:12px;margin:20px 0}
.spu-console .toolbar label{margin:0}.spu-console .toolbar input,.spu-console .toolbar select{font-size:12px;min-height:39px}
.spu-console .shift-banner{padding:19px 21px;background:#edf7f2;border:1px solid #cfe8dc;border-radius:14px;gap:14px}
.spu-console .shift-banner strong{font-size:13px;color:#22634e}.spu-console .shift-banner small{color:#608474;font-size:11px;font-weight:400}
.spu-console .central-quick-actions button{font-size:11px;min-height:37px;padding:8px 12px}
.spu-console .central-quick-actions .primary{background:white;color:#127867;border-color:#bcded1;box-shadow:none}
.spu-console .central-shift-actions>[data-action=handover]{background:#087f74;color:white;border-color:#087f74}
.spu-console .panic-alert-scroll{padding-right:7px}.spu-console .panic-scroll-hint{font-size:11px;color:#728498;line-height:1.6}
.spu-console .alert-item{border:1px solid #eee3ca;border-left:3px solid #d5a041;border-radius:11px;background:#fffcf6;padding:17px;box-shadow:none}
.spu-console .alert-item.urgent,.spu-console .alert-item.emergency{border-color:#efd5dc;border-left-color:#cb5267;background:#fff8f9}
.spu-console .alert-item.vif{border-color:#e2d6ef;border-left-color:#8c64b5;background:#fcf9ff}
.spu-console .alert-item h4{font-size:12px;color:#203c52;line-height:1.8;margin-bottom:8px}
.spu-console .alert-item p{color:#465f73;font-size:12px;line-height:1.7}.spu-console .alert-item small{color:#788a9a;font-size:10px}
.spu-console .alert-item button{font-size:11px;min-height:37px;margin-top:7px;color:#277d70;border-color:#d5e5df;background:white}
.spu-console .panic-map{border:1px solid #dfe7ed;border-radius:10px;box-shadow:none}
.spu-console .novelty-scroll,.spu-console .central-personnel-scroll,.spu-console .referral-history-scroll,.spu-console .closed-books-scroll{border:1px solid #e4ebf1;border-radius:10px;background:white}
.spu-console .novelty-scroll .table-scroll,.spu-console .central-personnel-scroll .table-scroll,.spu-console .referral-history-scroll .table-scroll{border:0;border-radius:0}
.spu-console .central-book-layout{gap:20px;margin-top:28px;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}
.spu-console .central-book-column>.card,.spu-console .central-personnel-column>.card{padding:19px}
.spu-console .closed-books-scroll>.row{padding:14px}.spu-console .report-link{color:#157b6c;border-color:#d5e7df;background:#f9fdfa;min-height:36px;font-weight:600}
.spu-console .referral-case-note{border-radius:9px;background:#f2f8f5;border-left-color:#6dae97}
.spu-console .row{border-color:#e9eef3}.spu-console .row strong{font-size:12px}.spu-console .row small{font-size:10px;line-height:1.6}
.spu-console .round-map{border-radius:11px;border-color:#dde6ed}.spu-console .round-heading{gap:12px}.spu-console .round-point{padding:8px 0;margin:5px 0}.spu-console .point-index{background:#edf5f2;border-radius:10px;color:#2a8b74}
.spu-console .warehouse-bubble{border-radius:14px;min-height:108px;box-shadow:0 2px 5px #10233803;border-color:#e0e8ee;background:white;padding:21px}
.spu-console .warehouse-bubble-icon{border-radius:12px;background:#edf5f1;color:#2b8a73}
.spu-console .warehouse-bubble-copy strong{font-size:14px}.spu-console .warehouse-bubble-copy small{font-size:11px}
.spu-console .warehouse-bubble.is-open{background:#f1f8f4;border-color:#8ec5b1}
.spu-console .calendar-scroll{border-color:#e0e8ef;border-radius:12px}.spu-console .calendar-weekday{font-size:10px;color:#698092;background:#f7f9fb;padding:12px}.spu-console .calendar-day{min-height:130px;padding:10px}.spu-console .calendar-date{color:#385369;font-size:12px}.spu-console .calendar-shift{border-radius:7px;background:#ebf3fc;border-left-color:#5b91c3}.spu-console .calendar-rest-day{background:#ecf8ef;border-left-color:#78b794}.spu-console .calendar-legend{font-size:11px;color:#6a7f91}
.spu-console dialog,.spu-community dialog{background:white;border:1px solid #dfe7ef;border-radius:19px;padding:27px;box-shadow:0 24px 90px #10233830;color:var(--ink)}
.spu-console dialog::backdrop,.spu-community dialog::backdrop{background:#0e203c66;backdrop-filter:blur(3px)}
.spu-console .modal-heading{border-bottom:1px solid #e7edf2;padding-bottom:17px;margin-bottom:21px}.spu-console .modal-heading h2{font-size:20px}.spu-console #modal-close{min-height:32px;width:32px;height:32px;background:#f3f6f9;border-radius:9px;color:#6b8093;padding:0}
.spu-console .form-row{gap:15px}.spu-console .checks{gap:8px 16px}.spu-console .checks label{font-weight:500;color:#4a6278}
.spu-console #modal-form>.primary{margin-top:14px;min-height:45px}.spu-console .form-error{font-size:12px;color:#b7354a}
.spu-console #notice{background:#edf8f2;border:1px solid #cce7d8;border-radius:11px;font-size:12px;line-height:1.65;color:#25634d;padding:13px 17px}.spu-console #notice.error{background:#fff3f5;border-color:#efcfd7;color:#aa3046}
.spu-console footer{font-size:10px;color:#8998a7;border-top:1px solid #e4eaf0;padding-top:18px;margin-top:32px;gap:15px}
.spu-console .panic-chart,.spu-console .panic-activity-layout{font-size:12px}.spu-console .panic-chart-label,.spu-console .panic-hour-label{font-size:11px}.spu-console .panic-chart-track{background:#f0f4f7;border-radius:5px}.spu-console .panic-chart-summary strong{font-weight:650;letter-spacing:-.04em}

/* SPU login */
.spu-console .auth-screen{grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);min-height:100dvh;background:#fff}
.spu-console .auth-intro{position:relative;overflow:hidden;background:#102338;padding:46px clamp(28px,6vw,90px);min-height:100dvh;color:#fff}
.spu-console .auth-intro:before{content:"";position:absolute;width:500px;height:500px;border:1px solid #ffffff0b;border-radius:50%;right:-230px;bottom:-140px;box-shadow:0 0 0 70px #ffffff03,0 0 0 140px #ffffff02;pointer-events:none}
.spu-console .auth-intro .brand{position:relative;margin:0;letter-spacing:-.04em;gap:12px}
.spu-console .auth-intro .eyebrow{color:#8bcebc}.spu-console .auth-intro h1{font-size:clamp(40px,4.2vw,64px);font-weight:650;letter-spacing:-.055em;line-height:1.09;margin:24px 0;color:white}.spu-console .auth-intro h1 em{color:#88d7ba}
.spu-console .auth-intro p{color:#a9bdcf;font-size:14px;line-height:1.85;max-width:330px}.spu-console .auth-intro>small{color:#829db3;font-size:10px;position:relative}
.spu-console .intro-tags{gap:8px;margin-top:28px}.spu-console .intro-tags span{border:1px solid #ffffff20;background:#ffffff05;padding:7px 12px;border-radius:7px;color:#bdd0df;font-size:10px}
.spu-console .login-panel{width:min(100%,430px);padding:38px}.spu-console .login-panel h2{font-size:31px;letter-spacing:-.045em;font-weight:700;margin:13px 0}.spu-console .login-panel>p{font-size:13px;line-height:1.75;color:#718194;margin-bottom:25px}
.spu-console #login-form{gap:11px}.spu-console #login-form label{font-size:12px;margin:0}.spu-console #login-form input{margin-top:7px;min-height:48px;background:white}.spu-console #login-submit{min-height:48px;font-size:13px;margin-top:9px}.spu-console .password button{min-height:37px;font-size:11px;color:#527085}.spu-console .login-note{border-top:1px solid #e4eaf0;background:transparent;padding:20px 0 0;margin-top:23px;gap:10px}.spu-console .login-note p{color:#8a98a5;font-size:11px;line-height:1.7}

/* Community: mobile first */
.spu-community{--muted:#61778a;background:#f4f7fa}
.spu-community>header{background:#fff;color:#163449;border-bottom:1px solid #dfe7ed;padding:18px max(calc((100vw - 1080px)/2),24px);min-height:83px;gap:18px;position:relative;z-index:10}
.spu-community>header a{display:flex;align-items:center;gap:11px;font-size:17px;letter-spacing:-.025em;font-weight:650;color:#15374c;line-height:1.3}
.spu-community .community-brand-mark{display:grid;place-items:center;width:41px;height:43px;border-radius:12px;background:#e9f5ef;border:1px solid #d7e9df;color:#188568;flex-shrink:0}
.spu-community .community-brand-mark .ui-icon{width:25px;height:25px}
.spu-community .community-brand-copy{font-size:17px;letter-spacing:-.025em;color:#15374c}
.spu-community .community-brand-copy>span{font-size:10px;letter-spacing:.035em;color:#7c909f;font-weight:450;margin-top:4px;display:block}
.spu-community #account{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:550;color:#526e81}
.spu-community #account button{font-size:11px;min-height:35px;padding:7px 12px;color:#5b7183;border:1px solid #dce5ed;background:#fff}
.spu-community main{max-width:1120px;margin:auto;padding:35px 24px 45px}
.spu-community main>h1{font-size:34px;font-weight:700;margin:8px 0 9px;color:#16354a;letter-spacing:-.05em}
.spu-community #connection{font-size:11px;color:#68887b;padding-bottom:17px;border-bottom:1px solid #e0e9ed;margin-bottom:26px}
.spu-community .grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:25px;align-items:start}
.spu-community .grid>section{min-width:0}.spu-community .grid>section>p{font-size:13px;line-height:1.75;max-width:500px;color:#61798b}
.spu-community .pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #cfe8d9;background:#eaf7ef;color:#2d7957;padding:5px 10px;font-size:10px;line-height:1.55;border-radius:7px;font-weight:550}
.spu-community .buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:21px}
.spu-community .emergency{background:white;border:1px solid #dce5ec;border-radius:15px;min-height:130px;padding:20px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:13px;box-shadow:0 2px 4px #15364b03;font-size:13px;letter-spacing:.025em;font-weight:750;color:#29465c;text-align:left;position:relative;overflow:hidden}
.spu-community .emergency>span{display:grid;place-items:center;width:39px;height:39px;background:#fceef0;border:1px solid #f6dfe4;border-radius:12px;color:#bb5366;margin:0;font-size:23px}
.spu-community .emergency .ui-icon{width:23px;height:23px}
.spu-community .emergency:after{content:"↗";position:absolute;right:17px;top:18px;color:#a3b4bf;font-size:19px;font-weight:400}
.spu-community .emergency:hover{border-color:#bd6f7e;background:#fffafb;box-shadow:0 4px 14px #a63b4b09}
.spu-community .emergency[data-kind=SOSPECHA]>span{background:#fff6e8;border-color:#f6e9ce;color:#b28a34}
.spu-community .emergency[data-kind=ACCIDENTE]>span{background:#fff2e8;border-color:#f5e3d4;color:#bd783c}
.spu-community .emergency[data-kind=SALUD]>span{background:#edf5fd;border-color:#dcebf9;color:#4d88be}
.spu-community .emergency[data-kind=INCENDIO]{grid-column:1/-1;min-height:100px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:17px}
.spu-community .emergency[data-kind=INCENDIO]>span{background:#fff1e8;color:#bf6e37;border-color:#f4e0d3}
.spu-community .vif-panel{border:1px solid #dccbe9;background:#f7f1fc;border-radius:16px;padding:13px;margin-top:22px}
.spu-community .vif-panel .emergency.vif{width:100%;background:#6e438f;border-color:#6e438f;color:#fff;min-height:155px;font-size:19px;border-radius:11px;box-shadow:none}
.spu-community .vif-panel .emergency.vif>span{background:#ffffff14;border-color:#ffffff24;color:#fff}.spu-community .vif-panel .emergency.vif:after{color:#d5c0e6}
.spu-community .vif-panel .vif small{color:#eee1f8;font-size:11px;font-weight:450;line-height:1.6}
.spu-community .vif-panel p{font-size:11px;color:#74598b;padding:12px 4px 0;line-height:1.7}
.spu-community .card{margin:20px 0;padding:21px;border-radius:15px}.spu-community .card h2{font-size:17px;font-weight:650;color:#234157;letter-spacing:-.025em;margin-bottom:16px}
.spu-community .card>p{font-size:12px;line-height:1.7;color:#698195}
.spu-community article{padding:17px 0;border-color:#e7edf2}.spu-community article h3{font-size:15px;color:#25465a;margin:12px 0 7px}.spu-community article small{font-size:10px;line-height:1.7}.spu-community article p{font-size:12px;color:#698091;line-height:1.7}
.spu-community article a{font-size:11px;color:#16816c;display:inline-block;margin-top:8px}
.spu-community .action{background:#eff8f3;border:1px solid #dceee3;border-left:3px solid #6dae91;border-radius:9px;padding:13px;margin-top:16px}.spu-community .action b{font-size:11px;color:#2c6e51}.spu-community .action small{font-size:10px;color:#5f8873;margin-top:5px}
.spu-community #alert-history{padding:0;overflow:hidden}.spu-community #alert-history summary{cursor:pointer;padding:17px 21px;font-size:12px;font-weight:600;color:#587184;list-style-position:inside;background:#fbfcfd}.spu-community #event-history{padding:0 21px}.spu-community #event-history>p{font-size:12px;padding:14px 0}
.spu-community .chat{max-height:280px;padding:5px 2px;scrollbar-gutter:stable}.spu-community .chat p{border:1px solid #e7edf2;background:#f7f9fb;border-radius:11px;padding:12px 14px;font-size:12px;line-height:1.65;color:#4d697e}.spu-community .chat b{font-size:10px;font-weight:650;color:#258174}.spu-community .chat small{font-size:9px;margin-top:6px;color:#8c9da9}
.spu-community #chat{border-top:1px solid #e7edf2;padding-top:9px;margin-top:13px}.spu-community #chat label{font-size:11px}.spu-community #chat textarea{min-height:80px;font-size:13px;resize:vertical}.spu-community #chat button{font-size:12px;min-height:42px;margin-top:4px;width:100%}
.spu-community .card small{line-height:1.75}.spu-community form{font-size:13px}.spu-community form label{margin:13px 0 5px}.spu-community form button[type=submit]{width:100%;font-size:12px;min-height:45px;margin-top:12px}
.spu-community form[data-endpoint] label{font-size:11px}.spu-community form[data-endpoint] h2{margin-bottom:20px}
.spu-community .intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:70px;max-width:960px;margin:55px auto 25px;align-items:start}
.spu-community .intro>.eyebrow{grid-column:1;margin-top:45px;align-self:end;margin-bottom:15px}
.spu-community .intro>h1{grid-column:1;font-size:49px;font-weight:650;line-height:1.11;letter-spacing:-.055em;margin:0 0 20px;color:#173b50;max-width:350px}
.spu-community .intro>p:not(.eyebrow){grid-column:1;line-height:1.9;color:#72889a;font-size:14px;margin:0;max-width:335px}
.spu-community .intro>#auth{grid-column:2;grid-row:1/span 4;margin:0;padding:29px;background:white;border:1px solid #dde7ee;border-radius:19px;box-shadow:0 8px 28px #183e5205}
.spu-community #auth h2{font-size:22px;letter-spacing:-.035em;margin:0 0 22px;font-weight:650}
.spu-community #auth input{min-height:48px;margin-top:7px;font-size:16px}.spu-community #auth label{font-size:12px}.spu-community #auth small{font-size:10px;color:#8495a3;margin-top:-1px}.spu-community #auth button{min-height:48px;font-size:13px;margin-top:18px}
.spu-community footer{border-top:1px solid #e0e8ed;font-size:10px;line-height:1.8;color:#8395a4;margin-top:32px;padding-top:20px}
.spu-community #notice{border-radius:12px;padding:14px 19px;background:#173d50;border:1px solid #295164;box-shadow:0 8px 30px #10233822;font-size:12px;line-height:1.7;max-width:min(90vw,480px);bottom:22px}
.spu-community dialog h2{font-size:23px;letter-spacing:-.035em;color:#18384c}.spu-community dialog p{font-size:13px;line-height:1.8;color:#698193}.spu-community dialog #send{background:#b63f53;border:1px solid #b63f53;color:#fff;min-height:46px;border-radius:10px;padding:11px 20px;font-size:13px}.spu-community dialog #cancel{min-height:46px;background:white;border:1px solid #dfe6ed;color:#627b8e;font-size:13px}.spu-community dialog #sending{font-size:11px}

/* Small screens, accessible movement, and embedded administration. */
@media(min-width:1700px){.spu-console .main{padding-left:45px;padding-right:45px}.spu-console .topbar{max-width:1600px;margin-left:auto;margin-right:auto}}
@media(max-width:1100px){.spu-console .main{padding-left:22px;padding-right:22px}.spu-console .stats{gap:11px}.spu-console .stat{padding:17px 15px}.spu-console .central-book-layout{grid-template-columns:minmax(0,1fr)}.spu-console .topbar h1{font-size:21px}.spu-console .section-heading>div+div{width:100%}}
@media(max-width:900px){.spu-console .sidebar{width:225px;padding-left:13px;padding-right:13px}.spu-console .main{margin-left:225px}.spu-console .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.spu-console .module-grid{grid-template-columns:1fr}.spu-console .columns{grid-template-columns:1fr}.spu-community .grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px}.spu-community .intro{column-gap:35px;margin-top:35px}.spu-community .intro>h1{font-size:42px}}
@media(max-width:760px){
 .spu-console .main{margin-left:0;padding:0 16px calc(24px + env(safe-area-inset-bottom))}.spu-console .sidebar{width:260px;translate:-100% 0;padding:25px 17px 20px;box-shadow:none}.spu-console .sidebar.open{translate:0;box-shadow:20px 0 70px #10233825}
 .spu-console:has(.sidebar.open) .sidebar-backdrop{display:block;position:fixed;inset:0;background:#0b203b75;backdrop-filter:blur(2px);border:0;border-radius:0;z-index:60;padding:0;width:100%;height:100%}
 .spu-console .topbar{min-height:81px;gap:10px;padding:15px 0;margin-bottom:19px}.spu-console .topbar h1{font-size:18px}.spu-console #breadcrumb{font-size:9px}.spu-console #menu{display:inline-flex;align-items:center;justify-content:center;width:34px;min-width:34px;min-height:34px;font-size:21px;color:#536f83;background:white;border:1px solid #e0e7ed;border-radius:9px;padding:0}
 .spu-console .account{gap:7px;margin-left:auto}.spu-console #avatar{width:31px;height:31px;font-size:11px;border-radius:9px}.spu-console #logout{width:31px;height:31px;min-height:31px;font-size:17px}.spu-console .account>div{display:none}
 .spu-console .hero{padding:21px 19px;margin-bottom:15px;border-radius:14px;gap:12px}.spu-console .hero h2{font-size:25px}.spu-console .hero .eyebrow{font-size:8px;letter-spacing:.1em}.spu-console .hero p{font-size:11px}.spu-console .hero-date{padding:8px 10px;min-width:99px;font-size:9px;border-radius:9px}.spu-console .hero-date strong{font-size:20px}
 .spu-console .community-admin-access{justify-content:stretch;margin-bottom:16px}.spu-console .community-admin-link{font-size:11px;justify-content:space-between;width:100%;padding:10px 13px}
 .spu-console .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 22px}.spu-console .stat{padding:15px 13px;min-height:139px;border-radius:12px}.spu-console .stat strong{font-size:29px}.spu-console .stat-top small{font-size:10px;line-height:1.5;max-width:91px}.spu-console .stat-icon{width:27px;height:27px;border-radius:8px}.spu-console .stat-icon .ui-icon{width:16px;height:16px}.spu-console .stat-sub{font-size:9px}.spu-console .stat-detail-hint{display:block;margin-top:5px;font-size:9px}
 .spu-console .section-heading{margin-top:23px;gap:13px}.spu-console .section-heading h2{font-size:19px}.spu-console .section-heading p{font-size:11px}.spu-console .card{padding:17px;border-radius:13px}.spu-console .card>h3{font-size:14px;margin-bottom:14px}.spu-console .module-card{min-height:150px;padding:20px}.spu-console .module-card strong{font-size:14px}.spu-console .module-card small{font-size:11px;max-width:100%}
 .spu-console .toolbar{padding:12px;gap:10px}.spu-console .toolbar label{min-width:0;flex:1}.spu-console .toolbar input,.spu-console .toolbar select{font-size:12px;width:100%}.spu-console .section-heading button{font-size:11px;padding:9px 11px;min-height:39px}.spu-console td{font-size:11px;padding:11px}.spu-console th{font-size:9px;padding:11px}.spu-console table{min-width:460px}.spu-console .central-personnel-scroll table{min-width:0}.spu-console .novelty-scroll table{min-width:450px}
 .spu-console .warehouse-bubbles{gap:11px;margin-top:21px}.spu-console .warehouse-bubble{padding:14px 12px;min-height:110px;gap:9px}.spu-console .warehouse-bubble-copy strong{font-size:12px}.spu-console .warehouse-bubble-copy small{font-size:10px}.spu-console .warehouse-bubble-icon{width:31px;height:31px;border-radius:9px;font-size:18px}.spu-console .warehouse-bubble-chevron{font-size:17px}
 .spu-console .shift-banner{padding:16px;gap:13px}.spu-console .central-shift-actions{width:100%;margin-left:0}.spu-console .central-shift-actions>[data-action=handover]{min-height:43px}.spu-console .central-quick-actions button{font-size:11px;min-height:39px}.spu-console .alert-item{padding:14px}.spu-console .alert-item p{font-size:12px}.spu-console .central-book-column>.card,.spu-console .central-personnel-column>.card{padding:16px}
 .spu-console .auth-screen{grid-template-columns:1fr}.spu-console .auth-intro{min-height:auto;padding:25px 28px 30px;gap:24px}.spu-console .auth-intro .brand{font-size:24px}.spu-console .auth-intro h1{font-size:36px;line-height:1.1;margin:15px 0 10px}.spu-console .auth-intro h1 br{display:none}.spu-console .auth-intro h1 br:after{content:' '}.spu-console .auth-intro p{font-size:12px;line-height:1.75;max-width:100%;margin:0}.spu-console .auth-intro>small,.spu-console .intro-tags{display:none}.spu-console .auth-intro .eyebrow{font-size:8px}
 .spu-console .login-panel{padding:30px 27px 38px;max-width:470px;width:100%}.spu-console .login-panel h2{font-size:27px}.spu-console .login-panel>p{font-size:12px}.spu-console .login-panel .eyebrow{font-size:9px}
 .spu-console dialog,.spu-community dialog{padding:21px;border-radius:17px;max-width:calc(100vw - 24px)}.spu-console .modal-heading h2{font-size:18px}.spu-console .form-row{grid-template-columns:1fr}.spu-console #modal-form input,.spu-console #modal-form select,.spu-console #modal-form textarea{font-size:16px}
 .spu-community>header{padding:15px 18px;min-height:75px;gap:10px}.spu-community>header a{gap:9px;font-size:16px}.spu-community .community-brand-mark{width:36px;height:38px;border-radius:10px}.spu-community .community-brand-copy>span{font-size:9px}.spu-community #account{font-size:10px;gap:7px;max-width:43%;flex-wrap:wrap;justify-content:flex-end}.spu-community #account button{padding:5px 9px;font-size:10px;min-height:30px}
 .spu-community main{padding:27px 18px 35px}.spu-community main>h1{font-size:30px}.spu-community .grid{grid-template-columns:minmax(0,1fr);gap:0}.spu-community .grid>section>p{font-size:12px;line-height:1.75}.spu-community #connection{font-size:10px;line-height:1.7;margin-bottom:22px}.spu-community .eyebrow{font-size:9px}.spu-community .pill{font-size:9px}.spu-community .buttons{gap:11px;margin-top:20px}.spu-community .emergency{min-height:129px;padding:18px;border-radius:14px;font-size:12px;gap:13px}.spu-community .emergency>span{width:36px;height:36px;border-radius:11px}.spu-community .emergency:after{font-size:16px;right:15px;top:15px}.spu-community .emergency[data-kind=INCENDIO]{min-height:91px}
 .spu-community .card{margin:20px 0;padding:19px;border-radius:14px}.spu-community .card h2{font-size:16px}.spu-community .chat{max-height:240px}.spu-community .grid>section+section>.card:first-child{margin-top:0}.spu-community #alert-history summary{padding:16px 19px;font-size:12px}.spu-community #event-history{padding:0 19px}.spu-community footer{font-size:10px;line-height:1.85;margin-top:24px}
 .spu-community .intro{display:block;max-width:470px;margin:11px auto 10px}.spu-community .intro>.eyebrow{margin:8px 0 17px}.spu-community .intro>h1{font-size:38px;line-height:1.12;max-width:320px;margin:0 0 14px}.spu-community .intro>p:not(.eyebrow){font-size:12px;line-height:1.85;max-width:340px;margin-bottom:26px}.spu-community .intro>#auth{padding:24px 21px;border-radius:16px;margin:0}.spu-community #auth h2{font-size:21px}.spu-community #auth input{font-size:16px;min-height:48px}.spu-community #auth small{font-size:10px}.spu-community #auth button{min-height:47px;font-size:13px}
}
@media(max-width:370px){.spu-console .main{padding-left:12px;padding-right:12px}.spu-console .hero-date{display:none}.spu-console .hero h2{font-size:25px}.spu-console .topbar h1{font-size:16px}.spu-console .stat{padding:14px 11px}.spu-community main{padding-left:14px;padding-right:14px}.spu-community .emergency{padding:16px;font-size:11px}.spu-community .intro>h1{font-size:35px}.spu-community .community-brand-copy>span{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.spu-console .sidebar,.spu-console .topbar,.spu-console .sidebar-backdrop,.spu-console footer{display:none!important}.spu-console .main{margin:0;padding:0}.spu-console .card{break-inside:avoid;box-shadow:none}}
/* Keep operational text readable on compact screens. */
@media(max-width:760px){.spu-console td{font-size:12px}.spu-console .alert-item small{font-size:11px}.spu-community article small{font-size:11px}.spu-community .action small{font-size:11px}.spu-community #account{font-size:11px}}

/* Bandejas de organismos externos */
.spu-console .agency-history-scroll{overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border:1px solid #e4ebf1;border-radius:10px;max-height:190px}.spu-console .agency-history-scroll .table-scroll{overflow:visible;border:0;border-radius:0}.spu-console .agency-history-scroll th{position:sticky;top:0;z-index:1;background:#edf3f7}.spu-console .agency-history-scroll:focus-visible{outline:2px solid #168779;outline-offset:3px}.agency-case-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.agency-case-copy{padding:16px;background:#f4f8fa;border-radius:10px;margin:18px 0}.agency-case-copy p,.referral-case-note p{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:760px){.agency-case-layout{grid-template-columns:1fr}.spu-console .agency-history-scroll table{min-width:450px}}

.agency-case-layout>.panic-map{width:100%;max-width:none;float:none;margin:0}.agency-case-layout>.panic-map iframe{width:100%;height:250px}@media(max-width:760px){.spu-console .agency-history-scroll table{min-width:0}.spu-console .agency-history-scroll table,.spu-console .agency-history-scroll tbody,.spu-console .agency-history-scroll tr{display:block;width:100%}.spu-console .agency-history-scroll thead{display:none}.spu-console .agency-history-scroll td{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;align-items:center;white-space:normal;overflow-wrap:anywhere;padding:9px 12px}.spu-console .agency-history-scroll td::before{content:attr(data-label);font-size:10px;font-weight:700;color:#6b8194}.spu-console .agency-history-scroll td button{justify-self:start}.spu-console .agency-history-scroll tr+tr{border-top:1px solid #dfe7ed}}

.spu-console .brand .logo.uploaded-logo{background:white;border-color:#dbe7ee;padding:4px}.brand .logo img{width:100%;height:100%;object-fit:contain}.municipal-logo{display:block;width:100%;height:70px;object-fit:contain;background:white;border-radius:9px;padding:8px;margin-bottom:12px}.municipal-logo[hidden]{display:none}.vehicle-inspection-card{padding:16px;border:1px solid #e0e9f0;border-radius:10px;margin:12px 0;background:#fbfdfe}.vehicle-inspection-card h4{margin:0 0 8px}.vehicle-inspection-card small{color:#718797}.vehicle-check-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid #e2eaf0}.route-points{display:flex;align-items:center;gap:20px;background:#eef7f4;padding:16px;border-radius:9px;margin:14px 0}.route-points div{flex:1}.route-points strong,.route-points small{display:block;overflow-wrap:anywhere}.vehicle-saved-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.vehicle-saved-photos img{width:100%;height:160px;object-fit:cover;border-radius:9px}.spu-console #vehicle-photo-preview img{width:120px;height:100px;object-fit:cover}@media(max-width:650px){.vehicle-check-row{grid-template-columns:1fr}.route-points{gap:10px;padding:12px}.vehicle-inspection-card button{margin-top:8px;width:100%}}

#notification-sound-status{margin:0;padding:10px 22px;background:#fff6df;color:#654f20;font:500 12px/1.6 system-ui,sans-serif;border-bottom:1px solid #eadbb6}

.spu-community .resident-alert-scroll{display:flow-root;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;max-height:360px}.spu-community .resident-alert-scroll:focus-visible{outline:2px solid #16816c;outline-offset:4px;border-radius:5px}

.spu-console .sidebar .brand.custom-brand{width:100%;min-height:84px;justify-content:center;background:white;border-radius:12px;padding:10px}.spu-console .sidebar-custom-logo{display:block;width:100%;height:72px;object-fit:contain}

.spu-console .fleet-pdf-scroll{max-height:180px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border:1px solid #e1e9ef;border-radius:10px}.spu-console .fleet-pdf-scroll>.row{margin:0;padding:14px}.spu-console .fleet-pdf-scroll .report-link{white-space:nowrap}.spu-console .fleet-pdf-scroll:focus-visible{outline:2px solid #14816f;outline-offset:3px}

.spu-console .central-panel{margin-top:20px}.spu-console .central-panel[hidden]{display:none}.spu-console .central-panel>.card{margin-top:0}.spu-console .central-bubble.needs-attention:not(.is-open){border-color:#e1b674;background:#fffbf2}.spu-console .central-bubble.needs-attention .warehouse-bubble-copy small{color:#a06c25;font-weight:700}.spu-console .central-bubbles{margin-bottom:24px}.spu-console .central-panel .central-book-column{width:100%}.spu-console .central-panel .central-personnel-scroll{max-height:340px}

.team-personnel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.team-personnel-category{padding:16px;border:1px solid #dce7ee;background:#f8fbfc;border-radius:12px;min-width:0}.team-personnel-category>label{margin-top:0}.team-selected-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.team-selected-person{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #d7e7e2;border-radius:9px;background:white;font-size:12px;color:#234759}.team-selected-person>span{min-width:0;overflow-wrap:anywhere}.team-selected-person small{display:block;margin-top:4px;color:#658391;font-size:10px}.spu-console .team-person-remove{flex:0 0 28px;display:inline-flex;align-items:center;justify-content:center;width:28px;min-height:28px;height:28px;padding:0;border-radius:7px;font-size:18px;background:#f3f7f8;color:#647d89}.team-picker-empty{margin:4px 0;font-size:11px;color:#748a98}.team-personnel-category select{background:white}@media(max-width:650px){.team-personnel-grid{grid-template-columns:1fr}.team-personnel-category{padding:14px}}

.summary-detail-total{padding:16px;background:#eef7f4;border:1px solid #d4e9e1;border-radius:10px;color:#27594e;font-size:13px}.summary-detail-total strong{font-size:27px;margin-right:8px;font-variant-numeric:tabular-nums}.summary-detail .table-scroll td{white-space:normal;overflow-wrap:anywhere}.summary-detail .table-scroll{margin:16px 0}

.summary-alert-breakdown .table-scroll table{min-width:0;width:100%;table-layout:fixed}.summary-alert-breakdown th:last-child,.summary-alert-breakdown td:last-child{width:23%;text-align:right}.summary-alert-breakdown th,.summary-alert-breakdown td{white-space:normal;overflow-wrap:anywhere}
