:root{font:15px/1.55 Arial,sans-serif;color:#233c43;background:#eeece5;--line:#c5ccc6;--ink:#143842;--accent:#205f6d}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}.app-head{display:flex;align-items:center;gap:30px;background:#122d35;color:#d4e5e4;padding:22px max(25px,calc((100vw - 1320px)/2))}.app-head img{display:block;width:170px;height:auto}.app-head span{flex:1;letter-spacing:.04em;font-size:13px}.app-head button{background:transparent;color:#e9f4f3;border-color:#6c9099}main{max-width:1320px;margin:0 auto;padding:42px 25px}h1,h2,h3{color:var(--ink);line-height:1.2}h1{font-size:34px;letter-spacing:-.035em;margin:8px 0 18px}h2{font-size:26px;margin:8px 0}h3{font-size:18px;margin:26px 0 18px}p{margin:10px 0 20px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:#41717a;margin:0}.muted{font-size:13px;color:#526b70}button,input,select,textarea{font:inherit}button{min-height:44px;padding:10px 17px;border:1px solid #819b9f;border-radius:4px;background:#fafaf4;color:#23434c;cursor:pointer}button:hover{background:#dce8e3}button:disabled{opacity:.55;cursor:wait}.primary{background:var(--accent);border-color:var(--accent);color:white}.primary:hover{background:#164652}input,select,textarea{display:block;width:100%;max-width:100%;min-height:45px;border:1px solid #95a8a8;border-radius:3px;background:#fffef8;color:#203d45;padding:9px 11px}textarea{resize:vertical}label{display:block;font-size:13px;font-weight:600;margin:0 0 18px}label input,label select,label textarea{margin-top:7px;font-size:15px;font-weight:400}a{color:#17677c}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2d8a9f;outline-offset:3px}.login-card{max-width:520px;margin:35px auto;padding:40px;background:#faf9f2;border:1px solid var(--line);border-top:4px solid #317c88;border-radius:5px}.login-card .primary{width:100%}.workspace-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:25px 0}.stat{padding:21px;border:1px solid var(--line);background:#faf9f3;border-radius:4px}.stat strong{display:block;font-size:31px;color:#205967;margin-bottom:5px}.stat span{font-size:12px;color:#50676c}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:22px;background:#dfe5df;border:1px solid #c5d0c8;border-radius:4px}.filters label{margin:0;flex:1;min-width:145px}.filters label:first-child{flex:1.5}.filters .check{display:flex;align-items:center;gap:8px;font-size:12px;min-width:150px;min-height:45px;flex:0}.check input{width:18px;min-height:18px;margin:0}.table-wrap{overflow-x:auto;border:1px solid var(--line);background:#fafaf4;border-radius:4px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:11px;color:#49656c;text-transform:uppercase;letter-spacing:.04em;padding:17px 14px;background:#e5e9e2}td{border-top:1px solid #d3dbd4;padding:18px 14px;font-size:13px;vertical-align:top;max-width:260px;overflow-wrap:anywhere}td small{display:block;color:#526d72;font-size:11px;margin-top:6px}.badge{display:inline-block;border:1px solid #a6c0be;padding:4px 8px;border-radius:20px;font-size:11px;background:#e3efe9;white-space:nowrap}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-top:20px;font-size:13px}.empty{text-align:center;padding:40px}.notice{white-space:pre-wrap;color:#315f67;padding-top:15px}.notice.error,.error{background:#f7e3da;border-left:3px solid #aa4931;padding:14px;color:#743a29}dialog{width:min(1160px,96vw);max-height:92svh;padding:0;border:1px solid #869d9d;border-radius:6px;color:#25424a;background:#f7f6ed;overflow:auto}dialog::backdrop{background:#0d202bd4;backdrop-filter:blur(4px)}.detail-head{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 30px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#f7f6ed;z-index:2}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:4px 30px 30px}.detail-grid>section{min-width:0}.detail-grid>section+section{padding-left:30px;border-left:1px solid var(--line)}dl{margin:0}dl div{padding:10px 0;border-bottom:1px solid #d1d9d2}dt{font-size:11px;color:#4a6a70}dd{margin:4px 0 0;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.description{white-space:pre-wrap;overflow-wrap:anywhere;background:#e5ebe2;padding:18px;font-size:14px;max-height:400px;overflow:auto}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.history{padding-left:20px;font-size:13px}.history li{padding:10px 0;border-bottom:1px solid #d1d9d2}.history p{margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.history small{color:#4c6c72}.photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.photos a{display:block;font-size:11px;overflow-wrap:anywhere}.photos img{width:100%;height:110px;object-fit:contain;background:#d7e2db;display:block;margin-bottom:8px}@media(max-width:800px){.app-head{padding:18px;gap:15px;flex-wrap:wrap}.app-head img{width:135px}.app-head span{font-size:11px}.app-head button{font-size:11px}main{padding:28px 16px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:16px}.filters{padding:16px}.detail-grid{display:block;padding:0 20px 25px}.detail-grid>section+section{padding-left:0;border-left:0;border-top:1px solid var(--line);margin-top:25px}.detail-head{padding:18px 20px}.login-card{padding:27px;margin:15px auto}.workspace-title{align-items:start}h1{font-size:29px}.pagination{justify-content:space-between}}

/* Gestión comercial: misma organización funcional que la referencia de Plastiven. */
body{font-size:16px}main{max-width:none;padding:26px}.commercial-shell{max-width:1660px;margin:auto;display:grid;grid-template-columns:222px minmax(0,1fr);gap:28px}.commercial-sidebar{position:sticky;top:22px;align-self:start;background:#153b45;color:#e4f0ec;border-radius:7px;padding:24px 16px}.commercial-sidebar .eyebrow{color:#a5d6d7;line-height:1.7;margin:0 8px 22px}.commercial-sidebar nav,.sidebar-tools{display:flex;flex-direction:column;gap:6px}.commercial-sidebar a,.commercial-sidebar button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:47px;border:0;background:transparent;text-decoration:none;color:#d8e9e6;text-align:left;padding:12px;border-radius:4px;font-size:15px}.commercial-sidebar a:hover,.commercial-sidebar button:hover,.commercial-sidebar .active{background:#2b5961;color:white}.commercial-sidebar [aria-current=page]{border-left:3px solid #b2e4de}.sidebar-tools{border-top:1px solid #73969366;margin-top:28px;padding-top:18px}.sidebar-tools p{font-size:13px;overflow-wrap:anywhere;margin:15px 8px 0;color:#c6dddb}.commercial-content{min-width:0}.workspace-title h1{font-size:clamp(28px,3vw,39px)}.workspace-title .actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.workspace-title{align-items:flex-start}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0}.stat{text-align:left;cursor:pointer;min-height:117px;padding:20px;border-radius:7px}.stat:hover{background:#f4fcf6;border-color:#40868d;transform:translateY(-2px)}.stat strong{font-size:32px}.stat span{font-size:14px}.dashboard-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:22px}.commercial-card{padding:23px;background:#fafaf5;border:1px solid var(--line);border-radius:7px;margin-bottom:22px;min-width:0}.commercial-card h2{font-size:23px;margin:0 0 20px}.card-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.commercial-card .history{padding-left:18px;margin:0}.commercial-card .history small{display:block}.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:21px;gap:17px;background:#e2e8e1;margin-top:20px}.filters label{min-width:0;font-size:14px}.filters .filter-search{grid-column:span 2}.filters input,.filters select{font-size:16px}.filter-buttons{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.filters #export{margin-left:auto}th{font-size:12px}td{font-size:14px}td small{font-size:12px}.badge{white-space:normal;font-size:12px}.badge.won{background:#d9eddf;color:#195e39}.badge.lost{background:#f2dcd6;color:#7e382e}.pagination{font-size:15px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 15px;border:1px solid #819b9f;border-radius:4px;text-decoration:none;background:#fafaf4;color:#23434c}.actions{display:flex;gap:10px;flex-wrap:wrap}.detail-grid label{font-size:15px}.detail-grid label input,.detail-grid label select,.detail-grid label textarea{font-size:16px}label.check{display:flex;align-items:center;gap:10px;margin:12px 0 22px;font-size:14px;line-height:1.6}.check input{width:20px;height:20px;min-height:20px;flex-shrink:0;margin:0}.detail-grid dd{font-size:16px}.detail-grid dt{font-size:13px}.detail-grid .description{font-size:16px;max-height:none;padding:17px}.detail-grid .history{font-size:15px}.history small{display:block;font-size:12px;margin-top:7px}.detail-head h2{font-size:26px;overflow-wrap:anywhere}.detail-grid>section{padding-top:24px}#quick-actions{margin-top:20px}#client-actions{margin:0 0 24px}.photos{grid-template-columns:repeat(2,minmax(0,1fr))}.photos figure{margin:0;min-width:0;overflow-wrap:anywhere}.photos img{height:150px}.photos button{font-size:13px;min-height:44px;width:100%}.photos figcaption{font-size:12px;margin-top:9px}#image-panel{text-align:center}#image-full{display:block;max-width:100%;max-height:72dvh;object-fit:contain;margin:auto}#image-name{overflow-wrap:anywhere;padding:15px}.manual-body{padding:22px 30px}.manual-body label,.user-form label{font-size:14px}.manual-body input,.manual-body textarea,.manual-body select,.user-form input,.user-form select{font-size:16px}.manual-body fieldset{border:1px solid #b4c7bf;border-radius:6px;padding:20px;margin:20px 0 24px}.manual-body legend{padding:0 8px;font-weight:bold}.manual-body fieldset p{font-size:14px}.manual-body .fields{gap:0 20px}.user-form{align-items:end}.user-form button[type=submit]{align-self:end;margin-bottom:18px}.team-user{border-top:1px solid var(--line);padding:19px 0}.team-user h3{margin:0;font-size:21px}.team-user summary{cursor:pointer;min-height:44px;padding:10px 0;color:#1b6572}.team-user details[open]{padding-bottom:20px}.password-toggle{min-height:34px;margin-top:8px;padding:5px 10px;font-size:13px;display:block}.login-card label .password-toggle{width:auto}.login-card label{font-size:15px}.login-card input{font-size:17px}.notice:empty{display:none}.notice{max-width:1660px;margin:16px auto 0;position:sticky;bottom:10px;z-index:10;background:#e0f0e8;border:1px solid #96bcae;border-radius:5px;padding:14px 20px;box-shadow:0 2px 10px #092c2720}.notice.error{background:#f7e3da}.workspace-title h1:focus{outline:none}.authorization{font-size:14px;overflow-wrap:anywhere}
@media(max-width:1160px){main{padding:20px}.commercial-shell{grid-template-columns:195px minmax(0,1fr);gap:20px}.commercial-sidebar{padding:20px 10px}.dashboard-split{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-title{flex-direction:column}.workspace-title .actions{justify-content:flex-start}}
@media(max-width:800px){main{padding:16px}.commercial-shell{display:block}.commercial-sidebar{position:static;margin-bottom:24px;padding:14px}.commercial-sidebar .eyebrow{margin-bottom:10px}.commercial-sidebar nav{display:grid;grid-template-columns:1fr 1fr}.sidebar-tools{display:flex;flex-direction:row;gap:4px;flex-wrap:wrap;margin-top:10px;padding-top:10px}.sidebar-tools p{width:100%;margin:8px 12px}.commercial-sidebar button,.commercial-sidebar a{font-size:14px;padding:10px}.workspace-title h1{font-size:29px}.commercial-card{padding:19px}.stats{gap:10px}.stat{padding:17px;min-height:109px}.stat span{font-size:13px}.stat strong{font-size:29px}.filters{padding:17px}.detail-head{padding:16px 18px}.detail-head h2{font-size:22px}.manual-body{padding:20px}.manual-body .fields{grid-template-columns:1fr}.notice{position:static}.user-form{grid-template-columns:1fr}.user-form label{margin-bottom:6px}}
@media(max-width:600px){.filters{grid-template-columns:1fr}.filters .filter-search{grid-column:auto}.filter-buttons{display:grid;grid-template-columns:1fr 1fr}.filters #export{margin:0;grid-column:1/-1}#list-view .table-wrap{border:0;background:transparent}#list-view table,#list-view tbody{display:block}#list-view thead{display:none}#list-view tr{display:grid;grid-template-columns:1fr 1fr;background:#fafaf5;border:1px solid var(--line);border-radius:6px;padding:8px;margin-bottom:13px}#list-view td{display:block;max-width:none;padding:11px;border:0;font-size:14px}#list-view td:before{content:attr(data-label);display:block;color:#58747a;font-size:11px;font-weight:bold;margin-bottom:6px}#list-view td:first-child,#list-view td:nth-child(2),#list-view td:last-child{grid-column:1/-1}#list-view td:last-child a{display:inline-flex;min-height:44px;align-items:center}.detail-grid .fields{grid-template-columns:1fr}.photos{grid-template-columns:1fr}.card-heading{align-items:flex-start;flex-direction:column}.commercial-card h2{font-size:22px}.card-heading a{min-height:40px}.workspace-title .actions{width:100%}.workspace-title .actions>*{flex:1}#manual-panel .manual-body{padding:17px}.manual-body fieldset{padding:14px}.pagination{gap:9px}}
@media(prefers-reduced-motion:reduce){.stat:hover{transform:none}}
.detail-head>button{flex-shrink:0;white-space:nowrap}
.qa-banner{margin:16px 26px 0;padding:12px 18px;border:1px solid #b8b487;background:#faf4d7;color:#64551d;border-radius:4px;font-size:14px}
