:root{--forest:#31513f;--forest2:#3f6650;--green:#779782;--sage:#8da694;--mint:#edf4ef;--mint2:#f5f9f5;--red:#a9423d;--redlight:#fbefee;--gold:#cf9b37;--ink:#203027;--text:#425248;--muted:#87968a;--border:#dce6de;--bg:#f3f6f3;--white:#fff;--radius:16px;--shadow:0 12px 38px rgba(30,65,42,.055)}
*{box-sizing:border-box}html{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}h1,h2,h3,p{margin-top:0}.hidden{display:none!important}.muted{color:var(--muted)}.overline{font-size:.69rem;color:var(--forest2);font-weight:850;letter-spacing:.14em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;font-size:.83rem;border:1px solid var(--border);border-radius:10px;font-weight:750;transition:.15s;background:white;color:var(--forest)}.btn:hover{filter:brightness(.965);transform:translateY(-1px)}.btn.primary{background:var(--forest);color:white;border-color:var(--forest)}.btn.soft{background:var(--mint);border-color:#d5e2d8}.btn.light{background:#fff}.btn.danger{color:var(--red);background:var(--redlight);border-color:#f0cac6}.btn.big{padding:15px 20px;font-size:.92rem}.full{width:100%;justify-content:space-between}.btn:disabled{opacity:.6;cursor:wait;transform:none}.pill{display:inline-flex;gap:6px;align-items:center;padding:6px 10px;font-size:.73rem;font-weight:750;border-radius:999px;background:#eef2ef;color:#607267;white-space:nowrap}.pill.vigente{background:#e7f3eb;color:#337d4d}.pill.por-vencer{background:#fff4df;color:#916517}.pill.vencido,.pill.sin-poliza{background:#fbebea;color:#a64844}.pill.programado{background:#eaf1fc;color:#537da9}.pill.renovada{background:#eff0f3;color:#677383}.pill.inactive{background:#edf0ef;color:#687870}label{font-size:.77rem;font-weight:720;color:#506157;display:flex;flex-direction:column;gap:6px}input,select,textarea{border:1px solid #d5e0d8;border-radius:10px;padding:11px 12px;min-width:0;width:100%;outline:none;background:white;color:var(--ink);font-size:.85rem}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #8da6942f}textarea{min-height:90px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:17px}.form-error{color:var(--red);font-size:.83rem;margin:5px 0}.empty{padding:30px 16px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:12px;background:#fbfdfb}.loading-block{border-radius:16px;background:white;border:1px solid var(--border);padding:48px;text-align:center;color:var(--muted)}
/* Login */
.login-body{background:#f5f7f4}.login-layout{display:grid;grid-template-columns:minmax(550px,1.13fr) minmax(390px,.87fr);min-height:100vh}.login-showcase{padding:36px clamp(30px,5vw,90px) 28px;background:linear-gradient(154deg,#223d30 0%,#345842 72%,#466d53 100%);color:white;display:flex;flex-direction:column;overflow:hidden;position:relative}.login-showcase:after{content:"";position:absolute;inset:auto -240px -450px auto;width:850px;height:850px;border:1px solid #ffffff17;border-radius:50%;pointer-events:none}.login-brand{display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;z-index:1}.login-brand img{width:200px;object-fit:contain}.login-brand-label{border:1px solid #ffffff45;border-radius:999px;padding:9px 13px;font-size:.67rem;letter-spacing:.15em;font-weight:800;color:#d8e9db}.login-hero{flex:1;min-height:560px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.hero-tag{font-size:.72rem;letter-spacing:.17em;color:#bad6c1;font-weight:800;display:flex;align-items:center;gap:9px}.live-dot{width:7px;height:7px;background:#9bdeb0;border-radius:50%;box-shadow:0 0 0 5px #9bdeb026}.login-hero h1{font-size:clamp(37px,4.2vw,64px);line-height:1.1;letter-spacing:-.045em;margin:22px 0 18px}.login-hero h1 em{color:#b4cdbb;font-style:normal}.login-hero p{font-size:1rem;line-height:1.7;color:#d5e6d8;max-width:420px;margin-bottom:30px}.login-car-wrap{background:linear-gradient(#fff,#f5f8f4);border-radius:25px;padding:40px 13px 27px;margin:0 auto;width:min(100%,650px);box-shadow:0 27px 80px #0d281d58;position:relative;transform:rotate(-1deg)}.login-car-wrap:before{content:"";position:absolute;inset:-11px;border:1px solid #e3f0e355;border-radius:33px;z-index:-1}.login-car{display:block;width:100%;max-height:335px;object-fit:contain}.car-caption{display:block;text-align:center;color:#9daaa0;font-size:.55rem;letter-spacing:.2em;font-weight:850}.login-showcase-foot{display:flex;justify-content:space-between;gap:12px;letter-spacing:.13em;font-size:.59rem;color:#b9d0bc;font-weight:750;position:relative;z-index:1}.login-right{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px;position:relative}.login-form-card{width:min(100%,390px)}.login-form-card h2{font-size:2.45rem;letter-spacing:-.045em;margin:12px 0 7px}.login-form-card>.muted{font-size:.94rem;margin-bottom:32px}.login-form-card form{display:flex;flex-direction:column;gap:13px}.login-form-card input{padding:15px 14px}.login-form-card label{margin-top:8px}.login-form-card form button[type=submit]{margin-top:10px}.password-wrap{position:relative}.show-pass{position:absolute;right:9px;top:9px;height:34px;width:34px;background:transparent;border:none;color:var(--muted)}.password-wrap input{padding-right:48px}.login-security{border-top:1px solid var(--border);display:flex;align-items:center;gap:12px;margin-top:35px;padding-top:21px;color:var(--forest2)}.login-security>span{width:39px;height:39px;border-radius:10px;background:var(--mint);display:grid;place-items:center;font-size:24px}.login-security strong,.login-security small{display:block}.login-security strong{font-size:.76rem}.login-security small{font-size:.72rem;line-height:1.5;color:var(--muted);margin-top:4px}.copyright{position:absolute;bottom:28px;font-size:.72rem;color:#8b9a90}.login-mobile-logo{display:none}
/* Core navigation */
.shell{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--border);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:41}.sidebar-brand{padding:0 17px 18px}.sidebar-logo{background:var(--forest);margin:0 -17px 17px;padding:25px 21px 21px;min-height:110px;display:flex;align-items:center}.sidebar-logo img{width:185px}.sidebar-product{background:var(--mint2);display:flex;gap:11px;align-items:center;border:1px solid var(--border);padding:11px;border-radius:11px}.sidebar-product>span{display:grid;place-items:center;background:var(--forest);color:white;border-radius:10px;height:35px;width:35px;font-size:.7rem;font-weight:850}.sidebar-product strong,.sidebar-product small{display:block}.sidebar-product strong{font-size:.8rem}.sidebar-product small{font-size:.68rem;color:var(--muted);margin-top:3px}.sidebar-section{padding:18px 25px 9px;font-size:.59rem;font-weight:850;letter-spacing:.17em;color:#a4b0a7}.sidebar-section.after-nav{padding-top:27px}.nav{padding:0 11px;display:flex;flex-direction:column;gap:4px}.nav-link{padding:13px 12px;border-radius:9px;display:flex;align-items:center;gap:11px;font-size:.82rem;color:#718076;font-weight:650}.nav-link:hover{background:var(--mint2);color:var(--forest)}.nav-link.current{background:var(--mint);color:var(--forest);font-weight:850}.nav-link.current:before{content:"";width:3px;height:20px;border-radius:4px;background:var(--forest);margin-left:-12px;margin-right:0}.nav-link svg{flex-shrink:0}.nav-coming{font-size:.54rem;letter-spacing:.06em;font-weight:850;color:#9daaa1;margin-left:auto}.sidebar-bottom{margin-top:auto;padding:14px;border-top:1px solid var(--border)}.sidebar-user{display:flex;gap:10px;align-items:center;min-width:0;padding:5px 0 12px}.avatar{display:grid;place-items:center;width:36px;height:36px;background:#e3ede5;color:var(--forest);border-radius:10px;font-size:.91rem;font-weight:850;flex-shrink:0}.user-meta{min-width:0}.user-meta strong,.user-meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-meta strong{font-size:.75rem}.user-meta small{font-size:.7rem;color:var(--muted);margin-top:5px}.logout-btn{display:flex;align-items:center;gap:8px;border:0;border-radius:9px;color:#7b8c7e;background:transparent;width:100%;padding:11px 10px;font-size:.76rem;font-weight:700}.logout-btn:hover{background:var(--redlight);color:var(--red)}.main-area{min-width:0;display:flex;flex-direction:column;min-height:100vh}.topbar{height:76px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 clamp(19px,2.3vw,40px);position:sticky;top:0;z-index:21}.top-left,.top-right{display:flex;align-items:center;gap:15px}.breadcrumb{font-size:.7rem;color:#8c9b90;letter-spacing:.1em;font-weight:760}.breadcrumb span{padding:0 11px;color:#c5d4c9}.scope-pill{background:var(--mint);color:var(--forest);padding:10px 13px;border-radius:9px;font-size:.66rem;letter-spacing:.035em;font-weight:750;text-transform:uppercase}.icon-button{position:relative;display:grid;place-items:center;background:#fff;border:1px solid var(--border);color:var(--forest);width:39px;height:39px;border-radius:10px}.icon-button:hover{background:var(--mint)}.bubble{position:absolute;right:-5px;top:-7px;background:#be514a;color:white;border-radius:999px;min-width:18px;padding:3px;font-style:normal;font-size:.6rem;font-weight:850}.top-avatar{width:37px;height:37px}.mobile-menu,.mobile-bottom-nav,.side-shade{display:none}.page-content{max-width:1700px;width:100%;margin:0 auto;padding:31px clamp(19px,2.3vw,40px) 45px;flex:1}.app-footer{padding:19px 30px;border-top:1px solid var(--border);font-size:.66rem;color:#9daa9f;display:flex;gap:8px;flex-wrap:wrap}
/* Dashboard and reusable panels */
.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:24px}.eyebrow{font-size:.69rem;color:var(--forest2);font-weight:840;letter-spacing:.12em;margin:0 0 8px}.page-head h1{font-size:clamp(1.7rem,2.6vw,2.22rem);letter-spacing:-.045em;margin:0 0 7px}.page-head p{color:var(--muted);font-size:.87rem;margin:0}.head-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:24px}.kpi{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);position:relative;overflow:hidden;min-height:144px}.kpi:after{content:"";position:absolute;right:-30px;top:-29px;width:90px;height:90px;border-radius:50%;background:var(--mint);opacity:.45}.kpi-label{display:flex;justify-content:space-between;gap:7px;align-items:center;color:#7a8d7d;font-weight:800;font-size:.68rem;line-height:1.45;letter-spacing:.03em;position:relative;z-index:1}.kpi-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--mint);color:var(--forest);font-size:1.12rem;flex-shrink:0}.kpi-val{font-size:clamp(1.8rem,2.6vw,2.38rem);font-weight:850;letter-spacing:-.05em;margin:16px 0 4px;line-height:1}.kpi-sub{color:#99a89d;font-size:.65rem;line-height:1.4}.kpi.urgent .kpi-icon{background:#fff3df;color:#9e732a}.kpi.alert .kpi-icon{background:var(--redlight);color:var(--red)}.panel{border:1px solid var(--border);background:white;border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;min-width:0}.dash-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(325px,1fr);gap:17px;margin-bottom:23px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:23px}.panel-head h2{font-size:1.02rem;letter-spacing:-.02em;margin:0 0 6px}.panel-head p{font-size:.73rem;color:var(--muted);margin:0}.tiny-link{font-size:.7rem;font-weight:850;color:var(--forest2);white-space:nowrap}.bar-legend{display:flex;gap:15px;margin-bottom:19px;flex-wrap:wrap;font-size:.69rem;font-weight:680;color:#718176}.bar-legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;background:#345f45;border-radius:3px}.legend-dot.light{background:#b7d3bd}.legend-dot.incidents{background:#bd735f}.chart-body{display:flex;flex-direction:column;gap:17px;max-height:450px;overflow:auto;padding-right:8px}.chart-row{display:grid;grid-template-columns:minmax(91px,140px) minmax(0,1fr) 30px;gap:12px;align-items:center}.chart-name{font-size:.71rem;font-weight:740;color:#536657;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-pair{display:flex;flex-direction:column;gap:5px}.bar-track{height:9px;background:#f0f4f0;border-radius:6px;overflow:hidden}.bar-fill{background:#406b50;height:100%;min-width:0;border-radius:6px}.bar-fill.insured{background:#a6c6ae}.bar-fill.incidents{background:#bd735f}.chart-num{font-size:.75rem;font-weight:850;text-align:right}.dept-list{display:flex;flex-direction:column;max-height:500px;overflow:auto}.dept-row{padding:13px 0;border-top:1px solid #edf1ed;display:grid;grid-template-columns:35px minmax(0,1fr) 15px;gap:10px;align-items:center}.dept-row:hover .dept-main strong{color:var(--forest2);text-decoration:underline}.dept-monogram{height:34px;width:34px;border-radius:9px;background:#eef4ef;display:grid;place-items:center;font-size:.65rem;font-weight:850;color:var(--forest)}.dept-main{min-width:0}.dept-main strong{font-size:.76rem;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dept-metrics{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.dept-metrics .metric{font-size:.61rem;color:#75877a;background:#f3f7f3;padding:4px 7px;border-radius:5px}.dept-metrics .metric strong{display:inline;font-size:inherit;color:var(--forest)}.right-arrow{color:#a4b5a9}.coming-panel{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(110deg,#fff 0%,#f5faf5 100%);min-height:154px}.coming-icon{height:61px;width:61px;border-radius:15px;display:grid;place-items:center;background:#ecf2ed;font-size:1.5rem;color:var(--forest2);flex-shrink:0}.coming-panel h2{font-size:1rem;margin:5px 0}.coming-panel p{color:#899a8e;font-size:.77rem;margin:0;line-height:1.5}.coming-count{font-size:1.8rem;font-weight:850;letter-spacing:-.05em;color:var(--forest)}
/* Patrimony */
.section-title{font-size:.99rem;font-weight:850;margin:23px 0 15px}.dept-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:13px}.dept-card{padding:20px;background:white;border:1px solid var(--border);border-radius:14px;cursor:pointer;text-align:left;box-shadow:var(--shadow);transition:.15s}.dept-card:hover{border-color:#9abc9e;transform:translateY(-2px)}.dept-card.active{border-color:#7d9b83;background:#f3faf4}.dept-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.dept-card-top .dept-monogram{height:43px;width:43px;font-size:.75rem}.dept-card h3{font-size:.86rem;margin:0 0 7px}.dept-card .big-count{font-size:2.2rem;font-weight:850;letter-spacing:-.04em;color:var(--forest);display:block;margin-bottom:13px}.dept-small-stats{display:flex;flex-wrap:wrap;gap:7px}.dept-small-stats span{font-size:.64rem;color:#67816c;border:1px solid #e2eae2;padding:5px 7px;border-radius:6px}.toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin:0 0 16px}.toolbar label{min-width:150px;flex:1;max-width:250px}.toolbar label.search-field{min-width:200px;flex:2;max-width:500px}.view-toggle{display:flex;gap:3px;padding:3px;background:#eef3ef;border-radius:9px;margin-left:auto}.view-toggle button{border:0;border-radius:7px;background:transparent;color:#819384;padding:9px 11px;font-weight:850}.view-toggle button.active{background:white;color:var(--forest);box-shadow:0 3px 8px #1a362414}.units-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(237px,1fr));gap:14px}.vehicle-card{background:white;border:1px solid var(--border);border-radius:14px;overflow:hidden;transition:.15s;cursor:pointer}.vehicle-card:hover{border-color:#aac1ad;box-shadow:0 10px 29px #1f4b3020;transform:translateY(-1px)}.vehicle-image{height:156px;background:linear-gradient(135deg,#f3f6f3,#e6ede7);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.vehicle-image img{width:100%;height:100%;object-fit:cover}.vehicle-image .picto{font-size:3.4rem;color:#cad8cd}.vehicle-image .badge-asset{position:absolute;left:12px;top:12px;background:#ffffffed;color:var(--forest);font-size:.65rem;padding:6px 8px;border-radius:6px;font-weight:850}.vehicle-card-body{padding:15px}.vehicle-card h3{font-size:.92rem;margin:0 0 4px}.vehicle-card .unit-code{color:var(--muted);font-size:.69rem}.unit-inline{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}.unit-details{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px;color:#879b8a;font-size:.71rem}.units-list .vehicle-card{display:grid;grid-template-columns:128px minmax(0,1fr)}.units-list .vehicle-image{height:100%;min-height:128px}.units-list .vehicle-card-body{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px}.units-list .vehicle-card-body>*:last-child{grid-column:2;grid-row:1/4}.units-list .unit-inline{margin:0}.pagination{display:flex;gap:9px;justify-content:center;align-items:center;margin-top:18px}
/* Detail */
.backlink{display:inline-flex;align-items:center;gap:7px;font-weight:790;color:var(--forest);font-size:.74rem;margin-bottom:18px}.detail-hero{display:grid;grid-template-columns:1fr 260px;gap:18px;align-items:center;background:linear-gradient(125deg,#fff 0%,#f4faf4 100%);margin-bottom:16px}.detail-hero h1{font-size:1.75rem;letter-spacing:-.04em;margin:11px 0 9px}.detail-overview{display:flex;flex-wrap:wrap;gap:10px;color:#7d927f;font-size:.79rem}.detail-hero-image{height:135px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#eaf2eb;overflow:hidden}.detail-hero-image img{width:100%;height:100%;object-fit:contain}.detail-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);overflow:auto;margin:18px 0;scrollbar-width:thin}.detail-tabs button{background:transparent;border:0;padding:13px 17px;font-size:.8rem;font-weight:780;color:#8ca08d;white-space:nowrap;border-bottom:3px solid transparent}.detail-tabs button.active{color:var(--forest);border-bottom-color:var(--forest)}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.fact{padding:11px 0;border-bottom:1px solid #eaf0e9}.fact small{font-size:.67rem;color:#9aab9f;display:block;margin-bottom:4px}.fact strong{font-size:.84rem;word-break:break-word}.timeline{border-left:2px solid #e5eee7;padding-left:20px;margin-left:10px}.timeline-item{position:relative;padding:1px 0 22px}.timeline-item:before{content:"";position:absolute;left:-27px;top:4px;width:12px;height:12px;background:#8da694;border-radius:50%;border:2px solid white}.timeline-item strong{font-size:.8rem}.timeline-item small{color:#95a396;font-size:.65rem;display:block;margin:6px 0}.timeline-item p{color:#607568;font-size:.75rem;margin:5px 0;line-height:1.55}.policy-item,.doc-row,.incident-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px solid #edf2ee}.policy-item h3,.doc-row h3,.incident-row h3{font-size:.8rem;margin:0 0 6px}.policy-item p,.doc-row p,.incident-row p{font-size:.72rem;color:#8b9d8e;margin:0;line-height:1.6}.policy-item>div:first-child,.doc-row>div:first-child{min-width:0}.policy-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.split-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.split-head h2{font-size:1rem;margin:0}.document-icon{width:37px;height:40px;display:grid;place-items:center;background:#eef3ef;border-radius:8px;color:#52725b;font-size:1.1rem;flex-shrink:0}
/* Administration */
.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.admin-tabs button{border:1px solid var(--border);border-radius:9px;background:white;padding:10px 13px;color:#687f6c;font-size:.8rem;font-weight:750}.admin-tabs button.active{background:var(--forest);color:white;border-color:var(--forest)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:.67rem;color:#98aa9c;font-weight:850;letter-spacing:.05em;padding:11px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:13px 8px;border-bottom:1px solid #edf2ed;color:#516854;font-size:.77rem}.data-table td strong{color:var(--ink)}.data-table tr:last-child td{border-bottom:0}.overflow-table{overflow:auto}.check-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;max-height:330px;overflow:auto}.check-list label{display:flex;align-items:center;flex-direction:row;gap:8px;background:var(--mint2);padding:10px;border-radius:8px;font-size:.71rem}.check-list input{width:auto}
/* Drawers, dialogs, toasts */
.notifications-panel{position:fixed;z-index:65;top:76px;right:17px;width:min(420px,calc(100% - 34px));max-height:calc(100vh - 102px);overflow:auto;background:white;border:1px solid var(--border);box-shadow:0 23px 75px #243d2b31;padding:22px;border-radius:15px}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:12px}.drawer-head h2{font-size:1.17rem;margin:6px 0 0}.notif{padding:13px;border:1px solid var(--border);border-radius:10px;margin-bottom:9px}.notif.unread{background:#f8faf5;border-color:#b6cdb8}.notif strong{font-size:.77rem}.notif p{font-size:.72rem;color:#74887a;line-height:1.5;margin:7px 0}.notif-foot{display:flex;justify-content:space-between;align-items:center;gap:7px}.notif-foot small{font-size:.62rem;color:#9bad9d}.overlay,.modal-root{position:fixed;z-index:80;inset:0;background:#182a1e9e;display:flex;justify-content:center;align-items:center;padding:18px;overflow:auto}.modal-card{width:min(100%,650px);max-height:min(95vh,850px);overflow:auto;background:white;border-radius:18px;padding:26px;box-shadow:0 25px 80px #1c301f4d}.modal-card h2{margin:7px 0 13px;letter-spacing:-.025em}.modal-card form,.forced-overlay form{display:flex;flex-direction:column;gap:11px}.forced-overlay{z-index:100}.forced-overlay .modal-card{max-width:420px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}.modal-header h2{margin:0}.toast-wrap{position:fixed;z-index:99;right:23px;bottom:24px;display:flex;flex-direction:column;gap:8px}.toast{background:var(--forest);color:white;border-radius:11px;padding:13px 18px;box-shadow:0 15px 32px #24403036;max-width:380px;font-size:.8rem}.toast.error{background:var(--red)}
@media(max-width:1220px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.dash-grid{grid-template-columns:1fr}.login-layout{grid-template-columns:1fr 1fr}.login-showcase{padding:32px}.login-hero{min-height:480px}.login-car-wrap{padding:24px 8px 18px}}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;transform:translateX(-101%);transition:.2s;width:260px}.sidebar.open{transform:translateX(0)}.side-shade.open{position:fixed;inset:0;z-index:40;display:block;background:#213f2a70}.mobile-menu{display:grid}.topbar{height:64px}.page-content{padding:23px 18px 90px}.mobile-bottom-nav{display:flex;position:fixed;z-index:20;bottom:0;left:0;right:0;background:white;border-top:1px solid var(--border);height:66px;justify-content:space-around;align-items:center;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.63rem;font-weight:750;color:#8ca18f}.mobile-bottom-nav a.current{color:var(--forest)}.mobile-bottom-nav svg{height:20px}.app-footer{display:none}.notifications-panel{top:69px}.login-layout{display:flex;flex-direction:column}.login-showcase{padding:18px 20px;min-height:390px}.login-brand img{width:168px}.login-hero{min-height:280px;padding-top:25px}.login-hero h1{font-size:2rem;margin:15px 0}.login-hero p{font-size:.78rem;margin-bottom:20px}.login-car-wrap{max-width:470px;padding:10px 6px}.login-car{max-height:180px}.login-showcase-foot{display:none}.login-right{padding:35px 20px 62px}.copyright{bottom:13px}.detail-hero{grid-template-columns:1fr 150px}.detail-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.top-avatar,.scope-pill{display:none}.breadcrumb{font-size:.6rem}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi{padding:15px;min-height:132px}.kpi-val{font-size:1.95rem}.kpi-label{font-size:.64rem}.page-head{align-items:flex-start;flex-direction:column}.dash-grid{gap:12px}.panel{padding:17px}.coming-panel{align-items:flex-start}.dept-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dept-card{padding:13px}.dept-card h3{font-size:.77rem}.dept-small-stats span{font-size:.58rem}.toolbar{align-items:stretch}.toolbar label{max-width:none;min-width:calc(50% - 8px)}.toolbar label.search-field{min-width:100%}.view-toggle{margin-left:0}.units-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.vehicle-image{height:120px}.vehicle-card-body{padding:12px}.vehicle-card h3{font-size:.78rem}.unit-inline{align-items:flex-start;flex-direction:column}.units-list .vehicle-card{grid-template-columns:86px minmax(0,1fr)}.units-list .vehicle-image{min-height:105px}.units-list .vehicle-card-body{display:block}.units-list .unit-inline{margin-top:8px}.detail-hero{grid-template-columns:1fr}.detail-hero-image{order:-1}.detail-grid{grid-template-columns:1fr}.form-grid,.check-list{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.policy-item{flex-direction:column;align-items:flex-start}.policy-actions{flex-wrap:wrap}.login-brand-label{display:none}.login-hero h1{font-size:1.8rem}.login-hero p{font-size:.76rem}.login-car-wrap{max-height:170px}.login-car{max-height:130px}}

@media print{.sidebar,.topbar,.mobile-bottom-nav,.app-footer,.detail-tabs,.head-actions,.backlink{display:none!important}.shell{display:block}.page-content{padding:10mm;max-width:none}.panel{box-shadow:none;break-inside:avoid}.detail-hero-image{height:100px}}

/* Departamento: codigo gestionado por el servidor, visible y no editable. */
.generated-code{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.generated-code .auto-code{flex:1;min-width:140px;background:#eff6f1;border:1px dashed #9db9a9;font-weight:750;letter-spacing:.08em;color:#254334;cursor:not-allowed}
.form-help{display:block;color:#647d6d;margin-top:6px;line-height:1.5;font-size:.75rem}

/* Patrimonio v3.3: max. cuatro departamentos a la vista, sin truncar el resto. */
.department-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:21px 0 14px}
.department-heading .section-title{margin:0}
.department-navigation{display:flex;align-items:center;gap:7px}
.department-navigation .btn{padding:7px 11px;min-width:36px}
.department-navigation button:disabled{opacity:.38;cursor:not-allowed}
.department-progress{color:#6a806f;font-size:.73rem;font-weight:700;white-space:nowrap}
.dept-cards{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 43px)/4);grid-template-columns:none;align-items:stretch;gap:13px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#92ac9b #edf4ef;padding:2px 2px 13px 2px}
.dept-card{min-width:0;scroll-snap-align:start}
.dept-card h3{overflow-wrap:anywhere}
@media(max-width:1250px){.dept-cards{grid-auto-columns:calc((100% - 17px)/2)}}
@media(max-width:600px){.dept-cards{grid-auto-columns:calc(100% - 4px)}.department-progress{font-size:.66rem}}

/* Home v3.4: cinco departamentos visibles y tooltip accesible por hover, teclado o toque. */
.home-chart-panel{position:relative}
.chart-body.home-five-chart{gap:0;max-height:410px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-gutter:stable;padding-right:8px}
.home-five-chart .chart-row{position:relative;grid-template-columns:minmax(91px,140px) minmax(0,1fr) 30px 28px;flex:0 0 82px;min-height:82px;padding:7px 3px;border-bottom:1px solid #edf2ee;border-radius:5px}
.home-five-chart .chart-row:is(:hover,:focus,:focus-within){background:#f2f8f3;outline-color:var(--forest2)}
.home-five-chart .chart-name{white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.chart-info-btn{display:grid;place-items:center;border:1px solid #d9e8dc;background:white;border-radius:100px;color:var(--forest);width:27px;height:27px;font-size:.83rem;cursor:pointer}
.chart-info-btn:is(:hover,:focus-visible),.chart-info-btn[aria-expanded="true"]{outline:2px solid var(--green);background:var(--mint)}
.home-chart-tooltip:not([hidden]){position:absolute;z-index:8;right:17px;top:101px;width:min(300px,calc(100% - 34px));background:#254738;color:#fff;border-radius:12px;padding:14px 16px;box-shadow:0 13px 33px rgba(15,42,25,.27);pointer-events:none;font-size:.75rem}
.home-chart-tooltip strong{display:block;font-size:.86rem;margin-bottom:10px;overflow-wrap:anywhere}
.home-chart-tooltip dl{margin:0;display:grid;gap:5px}
.home-chart-tooltip dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.home-chart-tooltip dt{color:#e2eee5}
.home-chart-tooltip dd{font-weight:800;margin:0;white-space:nowrap}
.dept-list.home-five-departments{--home-dept-height:114px;max-height:calc(var(--home-dept-height) * 5);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-gutter:stable}
.home-five-departments .dept-row{flex:0 0 var(--home-dept-height);min-height:var(--home-dept-height);padding:11px 3px;overflow:hidden}
.home-five-departments .dept-main{min-width:0}
.home-five-departments .dept-metrics{align-content:center}



@media(max-width:600px){
 .home-five-chart .chart-row{grid-template-columns:minmax(70px,100px) minmax(0,1fr) 24px 27px;column-gap:6px}
 .home-chart-tooltip:not([hidden]){top:124px;right:10px}
 .dept-list.home-five-departments{--home-dept-height:132px}
 .home-five-departments .dept-row{grid-template-columns:30px minmax(0,1fr) 13px;gap:7px}
}
/* Historial de pólizas: controles táctiles y documento enlazado al expediente privado. */
.policy-details{flex:1;min-width:0}
.policy-actions{flex-wrap:wrap;justify-content:flex-end}
.policy-documents{border-top:1px dashed #dce6de;margin-top:12px;padding-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.policy-documents .btn{font-size:.76rem;min-height:40px}
.policy-file-field{background:#f7faf7;border:1px dashed #b8cbbb;border-radius:12px;padding:14px;min-width:0}
.policy-file-field input[type="file"]{background:white;max-width:100%}
.policy-file-field .form-help{font-weight:400}

@media(max-width:600px){
 .policy-item{gap:12px;padding:18px 0}
 .policy-actions{width:100%;justify-content:flex-start}
 .policy-actions .btn{min-height:44px}
 .policy-documents{flex-direction:column;align-items:stretch}
 .policy-documents .btn{width:100%}
 .modal-card{width:100%;max-height:calc(100dvh - 20px);padding:18px 16px;border-radius:14px}
 .modal-root{padding:10px;align-items:center}
 .modal-card .form-grid{grid-template-columns:1fr;gap:12px}
 .modal-card .form-grid .wide{grid-column:auto}
 .modal-card .form-actions{position:sticky;bottom:-18px;background:white;border-top:1px solid var(--border);margin-top:16px;padding:12px 0 max(12px,env(safe-area-inset-bottom));z-index:2}
 .modal-card .form-actions .btn{min-height:44px;flex:1}
}

.policy-item h3{overflow-wrap:anywhere}
.policy-doc-history{width:100%;font-size:.76rem;color:var(--forest)}
.policy-doc-history summary{padding:9px 0;cursor:pointer;font-weight:750}
.policy-documents .btn{overflow-wrap:anywhere;text-align:center}


/* DISEÑO COMPACTO */

/* Contenido general */
.page-content {
    padding: 18px 22px 28px;
}

/* Encabezados */
.page-head {
    margin-bottom: 14px;
}

.panel-head {
    margin-bottom: 13px;
}

/* Tarjetas y paneles */
.panel {
    padding: 15px;
}

.kpi {
    padding: 13px;
    min-height: 110px;
}

.kpi-grid {
    gap: 10px;
    margin-bottom: 14px;
}

/* Gráfica y departamentos */
.dash-grid {
    gap: 12px;
    margin-bottom: 14px;
}

.home-five-chart .chart-row {
    flex: 0 0 64px;
    min-height: 64px;
    padding: 5px 3px;
}

.chart-body.home-five-chart {
    max-height: 320px;
}

/* Listado derecho */
.dept-list.home-five-departments {
    --home-dept-height: 86px;
}

.home-five-departments .dept-row {
    padding: 7px 3px;
}

/* Adaptación móvil */
@media (max-width: 600px) {
    .page-content {
        padding: 14px 12px 85px;
    }

    .panel {
        padding: 12px;
    }

    .kpi {
        padding: 12px;
        min-height: 105px;
    }

    .dept-list.home-five-departments {
        --home-dept-height: 110px;
    }
}
/* v4 — Identificación, imagen y herramientas de credenciales. */
.form-section-title{margin:9px 0 0;color:var(--forest);font-size:.77rem;font-weight:850;letter-spacing:.025em;padding:0 0 9px;border-bottom:1px solid var(--border)}
.form-section-title span{font-size:.7rem;color:var(--muted);font-weight:550;letter-spacing:0;margin-left:8px}
.form-help{display:block;color:var(--muted);font-size:.68rem;font-weight:500;line-height:1.45;margin-top:4px}
.optional{display:inline;color:var(--muted);font-weight:500;font-size:.7rem}
.vehicle-form{gap:12px 14px}
.vehicle-form label{min-width:0}
.detail-hero-image{height:190px;display:flex;flex-direction:column;gap:7px;padding:9px;overflow:visible}
.detail-hero-image img{width:100%;min-height:0;max-height:143px;height:auto;object-fit:contain;border-radius:8px}
.hero-photo-action{padding:7px 12px;flex-shrink:0;width:auto;max-width:100%;font-size:.68rem}
.photo-upload-form{display:flex;flex-direction:column;gap:13px}
.photo-preview{height:210px;max-width:100%;margin:0 auto;object-fit:contain;border:1px solid var(--border);border-radius:10px}
.credential-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}
.credential-actions .btn{font-size:.72rem;padding:7px 10px;min-height:37px}
.desktop-password-action{font-size:.71rem;padding:8px 11px}
.timeline-item p{white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:900px){.desktop-password-action{font-size:.65rem;padding:7px 9px}}
@media(max-width:600px){.desktop-password-action{font-size:.63rem;padding:7px 8px}.top-right{gap:6px}.credential-actions{flex-direction:column;align-items:stretch}.credential-actions .btn{min-height:44px}.vehicle-form{grid-template-columns:1fr}.detail-hero-image{height:auto;min-height:145px}.detail-hero-image img{height:145px}}
@media print{.hero-photo-action,.desktop-password-action,.credential-actions{display:none!important}}

.mobile-password-action{display:none}
@media(max-width:900px){.mobile-password-action{display:flex}}
@media(max-width:600px){.desktop-password-action{display:none}}

/* V4.1: field microcopy aligned right, without increasing mobile form height. */
.vehicle-form label{position:relative}
.vehicle-form label>.optional{position:absolute;top:0;right:0;font-size:.63rem;line-height:1.45;max-width:48%;text-align:right;color:#6f8375}
.vehicle-form .form-section-title{display:flex;justify-content:space-between;align-items:center;gap:10px}
.auto-uid-label input[readonly]{background:#eef5ef;color:#456650;border-style:dashed;cursor:not-allowed}
/* Cuenta propia: menú desplegable en escritorio y móvil. */
.profile-control{position:relative;flex-shrink:0}
.profile-menu-toggle{border:0;background:transparent;padding:0;border-radius:50%;display:grid;place-items:center;min-width:44px;min-height:44px}
.profile-menu-toggle:focus-visible{outline:3px solid #6a9679;outline-offset:2px}
.avatar-img{width:100%;height:100%;border-radius:inherit;object-fit:cover;display:block}
.profile-menu-toggle .avatar,.sidebar-avatar{border-radius:50%;overflow:hidden}
.profile-popover{position:absolute;right:0;top:calc(100% + 9px);width:245px;padding:7px;background:white;border:1px solid var(--border);border-radius:14px;box-shadow:0 14px 38px #1e412e26;z-index:81}
.profile-popover-head{padding:10px 11px;border-bottom:1px solid var(--border);margin-bottom:5px;overflow-wrap:anywhere}
.profile-popover-head strong,.profile-popover-head small{display:block}
.profile-popover-head strong{font-size:.82rem}.profile-popover-head small{font-size:.7rem;color:var(--muted);margin-top:3px}
.profile-popover button{border:0;background:transparent;color:var(--forest);text-align:left;width:100%;padding:12px 10px;border-radius:9px;font-size:.78rem;font-weight:700}
.profile-popover button:hover,.profile-popover button:focus{background:var(--mint)}
.profile-photo-preview{width:100%;max-height:240px;object-fit:contain;border-radius:12px;margin-top:12px;border:1px solid var(--border)}
/* Responsable en ficha mosaico y lista; círculo con fotografía privada. */
.unit-responsible{display:flex;align-items:center;gap:7px;border-top:1px solid var(--border);padding-top:10px;margin-top:10px;max-width:100%;min-width:0}
.unit-responsible>small{font-size:.7rem;color:#4f6756;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.unit-responsible.unassigned>small{color:#89998d}
.person-photo{height:36px;width:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;background:#e6efe8;border:1px solid #d6e4d9;color:var(--forest);font-weight:850;font-size:.7rem}
.person-photo-img{width:100%;height:100%;object-fit:cover}
.units-list .unit-responsible{border-top:0;margin-top:0;padding-top:0;max-width:185px}
@media(max-width:600px){.top-avatar{display:grid}.top-right{gap:6px}.profile-popover{right:0;width:min(245px,calc(100vw - 34px))}.unit-responsible>small{font-size:.65rem}.person-photo{width:34px;height:34px}.vehicle-form label>.optional{font-size:.6rem}}
@media print{.profile-control{display:none!important}}


/* V4.2 — Dos fichas de vehículos por fila en escritorio; una en móvil. */
.units-list,.units-grid{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:12px;
 align-content:start;
}
.units-list .vehicle-card{
 min-width:0;
 display:grid;
 grid-template-columns:clamp(92px,9vw,125px) minmax(0,1fr);
}
.units-list .vehicle-card-body{
 min-width:0;
 padding:12px;
 display:flex;
 flex-direction:column;
 align-items:stretch;
 gap:7px;
}
.units-list .vehicle-card-body>*:last-child{grid-column:auto;grid-row:auto}
.units-list .unit-responsible{max-width:100%;min-width:0}
.units-list .vehicle-image{height:100%;min-height:140px}
.units-list .unit-details{min-width:0;overflow-wrap:anywhere}
.units-list .vehicle-card h3{overflow-wrap:anywhere}
.units-grid .vehicle-card{min-width:0}
@media(max-width:760px){
 .units-list,.units-grid{grid-template-columns:minmax(0,1fr)}
 .units-list .vehicle-card{grid-template-columns:100px minmax(0,1fr)}
 .units-list .vehicle-image{min-height:126px}
}
@media(max-width:380px){
 .units-list .vehicle-card{grid-template-columns:82px minmax(0,1fr)}
 .units-list .vehicle-card-body{padding:10px}
}

/* V5 - Módulo independiente de seguimiento de siniestros y talleres. */
.sin-view{display:grid;gap:18px;align-content:start}
.sin-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.sin-stat{border:1px solid #dfe8e1;background:#fff;border-radius:15px;padding:18px;display:grid;gap:8px;min-width:0}
.sin-stat span{font-size:.72rem;letter-spacing:.025em;color:#718175;font-weight:650}
.sin-stat strong{font-size:1.32rem;color:#244638;overflow-wrap:anywhere}
.sin-chip{display:inline-flex;white-space:nowrap;align-items:center;padding:6px 11px;border-radius:999px;font-size:.74rem;font-weight:750;background:#e9f1eb;color:#365d49;border:1px solid #d5e4d9}
.sin-COTIZANDO,.sin-VALORACION{background:#e4f3ff;color:#246c9c;border-color:#b6e1fc}
.sin-AUTORIZADA{background:#def5e5;color:#1c7048;border-color:#b4e4c4}
.sin-EN_TALLER{background:#fff0cf;color:#966104;border-color:#f0d598}
.sin-REVISION{background:#e7e7ff;color:#514da1;border-color:#d1d0ef}
.sin-PAUSADO{background:#fff1d8;color:#955b07;border-color:#f4dfb7}
.sin-CANCELADO{background:#ffe4e4;color:#a83d3d;border-color:#f2c4c4}
.sin-FINALIZADO{background:#def4e7;color:#207349;border-color:#bde6cb}
.sin-sub{display:block;font-size:.72rem;color:#758479;margin-top:5px}
.sin-detail-head,.sin-actions,.sin-file{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.sin-actions{justify-content:flex-start;gap:10px;margin:14px 0}
.sin-detail-head{margin-bottom:-4px}
.sin-main-panel h3,.sin-columns h3{margin:18px 0 10px;font-size:1rem}
.sin-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.sin-record{padding:12px 0;border-bottom:1px solid #e7eee9;overflow-wrap:anywhere}
.sin-record p{margin:7px 0;line-height:1.6;white-space:pre-wrap}
.sin-record small{color:#728479;line-height:1.5}
.sin-record .sin-file{align-items:flex-start;flex-wrap:nowrap}
.sin-evidence{display:block;max-width:100%;max-height:310px;object-fit:contain;border-radius:10px;margin:10px 0;background:#eff3f0}
.sin-timeline{border-left:2px solid #dce9e0;margin:14px 0 0 7px;padding-left:18px;display:grid;gap:16px}
.sin-event{position:relative;padding:2px 0 8px}
.sin-event:before{content:'';width:10px;height:10px;border-radius:50%;background:#547b60;position:absolute;left:-24px;top:6px}
.sin-event strong{display:block;margin:6px 0;color:#2c4d3d}
.sin-event p{margin:5px 0;white-space:pre-wrap;line-height:1.55}
.sin-time{font-size:.72rem;color:#7b9080}
.sin-diff{display:block;font-size:.76rem;color:#607667;background:#f4f8f4;border-radius:6px;padding:4px 8px;margin-top:4px}
.sin-modal-fields{max-height:min(62vh,630px);overflow:auto;padding:2px}
.sin-modal-fields textarea{width:100%;resize:vertical;min-height:80px;border:1px solid #cfdad1;border-radius:10px;padding:10px}
.sin-modal-fields input[type=file]{width:100%}
.sin-users{display:grid;gap:4px;max-height:180px;overflow:auto;margin:10px 0}
.sin-checkbox{display:flex;gap:8px;align-items:center;font-size:.85rem}
.sin-checkbox input{width:16px;height:16px}
.sin-workshops{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sin-workshop{min-width:0}
.sin-legal{display:flex;flex-direction:column;gap:7px;font-size:.8rem;margin-top:12px}
.sin-legal a{color:#326651;text-decoration:underline}
.sin-view .overflow-table{overflow-x:auto}
.sin-view .data-table td{vertical-align:middle}
@media(max-width:1000px){.sin-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.sin-columns,.sin-workshops{grid-template-columns:1fr}}
@media(max-width:640px){.sin-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sin-stat{padding:12px}.sin-stat strong{font-size:1rem}.sin-detail-head{align-items:flex-start}.sin-view .panel{min-width:0}.sin-columns{gap:12px}.sin-file{flex-wrap:wrap!important}}
.sin-legal-doc{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:7px 0;border-bottom:1px solid #e5eee8}
.sin-legal-doc small{font-size:.72rem;color:#657b6b}
.sin-legal-doc .btn{font-size:.72rem;padding:6px 10px;margin-left:auto}

/* V5.2 - Accesos creados junto con el taller, sin alterar otros formularios. */
.sin-access-section{border:1px solid #dce8df;background:#f8fbf9;border-radius:12px;padding:15px;min-width:0}
.sin-access-section h3{margin:0 0 7px;font-size:.92rem;color:#274c37}
.sin-access-section>.muted{font-size:.76rem;line-height:1.5;margin-bottom:13px}
.sin-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;margin-top:12px}
.sin-account-grid>.wide{grid-column:1/-1}
.sin-help{font-size:.73rem;line-height:1.5;color:#62786a;margin:3px 0}
.sin-copy-secret{margin-top:5px;align-self:flex-start;font-size:.72rem}
@media(max-width:640px){.sin-access-section{padding:12px}.sin-account-grid{grid-template-columns:1fr}}

.sin-workshop-access{font-size:.78rem;color:#425b49;margin:8px 0;overflow-wrap:anywhere}

/* V5.4 - Detalle de siniestros por pestañas y administración de accesos por taller. */
.sin-user-list{display:grid;gap:10px;margin-top:12px}
.sin-user-item{border:1px solid #dfe8e1;background:#fbfdfb;border-radius:12px;padding:12px;display:grid;gap:10px}
.sin-user-item-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.sin-user-item-head small{display:block;color:#6e8173;font-size:.73rem;line-height:1.45;margin-top:4px;overflow-wrap:anywhere}
.sin-user-item-actions{display:flex;flex-wrap:wrap;gap:8px}
.sin-user-item .muted{font-size:.75rem;line-height:1.55;margin:0}
#sinTabArea .detail-grid{margin-top:6px}
#sinTabArea .split-head p{max-width:760px}
@media(max-width:640px){.sin-user-item-head{flex-direction:column}.sin-user-item-actions{flex-direction:column;align-items:stretch}}

/* V5.5 - Cotizaciones por taller, trabajos y conversación. */
.sin-detail-actions{margin:3px 0 4px}.sin-detail-actions .sin-actions{margin:0;justify-content:flex-start}
.sin-workshop-pick{display:grid;gap:9px;border:1px solid #dce8df;padding:14px;border-radius:12px;background:#f8fbf9}
.sin-workshop-pick legend{font-weight:780;color:#244638;padding:0 8px}
.sin-workshop-pick label{display:flex;align-items:center;gap:9px;padding:8px 11px;border-radius:9px;border:1px solid #e0e9e2;background:white}
.sin-workshop-pick input{width:auto}
.sin-quote-form{display:grid;gap:14px}
.sin-quote-form textarea,.sin-comment-form textarea{width:100%;padding:12px;border:1px solid #d6e2d9;border-radius:10px;resize:vertical}
.sin-job-group{border:1px solid #dce8df;padding:12px;border-radius:12px;background:#f8fbf9}
.sin-job-group .split-head{margin-bottom:8px}
.sin-job-row{border:1px solid #e1eae3;background:white;border-radius:10px;padding:12px;margin:10px 0;display:grid;gap:7px}
.sin-job-row .form-grid{grid-template-columns:1fr;gap:9px}
.sin-quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sin-quote-item{border:1px solid #dce8df;border-radius:14px;padding:16px;background:#fcfefc;display:grid;align-content:start;gap:12px;min-width:0}
.sin-quote-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.sin-quote-head h3{font-size:.95rem;margin:0 0 7px!important}.sin-quote-head strong,.sin-quote-head small{display:block;margin:7px 0}
.sin-quote-head small{font-size:.72rem;color:#78907e}
.sin-quote-works{border-top:1px solid #e5eee8;padding-top:10px}
.sin-quote-works>strong{font-size:.78rem}
.sin-quote-work{margin-top:10px;background:#f3f8f4;border-radius:9px;padding:10px}
.sin-quote-work strong{font-size:.78rem}.sin-quote-work p,.sin-quote-comment{font-size:.76rem;line-height:1.6;white-space:pre-wrap;margin:7px 0}
.sin-quote-files{border-top:1px solid #e5eee8;padding-top:10px}
.sin-quote-files summary{cursor:pointer;font-weight:750;color:#315740;font-size:.8rem}
.sin-quote-files a{display:block;padding:6px 0;overflow-wrap:anywhere;font-size:.78rem}
.sin-quote-actions{display:flex;flex-wrap:wrap;gap:9px}
.sin-notice{font-size:.76rem;color:#745d24;background:#fff7e4;border:1px solid #f3e1ab;padding:12px;border-radius:10px}
.sin-invitations{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;align-items:center}.sin-invitations>strong{font-size:.8rem}
.sin-conversation{margin-top:24px;border-top:1px solid #e0eae2;padding-top:18px}
.sin-comments-list{display:grid;gap:12px;margin:14px 0 18px}
.sin-message{background:#f3f8f4;border:1px solid #e2ece5;border-radius:13px;padding:13px 15px}
.sin-message>div{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.sin-message strong{font-size:.78rem}.sin-message small{font-size:.7rem;color:#7e9383}
.sin-message p{white-space:pre-wrap;margin:9px 0 0;font-size:.79rem;line-height:1.6}
.sin-comment-form{display:grid;gap:10px}.sin-comment-form button{justify-self:start}
.sin-comment-form label{display:grid;gap:7px;font-size:.8rem;font-weight:750}
@media(max-width:980px){.sin-quote-grid{grid-template-columns:1fr}}
@media(max-width:640px){.sin-quote-head{flex-direction:column}.sin-quote-actions .btn{width:100%}}

.sin-workshop-dropdown{border:1px solid #cbdccf;border-radius:10px;background:#fff}
.sin-workshop-dropdown>summary{padding:12px 14px;cursor:pointer;font-weight:750;color:#315740}
.sin-workshop-menu{padding:0 10px 11px;max-height:255px;overflow-y:auto;display:grid;gap:7px}

/* V5.7 - Acción administrativa alineada y gestión aseguradora sin pasos ambiguos. */
.sin-action-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;align-items:start;width:100%}
.sin-action-layout>.sin-actions{justify-content:flex-start;min-width:0}
.sin-admin-action{display:flex;justify-content:flex-end;align-self:start}
.sin-admin-action>.sin-actions{margin:0}
.sin-insurer-actions{grid-column:1/-1;border-top:1px solid #e2eae4;padding-top:14px}
.sin-insurer-actions>.sin-actions{margin:0;gap:12px}
.sin-insurer-actions .btn{background:#e2f0e6;border-color:#b9d9c1}
.sin-quote-section{margin-top:20px}
.sin-quote-section>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;font-weight:800;font-size:1.05rem;color:var(--ink);padding:13px 15px;background:#edf4ef;border:1px solid #dce8df;border-radius:12px;list-style-position:inside}
.sin-quote-section[open]>summary{border-radius:12px 12px 0 0;margin-bottom:14px}
.sin-quote-summary-hint{font-size:.74rem;font-weight:500;color:#64816c}
.sin-evidence-row{align-items:center!important;justify-content:flex-start!important;gap:12px!important}
.sin-evidence-thumb{width:80px;height:66px;min-width:80px;object-fit:cover;border-radius:9px;border:1px solid #dce9de;background:#eef5ee}
.sin-evidence-file-icon{width:80px;height:66px;min-width:80px;display:grid;place-items:center;border-radius:9px;background:#eff3ef;color:#507158;font-size:.78rem;font-weight:800}
.sin-evidence-info{flex:1;min-width:0;overflow-wrap:anywhere}
.sin-evidence-row>.btn{margin-left:auto;white-space:nowrap}
@media(max-width:700px){.sin-action-layout{grid-template-columns:1fr}.sin-admin-action{justify-content:flex-end}.sin-insurer-actions{grid-column:1}.sin-evidence-thumb,.sin-evidence-file-icon{width:62px;height:54px;min-width:62px}}

/* Resguardos: acciones separadas del enlace de la ficha, sin enlaces anidados. */
.vehicle-result{display:flex;flex-direction:column;min-width:0}
.vehicle-result>.vehicle-card{flex:1}
.unit-custody-link{align-self:flex-end;font-size:.73rem;font-weight:750;color:#315541;padding:9px 12px;border:1px solid #d9e4dc;border-radius:8px;background:#fff;margin-top:6px}
.unit-custody-link:hover,.unit-custody-link:focus-visible{background:#edf5ef;border-color:#99b6a1}

.custody-uid{display:block;font-size:.68rem;color:#718579;margin-top:6px;overflow-wrap:anywhere}.unit-custody-link{cursor:pointer;font-family:inherit}
