:root{--blue:#0b2744;--navy:#0e2135;--ink:#172533;--muted:#6f7787;--line:#efedea;--bg:#faf8f6;--white:#fff;--radius:20px}html{overflow-y:scroll;scrollbar-gutter:stable}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);display:flex;min-height:100vh}.sidebar{width:270px;background:var(--navy);color:white;padding:28px 20px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:20}.brand{display:flex;align-items:center;gap:13px;padding:0 8px 28px}.brand-mark{font-weight:900;font-style:italic;font-size:25px;color:#fff}.brand strong,.brand small,.sidebar-footer strong,.sidebar-footer small{display:block}.brand strong{font-size:18px}.brand small,.sidebar-footer small{color:#b3afa9;font-size:12px;margin-top:3px}nav{display:grid;gap:7px}nav button{border:0;background:transparent;color:#c1bdb7;padding:13px 14px;border-radius:12px;text-align:left;font-size:15px;display:flex;gap:14px;cursor:pointer}nav button span{width:20px;text-align:center}nav button:hover,nav button.active{background:#284a6f;color:white}.sidebar-footer{margin-top:auto;border-top:1px solid #293d52;padding:20px 8px 0;display:flex;gap:11px;align-items:center}.avatar,.profile>span:first-child{background:#f8f4ee;color:var(--blue);border-radius:50%;display:grid;place-items:center;font-weight:800}.avatar{width:40px;height:40px}main{width:calc(100% - 270px);margin-left:270px;padding:0 34px 40px}header{height:94px;display:flex;align-items:center;justify-content:space-between}h1{font-size:27px;margin:2px 0}.eyebrow{font-weight:800;letter-spacing:.13em;font-size:10px;color:var(--blue);margin:0}.eyebrow.light{color:#efe4d7}.profile{border:1px solid var(--line);background:white;border-radius:14px;padding:8px 12px 8px 8px;display:flex;gap:9px;align-items:center}.profile>span:first-child{width:35px;height:35px}.profile-copy{text-align:left}.profile strong,.profile small{display:block}.profile small{font-size:11px;color:var(--muted);margin-top:2px}.menu{display:none;border:0;background:white;border-radius:10px;padding:10px;font-size:20px}.welcome{background:linear-gradient(125deg,#0b2744,#0f345b);border-radius:var(--radius);padding:28px 32px;color:white;display:flex;align-items:center;justify-content:space-between;box-shadow:0 14px 35px rgba(11,39,69,.18)}.welcome h2{font-size:29px;margin:5px 0}.welcome p:last-child{margin:0;color:#f5eee6}.primary{border:0;border-radius:12px;background:white;color:var(--blue);font-weight:800;padding:13px 18px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.metrics article,.panel{background:white;border:1px solid var(--line);border-radius:var(--radius)}.metrics article{padding:21px;display:flex;gap:15px}.metric-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-weight:800}.metric-icon.blue{background:#f9f4ef;color:#0f345b}.metric-icon.violet{background:#f2eaff;color:#7a3fd0}.metric-icon.amber{background:#fff2d9;color:#b77700}.metric-icon.green{background:#e3f7ed;color:#168456}.metrics small{color:var(--muted)}.metrics strong{display:block;font-size:25px;margin:3px 0}.metrics p{font-size:11px;color:#9aa1ae;margin:0}.grid{display:grid;grid-template-columns:1.55fr 1fr;gap:18px}.panel{padding:23px}.panel-title{display:flex;justify-content:space-between;align-items:center}.panel-title h3{margin:5px 0;font-size:18px}.panel-title button{border:0;background:#fbf7f3;color:var(--blue);border-radius:9px;padding:8px 11px;font-weight:700}.empty{text-align:center;padding:48px 20px}.empty.compact{padding:35px 20px}.empty>span{font-size:28px;color:#aeb5c3}.empty h4{margin:10px 0 5px}.empty p{margin:0;color:var(--muted);font-size:14px}.overlay{display:none}@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}main{width:100%;margin:0;padding:0 16px 28px}header{height:80px;justify-content:flex-start;gap:14px}.menu{display:block}.profile{margin-left:auto}.profile-copy{display:none}.welcome{padding:23px;align-items:flex-start}.welcome h2{font-size:24px}.welcome p:last-child{font-size:14px;max-width:210px}.primary{padding:11px;font-size:12px}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metrics article{padding:15px;display:block}.metric-icon{margin-bottom:10px}.grid{grid-template-columns:1fr}.overlay.show{display:block;position:fixed;inset:0;background:#07152488;z-index:10}}@media(max-width:420px){.metrics{grid-template-columns:1fr}.welcome{display:block}.primary{margin-top:18px}}

.brand{padding:0 4px 28px}.brand img{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}.mobile-logo{display:none;width:148px;height:auto}@media(max-width:760px){header>div:nth-of-type(1){display:none}.mobile-logo{display:block}.sidebar .brand img{filter:brightness(0) invert(1)}}

.clients-head{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.clients-head h2{margin:6px 0;font-size:25px}.clients-head p:last-child{margin:0;color:var(--muted)}.blue-button{background:var(--blue);color:white;white-space:nowrap}.folder-panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-top:18px}.folder-toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 2px 18px;border-bottom:1px solid var(--line)}.folder-toolbar span{color:var(--muted);font-size:13px}.folder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:18px}.folder-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px;text-align:left;display:flex;align-items:center;gap:13px;cursor:pointer;color:var(--ink)}.folder-card:hover{border-color:#ecdfcf;background:#fdfcfa}.folder-icon{width:42px;height:42px;border-radius:11px;background:#f9f4ef;color:var(--blue);display:grid;place-items:center;flex:0 0 42px}.folder-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.folder-card strong,.folder-card small{display:block}.folder-card strong{overflow:hidden;text-overflow:ellipsis}.folder-card small{margin-top:4px;color:var(--muted)}.folder-empty{grid-column:1/-1}@media(max-width:900px){.folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.clients-head{display:block;padding:21px}.clients-head .primary{margin-top:18px;width:100%}.folder-grid{grid-template-columns:1fr}.folder-panel{padding:16px}}

.folder-toolbar>div{display:flex;align-items:baseline;gap:12px}.folder-toolbar>div span{color:var(--muted);font-size:13px}.client-search{width:min(320px,42vw);height:42px;border:1px solid var(--line);border-radius:12px;background:#fbfaf9;display:flex;align-items:center;gap:9px;padding:0 13px;color:var(--blue)}.client-search:focus-within{background:#fff;border-color:#d3b48c;box-shadow:0 0 0 3px #f9f4ef}.client-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:inherit}.folder-card[hidden]{display:none}@media(max-width:600px){.folder-toolbar{align-items:stretch;gap:13px;flex-direction:column}.folder-toolbar>div{justify-content:space-between}.client-search{width:100%}}

/* Arrastrar documentación sobre la carpeta de Clientes abierta. */
.folder-panel{position:relative}.folder-drop-overlay{position:absolute;inset:10px;z-index:12;border:2px dashed #c49a64;border-radius:18px;background:rgba(251,247,243,.96);color:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;opacity:0;visibility:hidden;transform:scale(.985);pointer-events:none;transition:opacity .15s ease,transform .15s ease,visibility .15s}.folder-drop-overlay.active{opacity:1;visibility:visible;transform:none}.folder-drop-overlay>span{width:52px;height:52px;border-radius:15px;background:#fff;box-shadow:0 7px 22px rgba(11,39,68,.13);display:grid;place-items:center;font-size:30px;line-height:1}.folder-drop-overlay strong{margin-top:13px;font-size:18px}.folder-drop-overlay small{margin-top:5px;color:#68748f;font-size:12px}.folder-panel:has(.folder-drop-overlay.active){box-shadow:0 0 0 4px rgba(14,48,85,.09)}
@media(max-width:760px){.folder-drop-overlay{inset:7px;border-radius:15px}.folder-drop-overlay strong{font-size:16px}}

.folder-back{border:0;background:#f9f4ef;color:var(--blue);border-radius:9px;width:32px;height:32px;font-size:18px;cursor:pointer}.folder-back[hidden]{display:none}.folder-icon.file{background:#f3f2f0;color:#596174}.folder-card span:last-child{min-width:0}.folder-card strong{white-space:nowrap}

.management-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.new-client-panel,.management-help{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px}.new-client-panel h2{margin:6px 0;font-size:25px}.form-intro{color:var(--muted);margin:0 0 25px}.new-client-panel form label{display:block;font-weight:700;font-size:14px;margin-bottom:9px}.form-row{display:flex;gap:11px}.form-row input{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:13px 14px;font:inherit;outline:0}.form-row input:focus{border-color:#d3b48c;box-shadow:0 0 0 3px #f9f4ef}.form-row button:disabled{opacity:.65}.form-message{min-height:20px;margin:12px 0 0;font-size:14px}.form-message.success{color:#168456}.form-message.error{color:#b42318}.management-help{align-self:start}.management-help h3{margin:15px 0 7px}.management-help p{color:var(--muted);margin:0;line-height:1.5}.management-icon{width:48px;height:48px;border-radius:13px;background:#f9f4ef;color:var(--blue);display:grid;place-items:center;font-size:20px}@media(max-width:850px){.management-grid{grid-template-columns:1fr}}@media(max-width:600px){.form-row{display:block}.form-row button{width:100%;margin-top:11px}}

.folder-actions{display:flex;align-items:center;gap:10px}.upload-button{height:42px;border:0;border-radius:12px;background:var(--blue);color:#fff;padding:0 15px;font-weight:750;cursor:pointer;white-space:nowrap}.upload-button[hidden]{display:none}@media(max-width:900px){.folder-actions{width:100%;flex-wrap:wrap}.folder-actions .client-search{flex:1}.upload-button{flex:0 0 auto}}@media(max-width:600px){.folder-actions{display:grid}.folder-actions .client-search,.upload-button{width:100%}}
.invoice-process-open{background:#fff;color:var(--blue);border:1px solid #d6b892}.invoice-process-open:hover{background:#fbf8f5}.invoice-processor{margin:18px 0;padding:22px;border:1px solid #e6e0d7;border-radius:18px;background:linear-gradient(145deg,#fdfcfa,#fff);box-shadow:0 10px 28px rgba(25,64,105,.07)}.invoice-processor[hidden]{display:none}.invoice-processor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.invoice-processor-head h3{margin:4px 0 5px;font-size:23px}.invoice-processor-head p:last-child{margin:0;color:var(--muted);font-size:13px}.invoice-processor-head>button{width:42px;height:42px;border:0;border-radius:50%;background:#f4f2ef;color:#17395d;font:400 32px/1 Arial;cursor:pointer}.invoice-processor-fields{margin-top:18px;display:grid;grid-template-columns:minmax(230px,.7fr) minmax(360px,1.3fr);gap:16px;align-items:stretch}.invoice-processor-fields>label:first-child{display:flex;flex-direction:column;gap:8px;color:#667189;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.invoice-processor-fields select{height:54px;border:1px solid #dfdbd6;border-radius:13px;background:#fff;padding:0 14px;color:var(--ink);font:700 14px inherit}.invoice-drop-zone{min-height:112px;border:2px dashed #d4b68e;border-radius:15px;background:#fff;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;align-content:center;column-gap:12px;padding:16px 20px;color:var(--blue);cursor:pointer;transition:.18s}.invoice-drop-zone:hover,.invoice-drop-zone.dragging{border-color:var(--blue);background:#faf7f3}.invoice-drop-zone input{display:none}.invoice-drop-zone>span{grid-row:1/3;width:42px;height:42px;border-radius:12px;background:#f9f4ef;display:grid;place-items:center;font-size:23px}.invoice-drop-zone strong{align-self:end;font-size:14px}.invoice-drop-zone small{align-self:start;margin-top:3px;color:var(--muted);font-size:11px}.invoice-selected-files{margin-top:13px;padding:11px 13px;border-radius:11px;background:#f5f4f2;color:#7a8498;font-size:12px;display:flex;flex-direction:column;gap:4px}.invoice-selected-files strong{color:var(--ink)}.invoice-selected-files span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-processor-actions{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:18px}.invoice-processor-actions p{margin:0;color:#57647b;font-size:12px}.invoice-processor-actions button{min-width:210px}.invoice-processor-actions button:disabled{opacity:.65;cursor:wait}@media(max-width:800px){.invoice-processor-fields{grid-template-columns:1fr}.invoice-processor-actions{align-items:stretch;flex-direction:column}.invoice-processor-actions button{width:100%}}@media(max-width:600px){.invoice-processor{padding:17px}.invoice-drop-zone{grid-template-columns:36px 1fr;padding:14px}.invoice-drop-zone>span{width:36px;height:36px}.invoice-processor-head h3{font-size:20px}}
.folder-view-toggle{height:42px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#faf8f6;display:flex;align-items:center;gap:3px}
.folder-view-toggle button{width:34px;height:32px;border:0;border-radius:8px;background:transparent;color:#788398;display:grid;place-items:center;font-size:18px;line-height:1;cursor:pointer}
.folder-view-toggle button:hover{background:#f9f4ef;color:var(--blue)}
.folder-view-toggle button.active{background:#fff;color:var(--blue);box-shadow:0 2px 7px rgba(25,71,120,.13)}
.folder-grid.list-view{grid-template-columns:1fr}
.folder-grid.list-view .folder-card{width:100%;min-height:64px;padding:10px 14px;border-radius:12px}
.folder-grid.list-view .folder-icon,.folder-grid.list-view .file-type-icon{width:38px;height:38px;flex:0 0 38px}
@media(max-width:600px){.folder-view-toggle{justify-self:end}.folder-actions .folder-view-toggle{width:auto}}

.management-search{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:27px 30px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px}.management-search h2,.signatures-panel h2{font-size:25px;margin:6px 0}.management-search p:last-child{margin:0;color:var(--muted)}.management-searchbox{grid-column:1/-1;height:48px;border:1px solid var(--line);border-radius:13px;background:#fbfaf9;display:flex;align-items:center;gap:10px;padding:0 15px;color:var(--blue)}.management-searchbox:focus-within{background:#fff;border-color:#d3b48c;box-shadow:0 0 0 3px #f9f4ef}.management-searchbox input{border:0;outline:0;background:transparent;width:100%;font:inherit}.management-clients,.signatures-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-top:18px}.modal-shell{position:fixed;inset:0;z-index:100;display:grid;place-items:center;visibility:hidden;pointer-events:none}.modal-shell.open{visibility:visible;pointer-events:auto}.modal-backdrop{position:absolute;inset:0;background:rgba(4,19,35,.58);backdrop-filter:blur(4px);opacity:0;transition:opacity .25s}.modal-shell.open .modal-backdrop{opacity:1}.client-modal{position:relative;width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:24px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.28);opacity:0;transform:translateY(24px) scale(.97);transition:opacity .25s,transform .3s cubic-bezier(.2,.8,.2,1)}.modal-shell.open .client-modal{opacity:1;transform:none}.modal-heading{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:21px}.modal-heading h2{margin:5px 0 0}.modal-close{border:0;background:#f4f3f2;border-radius:50%;width:38px;height:38px;font-size:25px;cursor:pointer}.client-modal form>label,.signature-data label{display:grid;gap:8px;font-weight:700;font-size:14px}.client-modal input[type=text],.client-modal input[type=password],.client-modal input[type=date]{height:46px;border:1px solid var(--line);border-radius:11px;padding:0 13px;font:inherit}.attachment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:20px 0}.file-field{border:1px solid var(--line);border-radius:14px;padding:15px;display:grid;gap:12px;background:#fdfcfb;cursor:pointer}.file-field:hover{border-color:#d5b891}.file-field strong,.file-field small{display:block}.file-field small{font-weight:400;color:var(--muted);margin-top:4px}.file-field input{font-size:12px;max-width:100%}.signature-data{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#fcfbf9;border-radius:14px;padding:16px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.secondary-button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 18px;font-weight:700}.table-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.signature-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.signature-table{width:100%;border-collapse:collapse;min-width:1080px;table-layout:fixed}.signature-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#fbfaf9;padding:14px 16px}.signature-table td{padding:16px;border-top:1px solid var(--line)}.document-link,.password-cell{border:0;background:transparent;color:var(--blue);font-weight:700;cursor:pointer;padding:0}.password-cell{color:var(--ink)}.expiry{font-weight:700}.expiry.valid{color:#168456}.expiry.warning{color:#b77700}.expiry.expired{color:#b42318}.table-empty{text-align:center;color:var(--muted);padding:38px!important}@media(max-width:760px){.management-search{grid-template-columns:1fr;padding:21px}.management-search .primary{width:100%}.management-searchbox{grid-column:auto}.attachment-grid,.signature-data{grid-template-columns:1fr}.client-modal{padding:21px}.table-heading{align-items:stretch;flex-direction:column}.table-heading .client-search{width:100%}}

.client-modal{overflow-x:hidden}.attachment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.file-field{min-width:0}.file-field input{width:100%;min-width:0}.signature-field{grid-column:1/-1}.signature-field input{max-width:100%}@media(max-width:620px){.attachment-grid{grid-template-columns:1fr}.signature-field{grid-column:auto}}

.signature-actions{display:flex;align-items:center;gap:10px}.signature-actions .client-search{width:270px}@media(max-width:900px){.table-heading{align-items:stretch;flex-direction:column}.signature-actions{width:100%}.signature-actions .client-search{flex:1;width:auto}}@media(max-width:600px){.signature-actions{display:grid}.signature-actions .client-search,.signature-actions .upload-button{width:100%}}

@media(max-width:760px){
  .sidebar{width:100%;padding:24px 20px;overflow-y:auto;background:linear-gradient(155deg,#0e2135 0%,#12355b 100%)}
  .sidebar .brand{justify-content:center;padding:4px 12px 24px}
  .sidebar .brand img{width:min(285px,76vw)}
  .sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding-bottom:22px}
  .sidebar nav button{min-height:76px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.055);border-radius:16px;padding:14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;color:#f2e9df;font-weight:650}
  .sidebar nav button span{width:auto;font-size:19px}
  .sidebar nav button.active{background:#fff;color:var(--blue);border-color:#fff}
  .sidebar-footer{margin-top:0;padding:18px 8px 4px 8px}
  .overlay.show{display:none}
}
@media(max-width:390px){
  .sidebar nav{grid-template-columns:1fr}
  .sidebar nav button{min-height:62px;flex-direction:row;align-items:center;justify-content:flex-start}
}

.access-shell{position:fixed;inset:0;z-index:140;display:grid;place-items:center;visibility:hidden;pointer-events:none}.access-shell.open{visibility:visible;pointer-events:auto}.access-backdrop{position:absolute;inset:0;background:rgba(5,21,38,.55);backdrop-filter:blur(5px);opacity:0;transition:opacity .26s}.access-shell.open .access-backdrop{opacity:1}.access-card{position:relative;width:min(430px,calc(100vw - 32px));background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:24px;padding:32px;box-shadow:0 30px 90px rgba(4,19,36,.3);opacity:0;transform:translateY(26px) scale(.96);transition:opacity .26s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.access-shell.open .access-card{opacity:1;transform:translateY(0) scale(1)}.access-close{position:absolute;right:18px;top:18px;width:36px;height:36px;border:0;border-radius:50%;background:#f5f4f2;font-size:23px;cursor:pointer}.access-icon{width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,#f9f4ee,#fcfaf7);color:var(--blue);display:grid;place-items:center;font-size:23px;font-weight:800;margin-bottom:18px}.access-card h2{font-size:27px;margin:6px 0 8px}.access-copy{color:var(--muted);line-height:1.5;margin:0 0 22px}.access-card form>label{display:block;font-size:14px;font-weight:750;margin-bottom:8px}.access-input{height:48px;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:10px;padding:0 14px;transition:border-color .2s,box-shadow .2s}.access-input:focus-within{border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}.access-input span{color:var(--blue);font-size:9px}.access-input input{border:0;outline:0;width:100%;font:inherit;background:transparent}.access-input input.invalid{color:#b42318}.access-error{height:20px;margin:8px 0 10px;color:#b42318;font-size:13px}.access-card form>.primary{width:100%;height:46px}@media(max-width:480px){.access-card{padding:26px 22px}.access-card h2{font-size:24px}}


/* Chat interno de trabajadores */
.worker-chat{position:fixed;right:24px;bottom:24px;z-index:1200;font-family:inherit}.chat-launcher{height:56px;min-width:56px;border:0;border-radius:18px;background:linear-gradient(135deg,#0f345c,#0b2642);color:#fff;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 19px;box-shadow:0 14px 36px rgba(11,38,66,.32);font:700 15px inherit;cursor:pointer;transition:transform .2s,box-shadow .2s}.chat-launcher:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(11,38,66,.38)}.chat-launcher.active{transform:scale(.94)}.chat-launcher-icon{font-size:20px}.chat-panel{position:absolute;right:0;bottom:68px;width:390px;height:min(600px,calc(100vh - 120px));background:#fff;border:1px solid #ece9e5;border-radius:22px;box-shadow:0 24px 70px rgba(15,38,62,.24);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(18px) scale(.96);transform-origin:bottom right;transition:opacity .22s,transform .22s,visibility .22s,width .24s,height .24s;display:flex;flex-direction:column}.chat-panel.perplexity-mode{width:min(880px,calc(100vw - 48px));height:min(760px,calc(100vh - 100px))}.chat-panel.open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.chat-header{background:linear-gradient(135deg,#0b2642,#103862);color:#fff;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px}.chat-header h2{font-size:20px;margin:3px 0 0}.chat-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;opacity:.78}.chat-header-actions{display:flex;align-items:center;gap:9px}.chat-header button{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:22px;cursor:pointer}.chat-header .chat-perplexity-button{width:auto;border-radius:11px;padding:0 12px;display:flex;align-items:center;gap:7px;font:750 13px inherit;background:rgba(255,255,255,.16)}.chat-header .chat-perplexity-button:hover,.chat-header .chat-perplexity-button.active{background:#fff;color:var(--blue)}.chat-panel #chatContent{min-height:0;flex:1;display:flex;flex-direction:column}.chat-intro{padding:20px 20px 12px;display:flex;flex-direction:column;gap:4px}.chat-intro strong{font-size:16px}.chat-intro span{color:var(--muted);font-size:14px}.chat-contacts{padding:4px 12px 16px;overflow:auto}.chat-contacts button{width:100%;border:0;background:transparent;border-radius:14px;padding:11px 10px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;transition:background .18s,transform .18s}.chat-contacts button:hover{background:#fbf8f5;transform:translateX(2px)}.chat-contacts button>span:nth-child(2){display:flex;flex-direction:column;gap:3px;flex:1}.chat-contacts small,.conversation-bar small{color:var(--muted);font-size:12px}.chat-contacts b{font-size:25px;color:#b4aea6;font-weight:400}.chat-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#f9f4ef;color:var(--blue);display:grid;place-items:center;font-size:13px;font-weight:800}.conversation-bar{padding:13px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.conversation-bar>button{border:0;background:#f6f5f3;width:34px;height:34px;border-radius:10px;font-size:18px;cursor:pointer}.conversation-bar .chat-avatar{width:38px;height:38px;flex-basis:38px}.conversation-bar div{display:flex;flex-direction:column;gap:2px}.chat-messages{flex:1;overflow:auto;padding:18px;background:#fbf9f7;display:flex;flex-direction:column;gap:10px}.chat-empty{margin:auto;text-align:center;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:5px}.chat-empty>span{font-size:28px;color:#c4beb6}.chat-empty strong{color:var(--ink)}.chat-empty small{font-size:13px}.chat-message{align-self:flex-end;max-width:82%;background:var(--blue);color:#fff;border-radius:16px 16px 4px 16px;padding:10px 12px;box-shadow:0 5px 14px rgba(11,38,66,.16)}.chat-message p{margin:0;line-height:1.4;overflow-wrap:anywhere}.chat-message time{display:block;text-align:right;font-size:10px;margin-top:4px;opacity:.7}.chat-composer{padding:12px 13px 8px;border-top:1px solid var(--line);display:flex;gap:9px;background:#fff}.chat-composer textarea{flex:1;resize:none;min-height:44px;max-height:90px;border:1px solid var(--line);border-radius:13px;padding:11px 13px;font:inherit;outline:0}.chat-composer textarea:focus{border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}.chat-composer button{width:44px;height:44px;border:0;border-radius:13px;background:var(--blue);color:#fff;font-size:17px;cursor:pointer}.chat-note{margin:0;padding:0 15px 10px;text-align:center;color:#8b94a8;font-size:11px;background:#fff}.perplexity-toolbar{min-height:62px;padding:10px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff}.perplexity-toolbar p{margin:0;display:flex;flex-direction:column;gap:3px}.perplexity-toolbar small{color:var(--muted)}.perplexity-toolbar a,.perplexity-frame-help a{color:var(--blue);font-weight:750;text-decoration:none}.perplexity-frame-wrap{position:relative;flex:1;min-height:0;background:#faf8f6}.perplexity-frame-wrap iframe{position:relative;z-index:2;width:100%;height:100%;border:0;background:#fff}.perplexity-frame-help{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:28px;color:var(--muted)}.perplexity-frame-help strong{color:var(--ink);font-size:17px}@media(max-width:760px){.worker-chat{right:14px;bottom:14px}.chat-launcher{height:54px;padding:0 17px}.chat-panel,.chat-panel.perplexity-mode{position:fixed;inset:0;width:100%;height:100%;max-height:none;border:0;border-radius:0;transform:translateY(30px);transform-origin:center}.chat-panel.open{transform:translateY(0)}.chat-header{padding-top:max(20px,env(safe-area-inset-top));padding-left:16px;padding-right:16px}.chat-header h2{font-size:18px}.chat-header .chat-perplexity-button{padding:0 10px}.chat-launcher-label{display:none}.perplexity-toolbar{padding:9px 12px}.perplexity-toolbar p small{display:none}.perplexity-toolbar a{font-size:13px}}


/* Declaraciones y obligaciones fiscales */
.client-identity-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}.client-identity-grid>label,.fiscal-obligations{font-weight:750}.client-identity-grid input{display:block;width:100%;height:48px;margin-top:8px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font:inherit}.client-identity-grid small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.fiscal-obligations{border:1px solid var(--line);border-radius:16px;margin:18px 0;padding:16px}.fiscal-obligations legend{padding:0 7px;font-size:16px}.fiscal-obligations>p{color:var(--muted);font-weight:400;font-size:13px;margin:0 0 13px}.obligation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.obligation-item{border:1px solid #edeae6;border-radius:12px;padding:10px;background:#fbfaf9;display:flex;align-items:center;justify-content:space-between;gap:8px}.obligation-item label{display:flex;align-items:center;gap:7px;font-size:13px;white-space:nowrap}.obligation-item input{accent-color:var(--blue)}.obligation-item select{border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 5px;font:inherit;font-size:12px}.obligation-item select:disabled{opacity:.45}.declarations-panel{margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;overflow:hidden}.declarations-heading h2{font-size:28px;margin:5px 0 7px}.declarations-heading p:not(.eyebrow){color:var(--muted);margin:0}.tax-tabs{display:flex;gap:8px;overflow-x:auto;padding:24px 0 14px;border-bottom:1px solid var(--line)}.tax-tabs button{border:1px solid #ebe8e3;background:#fbfaf8;color:#394a5d;border-radius:11px;padding:10px 15px;font:700 14px inherit;white-space:nowrap;cursor:pointer;transition:.18s}.tax-tabs button:hover{border-color:#cfae82}.tax-tabs button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 6px 16px rgba(11,38,66,.18)}.tax-table-wrap{overflow:auto;margin-top:14px}.tax-table{width:100%;min-width:1450px;border-collapse:collapse}.tax-table th{text-align:left;color:#68738a;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:12px 9px;border-bottom:1px solid var(--line)}.tax-table td{padding:12px 9px;border-bottom:1px solid #f3f1ef;vertical-align:middle}.tax-table td:first-child strong{display:block;min-width:170px}.tax-table td:first-child small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.tax-table select,.tax-table input{height:39px;border:1px solid #eae6e3;border-radius:9px;background:#fff;padding:0 9px;font:inherit;font-size:13px;min-width:138px}.tax-table input[type=date]{min-width:142px}.amount-input{position:relative}.amount-input input{width:115px;min-width:115px;padding-right:27px}.amount-input span{position:absolute;right:9px;top:10px;color:var(--muted)}@media(max-width:760px){.client-identity-grid{grid-template-columns:1fr}.obligation-grid{grid-template-columns:1fr}.declarations-panel{margin:12px;padding:18px 14px;border-radius:18px}.declarations-heading h2{font-size:23px}.tax-tabs{padding-top:18px}}

.fiscal-periodicity{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#faf7f3;border:1px solid #f6f0e8;border-radius:13px;padding:12px 14px;margin-bottom:15px}.fiscal-periodicity>div{display:flex;flex-direction:column;gap:3px}.fiscal-periodicity small{color:var(--muted);font-size:12px;font-weight:400}.fiscal-periodicity select{min-width:145px;border:1px solid #ede0d1;border-radius:9px;background:#fff;padding:9px 11px;font:700 13px inherit;color:var(--ink)}.obligation-item{justify-content:flex-start}.obligation-item label{width:100%;cursor:pointer}@media(max-width:480px){.fiscal-periodicity{align-items:stretch;flex-direction:column}.fiscal-periodicity select{width:100%}}

/* Acceso Holded */
.holded-nav .holded-mark{position:relative;width:20px;height:20px;display:inline-block;flex:0 0 20px}.holded-mark i,.holded-hero-mark i{position:absolute;display:block;background:linear-gradient(135deg,#cba777,#d5b790);border-radius:3px;transform:rotate(45deg)}.holded-mark i:first-child{width:9px;height:17px;left:2px;top:1px}.holded-mark i:last-child{width:8px;height:12px;right:1px;top:1px}.holded-panel{margin-top:26px;background:linear-gradient(135deg,#fff 0%,#fcfaf8 100%);border:1px solid var(--line);border-radius:24px;padding:34px;display:flex;align-items:center;gap:24px}.holded-panel h2{font-size:28px;margin:5px 0 7px}.holded-panel p:not(.eyebrow){color:var(--muted);margin:0}.holded-hero-mark{position:relative;width:74px;height:74px;flex:0 0 74px;border-radius:20px;background:#f9f4ef}.holded-hero-mark i:first-child{width:22px;height:45px;left:21px;top:15px;background:linear-gradient(135deg,#0b2642,#113d6b)}.holded-hero-mark i:last-child{width:19px;height:32px;right:16px;top:15px;background:linear-gradient(135deg,#c49a63,#d2b187)}.holded-open{margin-left:auto;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:9px}.holded-open span{font-size:18px}@media(max-width:760px){.holded-panel{margin:12px;flex-direction:column;align-items:flex-start;padding:24px}.holded-open{margin:4px 0 0;width:100%;justify-content:center}}

/* Corrección exacta del símbolo de Holded */
.holded-mark,.holded-hero-mark{position:relative;overflow:visible}

/* Interfaz móvil · Azul ejecutivo */
.mobile-app-chrome{display:none}
@media(max-width:760px){
  :root{--mobile-blue:#0b2846;--mobile-electric:#124070;--mobile-sand:#d7b77b}
  body{display:block;background:linear-gradient(180deg,#f9f4ef 0,#fbfaf8 280px);overflow-x:hidden}
  body.menu-open{overflow:hidden}
  main{min-height:100vh;padding:0 14px calc(118px + env(safe-area-inset-bottom));overflow:hidden}
  main>header{position:relative;height:104px;margin:0 -14px 18px;padding:calc(12px + env(safe-area-inset-top)) 18px 13px;gap:12px;color:#fff;background:linear-gradient(120deg,#0a2f57 0%,#0d2c4e 64%,#124070 100%);border-radius:0 0 26px 26px;box-shadow:0 14px 30px rgba(15,74,137,.2);overflow:hidden}
  main>header:after{content:"";position:absolute;width:170px;height:150px;right:30px;top:-27px;background:url('/app-icon.png') center/contain no-repeat;filter:brightness(0) invert(1) blur(.7px);opacity:.1;transform:rotate(-5deg);pointer-events:none}
  main>header>div:nth-of-type(1){display:block;min-width:0;position:relative;z-index:1}
  main>header .eyebrow{color:#ede0d1;font-size:8px}
  main>header h1{max-width:58vw;margin-top:4px;color:#fff;font-size:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-logo{display:none}
  .menu{position:relative;z-index:2;display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;padding:0;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.12);color:#fff;border-radius:13px;font-size:19px;backdrop-filter:blur(8px)}
  main>header .profile{position:relative;z-index:2;margin-left:auto;padding:3px;border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.13);box-shadow:none}
  main>header .profile>span:first-child{width:36px;height:36px;background:#fff;color:var(--mobile-blue);font-size:11px}
  .sidebar{inset:0 auto 0 0;width:min(86vw,350px);padding:22px 16px calc(28px + env(safe-area-inset-bottom));background:linear-gradient(160deg,#08223d 0%,#103b69 68%,#0b2745 100%);border-radius:0 28px 28px 0;box-shadow:22px 0 60px rgba(4,18,33,.36);overflow-y:auto;transform:translateX(-105%);z-index:1300}
  .sidebar .brand{justify-content:flex-start;padding:2px 8px 20px}
  .sidebar .brand img{width:205px;max-height:62px;object-fit:contain;object-position:left center}
  .sidebar nav{display:grid;grid-template-columns:1fr;gap:5px;padding:6px 0 18px}
  .sidebar nav button{min-height:48px;border:0;background:transparent;border-radius:13px;padding:11px 13px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:13px;color:#ebdecf;font-size:13px;font-weight:700}
  .sidebar nav button span{width:25px;font-size:17px;text-align:center}
  .sidebar nav button.active{background:linear-gradient(90deg,rgba(193,150,93,.42),rgba(255,255,255,.09));color:#fff;border:1px solid rgba(255,255,255,.1)}
  .sidebar-footer{margin-top:0;padding:18px 8px 5px;border-color:rgba(255,255,255,.12)}
  .overlay.show{display:block;position:fixed;inset:0;z-index:1200;background:rgba(3,15,28,.58);backdrop-filter:blur(4px)}
  .welcome{position:relative;display:block;margin:0;border-radius:24px;padding:25px 22px 22px;background:linear-gradient(135deg,#0b2846,#124070);box-shadow:0 16px 35px rgba(13,47,82,.2);overflow:hidden}
  .welcome:after{content:"";position:absolute;width:150px;height:150px;right:-70px;bottom:-90px;border-radius:50%;background:rgba(255,255,255,.1)}
  .welcome h2{font-size:26px;margin:7px 0}.welcome p:last-child{max-width:250px;font-size:13px;line-height:1.5}
  .welcome .primary{position:relative;z-index:1;margin-top:18px;padding:11px 15px;border-radius:12px;color:#0b2846}
  .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
  .metrics article{min-height:130px;padding:15px;border:0;border-radius:18px;box-shadow:0 7px 20px rgba(20,49,80,.07)}
  .metrics article:nth-child(1){border-top:3px solid #124070}.metrics article:nth-child(2){border-top:3px solid #7c57d7}.metrics article:nth-child(3){border-top:3px solid var(--mobile-sand)}.metrics article:nth-child(4){border-top:3px solid #2ba773}
  .metric-icon{width:36px;height:36px;margin-bottom:8px;border-radius:11px}.metrics strong{font-size:23px}.metrics p{display:none}
  .panel,.home-activity-card,.clients-head,.folder-panel,.management-search,.management-clients,.signatures-panel{border-color:rgba(232,227,221,.85);border-radius:20px;box-shadow:0 8px 24px rgba(20,49,80,.055)}
  .mobile-app-chrome{display:block}
  .mobile-bottom-nav{position:fixed;z-index:1000;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));height:72px;padding:8px 4px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;border:1px solid rgba(255,255,255,.75);border-radius:23px;background:rgba(255,255,255,.94);box-shadow:0 15px 45px rgba(15,44,75,.2);backdrop-filter:blur(18px)}
  .mobile-bottom-nav button{height:55px;border:0;background:transparent;color:#8a94aa;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:inherit}
  .mobile-bottom-nav button span{font-size:20px;line-height:1}.mobile-bottom-nav button small{font-size:9px;font-weight:800}.mobile-bottom-nav button.active{background:#faf6f2;color:var(--mobile-blue)}
  .mobile-quick-button{position:fixed;z-index:1050;right:19px;bottom:calc(91px + env(safe-area-inset-bottom));width:56px;height:56px;border:2px solid rgba(255,255,255,.9);border-radius:18px;background:linear-gradient(135deg,#d7b77b,#f0d9a9);color:#10365f;box-shadow:0 12px 28px rgba(60,45,15,.22);font:400 30px/1 inherit;transition:.2s}
  .mobile-app-chrome.actions-open .mobile-quick-button{transform:rotate(45deg);background:#fff}
  .mobile-action-backdrop{position:fixed;inset:0;z-index:1400;background:rgba(3,15,28,.5);opacity:0;visibility:hidden;backdrop-filter:blur(3px);transition:.2s}
  .mobile-action-sheet{position:fixed;z-index:1410;left:10px;right:10px;bottom:calc(9px + env(safe-area-inset-bottom));padding:10px 18px 22px;border-radius:27px;background:#fff;box-shadow:0 -20px 65px rgba(6,28,52,.25);transform:translateY(110%);transition:.28s cubic-bezier(.2,.8,.2,1)}
  .mobile-action-sheet>i{display:block;width:38px;height:4px;margin:0 auto 16px;border-radius:99px;background:#e6e2dd}.mobile-action-sheet h2{font-size:22px;margin:4px 0 15px}
  .mobile-action-sheet>button{width:100%;min-height:62px;margin-top:8px;border:1px solid #eeebe8;border-radius:16px;background:#fdfcfb;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px 13px;text-align:left;color:var(--ink)}
  .mobile-action-sheet>button>span{grid-row:1/3;width:38px;height:38px;border-radius:12px;background:#f9f4ef;color:var(--mobile-blue);display:grid;place-items:center;font-size:18px}.mobile-action-sheet b{font-size:13px}.mobile-action-sheet small{color:#7b8497;font-size:10px}
  .mobile-app-chrome.actions-open .mobile-action-backdrop{opacity:1;visibility:visible}.mobile-app-chrome.actions-open .mobile-action-sheet{transform:none}
  .worker-chat{right:84px;bottom:calc(91px + env(safe-area-inset-bottom));flex-direction:row;gap:7px}.perplexity-launcher{width:48px;height:48px;flex-basis:48px}.chat-launcher{width:48px;min-width:48px;height:48px;padding:0;border-radius:15px}
}
@media(max-width:390px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar nav button{min-height:47px}.mobile-bottom-nav{left:7px;right:7px}.mobile-bottom-nav button small{font-size:8px}}

/* Ajuste fluido del inicio para cualquier ancho de teléfono */
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:clip}
  main{width:100%;max-width:100vw;min-width:0;overflow:visible}
  .home-dashboard-layout{display:flex;width:100%;min-width:0;max-width:100%;flex-direction:column;gap:14px}
  .home-dashboard-layout>*{width:100%;min-width:0;max-width:100%}
  .home-dashboard-layout>.welcome,.home-dashboard-layout>.metrics,.home-dashboard-layout>.news-portal{margin-left:0;margin-right:0}
  .home-activity-rail{position:static;width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}
  .home-activity-card,.home-activity-heading,.home-activity-list,.home-activity-row,.news-portal,.news-grid,.news-card{min-width:0;max-width:100%}
  .metrics{width:100%;grid-template-columns:repeat(auto-fit,minmax(min(145px,100%),1fr))}
  .metrics article{width:100%;min-width:0}
  .news-portal-heading{min-width:0;flex-wrap:wrap}
  .news-portal-heading>div{min-width:0;flex:1 1 210px}
  .news-portal-heading p:not(.eyebrow),.home-activity-copy strong,.home-activity-copy small{overflow-wrap:anywhere}
  .news-sources,.news-topic-filters{max-width:100%}
}
@media(max-width:360px){
  main{padding-left:10px;padding-right:10px}
  main>header{margin-left:-10px;margin-right:-10px;padding-left:12px;padding-right:12px}
  main>header h1{max-width:52vw;font-size:19px}
  .metrics{grid-template-columns:1fr}
  .welcome{padding:21px 18px}
  .news-portal-heading button{width:100%}
}

.holded-mark i,.holded-hero-mark i{position:absolute;display:block;border-radius:0;transform:none}
.holded-mark i:first-child{width:15px;height:18px;left:1px;top:2px;clip-path:polygon(0 33%,18% 12%,100% 72%,77% 100%);background:linear-gradient(135deg,#d1b085 0%,#c49962 100%)}
.holded-mark i:last-child{width:16px;height:14px;left:6px;top:0;clip-path:polygon(0 0,75% 0,100% 32%,75% 100%);background:linear-gradient(135deg,#f3ebe1 0%,#cca97a 100%)}
.holded-hero-mark i:first-child{width:50px;height:60px;left:10px;top:10px;clip-path:polygon(0 33%,18% 12%,100% 72%,77% 100%);background:linear-gradient(135deg,#c49a63 0%,#0b2642 100%)}
.holded-hero-mark i:last-child{width:52px;height:46px;left:20px;top:7px;clip-path:polygon(0 0,75% 0,100% 32%,75% 100%);background:linear-gradient(135deg,#ceac7f 0%,#103761 100%)}

/* Símbolo real de Holded, extraído del recurso original */
.holded-mark img{display:block;width:22px;height:22px;object-fit:contain}
.holded-hero-mark{display:grid;place-items:center}
.holded-hero-mark img{display:block;width:58px;height:58px;object-fit:contain}
.holded-mark i,.holded-hero-mark i{display:none!important}

/* Tratamiento final del logotipo de Holded */
.holded-nav .holded-mark img{filter:brightness(0) invert(1);opacity:1}
.holded-original-logo{width:260px;max-width:32%;flex:0 0 260px}
.holded-original-logo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:760px){.holded-original-logo{width:230px;max-width:100%;flex-basis:auto}}

/* Ficha interna y edición de clientes */
.internal-client-data{margin:18px 0;border:1px solid var(--line);border-radius:16px;padding:16px;background:#fefdfc}.internal-section-heading{display:flex;flex-direction:column;gap:3px;margin-bottom:13px}.internal-section-heading>strong{font-size:16px}.internal-section-heading>small{color:var(--muted);font-size:12px}.internal-data-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.internal-data-grid label{font-size:13px;font-weight:750}.internal-data-grid textarea,.internal-data-grid input{display:block;width:100%;margin-top:7px;resize:vertical;min-height:76px;border:1px solid var(--line);border-radius:11px;padding:10px 12px;font:inherit;font-size:13px;line-height:1.4;background:#fff}.internal-data-grid textarea:focus,.internal-data-grid input:focus{outline:0;border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}.client-identity-grid input[readonly]{background:#f6f4f2;color:#677187;cursor:not-allowed}.management-client{position:relative;cursor:pointer}.client-edit-action{margin-left:auto;border:1px solid #eee1d2;border-radius:10px;background:#fff;color:var(--blue);padding:8px 13px;font:750 13px inherit;opacity:0;transform:translateX(5px);pointer-events:none;transition:.18s}.management-client.selected{border-color:#d1b085;background:#fdfbf9;box-shadow:0 0 0 3px rgba(18,63,111,.08)}.management-client.selected .client-edit-action{opacity:1;transform:none;pointer-events:auto}@media(hover:hover){.management-client:hover .client-edit-action{opacity:1;transform:none;pointer-events:auto}}@media(max-width:760px){.internal-data-grid{grid-template-columns:1fr}.client-edit-action{opacity:1;transform:none;pointer-events:auto}}

/* Periodos y plazos de declaraciones */
.declarations-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.quarter-selector{display:flex;flex-direction:column;gap:7px;min-width:260px}.quarter-selector span{font-size:12px;font-weight:800;letter-spacing:.06em;color:#667189;text-transform:uppercase}.quarter-selector select{height:54px;border:1px solid #dfdbd6;border-radius:14px;background:#fff;padding:0 16px;font:800 16px inherit;color:var(--ink);box-shadow:0 5px 15px rgba(30,54,80,.06)}.tax-deadlines{margin-top:22px;padding:15px;background:#fbf9f6;border:1px solid #edeae6;border-radius:16px;display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center}.deadline-card{background:#fff;border:1px solid #ece9e6;border-radius:13px;padding:12px 14px;display:flex;align-items:center;gap:11px}.deadline-card>div{display:flex;flex-direction:column;gap:3px}.deadline-card small{font-size:10px;font-weight:800;color:#748097;letter-spacing:.06em}.deadline-card strong{font-size:13px}.deadline-icon{width:34px;height:34px;border-radius:10px;background:#f9f4ee;color:var(--blue);display:grid;place-items:center;font-weight:800}.tax-status{padding:8px 11px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.tax-status.open{background:#dcf7e8;color:#087443}.tax-status.upcoming{background:#f2efec;color:#5d687f}.tax-status.expired{background:#fee8e6;color:#b42318}.tax-status.grace{background:#fff2d5;color:#9a6200}.deadline-note{grid-column:1/-1;margin:0;padding:2px 5px;color:#7b6170;font-size:12px}.tax-lock-banner{margin-top:14px;border:1px solid #e4d5ac;background:#fff8e8;border-radius:14px;padding:13px 15px;display:flex;align-items:center;gap:11px}.tax-lock-banner[hidden]{display:none}.tax-lock-banner>span{font-size:19px}.tax-lock-banner>div{flex:1}.tax-lock-banner strong{font-size:14px}.tax-lock-banner p{margin:2px 0 0;color:#756746;font-size:12px}.tax-lock-banner button{border:0;border-radius:10px;background:var(--blue);color:#fff;padding:9px 14px;font:750 13px inherit;cursor:pointer}.tax-table input:disabled,.tax-table select:disabled{background:#f4f3f2;color:#929aaa;cursor:not-allowed}.tax-table tr:has(input:disabled){opacity:.72}@media(max-width:900px){.declarations-heading{align-items:stretch;flex-direction:column}.quarter-selector{min-width:0}.tax-deadlines{grid-template-columns:1fr}.deadline-note{grid-column:auto}.tax-status{justify-self:start}}@media(max-width:600px){.tax-lock-banner{align-items:flex-start;flex-wrap:wrap}.tax-lock-banner button{width:100%}}

/* Histórico de declaraciones */
.history-selectors{display:flex;align-items:flex-end;gap:12px}.history-selectors .quarter-selector{min-width:190px}.history-panel .history-lock{margin-top:14px}.history-lock:has(>span:first-child:nth-last-child(2)){background:#eef8f2;border-color:#cbe9d7}.history-panel .tax-table tr:has(input:disabled){opacity:.72}@media(max-width:760px){.history-selectors{width:100%;flex-direction:column;align-items:stretch}.history-selectors .quarter-selector{min-width:0}}

/* Selector mensual o trimestral */
.control-period-selectors{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(250px,1.2fr);gap:12px;min-width:450px}.tax-tabs button:disabled{opacity:.38;cursor:not-allowed;text-decoration:line-through}.deadline-unavailable{grid-column:1/-1;padding:8px;display:flex;flex-direction:column;gap:4px}.deadline-unavailable strong{font-size:14px}.deadline-unavailable span{font-size:13px;color:var(--muted)}.tax-status.unavailable{background:#f2efec;color:#5d687f}@media(max-width:900px){.control-period-selectors{min-width:0;width:100%}}@media(max-width:520px){.control-period-selectors{grid-template-columns:1fr}}

/* Corrección de solapamiento de selectores fiscales */
.control-period-selectors .quarter-selector,.history-selectors .quarter-selector{min-width:0;width:auto}
.control-period-selectors .quarter-selector select,.history-selectors .quarter-selector select{width:100%;min-width:0}
.control-period-selectors{grid-template-columns:minmax(150px,.75fr) minmax(220px,1.25fr);gap:16px}
.declaration-view-selector{width:230px;min-width:230px}
.history-selectors{display:grid;grid-template-columns:minmax(120px,.6fr) minmax(155px,.85fr) minmax(210px,1.15fr);gap:14px;min-width:540px}
@media(max-width:1100px){.declarations-heading{align-items:stretch;flex-direction:column}.control-period-selectors,.history-selectors{min-width:0;width:100%}}
@media(max-width:650px){.history-selectors{grid-template-columns:1fr}.control-period-selectors{grid-template-columns:1fr}.declaration-view-selector{width:100%;min-width:0}}


/* Tablero de tareas */
.tasks-head{margin:0 0 22px;padding:26px 30px;background:#fff;border:1px solid var(--line);border-radius:24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.tasks-head h2{margin:4px 0 7px;font-size:28px}.tasks-head p:not(.eyebrow){margin:0;color:var(--muted)}.task-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.task-column{background:#f6f3f0;border:1px solid #ebe8e3;border-radius:22px;padding:14px;min-height:470px;transition:border-color .18s ease,background .18s ease,transform .18s ease}.task-column.drag-over{border-color:var(--blue);background:#f8f4ee;transform:translateY(-2px)}.task-column-head{display:flex;align-items:center;justify-content:space-between;padding:6px 5px 14px}.task-column-head>div{display:flex;align-items:center;gap:9px}.task-column-head h3{margin:0;font-size:16px}.task-column-head div>span{width:10px;height:10px;border-radius:999px;background:#d69b1d}.status-progress .task-column-head div>span{background:#113a67}.status-done .task-column-head div>span{background:#14945d}.task-column-head>strong{min-width:29px;height:29px;padding:0 8px;border-radius:999px;background:#fff;display:grid;place-items:center;font-size:12px;color:#59647a}.task-list{min-height:390px;display:flex;flex-direction:column;gap:12px}.task-empty{min-height:95px;border:1.5px dashed #d8d5d0;border-radius:15px;display:grid;place-items:center;color:#8a94a7;font-size:13px}.task-note{background:#fff;border:1px solid #eae7e3;border-radius:16px;padding:16px;box-shadow:0 7px 18px rgba(30,54,80,.06);cursor:grab;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.task-note:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,54,80,.1)}.task-note:active{cursor:grabbing}.task-note.dragging{opacity:.42}.task-note-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-concept{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f9f4ef;color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.045em;text-transform:uppercase}.task-grip{color:#9aa3b4;font-size:21px;line-height:1}.task-note h4{font-size:17px;margin:13px 0 11px}.task-note>p{margin:12px 0;color:#667188;font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.task-deadline{padding:10px 11px;background:#fbfaf8;border-radius:11px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-wrap:wrap}.task-deadline span{font-size:12px;color:#69758b}.task-deadline strong{font-size:11px;color:#198754}.task-deadline strong.soon{color:#b06a00}.task-deadline strong.today,.task-deadline strong.overdue{color:#c52b23}.task-assignee{margin-top:13px;display:flex;align-items:center;gap:8px}.task-assignee>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f9f4ee;color:var(--blue);font-size:9px;font-weight:850}.task-assignee small{color:#69758b;font-size:12px}.task-mobile-state{display:none}.task-modal{max-width:820px}.task-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.task-form-grid label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:750}.task-form-grid input,.task-form-grid select,.task-form-grid textarea{width:100%;border:1px solid #e7e4e0;border-radius:13px;background:#fff;padding:13px 14px;color:var(--ink);font:inherit;outline:none}.task-form-grid input:focus,.task-form-grid select:focus,.task-form-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(14,48,85,.1)}.task-form-grid input[readonly]{background:#f8f7f6;color:#68738a}.task-description-field{grid-column:1/-1}.task-form-grid textarea{resize:vertical;min-height:100px}.task-modal-shell .client-modal{transform:translateY(24px) scale(.98)}.task-modal-shell.open .client-modal{transform:translateY(0) scale(1)}@media(max-width:1000px){.task-board{grid-template-columns:1fr}.task-column{min-height:0}.task-list{min-height:120px}}@media(max-width:760px){.tasks-head{align-items:stretch;flex-direction:column;padding:21px}.tasks-head .blue-button{width:100%}.task-board{gap:14px}.task-column{border-radius:18px;padding:12px}.task-note{cursor:default}.task-grip{display:none}.task-mobile-state{display:flex;margin-top:13px;align-items:center;justify-content:space-between;gap:12px;color:#69758b;font-size:12px;font-weight:700}.task-mobile-state select{min-width:145px;border:1px solid #e6e2dc;border-radius:10px;background:#fff;padding:8px 10px;font:inherit;color:var(--ink)}.task-form-grid{grid-template-columns:1fr}.task-description-field{grid-column:auto}.task-modal{max-height:calc(100dvh - 20px);overflow:auto}}


/* Buscador de cliente y botón secundario de Tareas */
.task-client-combobox{position:relative}.task-client-combobox .task-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);z-index:2;color:#64708a;font-size:18px;pointer-events:none}.task-form-grid .task-client-combobox input{padding-left:42px;padding-right:38px}.task-client-results{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 7px);max-height:250px;overflow:auto;padding:7px;background:#fff;border:1px solid #e7e4e0;border-radius:15px;box-shadow:0 16px 38px rgba(25,50,77,.16)}.task-client-results[hidden]{display:none}.task-client-results button{width:100%;border:0;background:transparent;border-radius:10px;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:left;color:var(--ink);cursor:pointer;font:inherit}.task-client-results button:hover,.task-client-results button:focus{background:#faf7f3;outline:none}.task-client-results button span{width:28px;height:28px;border-radius:9px;background:#f8f4ee;color:var(--blue);display:grid;place-items:center;font-size:14px}.task-client-results button strong{font-size:14px}.task-client-no-results{padding:15px;color:#7c879b;text-align:center;font-size:13px}.task-cancel-button{min-height:48px;border:1px solid #e6e2dd;border-radius:999px;background:#faf9f8;color:#354658;padding:10px 20px 10px 13px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font:750 14px inherit;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.task-cancel-button span{width:28px;height:28px;border-radius:50%;background:#efedeb;display:grid;place-items:center;font-size:18px;line-height:1}.task-cancel-button:hover{background:#fff;border-color:#cfcbc6;transform:translateY(-1px);box-shadow:0 7px 18px rgba(30,54,80,.08)}.task-cancel-button:active{transform:translateY(0)}@media(max-width:520px){.task-modal .modal-actions{display:grid;grid-template-columns:1fr 1fr}.task-cancel-button{width:100%;padding-right:13px}}


/* Documentos PDF vinculados a declaraciones */
.declaration-folder-source{margin:18px 0 4px;padding:13px 15px;border:1px solid #eae7e3;border-radius:15px;background:#fbfaf8;display:flex;align-items:center;justify-content:space-between;gap:18px}.declaration-folder-source>div{display:flex;align-items:center;gap:11px}.declaration-folder-source p{margin:0;display:flex;flex-direction:column;gap:2px}.declaration-folder-source strong{font-size:13px;color:var(--ink)}.declaration-folder-source small{font-size:12px;color:var(--muted)}.declaration-source-icon{width:34px;height:34px;border-radius:10px;background:#f9f4ee;color:var(--blue);display:grid;place-items:center;font-weight:850}.declaration-folder-source.connected .declaration-source-icon{background:#dff5e8;color:#087443}.declaration-folder-source button{border:1px solid #e4e0da;border-radius:11px;background:#fff;color:var(--blue);padding:9px 13px;font:750 12px inherit;white-space:nowrap;cursor:pointer}.declaration-folder-source button:hover{border-color:var(--blue);background:#fbf8f5}.declaration-document-actions{display:flex;align-items:center;gap:5px;min-width:100px}.declaration-document-actions a{border:1px solid #eae5df;border-radius:9px;background:#fcfaf8;color:var(--blue);padding:6px 8px;display:inline-flex;align-items:center;gap:5px;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}.declaration-document-actions a span{font-size:9px;background:#f6f0e8;border-radius:4px;padding:2px 3px}.declaration-document-actions a:hover{background:#f9f4ef;border-color:#d5b790}.declaration-document-actions a.document-download{width:29px;height:29px;padding:0;justify-content:center;font-size:15px}.declaration-document-missing{font-size:12px;color:#98a0af;white-space:nowrap}@media(max-width:700px){.declaration-folder-source{align-items:stretch;flex-direction:column}.declaration-folder-source button{width:100%;padding:11px}}


/* Filtros de declaraciones y nombres en una sola línea */
.tax-table td:first-child{width:185px;max-width:185px}.tax-table td:first-child strong{display:block;min-width:0;max-width:175px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.declaration-filters{margin:15px 0 6px;padding:13px;background:#faf8f6;border:1px solid #ebe8e4;border-radius:16px;display:grid;grid-template-columns:minmax(230px,1.35fr) repeat(4,minmax(145px,1fr)) auto;gap:10px;align-items:end}.declaration-filters label{min-width:0;display:flex;flex-direction:column;gap:6px}.declaration-filters label>span{color:#6d7890;font-size:10px;font-weight:850;letter-spacing:.045em;text-transform:uppercase}.declaration-filters input,.declaration-filters select{width:100%;height:42px;border:1px solid #e8e5e0;border-radius:11px;background:#fff;padding:0 11px;color:var(--ink);font:inherit;font-size:13px;outline:none}.declaration-filters input:focus,.declaration-filters select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(14,48,85,.09)}.declaration-filter-search{position:relative}.declaration-filter-search>span{position:absolute;left:13px;bottom:12px;z-index:1;font-size:16px!important;color:#67738b!important;line-height:1}.declaration-filter-search input{padding-left:38px}.declaration-filter-result{height:42px;min-width:72px;border-radius:11px;background:#f8f4ee;color:var(--blue);display:flex;align-items:center;justify-content:center;gap:4px;padding:0 11px}.declaration-filter-result strong{font-size:15px}.declaration-filter-result small{font-size:11px}@media(max-width:1250px){.declaration-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.declaration-filter-search{grid-column:span 2}}@media(max-width:760px){.declaration-filters{grid-template-columns:1fr 1fr}.declaration-filter-search{grid-column:1/-1}.declaration-filter-result{min-width:0}}@media(max-width:480px){.declaration-filters{grid-template-columns:1fr}.declaration-filter-search{grid-column:auto}}


/* Filtros compactos tipo Excel */
.tax-table th{white-space:nowrap}.tax-table th>span{vertical-align:middle}.excel-filter-button{width:23px;height:23px;margin-left:5px;padding:0;border:1px solid transparent;border-radius:7px;background:transparent;color:#8791a5;display:inline-grid;place-items:center;vertical-align:middle;font-size:11px;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease}.excel-filter-button:hover{background:#f5f3f0;color:var(--blue)}.excel-filter-button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 3px 9px rgba(14,48,85,.2)}.excel-filter-popover{position:fixed;z-index:10000;width:276px;padding:14px;background:#fff;border:1px solid #e7e4e0;border-radius:15px;box-shadow:0 18px 46px rgba(20,42,65,.2);animation:excelFilterIn .16s ease both}.excel-filter-title{display:flex;flex-direction:column;gap:2px;margin-bottom:11px}.excel-filter-title span{font-size:10px;font-weight:850;color:#7b869b;letter-spacing:.06em;text-transform:uppercase}.excel-filter-title strong{font-size:15px;color:var(--ink)}.excel-filter-popover input,.excel-filter-popover select{width:100%;height:42px;padding:0 11px;border:1px solid #e7e4df;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:13px;outline:none}.excel-filter-popover input:focus,.excel-filter-popover select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(14,48,85,.09)}.excel-filter-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.excel-filter-actions button{border:1px solid #e7e4e0;border-radius:9px;background:#faf9f8;color:#536578;padding:8px 12px;font:750 12px inherit;cursor:pointer}.excel-filter-actions button.apply{border-color:var(--blue);background:var(--blue);color:#fff}.excel-filter-actions button:hover{transform:translateY(-1px)}@keyframes excelFilterIn{from{opacity:0;transform:translateY(-5px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:600px){.excel-filter-popover{width:min(276px,calc(100vw - 20px))}}


/* Opciones directas en filtros tipo Excel */
.excel-filter-option-list{display:flex;flex-direction:column;gap:3px;max-height:280px;overflow:auto}.excel-filter-option-list button{width:100%;min-height:38px;padding:7px 9px;border:0;border-radius:9px;background:transparent;color:#37485b;display:flex;align-items:center;gap:9px;text-align:left;font:650 13px inherit;cursor:pointer}.excel-filter-option-list button:hover{background:#f6f4f2}.excel-filter-option-list button.selected{background:#f9f4ef;color:var(--blue);font-weight:800}.excel-filter-option-list button>span{width:22px;height:22px;flex:0 0 22px;border:1px solid #e4e0da;border-radius:7px;background:#fff;display:grid;place-items:center;color:var(--blue);font-size:12px}.excel-filter-option-list button.selected>span{border-color:#efe3d5;background:#fff}


/* Flechas más visibles y filtro avanzado de fechas */
.excel-filter-button{width:29px;height:29px;margin-left:7px;border-radius:8px;background:#f5f4f2;color:#536578;font-size:17px;font-weight:900}.excel-filter-button:hover{background:#f0ece7}.specific-date-filter{margin-top:12px;padding-top:12px;border-top:1px solid #edeae8}.specific-date-filter>label{display:block;margin-bottom:7px;color:#6e7990;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.specific-date-filter>div{display:grid;grid-template-columns:1fr auto;gap:7px}.specific-date-filter input{min-width:0}.specific-date-filter button{border:0;border-radius:9px;background:var(--blue);color:#fff;padding:0 12px;font:750 12px inherit;cursor:pointer}.date-filter-options{max-height:none}


/* Obligación y control de días de cortesía */
.courtesy-obligation{margin:18px 0;border:1px solid #eae7e3;border-radius:16px;padding:13px 16px 16px}.courtesy-obligation legend{padding:0 8px;font-weight:850;color:var(--ink)}.courtesy-obligation>label{display:flex;align-items:flex-start;gap:11px;padding:13px;border-radius:13px;background:#fbf9f6;cursor:pointer}.courtesy-obligation input{margin-top:3px;width:18px;height:18px;accent-color:var(--blue)}.courtesy-obligation label>span{display:flex;flex-direction:column;gap:3px}.courtesy-obligation small{color:var(--muted);font-size:12px}.courtesy-panel{margin:0;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px}.courtesy-heading p:not(.eyebrow){margin:6px 0 0;color:var(--muted)}.courtesy-table-wrap{margin-top:22px;overflow:auto}.courtesy-table{width:100%;min-width:1050px;border-collapse:collapse}.courtesy-table th{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);color:#68738a;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.courtesy-table td{padding:13px 10px;border-bottom:1px solid #f3f1ef;vertical-align:middle}.courtesy-table td:first-child{width:190px;max-width:190px}.courtesy-table td:first-child strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.courtesy-table input[type=date],.courtesy-table input[type=text]{height:40px;border:1px solid #eae6e3;border-radius:10px;background:#fff;padding:0 10px;font:inherit;font-size:13px}.courtesy-table input[type=text]{min-width:220px}.courtesy-file-link{display:inline-flex;align-items:center;border:1px solid #ebe6de;border-radius:9px;background:#fcfaf7;color:var(--blue);padding:7px 9px;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}.courtesy-missing{color:#97a0b1;font-size:12px;white-space:nowrap}.courtesy-document-actions{display:inline-flex;align-items:center;gap:5px;margin-right:7px}.courtesy-download{width:30px;height:30px;border:1px solid #ebe6de;border-radius:9px;background:#fcfaf7;color:var(--blue);display:grid;place-items:center;text-decoration:none;font-weight:850}.courtesy-upload{display:inline-flex;cursor:pointer}.courtesy-upload>span{border:1px dashed #cbc7c1;border-radius:9px;padding:7px 9px;color:#59657b;font-size:12px;font-weight:750}.courtesy-upload input{display:none}@media(max-width:760px){.courtesy-panel{margin:12px;padding:18px 14px;border-radius:18px}.courtesy-heading{align-items:stretch;flex-direction:column;gap:16px}.courtesy-heading button{width:100%}}


/* Agenda de contactos */
.contacts-panel{margin:0;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px}.contacts-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.contacts-heading h2{margin:4px 0 6px;font-size:28px}.contacts-heading p:not(.eyebrow){margin:0;color:var(--muted)}.phone-search{width:min(430px,42%);height:50px;border:1px solid #e9e5e0;border-radius:15px;background:#faf9f8;display:flex;align-items:center;gap:10px;padding:0 15px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.phone-search:focus-within{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px rgba(14,48,85,.08)}.phone-search>span{font-size:20px;color:#66738b}.phone-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:14px}.contacts-summary{margin-top:20px;display:flex;align-items:baseline;gap:6px;color:#7a859a}.contacts-summary strong{font-size:19px;color:var(--blue)}.contacts-summary span{font-size:12px}.contacts-table-wrap{margin-top:8px;overflow:auto}.contacts-table{width:100%;min-width:760px;border-collapse:collapse}.contacts-table th{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line);color:#68738a;font-size:11px;text-transform:uppercase;letter-spacing:.045em}.contacts-table td{padding:15px 12px;border-bottom:1px solid #f3f1ef}.contacts-table td:first-child{width:290px;max-width:290px}.contacts-table td:first-child strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-phone-link{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:800;text-decoration:none;white-space:nowrap}.contact-phone-link span{width:30px;height:30px;border-radius:9px;background:#f9f4ee;display:grid;place-items:center;font-size:12px}.contact-phone-link:hover{text-decoration:underline}@media(max-width:760px){.contacts-panel{margin:12px;padding:18px 14px;border-radius:18px}.contacts-heading{align-items:stretch;flex-direction:column}.phone-search{width:100%}}


/* Iconos lineales del menú */
nav button .nav-icon{width:22px;height:22px;flex:0 0 22px;display:grid;place-items:center;text-align:initial;color:#d5cfc7;transition:color .16s ease,transform .16s ease}nav button .nav-icon svg{width:19px;height:19px;display:block}nav button:hover .nav-icon,nav button.active .nav-icon{color:#fff;transform:scale(1.06)}nav button.active .nav-icon svg{stroke-width:2.1}
.sidebar nav button[data-title="Tareas"],.sidebar nav button[data-title="Gestión"]{position:relative}
.sidebar nav button .task-nav-alert{position:absolute;right:9px;top:8px;width:auto;min-width:23px;height:23px;padding:0 6px;border:2px solid #0e2135;border-radius:999px;background:#f04438;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:900;line-height:1;box-shadow:0 4px 12px rgba(240,68,56,.42);animation:taskNavJump 1.35s ease-in-out infinite}
.sidebar nav button.active .task-nav-alert{border-color:#284a6f}
.sidebar nav button .billing-nav-alert{position:absolute;right:9px;top:7px;width:auto;min-width:27px;height:25px;padding:0 6px;border:2px solid #0e2135;border-radius:999px;background:#f04438;color:#fff;display:flex;align-items:center;justify-content:center;gap:2px;font-weight:900;line-height:1;box-shadow:0 4px 12px rgba(240,68,56,.42);animation:taskNavJump 1.35s ease-in-out infinite}.sidebar nav button .billing-nav-alert b{font-size:12px;line-height:1}.sidebar nav button .billing-nav-alert small{align-self:flex-start;margin-top:4px;font-size:7px;line-height:1;color:#fff}.sidebar nav button.active .billing-nav-alert{border-color:#284a6f}
@keyframes taskNavJump{0%,45%,100%{transform:translateY(0) scale(1)}15%{transform:translateY(-5px) scale(1.08)}28%{transform:translateY(0) scale(1)}}
.task-note-top>div{display:flex;align-items:center;gap:7px}
.task-heading-badges{min-width:0;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.task-status-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid transparent;border-radius:999px;font-size:9px;font-weight:850;line-height:1;white-space:nowrap}
.task-status-chip i{width:7px;height:7px;border-radius:50%;background:currentColor}
.task-status-chip.status-pending{border-color:#f3d39b;background:#fff6e7;color:#ad6500}
.task-status-chip.status-progress{border-color:#f0e5d7;background:#faf6f2;color:#0f345c}
.task-status-chip.status-done{border-color:#bce4cf;background:#edf9f2;color:#087443}
.task-edit-button{width:29px;height:29px;border:1px solid #eae5df;border-radius:9px;background:#fcfaf8;color:var(--blue);display:grid;place-items:center;font-size:15px;font-weight:850;cursor:pointer}
.task-edit-button:hover{border-color:#d3b48b;background:#f9f4ef}


/* Estado activo de iconos en la versión app */
@media(max-width:760px){
  .sidebar nav button.active .nav-icon{color:#fff!important;transform:scale(1.08)}
  .sidebar nav button.active .nav-icon svg{stroke:currentColor}
  .sidebar nav .holded-nav.active .holded-mark img{filter:brightness(0) invert(1)!important;opacity:1}
}

.signature-status{display:inline-flex;align-items:center;justify-content:center;min-width:92px;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.signature-status.valid{color:#087443;background:#dff5e9}.signature-status.imminent{color:#287a49;background:#effaf3;border:1px solid #ccebd8}.signature-status.urgent{color:#a54a00;background:#fff0dc}.signature-status.expired{color:#b42318;background:#fee7e5}.signature-status.no-date{color:#697386;background:#f3f2f0}

.internal-data-grid label small{display:block;margin-top:5px;color:var(--muted);font-size:11px;font-weight:600}

.existing-signature-divider{display:flex;align-items:center;gap:10px;color:#9aa3b4;font-size:11px;text-transform:uppercase}.existing-signature-divider::before,.existing-signature-divider::after{content:"";height:1px;background:var(--line);flex:1}.existing-signature-button{width:100%;color:var(--blue);cursor:pointer;transition:.18s}.existing-signature-button:hover{border-color:#d3b48c;background:#fbf9f6}.linked-signature-name{margin:0;color:var(--muted);font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.existing-signature-picker{border:1px solid #f3ebe1;border-radius:13px;background:#fff;padding:12px;box-shadow:0 14px 35px rgba(22,62,105,.12)}.existing-signature-picker[hidden]{display:none}.existing-signature-picker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.existing-signature-picker-head>strong{font-size:13px}.existing-signature-picker-head button{width:28px;height:28px;border:0;border-radius:50%;background:#f4f3f2;font-size:19px;cursor:pointer}.existing-signature-search{height:40px;border:1px solid var(--line);border-radius:10px;background:#fbfaf9;display:flex!important;align-items:center;gap:8px;padding:0 11px;color:var(--blue)}.existing-signature-search input{height:auto!important;border:0!important;margin:0!important;padding:0!important;outline:0!important;box-shadow:none!important;background:transparent;width:100%;font:inherit}.existing-signature-list{display:grid;gap:6px;max-height:210px;overflow-y:auto;margin-top:9px}.existing-signature-list>button{width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left;cursor:pointer;color:var(--ink)}.existing-signature-list>button:hover{border-color:#d3b48c;background:#fdfbf9}.existing-signature-list>button>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650}.existing-signature-list>button>b{color:var(--blue);font-size:11px}.existing-signature-file{color:var(--blue)}.existing-signature-empty{text-align:center;color:var(--muted);font-size:12px;margin:13px 0}

.existing-signature-list>button[hidden]{display:none!important}

.signature-table th{white-space:nowrap}.signature-table th:nth-child(1),.signature-table td:nth-child(1){width:24%}.signature-table th:nth-child(2),.signature-table td:nth-child(2){width:13%}.signature-table th:nth-child(3),.signature-table td:nth-child(3){width:10%}.signature-table th:nth-child(4),.signature-table td:nth-child(4){width:9%}.signature-table th:nth-child(5),.signature-table td:nth-child(5){width:11%}.signature-table th:nth-child(6),.signature-table td:nth-child(6){width:23%}.signature-table th:nth-child(7),.signature-table td:nth-child(7){width:10%}.signature-table td:nth-child(1),.signature-table td:nth-child(2),.signature-table td:nth-child(6){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signature-table td:nth-child(1) strong,.signature-table .document-link{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.existing-signature-list>button:disabled{cursor:not-allowed;background:#f6f5f4;color:#8a93a5;border-color:#eceae7}.existing-signature-list>button:disabled .existing-signature-file,.existing-signature-list>button:disabled b{color:#929aaa}.existing-signature-list>button:disabled b{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}


/* Bloque único de firmas digitales en la ficha del cliente */
.digital-signature-section{min-width:0;border:1px solid var(--line);border-radius:16px;margin:18px 0;padding:16px}
.digital-signature-section legend{padding:0 7px;font-size:16px;font-weight:750;color:var(--ink)}
.digital-signature-section>p{margin:0 0 13px;color:var(--muted);font-size:13px;font-weight:400}
.digital-signature-document{min-width:0;border:1px solid #edeae6;border-radius:14px;padding:15px;background:#fdfcfb;display:grid;gap:12px}
.digital-signature-copy strong,.digital-signature-copy small{display:block}
.digital-signature-copy small{margin-top:4px;color:var(--muted);font-weight:400}
.digital-signature-document input[type="file"]{width:100%;min-width:0;max-width:100%;font-size:12px}
.digital-signature-section .signature-data{margin-top:12px}
@media(max-width:620px){
  .digital-signature-section{padding:14px}
  .digital-signature-section .signature-data{grid-template-columns:1fr}
}


/* Ficha del cliente: consulta primero y edición bajo demanda */
.client-card-arrow{margin-left:auto;color:#0e3054;font-size:28px;line-height:1;font-weight:500;transition:transform .18s ease}
.management-client:hover .client-card-arrow,.management-client:focus-visible .client-card-arrow{transform:translateX(3px)}
.client-view-edit{border-color:#0f345b;color:#0c2847;background:#fcf9f6}
.client-view-edit:hover{background:#f9f4ee}
.client-view-mode input:disabled,.client-view-mode textarea:disabled,.client-view-mode select:disabled{opacity:1;color:var(--ink);-webkit-text-fill-color:var(--ink);background:#fbfaf8;border-color:#efedea;cursor:default}
.client-view-mode input[type="checkbox"]:disabled{accent-color:#0f345b}
.client-view-mode input[type="file"]:disabled{color:var(--muted)}
.client-view-mode .existing-signature-button:disabled{opacity:.55;cursor:default}
@media(max-width:620px){
  .client-card-arrow{font-size:25px}
  .modal-actions .client-view-edit{flex:1}
}


/* Variante ALARGADO: ficha completa en escritorio */
@media(min-width:1100px){
  #clientModal .client-modal{width:min(1460px,calc(100vw - 52px));max-height:calc(100vh - 28px);padding:22px 26px}
  #clientModal .modal-heading{padding-bottom:13px;margin-bottom:14px}
  #newClientForm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"identity identity" "internal fiscal" "courtesy registry" "signature registry" "message message" "actions actions";gap:12px 18px;align-items:start}
  #newClientForm .client-identity-grid{grid-area:identity;grid-template-columns:minmax(0,2.6fr) minmax(190px,.68fr) minmax(220px,.82fr)}
  #newClientForm .internal-client-data{grid-area:internal;margin:0}
  #newClientForm .fiscal-obligations{grid-area:fiscal;margin:0;align-self:stretch}
  #newClientForm .courtesy-obligation{grid-area:courtesy;margin:0}
  #newClientForm .attachment-grid{grid-area:attachments;margin:0}
  #newClientForm .digital-signature-section{grid-area:signature;margin:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(180px,.78fr);column-gap:12px;align-items:start}
  #newClientForm .digital-signature-section>p{grid-column:1/-1}
  #newClientForm .digital-signature-document{grid-column:1}
  #newClientForm .digital-signature-section .signature-data{grid-column:2;margin-top:0;grid-template-columns:1fr}
  #newClientForm .commercial-registry-section{grid-area:registry;margin:0}
  #newClientForm .form-message{grid-area:message;margin:0}
  #newClientForm .modal-actions{grid-area:actions;margin-top:0}
  #newClientForm .internal-client-data,#newClientForm .fiscal-obligations,#newClientForm .courtesy-obligation,#newClientForm .digital-signature-section{padding:13px 14px}
  #newClientForm .internal-section-heading{margin-bottom:10px}
  #newClientForm .internal-data-grid{gap:9px}
  #newClientForm .internal-data-grid textarea,#newClientForm .internal-data-grid input{min-height:62px;margin-top:5px;padding:8px 10px}
  #newClientForm .fiscal-periodicity{padding:9px 12px;margin-bottom:10px}
  #newClientForm .fiscal-obligations>p{margin-bottom:9px}
  #newClientForm .obligation-grid{gap:7px}
  #newClientForm .obligation-item{padding:9px}
  #newClientForm .courtesy-obligation>label{padding:10px}
  #newClientForm .file-field{padding:12px;gap:8px}
  #newClientForm .digital-signature-document{padding:12px;gap:9px}
  #newClientForm .signature-data{padding:12px}
}


.client-identity-grid select{display:block;width:100%;height:48px;margin-top:8px;border:1px solid var(--line);border-radius:12px;padding:0 12px;background:#fff;font:inherit;color:var(--ink)}
.client-identity-grid select:focus{outline:0;border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}
@media(min-width:761px) and (max-width:1099px){
  .client-identity-grid{grid-template-columns:minmax(0,2fr) minmax(160px,1fr)}
  .client-identity-grid>label:last-child{grid-column:1/-1}
}
@media(min-width:1100px){
  #newClientForm .digital-signature-section .existing-signature-button{padding:9px 12px;font-size:12px}
  #newClientForm .digital-signature-section .existing-signature-search{height:36px}
  #newClientForm .digital-signature-section .signature-data label{gap:5px}
}


/* Registro Mercantil condicional para personas jurídicas */
.commercial-registry-section{min-width:0;border:1px solid var(--line);border-radius:16px;margin:18px 0;padding:13px 14px}
.commercial-registry-section[hidden]{display:none}
.commercial-registry-section>legend{padding:0 8px;font-size:16px;font-weight:800;color:var(--ink)}
.registry-intro{margin:0 0 11px;color:var(--muted);font-size:12px}
.registry-accordion{display:grid;gap:7px}
.registry-accordion details{border:1px solid #ece9e5;border-radius:12px;background:#fdfcfb;overflow:hidden}
.registry-accordion summary{position:relative;list-style:none;cursor:pointer;padding:11px 38px 11px 13px;font-size:13px;font-weight:800;color:var(--ink);user-select:none}
.registry-accordion summary::-webkit-details-marker{display:none}
.registry-accordion summary::after{content:"＋";position:absolute;right:13px;top:50%;transform:translateY(-50%);color:#0f345c;font-size:17px}
.registry-accordion details[open] summary{border-bottom:1px solid #eceae7;background:#fcfaf7}
.registry-accordion details[open] summary::after{content:"−"}
.registry-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}
.registry-fields>label,.registry-observations{display:grid;gap:5px;min-width:0;font-size:12px;font-weight:750}
.registry-wide{grid-column:1/-1}
.registry-fields input,.registry-fields select,.registry-observations textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 10px;font:inherit;color:var(--ink)}
.registry-fields input,.registry-fields select{height:40px}
.registry-fields input[type="file"]{height:auto;padding:8px;font-size:11px}
.registry-fields small{color:var(--muted);font-size:11px;font-weight:500}
.registry-fields input:focus,.registry-fields select:focus,.registry-observations textarea:focus{outline:0;border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}
.registry-observations{padding:12px}
.registry-observations textarea{min-height:92px;padding:10px;resize:vertical}
.bank-ibans{display:grid;gap:8px}
#bankIbanList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bank-iban-row{position:relative;min-width:0}
.bank-iban-row label{display:grid;gap:5px;font-size:12px;font-weight:750}
.bank-iban-row>button{position:absolute;right:6px;top:24px;width:27px;height:27px;border:0;border-radius:8px;background:#f6f5f3;color:#9b2430;font-size:18px;cursor:pointer}
.bank-iban-row:has(>button) input{padding-right:38px}
.registry-add-button{justify-self:start;border:1px solid #efe3d5;border-radius:9px;background:#fcf9f6;color:#0d2e50;padding:8px 11px;font-size:12px;font-weight:800;cursor:pointer}
.registry-add-button:hover{background:#f9f4ee}
.client-view-mode .registry-accordion button:disabled{opacity:.55;cursor:default}
@media(max-width:760px){
  .registry-fields,#bankIbanList{grid-template-columns:1fr}
  .registry-wide{grid-column:auto}
}


/* Navegación por pestañas de Registro Mercantil */
.registry-tabs{display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid #eae6e3;padding:0 4px;overflow-x:auto;scrollbar-width:thin}
.registry-tabs button{position:relative;flex:1;min-width:max-content;border:0;background:transparent;color:#6b7487;padding:10px 9px 11px;font:750 12px inherit;cursor:pointer;transition:color .18s ease,background .18s ease}
.registry-tabs button:hover{color:#0d2c4e;background:#fcfaf8}
.registry-tabs button[aria-selected="true"]{color:#0d2d4f}
.registry-tabs button[aria-selected="true"]::after{content:"";position:absolute;left:9px;right:9px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:#0f355e}
.registry-tab-content{min-height:198px;background:#fdfcfb;border:1px solid #ece9e5;border-top:0;border-radius:0 0 12px 12px}
.registry-tab-panel[hidden]{display:none}
.registry-tab-panel{animation:registryTabIn .2s ease}
@keyframes registryTabIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:760px){
  .registry-tabs button{flex:0 0 auto;padding-inline:13px}
  .registry-tab-content{min-height:0}
}


/* Bancos compacto: mantiene la altura alineada con Firmas digitales */
@media(min-width:1100px){
  [data-registry-panel="bancos"] .registry-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px}
  [data-registry-panel="bancos"] .registry-fields>label:nth-child(1){grid-column:span 2}
  [data-registry-panel="bancos"] .registry-fields>label:nth-child(7){grid-column:span 2}
  [data-registry-panel="bancos"] .registry-fields>label:nth-child(10){grid-column:span 2}
  [data-registry-panel="bancos"] .bank-ibans{grid-column:2/-1;display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:end;gap:8px}
  [data-registry-panel="bancos"] #bankIbanList{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px}
  [data-registry-panel="bancos"] .registry-add-button{align-self:end;justify-self:stretch;width:40px;height:38px;padding:0;white-space:nowrap;font-size:20px;line-height:1}
  [data-registry-panel="bancos"] .registry-fields input,[data-registry-panel="bancos"] .registry-fields select{height:38px}
}


/* Iconos de documentos reconocibles por formato */
.file-type-icon{--file-color:#596174;position:relative;flex:0 0 42px;width:42px;height:42px;border-radius:11px;background:#f3f2f0;display:grid;place-items:center;overflow:hidden}
.file-type-icon .file-sheet{position:absolute;left:10px;top:6px;width:23px;height:30px;border:1.5px solid var(--file-color);border-radius:3px;background:#fff;box-shadow:0 2px 5px rgba(24,43,64,.1)}
.file-type-icon .file-sheet::after{content:"";position:absolute;right:-1.5px;top:-1.5px;width:8px;height:8px;background:linear-gradient(225deg,transparent 49%,var(--file-color) 50%,var(--file-color) 58%,#fff 59%);border-radius:0 2px 0 0}
.file-type-icon b{position:relative;z-index:1;max-width:22px;margin-top:9px;overflow:hidden;color:var(--file-color);font-size:7.5px;line-height:1;font-weight:900;letter-spacing:-.02em;text-align:center}
.file-type-icon.pdf{--file-color:#d93025;background:#fdeceb}
.file-type-icon.word{--file-color:#0d2f53;background:#f8f3ec}
.file-type-icon.excel{--file-color:#107c41;background:#e5f5ec}
.file-type-icon.powerpoint{--file-color:#d24726;background:#fcebe6}
.file-type-icon.image{--file-color:#7c3aed;background:#f0e9ff}
.file-type-icon.certificate{--file-color:#087f8c;background:#e4f5f7}
.file-type-icon.archive{--file-color:#b86700;background:#fff2dc}
.file-type-icon.text{--file-color:#536277;background:#f3f1ef}
.file-type-icon.code{--file-color:#5382b5;background:#eeeafd}
.file-type-icon.other{--file-color:#596174;background:#f3f2f0}


/* Registro Mercantil ocupa las dos filas y mantiene estable su borde inferior */
@media(min-width:1100px){
  #newClientForm .commercial-registry-section{display:flex;flex-direction:column;align-self:stretch;height:auto;min-height:0;overflow:hidden;box-sizing:border-box}
  #newClientForm .digital-signature-section{height:auto;box-sizing:border-box}
  #newClientForm .registry-tabs{flex:0 0 auto}
  #newClientForm .registry-tab-content{flex:1 1 auto;min-height:0;overflow:hidden}
  #newClientForm .registry-tab-panel{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c0bcb6 transparent}
  #newClientForm .registry-tab-panel::-webkit-scrollbar{width:6px}
  #newClientForm .registry-tab-panel::-webkit-scrollbar-thumb{background:#c0bcb6;border-radius:8px}
}


/* Modelo 111: estado no obligada */
.tax-table .not-required-cell{min-width:122px}
.tax-table .not-required-cell label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#536578;white-space:nowrap;cursor:pointer}
.tax-table .not-required-cell input[type="checkbox"]{width:18px;height:18px;min-width:18px;accent-color:var(--blue);cursor:pointer}
.tax-table .not-required-row td{background:#faf9f8}
.tax-table .not-required-row td:not(.not-required-cell){opacity:.58}
.tax-tabs button[hidden]{display:none}


/* Control progresivo de cierres anuales */
.annual-closing-panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;overflow:hidden}
.annual-closing-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.annual-closing-heading h2{margin:5px 0 7px;font-size:28px}
.annual-closing-heading p:not(.eyebrow){margin:0;color:var(--muted)}
.annual-year{min-width:76px;height:48px;padding:0 16px;border-radius:14px;background:#faf6f2;color:var(--blue);display:grid;place-items:center;font-size:17px;font-weight:850}
.annual-closing-table-wrap{overflow:auto;border:1px solid #ece9e5;border-radius:16px}
.annual-closing-table{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed}
.annual-closing-table th{padding:14px 16px;background:#fbfaf8;color:#68738a;text-align:left;font-size:11px;font-weight:850;letter-spacing:.055em;text-transform:uppercase;border-bottom:1px solid #ece9e6}
.annual-closing-table th:first-child{width:31%}
.annual-closing-table td{padding:17px 16px;border-bottom:1px solid #f3f1ef;vertical-align:middle}
.annual-closing-table tr:last-child td{border-bottom:0}
.annual-client-row{cursor:pointer;transition:background .16s ease,transform .16s ease}
.annual-client-row:hover,.annual-client-row:focus-visible{background:#fdfbf9;outline:0}
.annual-client-row td:first-child strong,.annual-client-row td:first-child small{display:block}
.annual-client-row td:first-child strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.annual-client-row td:first-child small{margin-top:4px;color:var(--muted);font-size:11px}
.annual-progress{display:flex;align-items:center;gap:9px;min-width:125px}
.annual-progress-track{height:9px;flex:1;min-width:70px;border-radius:999px;background:#efedeb;overflow:hidden}
.annual-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0e3055,#c1965d);transition:width .3s ease}
.annual-progress strong{width:34px;color:#40546a;font-size:11px;text-align:right}
.annual-closing-modal{position:relative;width:min(820px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:24px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.28);opacity:0;transform:translateY(24px) scale(.97);transition:opacity .25s,transform .3s cubic-bezier(.2,.8,.2,1)}
.annual-closing-shell.open .annual-closing-modal{opacity:1;transform:none}
.annual-stage-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.annual-stage-tabs>button{min-width:0;border:1px solid #ebe8e3;border-radius:14px;background:#fbfaf9;padding:12px;text-align:left;color:#536578;cursor:pointer;transition:.16s}
.annual-stage-tabs>button>span{display:block;margin-bottom:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}
.annual-stage-tabs>button .annual-progress{min-width:0}
.annual-stage-tabs>button.active{border-color:#d1b085;background:#fbf8f5;color:var(--blue);box-shadow:0 0 0 3px rgba(14,48,85,.06)}
.annual-stage-tabs>button:disabled{opacity:.48;cursor:not-allowed}
.annual-stage-content{border:1px solid #ebe8e4;border-radius:16px;background:#fdfcfb;padding:18px}
.annual-stage-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:15px;border-bottom:1px solid #edeae8}
.annual-stage-summary small{color:#748097;font-size:10px;font-weight:850;letter-spacing:.06em}
.annual-stage-summary h3{margin:4px 0 0;font-size:19px}
.annual-stage-summary>.annual-progress{width:230px}
.annual-checklist{display:grid;gap:9px;margin-top:15px}
.annual-checklist label{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid #ece9e6;border-radius:12px;background:#fff;cursor:pointer}
.annual-checklist label:hover{border-color:#d2b289;background:#fdfcfa}
.annual-checklist input{width:19px;height:19px;flex:0 0 19px;accent-color:var(--blue)}
.annual-checklist span,.annual-checklist strong,.annual-checklist small{display:block}
.annual-checklist small{margin-top:3px;color:var(--muted);font-size:11px}
@media(max-width:760px){
  .annual-closing-panel{margin:12px;padding:18px 14px;border-radius:18px}
  .annual-closing-heading{align-items:flex-start}
  .annual-closing-heading h2{font-size:23px}
  .annual-closing-modal{padding:21px}
  .annual-stage-tabs{grid-template-columns:1fr}
  .annual-stage-summary{align-items:flex-start;flex-direction:column}
  .annual-stage-summary>.annual-progress{width:100%}
}


/* Plazos de cierres anuales */
.annual-closing-deadlines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px;padding:14px;border:1px solid #edeae6;border-radius:16px;background:#fbf9f6}
.annual-closing-deadlines article{min-width:0;border:1px solid #ece9e6;border-radius:13px;background:#fff;padding:13px 14px;display:flex;align-items:center;gap:12px}
.annual-closing-deadlines article>span{width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:#f9f4ee;color:var(--blue);display:grid;place-items:center;font-size:11px;font-weight:900}
.annual-closing-deadlines article>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.annual-closing-deadlines small{color:#748097;font-size:10px;font-weight:850;letter-spacing:.055em}
.annual-closing-deadlines strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
@media(max-width:900px){.annual-closing-deadlines{grid-template-columns:1fr}}


/* Cabecera compacta y buscador de cierres anuales */
.annual-heading-controls{display:flex;align-items:stretch;justify-content:flex-end;gap:12px;min-width:0}
.annual-closing-deadlines.compact{display:flex;grid-template-columns:none;gap:8px;margin:0;padding:0;border:0;border-radius:0;background:transparent}
.annual-closing-deadlines.compact article{min-width:174px;padding:12px 15px;border-radius:13px;background:#fbfaf9}
.annual-closing-deadlines.compact article>div{gap:4px}
.annual-closing-deadlines.compact small{font-size:10px}
.annual-closing-deadlines.compact strong{font-size:13px}
.annual-closing-search{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:0 0 20px;padding:14px 16px;border:1px solid #edeae6;border-radius:16px;background:#fbf9f6}
.annual-closing-search>div strong,.annual-closing-search>div small{display:block}
.annual-closing-search>div strong{font-size:14px}
.annual-closing-search>div small{margin-top:3px;color:var(--muted);font-size:11px}
.annual-closing-search label{width:min(430px,48%);height:46px;border:1px solid #e9e5e0;border-radius:13px;background:#fff;display:flex;align-items:center;gap:10px;padding:0 14px;color:var(--blue)}
.annual-closing-search label:focus-within{border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}
.annual-closing-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:inherit}
@media(max-width:1200px){
  .annual-closing-heading{align-items:flex-start;flex-direction:column}
  .annual-heading-controls{width:100%;justify-content:space-between}
}
@media(max-width:760px){
  .annual-heading-controls{align-items:stretch;flex-direction:column}
  .annual-closing-deadlines.compact{display:grid;grid-template-columns:1fr}
  .annual-closing-deadlines.compact article{min-width:0}
  .annual-year{width:100%}
  .annual-closing-search{align-items:stretch;flex-direction:column}
  .annual-closing-search label{width:100%}
}


/* Correcciones dinámicas de la revisión contable */
.review-corrections-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px}
.review-corrections-toolbar>div strong,.review-corrections-toolbar>div small{display:block}
.review-corrections-toolbar>div strong{font-size:15px}
.review-corrections-toolbar>div small{margin-top:4px;color:var(--muted);font-size:11px}
.review-corrections-toolbar>button{border:0;border-radius:11px;background:var(--blue);color:#fff;padding:11px 15px;font:800 12px inherit;cursor:pointer;white-space:nowrap}
.review-correction-form{margin-top:14px;padding:16px;border:1px solid #efe3d5;border-radius:14px;background:#fcfaf8;animation:registryTabIn .2s ease}
.review-correction-form[hidden]{display:none}
.review-correction-form>label{display:grid;gap:7px;margin-bottom:12px;font-size:12px;font-weight:800}
.review-correction-form input,.review-correction-form textarea{width:100%;border:1px solid #e7e4e0;border-radius:11px;background:#fff;padding:10px 12px;color:var(--ink);font:inherit;outline:0}
.review-correction-form input{height:43px}
.review-correction-form select{width:100%;height:43px;border:1px solid #e7e4e0;border-radius:11px;background:#fff;padding:0 12px;color:var(--ink);font:inherit;outline:0}
.review-correction-form textarea{resize:vertical;min-height:92px}
.review-correction-form input:focus,.review-correction-form select:focus,.review-correction-form textarea:focus{border-color:#d1b186;box-shadow:0 0 0 3px rgba(14,48,85,.08)}
.review-correction-assignment{display:grid!important;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.review-correction-assignment label{display:grid;gap:7px;font-size:12px;font-weight:800}
.review-correction-form>div{display:flex;justify-content:flex-end;gap:9px}
.review-corrections-list{display:grid;gap:10px;margin-top:15px}
.review-correction{position:relative;border:1px solid #ebe8e4;border-left:4px solid #e8a23b;border-radius:13px;background:#fff;padding:13px 45px 13px 14px}
.review-correction.resolved{border-left-color:#239263;background:#f6fcf8}
.review-correction>label{display:flex;align-items:center;gap:10px;cursor:pointer}
.review-correction>label input{width:19px;height:19px;flex:0 0 19px;accent-color:var(--blue)}
.review-correction>label span,.review-correction>label strong,.review-correction>label small{display:block}
.review-correction>label small{margin-top:3px;color:#a45a00;font-size:10px}
.review-correction.resolved>label small{color:#168456}
.review-correction>p{margin:10px 0 0 29px;color:#59657a;font-size:12px;line-height:1.45;white-space:pre-wrap}
.review-correction-task-meta{display:flex;align-items:center;gap:8px;margin:9px 0 0 29px}
.review-correction-task-meta span{padding:5px 8px;border-radius:8px;background:#f6f4f2;color:#59657a;font-size:10px;font-weight:750}
.review-correction-title{display:flex!important;align-items:center;gap:8px;flex-wrap:wrap}
.review-correction-title .task-status-chip{display:inline-flex}
.review-correction-actions{position:absolute;right:11px;top:11px;display:flex;align-items:center;gap:6px}
.review-correction-actions button{width:28px;height:28px;border:0;border-radius:8px;background:#f4f3f2;color:#8a3540;font-size:17px;cursor:pointer}
.review-correction-actions button:first-child{color:var(--blue)}
.review-empty{text-align:center;padding:24px 16px;border:1px dashed #e6e3de;border-radius:14px;background:#fff}
.review-empty>span{display:grid;place-items:center;width:38px;height:38px;margin:0 auto 9px;border-radius:11px;background:#f9f4ee;color:var(--blue);font-weight:900}
.review-empty>strong{display:block}
.review-empty>p{margin:5px 0 15px;color:var(--muted);font-size:12px}
.review-empty>label{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:10px;background:#fcf9f6;color:#264b72;font-size:12px;font-weight:750;cursor:pointer}
.review-empty>label input{width:17px;height:17px;accent-color:var(--blue)}
@media(max-width:600px){
  .review-corrections-toolbar{align-items:stretch;flex-direction:column}
  .review-corrections-toolbar>button{width:100%}
  .review-correction-form>div{flex-direction:column-reverse}
  .review-correction-form>div button{width:100%}
  .review-correction-assignment{grid-template-columns:1fr!important}
  .review-correction-task-meta{align-items:flex-start;flex-direction:column}
}


/* Avisos de correcciones pendientes en cierres anuales */
.annual-closing-table td[data-annual-progress="review"]{position:relative;padding-right:54px}
.annual-review-alert{position:absolute;right:15px;top:50%;width:30px;height:30px;transform:translateY(-50%);display:grid;place-items:center;color:#e27a12}
.annual-review-alert-icon{width:29px;height:27px;display:block;color:#d92d20;filter:drop-shadow(0 3px 4px rgba(180,35,24,.24))}.annual-review-alert-icon svg{display:block;width:100%;height:100%;fill:currentColor}.annual-review-alert-icon .alert-mark{fill:#fff}
.annual-review-alert>b{position:absolute;right:-5px;top:-7px;min-width:19px;height:19px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#d92d20;color:#fff;display:grid;place-items:center;font-size:9px;font-weight:900;box-shadow:0 3px 8px rgba(180,35,24,.28)}
.annual-client-row:has(.annual-review-alert){background:#fffaf4}
.annual-client-row:has(.annual-review-alert):hover{background:#fff5e8}


/* Presentación y bloqueo de fichas de cierres anuales */
.annual-closing-table{min-width:1120px}
.annual-closing-table th:first-child{width:25%}
.annual-closing-table th:last-child{width:190px}
.annual-submission{display:grid;gap:8px;min-width:155px}
.annual-submission label{display:flex;align-items:center;gap:7px;color:#536578;font-size:11px;font-weight:800;cursor:pointer}
.annual-submission label input{width:17px;height:17px;accent-color:var(--blue)}
.annual-submission>input[type="date"]{width:100%;height:36px;border:1px solid #eae6e3;border-radius:9px;background:#fff;padding:0 8px;color:var(--ink);font:inherit;font-size:11px}
.annual-submission.complete label{color:#087443}
.annual-submission.complete>input{border-color:#bfe5d0;background:#f2fbf6}
.annual-submission input:disabled{cursor:not-allowed;opacity:.8}
.annual-record-lock{margin:0 0 14px;padding:12px 14px;border:1px solid #f0c9c4;border-radius:13px;background:#fff4f2;display:flex;align-items:center;gap:11px}
.annual-record-lock[hidden]{display:none}
.annual-record-lock>span{width:35px;height:35px;flex:0 0 35px;border-radius:10px;background:#fee4e1;color:#b42318;display:grid;place-items:center}
.annual-record-lock>div{min-width:0;flex:1}
.annual-record-lock strong,.annual-record-lock small{display:block}
.annual-record-lock small{margin-top:3px;color:#775854;font-size:11px}
.annual-record-lock>button{border:0;border-radius:10px;background:#b42318;color:#fff;padding:10px 13px;font:inherit;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.annual-stage-content.locked{background:#f8f8f7}
.annual-stage-content.locked input,.annual-stage-content.locked textarea,.annual-stage-content.locked button{cursor:not-allowed}
@media(max-width:600px){.annual-record-lock{align-items:flex-start;flex-wrap:wrap}.annual-record-lock>button{width:100%}}

.annual-submission.waiting{opacity:.55}
.annual-submission.waiting label,.annual-submission.waiting input{cursor:not-allowed}
.annual-closing-modal{width:min(980px,calc(100vw - 32px))}
.annual-folder-source{margin:15px 0}
.annual-files-list{display:grid;gap:10px}
.annual-files-loading{padding:24px;border:1px dashed #e6e3de;border-radius:13px;background:#fff;color:var(--muted);text-align:center;font-size:12px}
.annual-file-row{display:grid;grid-template-columns:minmax(210px,1fr) minmax(170px,.7fr) 130px;align-items:center;gap:14px;padding:13px 14px;border:1px solid #ebe8e4;border-left:4px solid #e0ddd9;border-radius:13px;background:#fff}
.annual-file-row.complete{border-left-color:#159455;background:#fbfefc}
.annual-file-concept{min-width:0;display:flex;align-items:center;gap:11px}
.annual-file-concept>span{width:28px;height:28px;flex:0 0 28px;border:1.5px solid #d8d5d1;border-radius:9px;background:#f9f9f8;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:900}
.annual-file-row.complete .annual-file-concept>span{border-color:#159455;background:#159455}
.annual-file-concept>div{min-width:0}
.annual-file-concept strong,.annual-file-concept small{display:block}
.annual-file-concept strong{font-size:13px}
.annual-file-concept small{margin-top:4px;color:#7a8497;font-size:10px}
.annual-file-row.complete .annual-file-concept small{color:#087443}
.annual-file-date{padding:8px 10px;border:1px solid #ebe6de;border-radius:11px;background:#fcfaf7;display:grid;grid-template-columns:1fr;gap:5px;color:#345980;font-size:10px;font-weight:850}
.annual-file-date input{width:100%;height:34px;border:1px solid #e6e2dd;border-radius:8px;background:#fff;padding:0 8px;color:var(--ink);font:inherit;font-size:11px}
.annual-file-signed{justify-self:start;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #e6e2dd;border-radius:10px;background:#fbfaf9;color:#536578;font-size:11px;font-weight:800;cursor:pointer}
.annual-file-signed input{width:18px;height:18px;accent-color:var(--blue)}
.annual-file-document{grid-column:3;justify-self:end}
@media(max-width:760px){.annual-file-row{grid-template-columns:1fr}.annual-file-date,.annual-file-signed,.annual-file-document{width:100%;justify-self:stretch}.annual-file-document{grid-column:1}.annual-file-document .declaration-document-actions{width:100%}.annual-file-document .declaration-document-actions a:first-child{flex:1;justify-content:center}}


/* Periodicidad, días de cortesía y marco financiero */
.fiscal-settings-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}
.fiscal-settings-row .fiscal-periodicity{min-width:0;margin:0;padding:11px 12px;gap:10px}
.fiscal-settings-row .fiscal-periodicity select{min-width:120px}
.fiscal-courtesy-inline{min-width:0;display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid #f6f0e8;border-radius:13px;background:#faf7f3;cursor:pointer}
.fiscal-courtesy-inline input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--blue)}
.fiscal-courtesy-inline span,.fiscal-courtesy-inline strong,.fiscal-courtesy-inline small{display:block}
.fiscal-courtesy-inline small{margin-top:3px;color:var(--muted);font-size:11px;font-weight:400}
.financial-framework{margin:18px 0;border:1px solid #eae7e3;border-radius:16px;padding:13px 16px 16px;min-width:0}
.financial-framework legend{padding:0 8px;font-weight:850;color:var(--ink)}
.financial-framework label{display:grid;gap:7px;font-size:12px;font-weight:750}
.financial-framework textarea{width:100%;min-height:78px;border:1px solid #eae6e3;border-radius:12px;background:#fbfaf9;padding:11px 12px;color:var(--ink);font:inherit;resize:vertical;outline:0}
.financial-framework textarea:focus{background:#fff;border-color:#d1b186;box-shadow:0 0 0 3px rgba(14,48,85,.08)}
@media(min-width:1100px){
  #newClientForm .financial-framework{grid-area:courtesy;margin:0;padding:13px 14px}
  #newClientForm .fiscal-settings-row{margin-bottom:10px}
}
@media(max-width:760px){.fiscal-settings-row{grid-template-columns:1fr}}


/* Versión compacta de los controles fiscales */
.fiscal-settings-row .fiscal-periodicity,.fiscal-courtesy-inline{min-height:48px;padding:7px 11px}
.fiscal-settings-row .fiscal-periodicity select{height:34px;padding:5px 9px}
.financial-framework{padding-bottom:13px}
.financial-framework input{width:100%;height:42px;border:1px solid #eae6e3;border-radius:11px;background:#fbfaf9;padding:0 12px;color:var(--ink);font:inherit;outline:0}
.financial-framework input:focus{background:#fff;border-color:#d1b186;box-shadow:0 0 0 3px rgba(14,48,85,.08)}

/* Acciones superiores y protección frente a cambios sin guardar */
#clientModal .modal-heading{align-items:center;gap:18px}
.client-modal-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;flex-wrap:wrap}
.client-modal-heading-actions .secondary-button,.client-modal-heading-actions .blue-button{min-height:38px;padding:8px 14px;border-radius:10px;white-space:nowrap}
.client-modal-heading-actions .modal-close{flex:0 0 38px}
.client-unsaved-banner{margin:-3px 0 16px;padding:13px 15px;border:1px solid #e4c66e;border-radius:13px;background:#fff8df;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 8px 22px rgba(117,83,10,.08)}
.client-unsaved-banner[hidden]{display:none}
.client-unsaved-banner p{margin:0;color:#5f4914;font-size:13px;font-weight:750}
.client-unsaved-banner>div{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.client-unsaved-banner .secondary-button,.client-discard-button{min-height:38px;border-radius:10px;padding:8px 13px;font:750 12px inherit;cursor:pointer;white-space:nowrap}
.client-discard-button{border:1px solid #b42318;background:#b42318;color:#fff}
.client-discard-button:hover{background:#941c13}

/* Los dos ajustes fiscales comparten dimensiones, distribución y acabado. */
.fiscal-settings-row .fiscal-periodicity,.fiscal-settings-row .fiscal-courtesy-inline{height:50px;min-height:50px;box-sizing:border-box;padding:7px 11px;border:1px solid #f6f0e8;border-radius:13px;background:#faf7f3;align-items:center}
.fiscal-settings-row .fiscal-periodicity{flex-direction:row;margin:0}
.fiscal-settings-row .fiscal-periodicity select{width:auto;min-width:120px;height:34px;padding:5px 9px}
.fiscal-settings-row .fiscal-courtesy-inline{flex-direction:row-reverse;justify-content:space-between}

@media(max-width:700px){
  #clientModal .modal-heading{align-items:flex-start;flex-direction:column}
  .client-modal-heading-actions{width:100%;margin-left:0;justify-content:flex-start}
  .client-modal-heading-actions .modal-close{margin-left:auto}
  .client-unsaved-banner{align-items:stretch;flex-direction:column}
  .client-unsaved-banner>div{display:grid;grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .client-modal-heading-actions{display:grid;grid-template-columns:1fr 1fr auto}
  .client-modal-heading-actions .secondary-button,.client-modal-heading-actions .blue-button{width:100%}
  .client-modal-heading-actions .client-view-edit:not([hidden]){grid-column:1/-1}
  .client-modal-heading-actions .modal-close{margin-left:0}
  .client-unsaved-banner>div{grid-template-columns:1fr}
}
/* Calendario y campaña de Renta */
.sidebar nav{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#34587e transparent;padding-right:3px}
.calendar-shell{padding:0;overflow:hidden;margin-bottom:24px}.calendar-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px 20px}.calendar-top h2{margin:5px 0;font-size:24px}.calendar-top>div>p:last-child{margin:0;color:var(--muted);font-size:13px}.calendar-toolbar{min-height:66px;padding:11px 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fdfcfb}.calendar-navigation,.calendar-view-switch{display:flex;align-items:center;gap:7px}.calendar-navigation button,.calendar-view-switch button{height:38px;border:1px solid #eae7e3;border-radius:10px;background:#fff;color:#536578;padding:0 12px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.calendar-navigation button:first-child,.calendar-navigation button:nth-child(3){width:38px;padding:0;font-size:22px}.calendar-navigation h3{margin:0 0 0 9px;min-width:210px;font-size:17px;text-transform:capitalize}.calendar-view-switch{padding:4px;border:1px solid #ebe8e4;border-radius:12px;background:#f5f3f0}.calendar-view-switch button{border:0;background:transparent}.calendar-view-switch button.active{background:#fff;color:var(--blue);box-shadow:0 2px 7px rgba(26,62,100,.12)}.calendar-body{overflow:auto;background:#fff}.calendar-weekdays{min-width:840px;display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line);background:#fbfaf9}.calendar-weekdays span{padding:10px 12px;border-right:1px solid var(--line);color:#717b8e;font-size:10px;font-weight:850;text-align:center;text-transform:uppercase}.calendar-month-grid{min-width:840px;display:grid;grid-template-columns:repeat(7,minmax(120px,1fr))}.calendar-day{min-height:122px;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#fcfbfb}.calendar-day.outside .calendar-day-number{color:#b4bac5}.calendar-day.today{background:#fdfbf9}.calendar-day-number{width:29px;height:29px;border:0;border-radius:9px;background:transparent;color:#3b4957;font:inherit;font-size:11px;font-weight:850;cursor:pointer}.calendar-day.today .calendar-day-number{background:var(--blue);color:#fff}.calendar-day>div{display:grid;gap:4px;margin-top:4px}.calendar-event{width:100%;min-width:0;border:0;border-left:3px solid #113a66;border-radius:7px;background:#faf6f2;color:#0a233e;padding:5px 6px;text-align:left;cursor:pointer;overflow:hidden}.calendar-event.type-notice{border-left-color:#e69a24;background:#fff4df;color:#8b5705}.calendar-event span,.calendar-event strong,.calendar-event small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event span{font-size:8px;opacity:.72}.calendar-event strong{margin-top:1px;font-size:9px}.calendar-event small{margin-top:3px;font-size:8px}.calendar-more{border:0;background:transparent;color:var(--blue);font-size:9px;font-weight:800;text-align:left;cursor:pointer}.calendar-week-grid{min-width:910px;display:grid;grid-template-columns:repeat(7,minmax(130px,1fr))}.calendar-week-day{min-height:510px;border-right:1px solid var(--line);background:#fff}.calendar-week-day:last-child{border-right:0}.calendar-week-day.today{background:#fdfcfa}.calendar-week-heading{width:100%;height:78px;border:0;border-bottom:1px solid var(--line);background:transparent;display:flex;align-items:baseline;justify-content:center;gap:5px;color:#667187;cursor:pointer;text-transform:capitalize}.calendar-week-heading span{font-size:10px;font-weight:800}.calendar-week-heading strong{font-size:22px;color:var(--ink)}.calendar-week-heading small{font-size:9px}.calendar-week-day.today .calendar-week-heading strong{width:36px;height:36px;border-radius:12px;background:var(--blue);color:#fff;display:grid;place-items:center}.calendar-week-events{padding:9px;display:grid;align-content:start;gap:7px}.calendar-week-events .calendar-event{min-height:54px;padding:8px}.calendar-week-events .calendar-event span{font-size:9px}.calendar-week-events .calendar-event strong{font-size:10px;white-space:normal}.calendar-add-empty{min-height:55px;border:1px dashed #e6e3de;border-radius:9px;background:transparent;color:#9aa3b3;font-size:10px;cursor:pointer}.calendar-modal{width:min(650px,calc(100vw - 32px))}.calendar-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.calendar-form-grid label{display:grid;gap:7px;color:#455567;font-size:11px;font-weight:800}.calendar-form-grid input,.calendar-form-grid select,.calendar-form-grid textarea{width:100%;border:1px solid #eae6e3;border-radius:10px;background:#fbfaf9;padding:10px 11px;color:var(--ink);font:inherit;outline:0}.calendar-form-grid input,.calendar-form-grid select{height:42px}.calendar-form-grid textarea{resize:vertical}.calendar-title-field,.calendar-notes-field{grid-column:1/-1}.calendar-modal-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:18px}.calendar-delete{margin-right:auto;border:1px solid #efc9c5;border-radius:10px;background:#fff3f1;color:#b42318;padding:10px 14px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.renta-hero{border-radius:20px;background:linear-gradient(125deg,#0b2744,#113a66);padding:30px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 14px 35px rgba(11,39,69,.16)}.renta-hero h2{margin:6px 0 8px;font-size:27px}.renta-hero p:last-child{max-width:690px;margin:0;color:#f5eee6;line-height:1.55}.renta-hero>span{width:70px;height:70px;flex:0 0 70px;border-radius:20px;background:#ffffff18;display:grid;place-items:center}.renta-hero svg{width:35px;height:35px;fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.renta-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.renta-status-grid article{border:1px solid var(--line);border-radius:18px;background:#fff;padding:22px}.renta-status-grid span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#faf6f2;color:var(--blue);font-size:10px;font-weight:900}.renta-status-grid h3{margin:15px 0 6px;font-size:16px}.renta-status-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.renta-ready{display:flex;align-items:center;gap:15px}.renta-ready>span{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#e3f7ed;color:#168456;display:grid;place-items:center;font-weight:900}.renta-ready h3{margin:0 0 4px}.renta-ready p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
/* Las tareas se dibujan como periodos continuos sobre el calendario. */
.calendar-week-grid>.calendar-week-day:nth-child(7){border-right:0}
.calendar-month-grid,.calendar-week-grid{position:relative}.calendar-month-grid{grid-auto-rows:minmax(142px,auto)}.calendar-day,.calendar-week-day{position:relative;min-width:0}.calendar-day>div{padding-top:var(--calendar-task-offset,0)}.calendar-task-band{z-index:4;min-width:0;border:0;border-left:4px solid #d48a17;background:#fff0d6;color:#885400;box-shadow:0 2px 6px rgba(76,55,10,.1);font:800 9px inherit;text-align:left;cursor:pointer;overflow:hidden;display:flex;align-items:center;gap:7px}.calendar-task-band:hover{filter:brightness(.97);box-shadow:0 4px 10px rgba(31,70,112,.16)}.calendar-task-band span,.calendar-task-band small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-task-band small{font-size:8px;opacity:.72}.calendar-task-band.status-progress{border-left-color:#0f365e;background:#f9f4ee;color:#0a233d}.calendar-task-band.status-done{border-left-color:#1b9462;background:#e3f6ed;color:#126a47}.calendar-month-grid>.calendar-task-band{height:19px;align-self:start;margin:calc(39px + var(--task-offset,0px)) 2px 0;padding:0 6px;border-radius:6px}.calendar-week-grid>.calendar-task-band{height:25px;align-self:start;margin:calc(86px + var(--task-offset,0px)) 3px 0;padding:0 8px;border-radius:7px}.calendar-month-grid>.calendar-task-band.continues-before,.calendar-week-grid>.calendar-task-band.continues-before{border-left:0;border-radius:0 6px 6px 0}.calendar-month-grid>.calendar-task-band.continues-after,.calendar-week-grid>.calendar-task-band.continues-after{border-radius:6px 0 0 6px}.calendar-month-grid>.calendar-task-band.continues-before.continues-after,.calendar-week-grid>.calendar-task-band.continues-before.continues-after{border-radius:0}.calendar-week-events{padding-top:calc(9px + var(--calendar-task-offset,0px))}
@media(max-width:760px){.calendar-top{align-items:stretch;flex-direction:column;padding:20px 17px}.calendar-top .blue-button{width:100%}.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-navigation{display:grid;grid-template-columns:38px 54px 38px 1fr}.calendar-navigation h3{min-width:0;margin-left:4px;font-size:14px;text-align:right}.calendar-view-switch{display:grid;grid-template-columns:1fr 1fr}.calendar-month-grid,.calendar-weekdays{min-width:700px}.calendar-day{min-height:105px}.calendar-week-grid{min-width:805px}.calendar-form-grid{grid-template-columns:1fr}.calendar-title-field,.calendar-notes-field{grid-column:1}.calendar-modal-actions{display:grid;grid-template-columns:1fr 1fr}.calendar-delete{grid-column:1/-1;width:100%;margin:0}.renta-hero{padding:24px 20px}.renta-hero>span{display:none}.renta-hero h2{font-size:23px}.renta-status-grid{grid-template-columns:1fr}.renta-ready{align-items:flex-start}}

/* Iconos vectoriales del resumen de inicio. */
.metric-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Inicio móvil: cuatro indicadores en dos columnas estables. */
@media(max-width:420px){
  .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .metrics article{min-width:0;padding:13px}
  .metrics small{font-size:11px;line-height:1.2}
  .metrics strong{font-size:23px}
  .metrics p{line-height:1.25}
}

/* Portal de actualidad del inicio */
.home-dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:"welcome activity" "metrics activity" "news activity";gap:18px;align-items:start}.home-dashboard-layout>.welcome{grid-area:welcome}.home-dashboard-layout>.metrics{grid-area:metrics;margin:0}.home-dashboard-layout>.news-portal{grid-area:news}.home-activity-rail{grid-area:activity;display:grid;gap:14px;position:sticky;top:18px}.home-activity-card{min-width:0;border:1px solid var(--line);border-radius:18px;background:#fff;padding:16px;box-shadow:0 7px 24px rgba(26,64,104,.045)}.home-activity-heading{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid #f3f1ef}.home-activity-heading>div{min-width:0}.home-activity-heading small{display:block;color:#8a94a7;font-size:8px;font-weight:850;letter-spacing:.1em}.home-activity-heading h3{margin:2px 0 0;font-size:14px;line-height:1.2}.home-activity-heading button{align-self:start;border:0;background:transparent;color:var(--blue);padding:2px 0;font:800 9px inherit;white-space:nowrap;cursor:pointer}.home-activity-heading button:hover{text-decoration:underline}.home-activity-icon{width:36px;height:36px;border-radius:11px;background:#f9f4ef;color:var(--blue);display:grid;place-items:center}.home-activity-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.home-tasks-card .home-activity-icon{background:#fff2d9;color:#b77700}.home-reminders-card .home-activity-icon{background:#e4f7ee;color:#168456}.home-activity-list{display:grid}.home-activity-row{width:100%;min-width:0;border:0;border-bottom:1px solid #f3f2f0;background:transparent;padding:11px 0;display:flex;align-items:center;gap:9px;color:var(--ink);text-align:left;font:inherit;cursor:pointer}.home-activity-row:last-child{border-bottom:0;padding-bottom:2px}.home-activity-row:hover .home-activity-copy strong{color:var(--blue)}.home-activity-avatar{width:31px;height:31px;flex:0 0 31px;border-radius:10px;background:#faf6f2;color:var(--blue);display:grid;place-items:center;font-size:9px;font-weight:900}.home-activity-copy{min-width:0;flex:1}.home-activity-copy strong,.home-activity-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-activity-copy strong{font-size:11px;line-height:1.4}.home-activity-copy small{margin-top:2px;color:#8992a3;font-size:9px}.home-activity-row time{flex:0 0 auto;color:#9099aa;font-size:8px;white-space:nowrap}.home-status-dot{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#e2a13a;box-shadow:0 0 0 4px #fff5e4}.home-status-dot.status-progress{background:#113c6a;box-shadow:0 0 0 4px #f9f4ef}.home-date-badge{width:36px;height:38px;flex:0 0 36px;border-radius:9px;background:#edf8f2;color:#147951;display:grid;place-content:center;text-align:center}.home-date-badge b,.home-date-badge small{display:block;text-transform:uppercase}.home-date-badge b{font-size:12px;line-height:1}.home-date-badge small{margin-top:2px;font-size:7px;font-weight:850}.home-activity-empty{min-height:92px;padding:15px 5px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.home-activity-empty>span{color:#c0bcb6;font-size:19px}.home-activity-empty strong{margin-top:5px;font-size:11px}.home-activity-empty small{margin-top:3px;color:#949dac;font-size:9px;line-height:1.4}.home-dashboard-layout .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1260px){.home-dashboard-layout{grid-template-columns:1fr;grid-template-areas:"welcome" "metrics" "activity" "news"}.home-activity-rail{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.home-dashboard-layout .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.home-activity-rail{grid-template-columns:1fr}.home-activity-card{padding:15px}.home-activity-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.home-activity-empty{grid-column:1/-1}}
@media(max-width:760px){.home-dashboard-layout{gap:14px}.home-activity-list{grid-template-columns:1fr}.home-dashboard-layout .news-grid{grid-template-columns:1fr}.home-activity-heading h3{font-size:15px}.home-activity-copy strong{font-size:12px}.home-activity-row{padding:12px 0}}
.news-portal{margin-bottom:24px;padding:26px 28px}.news-portal-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid var(--line)}.news-portal-heading h3{margin:5px 0 4px;font-size:23px}.news-portal-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:14px}.news-portal-heading button{border:0;background:#fbf7f3;color:var(--blue);border-radius:10px;padding:10px 13px;font:800 13px inherit;cursor:pointer}.news-portal-heading button:disabled{opacity:.6;cursor:wait}.news-portal-heading button.loading{animation:news-button-pulse 1s ease-in-out infinite}.news-source-strip{display:flex;gap:8px;flex-wrap:wrap;padding:15px 0}.news-source-strip span{padding:6px 10px;border:1px solid #ece9e4;border-radius:999px;background:#fbfaf9;color:#657087;font-size:11px;font-weight:750}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.news-card{min-height:185px;border:1px solid #ece9e5;border-radius:16px;padding:17px;display:flex;flex-direction:column;color:var(--ink);text-decoration:none;background:#fff;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.news-card:hover{transform:translateY(-2px);border-color:#d7d1ca;box-shadow:0 10px 24px rgba(11,39,68,.08)}.news-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.news-card-meta span{color:var(--blue);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-card-meta time{color:#9299a8;font-size:10px;white-space:nowrap}.news-card h4{font-size:15px;line-height:1.35;margin:13px 0 9px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-card p{margin:0 0 14px;color:#7a8497;font-size:11px}.news-card b{margin-top:auto;color:var(--blue);font-size:11px}.news-card b span{font-size:14px}.news-loading,.news-empty{grid-column:1/-1;min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#6f7787}.news-loading span{width:30px;height:30px;border:3px solid #eeeae5;border-top-color:var(--blue);border-radius:50%;margin-bottom:12px;animation:news-spin .8s linear infinite}.news-empty strong{color:var(--ink)}.news-empty p{margin:5px 0 0;font-size:13px}@keyframes news-spin{to{transform:rotate(360deg)}}@keyframes news-button-pulse{50%{opacity:.45}}@media(max-width:1050px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.news-portal{margin:0 0 18px;padding:19px 15px}.news-portal-heading{align-items:flex-start}.news-portal-heading h3{font-size:20px}.news-portal-heading button{white-space:nowrap}.news-grid{grid-template-columns:1fr}.news-card{min-height:165px}}
/* Fuentes profesionales y oficiales del portal de noticias */
.news-sources{margin:15px 0;border:1px solid #ece9e4;border-radius:13px;background:#fbfaf9}.news-sources summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 13px;color:#526579;font-size:11px;font-weight:800;cursor:pointer}.news-sources summary::-webkit-details-marker{display:none}.news-sources summary small{color:var(--blue);font-size:10px}.news-sources[open] summary{border-bottom:1px solid #ece9e4}.news-sources-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:12px}.news-sources-grid a{min-width:0;padding:7px 9px;border-radius:8px;background:#fff;color:#536578;font-size:9px;font-weight:750;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-sources-grid a:hover{background:#faf6f2;color:var(--blue)}
@media(max-width:760px){.news-sources-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-sources summary{padding:10px}.news-sources-grid{padding:9px;gap:6px}}

/* Imágenes, filtros y acciones del portal de noticias */
.news-topic-filters{display:flex;gap:8px;flex-wrap:wrap;padding:0 0 15px}.news-topic-filters button{border:1px solid #ebe8e3;border-radius:999px;background:#fff;color:#647087;padding:7px 12px;font:750 11px inherit;cursor:pointer;transition:.15s}.news-topic-filters button:hover{border-color:#cdc6bd;color:var(--blue)}.news-topic-filters button.active{border-color:var(--blue);background:var(--blue);color:#fff}.news-card{padding:0;overflow:hidden;display:block}.news-card-image{display:block;height:130px;overflow:hidden;background:#f3f0ec}.news-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}.news-card:hover .news-card-image img{transform:scale(1.035)}.news-card-body{min-height:185px;padding:16px;display:flex;flex-direction:column}.news-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.news-card-actions a{color:var(--blue);font-size:11px;font-weight:800;text-decoration:none}.news-email-share{border:1px solid #ebe7e1;border-radius:8px;padding:6px 8px;background:#fcfbf9}.news-email-share:hover{background:#faf7f3}@media(max-width:760px){.news-topic-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:13px}.news-topic-filters button{white-space:nowrap}.news-card-image{height:160px}.news-card-body{min-height:165px}}

/* Accesos independientes a los asistentes de IA */
.worker-chat{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.ai-launchers{display:flex;align-items:center;gap:10px}.perplexity-launcher,.chatgpt-launcher{width:68px;height:68px;flex:0 0 68px;border:0;border-radius:50%;padding:0;overflow:hidden;box-shadow:0 14px 34px rgba(11,38,66,.32);cursor:pointer;transition:transform .2s,box-shadow .2s}.perplexity-launcher{background:#0b2642;color:#fff}.chatgpt-launcher{background:#fff;color:#111;border:1px solid #e8e6e3}.perplexity-launcher:hover,.chatgpt-launcher:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(11,38,66,.4)}.perplexity-launcher.active,.chatgpt-launcher.active{transform:scale(.94);box-shadow:0 8px 24px rgba(11,38,66,.3)}.perplexity-launcher img{width:100%;height:100%;display:block;object-fit:cover}.chatgpt-launcher img{width:43px;height:43px;margin:auto;display:block;object-fit:contain}.worker-chat>.chat-panel{bottom:144px;height:min(600px,calc(100vh - 168px))}.worker-chat>.perplexity-panel,.worker-chat>.chatgpt-panel{width:min(880px,calc(100vw - 48px));height:min(760px,calc(100vh - 168px))}.perplexity-header{background:linear-gradient(135deg,#0b2642,#103862)}.chatgpt-header{background:linear-gradient(135deg,#111,#303030)}.perplexity-panel,.chatgpt-panel{display:flex;flex-direction:column}.perplexity-panel .perplexity-frame-wrap,.chatgpt-panel .chatgpt-frame-wrap{flex:1;min-height:0}.chatgpt-toolbar{min-height:68px;padding:11px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff}.chatgpt-toolbar p{margin:0;display:flex;flex-direction:column;gap:3px}.chatgpt-toolbar small{color:var(--muted)}.chatgpt-toolbar a,.chatgpt-frame-help a{border-radius:10px;background:#111;color:#fff;padding:9px 12px;font-weight:800;text-decoration:none;white-space:nowrap}.chatgpt-frame-wrap{position:relative;flex:1;min-height:0;background:#faf8f6}.chatgpt-frame-wrap iframe{position:relative;z-index:2;width:100%;height:100%;border:0;background:#fff}.chatgpt-frame-help{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:30px;color:var(--muted)}.chatgpt-frame-help img{width:58px;height:58px}.chatgpt-frame-help strong{color:var(--ink);font-size:18px}.chatgpt-frame-help span{max-width:460px;line-height:1.5}
@media(max-width:760px){.worker-chat{gap:9px}.ai-launchers{gap:9px}.perplexity-launcher,.chatgpt-launcher{width:66px;height:66px;flex-basis:66px}.chatgpt-launcher img{width:41px;height:41px}.worker-chat>.chat-panel,.worker-chat>.perplexity-panel,.worker-chat>.chatgpt-panel{position:fixed;inset:0;width:100%;height:100%;max-height:none;border:0;border-radius:0}.perplexity-panel .chat-header,.chatgpt-panel .chat-header{padding-top:max(20px,env(safe-area-inset-top))}.chatgpt-toolbar{padding:10px 12px}.chatgpt-toolbar p small{display:none}.chatgpt-toolbar a{font-size:12px;padding:9px 10px}}

/* Columnas de control personalizadas del histórico */
.history-add-column-heading,.history-add-column-spacer{width:58px;min-width:58px;text-align:center!important}.history-add-column-heading button{width:36px;height:36px;border:1px solid #e3ddd6;border-radius:10px;background:#faf7f3;color:var(--blue);font:800 22px/1 inherit;cursor:pointer}.history-add-column-heading button:hover{background:var(--blue);border-color:var(--blue);color:#fff}.history-control-heading{min-width:165px}.history-control-cell input{width:100%;min-width:145px}.history-column-creator label{display:block;margin:12px 0 7px;color:#59657d;font-size:12px;font-weight:750}.history-column-creator>input{width:100%;height:40px;border:1px solid #eae6e3;border-radius:9px;padding:0 10px;font:inherit;outline:0}.history-column-creator>input:focus{border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}
/* Centro de Gestión y procedimientos de trabajo */
.management-tabs{margin:0 0 18px;padding:6px;width:max-content;max-width:100%;display:flex;gap:5px;border:1px solid #ebe8e3;border-radius:15px;background:#f2efec}.management-tabs button{min-width:128px;height:43px;border:0;border-radius:11px;background:transparent;color:#5f6b82;font:800 13px inherit;cursor:pointer}.management-tabs button[aria-selected="true"]{background:#fff;color:var(--blue);box-shadow:0 3px 10px rgba(29,59,91,.11)}[data-management-panel][hidden]{display:none}.management-workspace-head{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:25px}.management-workspace-head h2{margin:5px 0;font-size:25px}.management-workspace-head p:last-child{margin:0;color:var(--muted)}.management-library-search{width:min(390px,42vw);height:48px;flex:0 0 auto;border:1px solid #e9e5e0;border-radius:13px;background:#fbfaf9;display:flex;align-items:center;gap:10px;padding:0 14px;color:var(--blue)}.management-library-search:focus-within{background:#fff;border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}.management-library-search input{width:100%;min-width:0;border:0;background:transparent;outline:0;font:inherit}.management-library-layout{margin-top:18px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px;align-items:start}.management-library-list{display:grid;gap:10px}.management-library-list>button{width:100%;border:1px solid #eae6e3;border-radius:16px;background:#fff;padding:16px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;cursor:pointer;transition:.16s}.management-library-list>button:hover,.management-library-list>button:focus{border-color:#d0af83;box-shadow:0 8px 22px rgba(11,39,68,.08);transform:translateY(-1px);outline:0}.management-library-list span,.procedure-card-head span{padding:5px 8px;border-radius:999px;background:#f9f4ef;color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.management-library-list strong{margin:10px 0 5px;font-size:14px;line-height:1.35}.management-library-list small{color:#737e92;font-size:11px;line-height:1.45}.management-library-list b{margin-top:11px;color:var(--blue);font-size:10px}.management-editor-empty,.management-model-editor{min-height:420px;border:1px solid #eae6e3;border-radius:20px;background:#fff;padding:27px}.management-editor-empty{display:grid;place-content:center;text-align:center}.management-editor-empty>span{color:#a7b0c1;font-size:28px}.management-editor-empty h3{margin:10px 0 5px}.management-editor-empty p{margin:0;color:var(--muted);font-size:12px}.management-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:17px;border-bottom:1px solid var(--line)}.management-editor-heading h3{margin:5px 0 0;font-size:20px}.management-model-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.management-model-data label,.management-model-document{display:grid;gap:7px;color:#536578;font-size:11px;font-weight:800}.management-model-data input,.management-model-data select,.management-model-document textarea{width:100%;border:1px solid #e9e5e0;border-radius:11px;background:#fbfbfa;padding:11px 12px;font:inherit;outline:0}.management-model-data input,.management-model-data select{height:43px}.management-model-data input:focus,.management-model-data select:focus,.management-model-document textarea:focus{background:#fff;border-color:#d1b186;box-shadow:0 0 0 3px #f9f4ef}.management-model-document textarea{min-height:400px;resize:vertical;line-height:1.55}.management-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:15px}.management-editor-actions small{margin-right:auto;max-width:360px;color:#7a8495;font-size:10px;line-height:1.4}.management-library-no-results{grid-column:1/-1;border:1px dashed #dad6d2;border-radius:15px;padding:30px;text-align:center;color:#7d8798}.procedure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.procedure-card{min-width:0;border:1px solid #eae6e3;border-radius:19px;background:#fff;padding:21px;display:flex;flex-direction:column}.procedure-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.procedure-card-head b{color:#8a94a6;font-size:10px}.procedure-card h3{margin:14px 0 6px;font-size:18px}.procedure-card>p{margin:0;color:#6e798e;font-size:12px;line-height:1.5}.procedure-card ol{margin:17px 0;padding:0;list-style:none;counter-reset:procedure}.procedure-card li{position:relative;padding:9px 5px 9px 32px;border-top:1px solid #f2f1f0;color:#354658;font-size:11px;line-height:1.45;counter-increment:procedure}.procedure-card li:before{content:counter(procedure);position:absolute;left:3px;top:8px;width:20px;height:20px;border-radius:7px;background:#faf7f3;color:var(--blue);display:grid;place-items:center;font-size:9px;font-weight:900}.procedure-law{margin-top:auto;padding:12px;border-radius:11px;background:#faf9f7;display:flex;flex-direction:column;gap:4px}.procedure-law strong{font-size:10px}.procedure-law small{color:#69758a;font-size:9px;line-height:1.45}.procedure-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.procedure-actions a{color:var(--blue);font-size:10px;font-weight:800;text-decoration:none}.procedure-actions button{border:0;border-radius:9px;background:var(--blue);color:#fff;padding:9px 13px;font:800 10px inherit;cursor:pointer}
@media(max-width:1000px){.management-library-layout{grid-template-columns:1fr}.management-library-list{grid-template-columns:repeat(2,minmax(0,1fr))}.procedure-grid{grid-template-columns:1fr}}
@media(max-width:760px){.management-tabs{margin:12px;width:calc(100% - 24px);overflow-x:auto}.management-tabs button{min-width:108px}.management-workspace-head{margin:12px;align-items:stretch;flex-direction:column;padding:21px}.management-library-search{width:100%}.management-library-layout,.procedure-grid{margin:12px}.management-library-list{grid-template-columns:1fr}.management-model-editor{padding:20px}.management-model-data{grid-template-columns:1fr}.management-editor-actions{align-items:stretch;flex-direction:column}.management-editor-actions small{max-width:none;margin:0 0 4px}.management-editor-actions button{width:100%}}
/* Catálogo de procedimientos de trabajo */
.work-catalog-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:18px;margin-top:18px;align-items:start}.work-area-list{position:sticky;top:18px;max-height:calc(100vh - 36px);overflow:auto;border:1px solid #eae6e3;border-radius:18px;background:#fff;padding:10px}.work-area-title{padding:11px 12px 14px;display:grid;gap:4px}.work-area-title strong{font-size:14px}.work-area-title small{color:#7b8597;font-size:10px}.work-area-list>button{width:100%;display:grid;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:9px;border:0;border-radius:11px;background:transparent;padding:10px;text-align:left;color:#536578;cursor:pointer}.work-area-list>button:hover{background:#fbf9f6}.work-area-list>button.active{background:#f9f4ef;color:var(--blue)}.work-area-list>button>span{font-size:9px;font-weight:900}.work-area-list>button>strong{font-size:10px;line-height:1.35}.work-area-list>button>small{min-width:26px;border-radius:999px;background:#f4f2f0;padding:4px 6px;text-align:center;font-size:8px;font-weight:900}.work-area-list>button.active>small{background:#fff}.work-procedure-content{min-width:0}.work-procedure-heading{min-height:84px;padding:17px 20px;border:1px solid #eae6e3;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px}.work-procedure-heading h2{margin:4px 0;font-size:19px}.work-procedure-heading p:last-child{max-width:760px;margin:4px 0 0;color:#768196;font-size:10px;line-height:1.45}.work-procedure-heading>strong{flex:0 0 auto;border-radius:999px;background:#faf7f3;color:var(--blue);padding:7px 10px;font-size:9px}.work-procedure-list{display:grid;gap:10px;margin-top:12px}.work-loading{padding:28px;text-align:center;color:#7b8597}.work-procedure-card{border:1px solid #eae6e3;border-radius:15px;background:#fff;overflow:hidden}.work-procedure-card[open]{border-color:#d3b48c;box-shadow:0 8px 24px rgba(11,38,66,.07)}.work-procedure-card summary{display:grid;grid-template-columns:42px minmax(0,1fr) 30px;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;list-style:none}.work-procedure-card summary::-webkit-details-marker{display:none}.work-procedure-number{width:38px;height:38px;border-radius:11px;background:#faf7f3;color:var(--blue);display:grid;place-items:center;font-size:9px;font-weight:900}.work-procedure-summary{min-width:0;display:grid;gap:3px}.work-procedure-summary small{color:var(--blue);font-size:8px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.work-procedure-summary strong{font-size:13px;line-height:1.35}.work-procedure-summary em{overflow:hidden;color:#788397;font-size:10px;font-style:normal;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.work-procedure-open{font-size:20px;color:var(--blue);text-align:center;transition:transform .2s}.work-procedure-card[open] .work-procedure-open{transform:rotate(45deg)}.work-procedure-detail{border-top:1px solid #f3f1ef;padding:20px}.work-organism{margin:0 0 18px;border-radius:11px;background:#fbf9f6;padding:11px 13px;display:flex;gap:8px;font-size:10px}.work-organism strong{color:var(--blue)}.work-procedure-detail section>h3{margin:18px 0 8px;color:#26384b;font-size:12px}.work-procedure-detail ol,.work-procedure-detail ul{margin:0;padding-left:22px}.work-procedure-detail li,.work-procedure-detail p{color:#536578;font-size:10px;line-height:1.55}.work-procedure-detail li+li{margin-top:6px}.work-reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.work-reference-grid section{border-radius:12px;background:#faf9f8;padding:14px}.work-reference-grid section>h3{margin-top:0}.work-procedure-detail .procedure-actions{border-top:1px solid #f3f1ef;padding-top:15px}.work-procedure-detail .procedure-actions small{color:#7b8597;font-size:9px}.work-procedure-detail .procedure-actions button{font-size:10px}.work-catalog-head{margin-bottom:0}
@media(max-width:1000px){.work-catalog-layout{grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:760px){.work-catalog-layout{display:block;margin:12px}.work-catalog-head{margin-bottom:12px}.work-area-list{position:static;max-height:none;display:flex;overflow-x:auto;padding:8px}.work-area-title{display:none}.work-area-list>button{min-width:190px;grid-template-columns:27px minmax(0,1fr) auto}.work-procedure-heading{align-items:flex-start;flex-direction:column;gap:8px}.work-procedure-heading>strong{align-self:flex-start}.work-procedure-card summary{grid-template-columns:36px minmax(0,1fr) 24px;padding:14px 12px;gap:9px}.work-procedure-number{width:34px;height:34px}.work-procedure-summary em{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.work-procedure-detail{padding:16px 14px}.work-reference-grid{grid-template-columns:1fr}.work-procedure-detail .procedure-actions{align-items:stretch;flex-direction:column}.work-procedure-detail .procedure-actions button{width:100%}}
.work-head-actions{display:flex;align-items:center;gap:10px}.work-head-actions .management-library-search{min-width:330px}.work-head-actions .blue-button{white-space:nowrap}.task-work-field small,.custom-work-grid label>small{color:#7a8598;font-size:11px;font-weight:500}.task-form-checklist{grid-column:1/-1;border:1px solid #eae6e3;border-radius:15px;background:#fbfaf9;padding:14px}.task-form-checklist>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.task-form-checklist>div:first-child span{color:var(--blue);font-size:11px;font-weight:800}.task-form-checklist>button{margin-top:10px;border:0;background:transparent;color:var(--blue);font:750 12px inherit;cursor:pointer}.task-form-checklist #taskFormStepList{display:grid;gap:7px}.task-form-checklist #taskFormStepList>div{display:grid;grid-template-columns:22px minmax(0,1fr) 30px;align-items:center;gap:8px}.task-form-checklist #taskFormStepList input[type="text"]{padding:9px 11px;background:#fff}.task-form-checklist #taskFormStepList button{border:0;background:#f3f1ee;border-radius:8px;height:30px;color:#64708a;cursor:pointer}.task-no-steps{margin:0;color:#7b8597;font-size:12px}.task-checklist{margin:12px 0;border-top:1px solid #f3f1ef;padding-top:11px}.task-progress-head{display:flex;justify-content:space-between;align-items:center;font-size:11px}.task-progress-head span{color:var(--blue);font-weight:800}.task-progress-track{height:6px;margin:7px 0 9px;border-radius:99px;background:#eeece9;overflow:hidden}.task-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#113b69,#18a36a)}.task-step-list{display:grid;gap:6px;max-height:150px;overflow:auto}.task-step-list label{display:flex;align-items:flex-start;gap:7px;color:#566176;font-size:11px;line-height:1.35;cursor:pointer}.task-step-list input{margin-top:1px;accent-color:var(--blue)}.task-step-list input:checked+span{text-decoration:line-through;color:#8a93a4}.custom-work-modal{max-width:850px;max-height:calc(100dvh - 28px);overflow:auto}.custom-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.custom-work-grid label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:750}.custom-work-grid .wide{grid-column:1/-1}.custom-work-grid input,.custom-work-grid textarea{width:100%;border:1px solid #e7e4e0;border-radius:12px;padding:11px 13px;font:inherit;color:var(--ink);outline:none}.custom-work-grid textarea{resize:vertical}.custom-work-grid input:focus,.custom-work-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(14,48,85,.1)}
@media(max-width:760px){.work-head-actions{width:100%;align-items:stretch;flex-direction:column}.work-head-actions .management-library-search{min-width:0;width:100%}.work-head-actions .blue-button{width:100%}.custom-work-grid{grid-template-columns:1fr}.custom-work-grid .wide{grid-column:auto}}
html.auth-pending body{visibility:hidden}
.login-gate,.account-shell{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;background:linear-gradient(145deg,#0b2037,#174576);padding:18px}.login-card,.account-card{width:min(460px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:24px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.35)}.login-brand{display:flex;align-items:center;gap:15px}.login-brand img{width:56px;height:56px;border-radius:16px;object-fit:contain}.login-brand small{font-size:11px;font-weight:800;letter-spacing:.12em;color:#68738a}.login-brand h1,.account-card h2{margin:4px 0 0;font-size:27px}.login-card>p,.account-card>p{color:#68738a;line-height:1.5}.login-card form,.login-card label{display:grid;gap:9px}.login-card form{gap:16px;margin-top:22px}.login-card label{font-size:14px;font-weight:750}.login-card input,.login-card select,.account-users input{height:48px;border:1px solid #eae6e3;border-radius:12px;padding:0 13px;background:#fff;font:inherit}.login-card button{height:48px;border:0;border-radius:12px;background:#0b2642;color:#fff;font-weight:800;cursor:pointer}.login-error{min-height:18px!important;margin:0!important;color:#b42318!important;font-size:13px}.account-shell{background:rgba(5,21,38,.58);backdrop-filter:blur(5px)}.account-backdrop{position:absolute;inset:0}.account-card{position:relative;width:min(620px,100%)}.account-close{position:absolute;right:18px;top:18px;width:36px;height:36px;border:0;border-radius:50%;font-size:22px;cursor:pointer}.account-users{display:grid;gap:10px;margin:22px 0}.account-users form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) auto;align-items:center;gap:10px;border:1px solid #ece9e5;border-radius:14px;padding:12px}.account-users form div{display:grid;gap:3px}.account-users small{color:#68738a}.account-users button,.logout-button{height:42px;border:0;border-radius:10px;padding:0 15px;background:#0b2642;color:#fff;font-weight:750;cursor:pointer}.logout-button{width:100%;background:#faf7f3;color:#0b2642}.account-message{min-height:20px;color:#168456!important;font-size:13px}.profile{cursor:pointer}@media(max-width:620px){.login-card,.account-card{padding:24px 19px}.account-users form{grid-template-columns:1fr}.account-users button{width:100%}}


/* Visor preliminar de documentos */
.document-preview-shell{position:fixed;inset:0;z-index:2200;display:grid;place-items:center;padding:24px}.document-preview-backdrop{position:absolute;inset:0;background:rgba(4,19,35,.7);backdrop-filter:blur(6px)}.document-preview-card{position:relative;width:min(1100px,calc(100vw - 48px));height:min(820px,calc(100vh - 48px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:24px;background:#faf8f6;box-shadow:0 30px 90px rgba(3,16,29,.4)}.document-preview-card>header{height:auto;min-height:82px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #ebe8e4;background:#fff}.document-preview-card>header>div{min-width:0}.document-preview-card>header h2{margin:4px 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px}.document-preview-card>header small{color:var(--muted);font-size:10px}.document-preview-card>header>button{width:38px;height:38px;flex:0 0 38px;border:0;border-radius:12px;background:#f4f2ef;color:#27394c;font-size:24px;cursor:pointer}.document-preview-body{min-width:0;min-height:0;display:grid;place-items:center;overflow:auto;background:#eae6e3;padding:18px}.document-preview-body iframe{width:100%;height:100%;border:0;border-radius:8px;background:#fff}.document-preview-body img,.document-preview-body video{display:block;max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:0 8px 28px rgba(15,38,62,.18)}.document-preview-body audio{width:min(560px,100%)}.document-preview-unavailable{width:min(430px,100%);padding:34px;text-align:center;border:1px solid #e7e4e0;border-radius:20px;background:#fff}.document-preview-unavailable>.file-type-icon{margin:0 auto 17px}.document-preview-unavailable h3{margin:0 0 8px}.document-preview-unavailable p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.document-preview-card>footer{padding:14px 18px;display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid #ebe8e4;background:#fff}.document-preview-card>footer button{min-height:42px}.document-preview-card>footer button:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:760px){.document-preview-shell{padding:0}.document-preview-card{width:100%;height:100%;max-height:none;border:0;border-radius:0}.document-preview-card>header{min-height:78px;padding:calc(12px + env(safe-area-inset-top)) 14px 12px;background:#fff}.document-preview-card>header h2{max-width:72vw;font-size:15px}.document-preview-body{padding:8px}.document-preview-card>footer{padding:10px 10px calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff}.document-preview-card>footer button{width:100%;min-width:0;padding:10px 7px;font-size:11px}.document-preview-unavailable{background:#fff;box-shadow:none;border-color:#e7e4e0;padding:28px 20px}}

/* Acceso corporativo renovado */
.login-gate{
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 14% 18%,rgba(17,58,102,.15),transparent 31%),
    radial-gradient(circle at 88% 82%,rgba(210,180,140,.22),transparent 29%),
    linear-gradient(145deg,#fcfaf8 0%,#f9f4ee 52%,#f8f4ee 100%);
}
.login-gate::before{
  content:"";
  position:absolute;
  width:min(64vw,780px);
  aspect-ratio:1;
  left:-22vw;
  top:-36vw;
  border-radius:50%;
  background:linear-gradient(145deg,#0b243f,#0d2c4d);
  box-shadow:30px 35px 85px rgba(11,36,63,.22);
  z-index:-2;
}
.login-gate::after{
  content:"";
  position:absolute;
  right:clamp(24px,8vw,140px);
  top:50%;
  width:clamp(220px,27vw,430px);
  aspect-ratio:1;
  transform:translateY(-50%) rotate(-8deg);
  background:url("/app-icon.png?v=pp7") center/contain no-repeat;
  opacity:.055;
  filter:grayscale(1);
  z-index:-1;
  pointer-events:none;
}
.login-card{
  position:relative;
  width:min(470px,100%);
  max-height:calc(100dvh - 40px);
  padding:38px 40px 34px;
  overflow:auto;
  border:1px solid rgba(255,255,255,.9);
  border-radius:28px;
  background:rgba(255,255,255,.88);
  box-shadow:
    0 28px 70px rgba(30,59,91,.16),
    inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter:blur(22px);
}
.login-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:linear-gradient(90deg,#0b243f 0 66%,#d2b48c 66%);
}
.login-card>*{position:relative;z-index:1}
.login-brand{gap:16px;margin-bottom:22px}
.login-brand img{
  width:62px;
  height:62px;
  padding:7px;
  border-radius:19px;
  background:#faf6f2;
  box-shadow:8px 8px 18px rgba(31,61,94,.11),-7px -7px 18px #fff;
}
.login-brand small{
  display:block;
  margin-bottom:4px;
  color:#9b7a54;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
}
.login-brand h1{
  margin:0;
  color:#0b243f;
  font-size:clamp(25px,3vw,31px);
  line-height:1.08;
  letter-spacing:-.035em;
}
.login-card>p{
  margin:0;
  padding:0 0 21px;
  border-bottom:1px solid #efedeb;
  color:#667087;
  font-size:14px;
  line-height:1.65;
}
.login-card form{gap:15px;margin-top:22px}
.login-card label{
  gap:7px;
  color:#25374b;
  font-size:12px;
  font-weight:850;
  letter-spacing:.015em;
}
.login-card input,.login-card select{
  width:100%;
  height:52px;
  border:1px solid #e9e5e0;
  border-radius:14px;
  padding:0 15px;
  outline:none;
  background:#fdfcfa;
  color:#14263a;
  font:600 14px/1 inherit;
  box-shadow:inset 2px 2px 5px rgba(24,57,92,.045),inset -2px -2px 5px #fff;
  transition:border-color .2s,box-shadow .2s,background .2s;
}
.login-card select{cursor:pointer}
.login-card input:focus,.login-card select:focus{
  border-color:#0f335a;
  background:#fff;
  box-shadow:0 0 0 4px rgba(15,51,90,.1);
}
.login-card button{
  height:53px;
  margin-top:3px;
  border-radius:15px;
  background:linear-gradient(135deg,#103760,#0e3156);
  box-shadow:0 12px 24px rgba(11,39,69,.22);
  letter-spacing:.01em;
  transition:transform .18s,box-shadow .18s,filter .18s;
}
.login-card button:hover{
  transform:translateY(-1px);
  box-shadow:0 15px 28px rgba(11,39,69,.28);
  filter:brightness(1.04);
}
.login-card button:active{transform:translateY(0)}
.login-card button:disabled{opacity:.66;cursor:wait}
.login-error{padding-left:2px}
@media(max-width:620px){
  .login-gate{align-items:center;padding:18px 15px}
  .login-gate::before{width:92vw;left:-52vw;top:-49vw}
  .login-gate::after{right:-65px;top:auto;bottom:-72px;width:270px;transform:rotate(-10deg)}
  .login-card{
    width:100%;
    max-height:calc(100dvh - 30px);
    padding:30px 21px 23px;
    border-radius:24px;
  }
  .login-brand{gap:13px;margin-bottom:18px}
  .login-brand img{width:54px;height:54px;border-radius:16px}
  .login-brand h1{font-size:25px}
  .login-card>p{padding-bottom:17px;font-size:13px}
  .login-card form{margin-top:18px;gap:13px}
  .login-card input,.login-card select,.login-card button{height:50px}
}


/* Ejercicios y bloqueo anual de Días de cortesía */
.courtesy-heading-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.courtesy-year-filter{display:grid;gap:6px;min-width:128px}
.courtesy-year-filter>span{color:#68738a;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.courtesy-year-filter select{height:44px;min-width:128px;border:1px solid #e9e5e0;border-radius:12px;padding:0 34px 0 13px;background:#fbfaf8;color:var(--ink);font:800 14px inherit;cursor:pointer}
.courtesy-server-button{min-height:44px;white-space:nowrap}
.courtesy-server-button.is-connected{border-color:#b9e2ce!important;background:#ebf8f1!important;color:#14764b!important;box-shadow:none!important}
.courtesy-exercise-status{margin-top:20px;padding:12px 14px;border:1px solid;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.courtesy-exercise-status>div{display:flex;align-items:center;gap:11px;min-width:0}
.courtesy-exercise-status>div>span{width:31px;height:31px;flex:0 0 31px;border-radius:10px;display:grid;place-items:center;font-size:12px;font-weight:900}
.courtesy-exercise-status p{margin:0;display:grid;gap:2px}
.courtesy-exercise-status strong{font-size:12px}
.courtesy-exercise-status small{color:#69758a;font-size:11px}
.courtesy-exercise-status.is-open{border-color:#c8ead9;background:#f1fbf6}
.courtesy-exercise-status.is-open>div>span{background:#d8f3e5;color:#168456}
.courtesy-exercise-status.is-locked{border-color:#eadbc4;background:#fff9ef}
.courtesy-exercise-status.is-locked>div>span{background:#f5e8d2;color:#9a641f}
.courtesy-exercise-status>button{min-height:37px;border:1px solid #dbc49e;border-radius:10px;padding:0 13px;background:#fff;color:#81551d;font:800 11px inherit;cursor:pointer;white-space:nowrap}
.courtesy-table input:disabled{cursor:not-allowed!important;opacity:.72;color:#727c8e!important;background:#f3f1ef!important;box-shadow:none!important}
@media(max-width:760px){
  .courtesy-heading-actions{display:grid;grid-template-columns:minmax(105px,.42fr) minmax(0,1fr);align-items:end;width:100%;gap:9px}
  .courtesy-year-filter{min-width:0}
  .courtesy-year-filter select{width:100%;min-width:0}
  .courtesy-heading-actions .courtesy-server-button{width:100%;margin:0;padding:0 10px;font-size:11px}
  .courtesy-exercise-status{align-items:stretch;flex-direction:column;margin-top:14px}
  .courtesy-exercise-status>button{width:100%}
}


/* Estado activo e histórico de clientes */
.client-active-field{align-self:stretch}
.client-active-field>span:first-child{display:block}
.client-active-control{
  min-height:48px;
  margin-top:8px;
  padding:0 12px;
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  align-items:center;
  gap:9px;
  border:1px solid #e9e5e0;
  border-radius:12px;
  background:#fbfaf8;
  cursor:pointer;
}
.client-active-control input{position:absolute;opacity:0;pointer-events:none}
.client-active-control i{
  position:relative;
  width:38px;
  height:22px;
  border-radius:999px;
  background:#a8b0c0;
  transition:background .2s ease;
}
.client-active-control i::after{
  content:"";
  position:absolute;
  width:16px;
  height:16px;
  left:3px;
  top:3px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 5px rgba(12,33,55,.25);
  transition:transform .2s ease;
}
.client-active-control input:checked+i{background:#1c9a63}
.client-active-control input:checked+i::after{transform:translateX(16px)}
.client-active-control small{margin:0!important;color:#68738a!important;font-size:10px!important;line-height:1.2}
.client-active-field:has(input:disabled) .client-active-control{cursor:default;opacity:.78}
.management-client-toolbar{align-items:center}
.management-client-sections{display:inline-flex!important;align-items:center!important;gap:4px!important;padding:4px;border:1px solid #eae7e3;border-radius:12px;background:#f8f7f6}
.management-client-sections button{min-height:34px;border:0;border-radius:9px;padding:0 13px;background:transparent;color:#657086;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.management-client-sections button[aria-selected="true"]{background:#fff;color:var(--blue);box-shadow:0 3px 10px rgba(30,59,89,.11)}
.management-client.historical-client{background:#faf8f4;border-color:#e7dece}
.management-client.historical-client .folder-icon{background:#f1e8db;color:#8c6330}

/* Borrador editable previo a la descarga del Excel de facturas. */
.invoice-draft{margin-top:22px;padding-top:20px;border-top:1px solid #eae6e1}.invoice-draft[hidden]{display:none}.invoice-draft-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:13px}.invoice-draft-head h4{margin:4px 0 0;font-size:20px}.invoice-draft-head>span{color:#68748c;font-size:12px}.invoice-draft-table-wrap{overflow:auto;max-height:min(58vh,560px);border:1px solid #e9e5df;border-radius:14px;background:#fff}.invoice-draft table{width:100%;min-width:1120px;table-layout:fixed;border-collapse:collapse}.invoice-draft th{position:sticky;top:0;z-index:1;padding:9px 6px;background:#f6f5f3;color:#69748a;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoice-draft th.num{text-align:right;padding-right:12px}.invoice-draft th:nth-child(1){width:8.5%}.invoice-draft th:nth-child(2){width:8%}.invoice-draft th:nth-child(3){width:13%}.invoice-draft th:nth-child(4){width:9%}.invoice-draft th:nth-child(5){width:9%}.invoice-draft th:nth-child(6){width:6%}.invoice-draft th:nth-child(7){width:8%}.invoice-draft th:nth-child(8){width:9%}.invoice-draft th:nth-child(9){width:16%}.invoice-draft th:nth-child(10){width:13.5%}.invoice-draft td{padding:5px 4px;border-top:1px solid #edeae8}.invoice-draft input{width:100%;min-width:0;height:34px;border:1px solid #e6e2dc;border-radius:8px;padding:0 6px;color:var(--ink);font:600 12px inherit;text-overflow:ellipsis}.invoice-draft input.num{text-align:right;font-variant-numeric:tabular-nums}.invoice-draft td:nth-child(8) input{font-weight:800}.invoice-draft input.has-note{background:#fff8e8;border-color:#f0d9a4;color:#6d5212}.invoice-concept-cell{display:flex;align-items:center;gap:5px}.invoice-preview-button{flex:none;width:34px;height:34px;border:1px solid #d6b892;border-radius:8px;background:#faf7f3;color:var(--blue);display:grid;place-items:center;cursor:pointer;transition:.15s}.invoice-preview-button:hover{background:var(--blue);color:#fff;border-color:var(--blue)}.invoice-draft input:focus{outline:0;border-color:#caa575;box-shadow:0 0 0 3px #f9f4ef}.invoice-draft input[readonly]{background:#f7f6f5;color:#697286}.invoice-draft-confirm{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:20px}.invoice-draft-confirm p{margin:0;color:#667188;font-size:12px}.invoice-draft-confirm button{min-width:280px}@media(max-width:760px){.invoice-draft-head,.invoice-draft-confirm{align-items:stretch;flex-direction:column}.invoice-draft-confirm button{width:100%;min-width:0}}
.invoice-process-banner{margin-top:14px;min-height:52px;border:1px solid #f2c77b;border-radius:13px;background:#fff7e7;color:#8b5600;padding:11px 14px;display:flex;align-items:center;gap:11px;box-shadow:0 8px 22px rgba(151,92,0,.08)}.invoice-process-banner[hidden]{display:none}.invoice-process-banner>span{width:29px;height:29px;border-radius:50%;background:#f6ad2e;color:#fff;display:grid;place-items:center;font-weight:900}.invoice-process-banner strong{font-size:13px}
.management-client.historical-client small{color:#88765e}
@media(max-width:620px){
  .client-identity-grid{grid-template-columns:1fr}
  .client-active-field{order:1}
  .client-name-field{order:0}
  .client-identity-grid>label:not(.client-name-field):not(.client-active-field){order:2}
  .management-client-toolbar{align-items:stretch!important}
  .management-client-sections{width:100%;display:grid!important;grid-template-columns:1fr 1fr}
}

.courtesy-server-button.is-saved{border-color:#d8c69f!important;background:#fff9ec!important;color:#81551d!important;box-shadow:none!important}

/* Usuarios individuales: tareas y conversaciones */
.tasks-head-actions{display:flex;align-items:flex-end;gap:12px}.tasks-head-actions label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.tasks-head-actions select{min-width:150px;border:1px solid #e7e4e0;border-radius:12px;background:#fff;padding:12px 36px 12px 13px;color:var(--ink);font:700 13px inherit}.chat-message.incoming{align-self:flex-start;background:#fff;color:var(--ink);border:1px solid #ebe8e4;border-radius:16px 16px 16px 4px;box-shadow:0 5px 14px rgba(30,54,80,.08)}.chat-message.incoming time{text-align:left;color:#778198}.chat-message.outgoing{align-self:flex-end}@media(max-width:760px){.tasks-head-actions{display:grid;grid-template-columns:1fr;align-items:stretch}.tasks-head-actions label{width:100%}.tasks-head-actions select{width:100%}}

/* Avisos y marca del chat */
.chat-launcher{position:relative}.chat-unread-badge{position:absolute;z-index:3;right:-7px;top:-7px;min-width:23px;height:23px;padding:0 6px;border:2px solid #fff;border-radius:999px;background:#f04438;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:900;line-height:1;box-shadow:0 4px 12px rgba(240,68,56,.45);pointer-events:none;animation:taskNavJump 1.35s ease-in-out infinite}.chat-contact-unread{min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#f04438;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:900;line-height:1;box-shadow:0 4px 11px rgba(240,68,56,.28)}.chat-contacts small.has-unread{color:#d92d20;font-weight:800}.chat-team-header{position:relative;min-height:82px}.chat-brand{display:flex;align-items:center;gap:12px}.chat-brand-logo{display:block;width:44px;height:44px;flex:0 0 44px;object-fit:contain;opacity:.98}.chat-brand>div{display:flex;flex-direction:column}@media(max-width:760px){.chat-team-header{min-height:108px}.chat-team-header .chat-brand{position:absolute;left:50%;top:calc(50% + env(safe-area-inset-top)/3);transform:translate(-50%,-50%)}.chat-team-header .chat-brand-logo{width:64px;height:64px;flex-basis:64px}.chat-team-header .chat-brand>div{display:none}.chat-team-header #closeChat{position:relative;z-index:2;margin-left:auto}.chat-unread-badge{right:-6px;top:-6px}}

/* Client partners and contacts */
#clientPeople[hidden],#legacyClientPeople[hidden]{display:none!important}
#clientPeople [role=tabpanel]{padding-top:14px}#clientPeople [role=tabpanel][hidden]{display:none}#clientPeople label{font-size:13px;min-width:0}#clientPeople select,#clientPeople input:not([type=radio]){display:block;width:100%;min-width:0;margin-top:7px;border:1px solid var(--line);border-radius:11px;padding:10px;font:inherit;background:#fff}.client-person-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 0;border-bottom:1px solid var(--line);margin-bottom:12px}.client-person-row button{justify-self:start}.client-primary-contact{display:flex;align-items:center;gap:7px}#clientPeopleLegacy{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:760px){.client-person-row{grid-template-columns:1fr}}

/* Keep background stationary while a client record is open. */
html:has(#clientModal.open),body:has(#clientModal.open){overflow:hidden;overscroll-behavior:none}
#clientModal .client-modal{overscroll-behavior:contain}
#clientModal .modal-backdrop{touch-action:none}

/* Compact client rows with an inline delete action. */
#clientPeople .client-person-row{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1.2fr) 30px;gap:6px 8px;padding:9px 0;margin-bottom:5px;align-items:end}
#clientPeople .client-person-row input:not([type=radio]){margin-top:4px;padding:8px 9px;min-height:36px}
#clientPeople .client-person-delete{grid-column:4;grid-row:1;display:grid;place-items:center;width:30px;height:36px;min-width:0;padding:0;border:0;border-radius:7px;background:transparent;color:#778197;cursor:pointer}
#clientPeople .client-person-delete:hover{background:#fff0f0;color:#bf3434}
#clientPeople .client-person-delete:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
#clientPeople .client-person-delete:disabled{opacity:.35;cursor:default}
#clientPeople .client-primary-contact{grid-column:1 / 4;margin:0;font-size:12px}
@media(max-width:760px){#clientPeople .client-person-row{grid-template-columns:minmax(0,1fr) 30px}#clientPeople .client-person-row>label{grid-column:1}#clientPeople .client-person-delete{grid-column:2;grid-row:1}#clientPeople .client-primary-contact{grid-column:1}}

/* Minimal document preview button. */
.declaration-document-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:6px 10px;border:1px solid #ece9e5;border-radius:9px;background:#fff;color:var(--blue);font-family:inherit;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s}
.declaration-document-actions button>span{display:inline-grid;place-items:center;width:18px;height:20px;font-size:0}
.declaration-document-actions button>span::before{content:"";width:16px;height:18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8zM14 2v6h6M8 13h8M8 17h6'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.declaration-document-actions button:hover{background:#fbf8f5;border-color:#ebddcc}
.declaration-document-actions button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.declaration-document-actions button:active{background:#f9f4ee}

/* Dense layout for client identity, partners and contacts. */
#newClientForm #clientPeople{padding:10px 13px}
#newClientForm #clientPeople .internal-section-heading{gap:2px;margin-bottom:5px}
#newClientForm #clientPeople .registry-tabs{overflow-y:hidden}
#newClientForm #clientPeople .registry-tabs button{padding:7px 9px 8px}
#newClientForm #clientPeople [role=tabpanel]{padding-top:8px}
#newClientForm #clientPeople label{display:block;font-size:12px;line-height:16px;margin:0}
#newClientForm #clientPeople input:not([type=radio]),#newClientForm #clientPeople select{height:30px;min-height:30px;margin-top:3px;padding:4px 8px;border-radius:7px;font-size:12px;line-height:20px}
#newClientForm #clientPeople .client-person-row{padding:6px 0;margin-bottom:3px;gap:4px 8px;align-items:start}
#newClientForm #clientPeople .client-person-delete{height:30px;margin-top:19px}
#newClientForm #clientPeople .client-primary-contact{display:flex;align-items:center;gap:6px;font-size:11px;line-height:16px}
#newClientForm #clientPeople .client-primary-contact input{margin:0}
#newClientForm #addClientPartner,#newClientForm #addClientContact{min-height:28px;height:28px;padding:4px 9px;border-radius:7px;font-size:11px}
#newClientForm #clientPeopleLegacy{margin:8px 0 0;font-size:11px;line-height:15px}
#newClientForm .client-identity-grid input:not([type=checkbox]),#newClientForm .client-identity-grid select{height:34px;min-height:34px;padding:5px 10px}

#newClientForm #clientPeople .client-administrator-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:760px){#newClientForm #clientPeople .client-administrator-grid{grid-template-columns:1fr}}

/* Consistent compact controls throughout the client record. */
#clientModal #newClientForm input:not([type=checkbox]):not([type=radio]):not([type=file]),#clientModal #newClientForm select{height:30px;min-height:30px;padding:4px 8px;border-radius:7px;font-size:12px;line-height:20px}
#clientModal #newClientForm input[type=file]{min-height:30px;padding:4px 8px;border-radius:7px;font-size:11px}
#clientModal #newClientForm textarea{min-height:64px;padding:6px 8px;border-radius:7px;font-size:12px;line-height:18px}
#clientModal #newClientForm label{gap:3px}
#clientModal #newClientForm .client-identity-grid{gap:8px 14px}
#clientModal #newClientForm .client-active-control{min-height:30px;height:30px;padding:4px 10px}
#clientModal #newClientForm .registry-fields{gap:8px 10px}
#clientModal #newClientForm .registry-tabs{overflow-y:hidden}
#clientModal #newClientForm .registry-tabs button{padding:7px 9px 8px}
#clientModal #newClientForm .signature-data{padding:10px;gap:8px}
#clientModal #newClientForm .digital-signature-document{padding:10px;gap:6px}
#clientModal #newClientForm .fiscal-periodicity,#clientModal #newClientForm .fiscal-courtesy-inline{min-height:36px;padding:4px 10px}
#clientModal #newClientForm .obligation-item{padding:6px 9px}
#clientModal #newClientForm .fiscal-obligations>p,#clientModal #newClientForm .registry-intro,#clientModal #newClientForm .digital-signature-section>p{margin:6px 0 8px}

/* Registro interno de trabajos facturables. */
.metrics article[data-home-route]{cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.metrics article[data-home-route]:hover,.metrics article[data-home-route]:focus-visible{transform:translateY(-2px);border-color:#d5b68f;box-shadow:0 10px 24px rgba(11,39,68,.1);outline:0}
.welcome-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;position:relative;z-index:1}.welcome .home-billing-button{border:1px solid rgba(255,255,255,.42);background:rgba(255,255,255,.12);color:#fff}.welcome .home-billing-button:hover{background:rgba(255,255,255,.2)}
.management-tabs button{position:relative}.management-tab-alert{position:absolute;right:5px;top:3px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#f04438;color:#fff;display:grid;place-items:center;font-size:9px;font-weight:900;box-shadow:0 3px 9px rgba(240,68,56,.35)}.management-tab-alert[hidden]{display:none}
.client-portal-access{margin-top:18px;border:1px solid #e6e0d7;border-radius:16px;background:linear-gradient(145deg,#fdfbf9,#fff);padding:18px}.client-portal-access legend{padding:0 8px;color:var(--ink);font-size:15px;font-weight:850}.client-portal-access>p{margin:0 0 15px;color:var(--muted);font-size:12px}.client-portal-access-grid{display:grid;grid-template-columns:minmax(240px,1.2fr) minmax(150px,.7fr) auto auto;gap:12px;align-items:end}.client-portal-access-grid label,.client-portal-access-grid>div{display:flex;flex-direction:column;gap:7px;color:#59657d;font-size:11px;font-weight:800}.client-portal-access-grid input{height:42px;border:1px solid #e9e5e0;border-radius:11px;background:#fff;padding:0 12px;font:inherit}.portal-status{width:max-content;display:inline-flex;align-items:center;min-height:31px;padding:6px 10px;border-radius:999px;background:#f2f1f0;color:#69758b;font-size:10px;font-weight:850}.portal-status.invited{background:#fff0d5;color:#996000}.portal-status.active{background:#daf5e6;color:#087443}.portal-status.blocked{background:#fee7e5;color:#b42318}.client-portal-access>small{display:block;margin-top:11px;color:#8993a5;font-size:10px}.client-users-panel{margin-top:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:20px}.client-users-table-wrap{overflow:auto;border:1px solid #eae7e4;border-radius:15px}.client-users-table-wrap table{width:100%;min-width:900px;border-collapse:collapse}.client-users-table-wrap th{padding:13px 15px;background:#f9f8f7;color:#778196;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.client-users-table-wrap td{padding:15px;border-top:1px solid #f2f1ef;color:#354658;font-size:12px}.client-users-table-wrap td:first-child strong,.client-users-table-wrap td:first-child small{display:block}.client-users-table-wrap td:first-child small{margin-top:3px;color:#8a94a6;font-size:10px}.client-users-table-wrap em{color:#9aa3b3}.client-user-actions{display:flex;align-items:center;gap:6px}.client-user-actions button{border:1px solid #e2ddd7;border-radius:9px;background:#fff;color:var(--blue);padding:7px 9px;font:750 10px inherit;white-space:nowrap;cursor:pointer}.client-user-actions button:hover{background:#faf7f3;border-color:#d2b288}@media(max-width:900px){.client-portal-access-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.client-portal-access-grid{grid-template-columns:1fr}.client-portal-access-grid .secondary-button{width:100%}.client-users-panel{margin:12px;padding:10px}}
.billing-workspace-head .blue-button{flex:0 0 auto}.billing-panel{margin-top:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:22px}.billing-table-wrap{position:relative;overflow:auto;border:1px solid #ebe8e4;border-radius:16px}.billing-table{width:100%;min-width:940px;border-collapse:collapse}.billing-table th{padding:13px 15px;background:#faf9f8;color:#778196;text-align:left;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.billing-table td{padding:15px;border-top:1px solid #f3f1ef;color:#304052;font-size:12px;vertical-align:top}.billing-table td:first-child strong,.billing-table td:first-child small{display:block}.billing-table td:first-child small{margin-top:3px;color:#929bad;font-size:9px}.billing-employee{display:flex;align-items:center;gap:8px;font-weight:750}.billing-employee i{width:29px;height:29px;flex:0 0 29px;border-radius:9px;background:#f9f4ef;color:var(--blue);display:grid;place-items:center;font-size:9px;font-style:normal;font-weight:900}.billing-no-client{color:#9aa3b3;font-style:italic}.billing-description{min-width:280px;line-height:1.45}.billing-hours{display:inline-flex;padding:6px 9px;border-radius:999px;background:#e8f7ef;color:#168456;white-space:nowrap}.billing-empty{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#929bad}.billing-empty[hidden]{display:none}.billing-empty>span{width:44px;height:44px;border-radius:14px;background:#f9f4ef;color:var(--blue);display:grid;place-items:center;font-size:20px;font-weight:900}.billing-empty strong{margin-top:10px;color:var(--ink)}.billing-empty small{margin-top:4px}
.billing-modal{max-width:680px}.billing-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.billing-form-grid label{display:flex;flex-direction:column;gap:7px;color:#3e4e60;font-size:13px;font-weight:750}.billing-form-grid label>small{margin-left:4px;color:#8c96a8;font-size:10px;font-weight:600}.billing-form-grid input,.billing-form-grid select,.billing-form-grid textarea{width:100%;border:1px solid #e7e4e0;border-radius:12px;background:#fff;padding:12px 13px;color:var(--ink);font:inherit;outline:0}.billing-form-grid input,.billing-form-grid select{height:46px}.billing-form-grid textarea{min-height:115px;resize:vertical}.billing-form-grid input:focus,.billing-form-grid select:focus,.billing-form-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(14,48,85,.1)}.billing-client-field,.billing-description-field{grid-column:1/-1}.billing-form-note{margin:14px 0 0;padding:11px 13px;border-radius:11px;background:#f9f8f6;color:#68738a;font-size:12px}.billing-form-note strong{color:var(--ink)}
.chat-message time{display:flex;align-items:center;justify-content:flex-end;gap:5px}.chat-read-ticks{font-size:12px;font-weight:900;letter-spacing:-3px;padding-right:3px;color:rgba(255,255,255,.68)}.chat-read-ticks.read{color:#70e7ff;text-shadow:0 0 7px rgba(112,231,255,.35)}
@media(max-width:760px){.welcome-actions{justify-content:flex-start;flex-wrap:wrap;margin-top:18px}.welcome .welcome-actions .primary{margin-top:0}.management-tabs{width:100%;overflow:auto}.management-tabs button{min-width:112px}.management-workspace-head.billing-workspace-head{align-items:stretch;flex-direction:column}.billing-workspace-head .blue-button{width:100%}.billing-panel{padding:12px}.billing-form-grid{grid-template-columns:1fr}.billing-client-field,.billing-description-field{grid-column:auto}.billing-modal .modal-actions{display:grid;grid-template-columns:1fr 1fr}.billing-modal .modal-actions button{width:100%}}

/* Maqueta temporal del portal móvil de clientes. */
.view-mode-button{width:100%;margin:18px 0 4px;border:1px solid #ebe8e3;border-radius:15px;background:#fcfaf7;color:var(--ink);padding:13px;display:flex;align-items:center;gap:11px;text-align:left;cursor:pointer}.view-mode-button>span:first-child{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:#0b2642;color:#fff;display:grid;place-items:center;font-size:19px}.view-mode-button>span:nth-child(2){min-width:0;flex:1}.view-mode-button strong,.view-mode-button small{display:block}.view-mode-button strong{font-size:13px}.view-mode-button small{margin-top:3px;color:#778198;font-size:10px}.view-mode-button b{color:#0b2642;font-size:22px}
body.client-preview-mode{display:block;background:#f2efeb}.client-preview-mode>.sidebar,.client-preview-mode>.mobile-app-chrome,.client-preview-mode>.worker-chat,.client-preview-mode>#overlay{display:none!important}.client-preview-mode>main{width:100%;min-height:100dvh;margin:0;padding:0;display:flex;justify-content:center;background:#f2efeb}.client-portal-shell{--client-navy:#0b2642;--client-blue:#0b2642;--client-gold:#c79c64;position:relative;width:100%;max-width:460px;min-height:100dvh;padding-bottom:78px;background:linear-gradient(180deg,#fff 0%,#fffdfa 72%,#f6efe5 100%);color:#092d54;box-shadow:0 0 45px rgba(7,36,67,.15)}
.client-documents-overlay{position:fixed;z-index:2900;inset:0;background:#f5f3f0;color:#102f50;overflow:auto}.client-documents-view{width:min(1180px,calc(100% - 40px));min-height:calc(100vh - 40px);margin:20px auto;border:1px solid #e7e4e0;border-radius:20px;background:#fff;box-shadow:0 20px 60px rgba(13,41,71,.12);overflow:hidden}.client-documents-view>header{height:76px;padding:0 24px;background:linear-gradient(135deg,#0b2642,#0d2f53);color:#fff;display:grid;grid-template-columns:44px 1fr 44px;align-items:center}.client-documents-view>header button{width:40px;height:40px;border:1px solid rgba(255,255,255,.24);border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font:400 30px/1 Arial;cursor:pointer}.client-documents-view>header>button:last-child{font-size:25px}.client-documents-view>header div{text-align:center}.client-documents-view>header strong,.client-documents-view>header small{display:block}.client-documents-view>header strong{font-size:19px}.client-documents-view>header small{margin-bottom:3px;color:#f5eee6;font-size:9px;letter-spacing:.13em}.client-documents-heading{padding:25px 28px 19px;border-bottom:1px solid #edeae8;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.client-documents-heading h2{margin:4px 0;font-size:25px}.client-documents-heading p:last-child{margin:0;color:#718196;font-size:13px}.client-documents-heading label{width:min(340px,40vw);height:44px;border:1px solid #e6e2dc;border-radius:12px;background:#faf9f8;display:flex;align-items:center;gap:9px;padding:0 13px;color:#60758b}.client-documents-heading input{width:100%;border:0;outline:0;background:transparent;color:#183452;font:inherit}.client-documents-list{padding:17px 28px 28px;display:grid;gap:9px}.client-document-row{width:100%;min-height:67px;border:1px solid #e9e6e3;border-radius:13px;background:#fff;padding:10px 14px;display:grid;grid-template-columns:43px 1fr auto;align-items:center;gap:13px;color:#142f4b;text-align:left;cursor:pointer}.client-document-row:hover{border-color:#d2b288;background:#fdfcfa}.client-document-row[hidden]{display:none}.client-document-row .file-type-icon{width:42px;height:46px}.client-document-row>span strong,.client-document-row>span small{display:block}.client-document-row>span strong{font-size:13px}.client-document-row>span small{margin-top:5px;color:#7c8b9e;font-size:10px}.client-document-row>b{border-radius:8px;background:#faf6f2;color:#0b2642;padding:7px 11px;font-size:11px}.client-documents-loading,.client-documents-empty{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#78879a}.client-documents-loading span{width:30px;height:30px;margin-bottom:13px;border:3px solid #f4ece2;border-top-color:#0b2642;border-radius:50%;animation:client-documents-spin .8s linear infinite}.client-documents-empty strong,.client-documents-empty small{display:block}.client-documents-empty strong{margin-top:10px;color:#304963}.client-documents-empty small{margin-top:5px}@keyframes client-documents-spin{to{transform:rotate(360deg)}}@media(max-width:600px){.client-documents-overlay{background:#fff}.client-documents-view{width:100%;min-height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none}.client-documents-view>header{height:72px;padding:0 14px}.client-documents-heading{padding:20px 16px 15px;display:block}.client-documents-heading label{width:100%;margin-top:15px}.client-documents-list{padding:12px 14px 24px}.client-document-row{grid-template-columns:39px 1fr auto;padding:9px 10px}.client-document-row .file-type-icon{width:38px;height:42px}.client-document-row>span strong{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
.client-chat-overlay{position:fixed;z-index:2950;inset:0;background:rgba(5,26,48,.48);backdrop-filter:blur(5px);display:grid;place-items:center;padding:24px}.client-chat-view{width:min(520px,calc(100vw - 32px));height:min(720px,calc(100dvh - 48px));border-radius:22px;background:#fbfaf8;box-shadow:0 28px 80px rgba(7,31,57,.28);overflow:hidden;display:flex;flex-direction:column;color:#153252}.client-chat-view>header{height:76px;padding:0 18px;background:linear-gradient(135deg,#0b2642,#0d2f53);color:#fff;display:grid;grid-template-columns:42px 1fr 42px;align-items:center}.client-chat-view>header button{width:40px;height:40px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font:400 27px/1 Arial}.client-chat-view>header div{text-align:center}.client-chat-view>header strong,.client-chat-view>header small{display:block}.client-chat-view>header strong{font-size:18px}.client-chat-view>header small{margin-bottom:3px;color:#f5eee6;font-size:9px;letter-spacing:.13em}.client-chat-content{min-height:0;flex:1;display:flex;flex-direction:column}.client-chat-intro{padding:24px 22px 14px}.client-chat-intro strong,.client-chat-intro span{display:block}.client-chat-intro strong{font-size:18px}.client-chat-intro span{margin-top:5px;color:#718197;font-size:12px}.client-chat-advisors{padding:0 17px;display:grid;gap:9px}.client-chat-advisors button{min-height:70px;border:1px solid #e9e6e2;border-radius:14px;background:#fff;padding:10px 13px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;color:#173452;text-align:left}.client-chat-advisors button>span,.client-chat-conversation-head>span{width:42px;height:42px;border-radius:50%;background:#f9f4ef;color:#0b2642;display:grid;place-items:center;font-size:11px;font-weight:850}.client-chat-advisors button strong,.client-chat-advisors button small{display:block}.client-chat-advisors button small{margin-top:4px;color:#7d8b9c;font-size:10px}.client-chat-advisors button>b{color:#0b2642;font-size:22px}.client-chat-conversation-head{min-height:68px;padding:10px 15px;border-bottom:1px solid #eae7e4;background:#fff;display:grid;grid-template-columns:38px 42px 1fr;align-items:center;gap:10px}.client-chat-conversation-head>button{width:34px;height:34px;border:0;border-radius:10px;background:#f5f3f0;color:#0b2642;font-size:18px}.client-chat-conversation-head strong,.client-chat-conversation-head small{display:block}.client-chat-conversation-head small{margin-top:3px;color:#7c8a9b;font-size:10px}.client-chat-messages{min-height:0;flex:1;padding:16px;overflow:auto;display:flex;flex-direction:column;gap:8px}.client-chat-message{max-width:79%;align-self:flex-start;border-radius:15px 15px 15px 4px;background:#fff;padding:10px 12px;box-shadow:0 2px 8px rgba(20,50,82,.07)}.client-chat-message.outgoing{align-self:flex-end;border-radius:15px 15px 4px 15px;background:#0b2642;color:#fff}.client-chat-message p{margin:0;font-size:13px;line-height:1.4}.client-chat-message time{display:block;margin-top:5px;color:#8b98a8;text-align:right;font-size:9px}.client-chat-message.outgoing time{color:#f4ece3}.client-chat-message .chat-read-ticks.read{color:#5fd4ff}.client-chat-empty{margin:auto;text-align:center;color:#74859a}.client-chat-empty strong,.client-chat-empty small{display:block}.client-chat-empty small{margin-top:6px;font-size:11px}.client-chat-composer{padding:12px;border-top:1px solid #e8e5e2;background:#fff;display:grid;grid-template-columns:1fr 44px;gap:9px}.client-chat-composer textarea{height:44px;max-height:90px;resize:none;border:1px solid #e6e2dc;border-radius:12px;padding:12px;font:inherit}.client-chat-composer button{border:0;border-radius:12px;background:#0b2642;color:#fff;font-size:18px}@media(max-width:600px){.client-chat-overlay{padding:0;background:#fff}.client-chat-view{width:100%;height:100dvh;border-radius:0;box-shadow:none}.client-chat-view>header{padding-top:env(safe-area-inset-top);height:calc(72px + env(safe-area-inset-top))}}
.client-portal-header{height:84px;padding:14px 16px max(13px,env(safe-area-inset-top));border-radius:0 0 20px 20px;background:linear-gradient(135deg,#0b2642,#0f345c);display:flex;align-items:center;justify-content:space-between;box-shadow:0 8px 22px rgba(11,38,66,.22)}.client-portal-header>img{width:150px;height:51px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.client-portal-header .profile{width:auto;height:42px;margin:0;padding:3px;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.13)}.client-portal-header .profile>span:first-child{width:34px;height:34px;background:#fff;color:#0b2642;font-size:10px}.client-portal-header .profile-copy{display:none}
.client-portal-content{padding:18px 16px 22px}.client-greeting h1{margin:0;color:#092e56;font-size:25px;letter-spacing:-.03em}.client-greeting p{margin:3px 0 18px;color:#657b91;font-size:13px}.client-document-banner{width:100%;min-height:72px;border:1px solid #f0e6da;border-radius:13px;background:linear-gradient(135deg,#f0f8ff,#f7f1ea);padding:12px 13px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:11px;color:#092e56;text-align:left;box-shadow:0 5px 14px rgba(10,36,63,.06)}.client-document-banner>span{width:43px;height:43px;border-radius:10px;background:#fff;color:#0875b8;display:grid;place-items:center}.client-document-banner svg,.client-service-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.client-document-banner strong{font-size:13px;line-height:1.25}.client-document-banner b{font-size:20px;font-weight:500}
.client-services{margin-top:20px}.client-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.client-section-title h2{margin:0;font-size:17px}.client-section-title button{border:0;background:transparent;color:#36597f;padding:4px;font:600 11px inherit}.client-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.client-service-card{position:relative;min-height:132px;border:1px solid #e8e6e3;border-radius:12px;background:linear-gradient(150deg,#fff,#f7f8f9);padding:15px 8px 10px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;color:#0a315b;text-align:center;box-shadow:0 5px 13px rgba(30,52,76,.045)}.client-service-card.contracted{border-color:#66cfff;background:linear-gradient(150deg,#f4fcff,#e6f7ff);box-shadow:0 5px 16px rgba(0,139,205,.11)}.client-service-icon{height:42px;color:#0c3969;display:grid;place-items:center}.client-service-card strong{min-height:31px;margin:5px 0 7px;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1.18}.client-service-card small{min-width:86px;border-radius:999px;background:#efedea;color:#718091;padding:4px 8px;font-size:9px}.client-service-card.contracted small{background:#c6f5d8;color:#177643}.client-service-lock{position:absolute;right:8px;top:8px;width:15px;height:18px;color:#788a9b;font-size:9px}.client-service-lock:before{content:"";position:absolute;left:4px;top:-4px;width:7px;height:7px;border:2px solid currentColor;border-bottom:0;border-radius:6px 6px 0 0}.client-help-card{width:100%;min-height:61px;margin-top:9px;border:1px solid #e8e4df;border-radius:12px;background:linear-gradient(135deg,#fbf8f5,#fff);padding:10px 12px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;color:#0a325c;text-align:left}.client-help-card>span:first-child{width:36px;height:36px;border-radius:10px;background:#f3ebe1;display:grid;place-items:center;font-size:18px}.client-help-card strong,.client-help-card small{display:block}.client-help-card strong{font-size:12px}.client-help-card small{margin-top:3px;color:#708398;font-size:9px}.client-help-card>b{font-size:18px;font-weight:500}
.client-portal-nav{position:fixed;z-index:5;left:50%;bottom:0;width:100%;max-width:460px;height:68px;transform:translateX(-50%);padding:7px 12px max(7px,env(safe-area-inset-bottom));border-top:1px solid #e7e4e0;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.client-portal-nav button{border:0;border-radius:9px;background:transparent;color:#607891;padding:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:inherit}.client-portal-nav button span{font-size:20px;line-height:1}.client-portal-nav button small{font-size:9px}.client-portal-nav button.active{background:#f9f5f0;color:#0a315b;font-weight:800}
.client-unavailable-overlay{position:fixed;z-index:3000;inset:0;display:flex;justify-content:center;background:rgba(5,20,37,.5);backdrop-filter:blur(5px)}.client-unavailable-card{position:relative;width:100%;max-width:460px;min-height:100dvh;padding-bottom:72px;background:linear-gradient(180deg,#fff 0%,#fffdfa 100%);color:#0b325b;box-shadow:0 0 45px rgba(7,36,67,.18);overflow:auto}.client-unavailable-card>header{height:70px;padding:10px 16px;border-bottom:1px solid #edebe8;background:#fff;display:grid;grid-template-columns:42px 1fr 42px;align-items:center}.client-unavailable-card>header button{width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:#173e67;font:400 38px/1 inherit;cursor:pointer}.client-unavailable-card>header strong{text-align:center;font-size:16px}.client-unavailable-body{padding:28px 28px 18px;display:flex;flex-direction:column;align-items:center;text-align:center}.client-unavailable-illustration{width:190px;height:160px}.client-unavailable-illustration svg{width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round}.client-unavailable-illustration .blob{fill:#faf5e9;stroke:none}.client-unavailable-illustration .folder,.client-unavailable-illustration .face,.client-unavailable-illustration .legs{stroke:#123e6d;stroke-width:3}.client-unavailable-illustration .folder{fill:#fff}.client-unavailable-illustration .face{stroke-width:4}.client-unavailable-illustration .lock{fill:#c79c64;stroke:#c79c64}.client-unavailable-illustration .lockline{stroke:#a77942;stroke-width:5}.client-unavailable-illustration .lockhole{fill:#fff;stroke:none}.client-unavailable-body h2{margin:3px 0 7px;font-size:29px;letter-spacing:-.03em}.client-unavailable-body h3{margin:0;color:#244467;font-size:19px;line-height:1.35}.client-unavailable-body p{max-width:320px;margin:20px 0 22px;color:#6c8195;font-size:15px;line-height:1.5}.client-unavailable-primary,.client-unavailable-secondary{width:100%;height:52px;border-radius:11px;font:800 15px inherit}.client-unavailable-primary{border:0;background:linear-gradient(135deg,#0d3b6d,#0e437c);color:#fff;box-shadow:0 8px 18px rgba(12,56,104,.18)}.client-unavailable-secondary{margin-top:11px;border:2px solid #41668d;background:#fff;color:#163c65}.client-unavailable-advisor{margin-top:18px;border:0;background:transparent;color:#0786d1;display:flex;align-items:center;gap:8px;font:750 14px inherit}.client-unavailable-advisor .client-ui-icon svg{width:21px;height:21px}.client-unavailable-nav{position:absolute;left:0;right:0;bottom:0;height:68px;border-top:1px solid #e7e5e2;background:#fff;display:grid;grid-template-columns:repeat(4,1fr)}.client-unavailable-nav>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#657c94;font-size:20px}.client-unavailable-nav small{font-size:9px}.client-desktop-shell{display:none}
@media(min-width:761px){
  .client-preview-mode>main{display:block;padding:0;background:#fff}.client-mobile-portal{display:none}.client-desktop-shell{display:flex;flex-direction:column;min-width:1040px;min-height:100vh;background:#fff;color:#102f50;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.client-ui-icon{display:inline-grid;flex:0 0 auto;place-items:center}.client-ui-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .client-desktop-header{height:88px;padding:0 34px;background:linear-gradient(135deg,#0b2642,#0d2f53);display:flex;align-items:center;color:#fff}.client-desktop-header>img{width:195px;height:62px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.client-desktop-motto{margin-left:18px;padding-left:20px;border-left:1px solid rgba(255,255,255,.4);font-family:Georgia,serif;font-size:13px;font-style:italic;line-height:1.3;color:#f7f2eb}.client-desktop-header nav{height:100%;margin-left:auto;display:flex;align-items:stretch;gap:3px}.client-desktop-header nav button,.client-desktop-logout{border:0;background:transparent;color:#fff;padding:0 18px;display:flex;align-items:center;justify-content:center;gap:8px;font:700 14px inherit;line-height:1;cursor:pointer}.client-desktop-header nav button{position:relative}.client-desktop-header nav button.active{background:rgba(255,255,255,.12);color:#fff}.client-desktop-header nav button.active:after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:4px;border-radius:3px 3px 0 0;background:#d7b17c}.client-desktop-logout{height:100%;margin-left:20px;padding-right:0;font-weight:650}
  .client-desktop-hero{height:178px;display:grid;grid-template-columns:44% 56%;overflow:hidden;background:#fcfbfb}.client-desktop-hero>div:first-child{position:relative;z-index:2;padding:34px 20px 25px 34px;background:linear-gradient(90deg,#fff 0%,#fff 77%,rgba(255,255,255,.88) 92%,rgba(255,255,255,0) 100%)}.client-desktop-hero h1{margin:0;color:#12365d;font-size:27px;letter-spacing:-.03em}.client-desktop-hero h2{margin:2px 0 18px;color:#70849a;font-size:14px;font-weight:500}.client-desktop-hero p{margin:0;color:#546b83;font-size:11px;line-height:1.55}.client-desktop-hero-image{position:relative;padding:32px 42px;background-image:linear-gradient(90deg,rgba(255,255,255,.12),rgba(7,30,55,.2)),url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1400&q=80");background-size:cover;background-position:center 49%;color:#142e49}.client-desktop-hero-image:after{content:"MÁS QUE UNA ASESORÍA, UN EQUIPO A TU LADO";position:absolute;right:0;top:0;width:180px;height:100%;padding:38px 26px;background:rgba(28,23,24,.58);color:#fff;display:flex;align-items:center;font-size:12px;line-height:1.85;letter-spacing:.15em}.client-desktop-hero-image strong{display:block;font-size:20px;line-height:1.1}.client-desktop-hero-image small{display:block;margin-top:9px;font-family:Georgia,serif;font-style:italic}
  .client-desktop-content{flex:1;padding:23px 28px 18px}.client-desktop-title{display:flex;align-items:flex-end;justify-content:space-between}.client-desktop-title h2{margin:0;font-size:23px}.client-desktop-title p{margin:5px 0 0;color:#718298;font-size:13px}.client-desktop-title em{color:#8b6b43;font-family:Georgia,serif;font-size:12px}.client-desktop-services-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;margin-top:16px}.client-desktop-service{position:relative;min-width:0;min-height:230px;border:1px solid #e6e3e0;border-radius:9px;background:linear-gradient(155deg,#fff,#f9f9f8);padding:18px 13px 12px;display:flex;flex-direction:column;align-items:center;text-align:center}.client-desktop-service.contracted{border-color:#65bfff;background:linear-gradient(155deg,#f5fbff,#e8f6ff)}.client-desktop-service .client-service-icon{height:42px}.client-desktop-service .client-service-icon svg{width:34px;height:34px;stroke-width:1.75}.client-desktop-service h3{min-height:42px;margin:6px 0;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1.2}.client-desktop-service>small{min-width:100px;border-radius:999px;background:#e3e7eb;color:#6b7787;padding:5px 9px;font-size:10px}.client-desktop-service.contracted>small{background:#c8f4d9;color:#167543}.client-desktop-service p{margin:12px 0;color:#52667c;font-size:11px;line-height:1.4}.client-desktop-service>button{width:100%;height:36px;margin-top:auto;border:1px solid #17395d;border-radius:5px;background:#fff;color:#17395d;font:750 12px inherit}.client-desktop-service.contracted>button{border-color:#0b2642;background:#0b2642;color:#fff}.client-desktop-service .client-service-lock{right:10px;top:11px}
  .client-desktop-dashboard{display:grid;grid-template-columns:1.13fr .92fr .72fr;gap:14px;margin-top:17px}.client-desktop-panel,.client-desktop-contact{border:1px solid #e0e4e9;border-radius:9px;background:#fff;padding:15px}.client-desktop-panel-title{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid #edebe9}.client-desktop-panel-title h3,.client-desktop-help h3,.client-desktop-contact h3{margin:0;display:flex;align-items:center;gap:7px;font-size:14px}.client-desktop-panel-title h3 .client-ui-icon svg,.client-desktop-help h3 .client-ui-icon svg,.client-desktop-contact h3 .client-ui-icon svg{width:17px;height:17px}.client-desktop-panel-title button{border:0;background:transparent;color:#183a5e;font:700 11px inherit}.client-desktop-document{min-height:50px;border-bottom:1px solid #f2f0ee;display:grid;grid-template-columns:31px 1fr auto;align-items:center;gap:8px}.client-desktop-document>.client-ui-icon{width:27px;height:31px;color:#e83b46}.client-desktop-document>.client-ui-icon svg{width:22px;height:22px}.client-desktop-document strong,.client-desktop-document small{display:block}.client-desktop-document strong{font-size:11px}.client-desktop-document small{margin-top:3px;color:#8996a5;font-size:9px}.client-desktop-document time{color:#7f8c9b;font-size:9px}.client-desktop-message{min-height:74px;border-bottom:1px solid #f2f0ee;display:grid;grid-template-columns:39px 1fr auto;align-items:start;gap:9px;padding:10px 0}.client-desktop-message>span{width:35px;height:35px;border-radius:50%;background:#0b2745;color:#fff;display:grid;place-items:center;font-size:9px}.client-desktop-message strong{display:block;font-size:10px}.client-desktop-message p{margin:4px 0 0;color:#536a83;font-size:10px;line-height:1.4}.client-desktop-message time{color:#78899b;font-size:9px}.client-desktop-outline{width:100%;height:34px;margin-top:10px;border:1px solid #17395d;border-radius:5px;background:#fff;color:#17395d;font:750 11px inherit}.client-desktop-dashboard aside{display:grid;gap:11px}.client-desktop-help h3{font-size:15px}.client-desktop-help p{margin:14px 0;color:#667b90;font-size:11px;line-height:1.5}.client-desktop-help>button{width:100%;height:38px;border:0;border-radius:5px;background:#0b2642;color:#fff;display:flex;align-items:center;justify-content:center;gap:7px;font:750 12px inherit}.client-desktop-help>button .client-ui-icon svg{width:17px;height:17px}.client-desktop-contact{background:#f7f1e9;border-color:#eee5d9}.client-desktop-contact p{margin:11px 0 0;color:#415b76;display:flex;align-items:center;gap:8px;font-size:11px}.client-desktop-contact p .client-ui-icon svg{width:15px;height:15px}
  .client-desktop-service[data-client-unavailable]{cursor:pointer}.client-desktop-footer{min-height:68px;margin-top:auto;padding:12px 28px;border-top:1px solid #e4e8ec;display:grid;grid-template-columns:1fr auto;align-items:center;color:#8491a0}.client-desktop-footer>span{display:flex;align-items:center;gap:8px}.client-desktop-footer img{width:46px;height:38px;object-fit:contain}.client-desktop-footer strong{font-size:10px;line-height:1}.client-desktop-footer i{margin-left:14px;padding-left:16px;border-left:1px solid #cbd1d7;color:#a18462;font-family:Georgia,serif;font-size:10px}.client-desktop-footer small{font-size:9px}.client-unavailable-overlay{align-items:center;padding:28px}.client-unavailable-card{width:min(470px,calc(100vw - 56px));min-height:0;height:auto;max-height:calc(100vh - 56px);padding-bottom:0;border-radius:22px}.client-unavailable-body{padding:24px 38px 31px}.client-unavailable-illustration{width:170px;height:135px}.client-unavailable-body h2{font-size:27px}.client-unavailable-body h3{font-size:18px}.client-unavailable-body p{margin:15px 0 19px;font-size:14px}.client-unavailable-nav{display:none}
}
.client-unavailable-advisor .client-ui-icon svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.client-fiscal-overlay{position:fixed;z-index:2900;inset:0;overflow:auto;background:#faf8f6;color:#102f50;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.client-fiscal-view{min-height:100vh;background:#fbfaf9}.client-fiscal-header{height:86px;padding:0 34px;background:linear-gradient(135deg,#0b2642,#0d2f53);display:flex;align-items:center;justify-content:space-between;color:#fff;box-shadow:0 8px 24px rgba(12,57,105,.18)}.client-fiscal-brand{display:flex;align-items:center}.client-fiscal-brand img{width:195px;height:62px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.client-fiscal-brand>span{margin-left:18px;padding-left:20px;border-left:1px solid rgba(255,255,255,.4);font-family:Georgia,serif;font-size:13px;font-style:italic;line-height:1.3;color:#f7f2eb}.client-fiscal-header>strong{font-size:20px;letter-spacing:-.015em}.client-fiscal-page{max-width:1500px;margin:0 auto;padding:20px 34px 38px}.client-fiscal-back{border:0;background:transparent;color:#173a60;padding:7px 0;display:flex;align-items:center;gap:7px;font:750 13px inherit;cursor:pointer}.client-fiscal-back .client-ui-icon svg{width:21px;height:21px}.client-fiscal-heading{padding:21px 0 23px}.client-fiscal-heading p{margin:0 0 5px;color:#0b2642;font-size:10px;font-weight:850;letter-spacing:.12em}.client-fiscal-heading h1{margin:0;font-size:29px;letter-spacing:-.03em}.client-fiscal-heading>span{display:block;margin-top:6px;color:#6d7e92;font-size:13px}.client-fiscal-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.client-fiscal-layout>main,.client-fiscal-layout>aside{border:1px solid #eae7e3;border-radius:16px;background:#fff;box-shadow:0 12px 35px rgba(25,49,74,.06)}.client-fiscal-layout>main{min-height:590px;overflow:hidden}.client-fiscal-tabs{padding:0 24px;border-bottom:1px solid #efecea;display:flex;align-items:center;gap:28px}.client-fiscal-tabs button{position:relative;height:62px;border:0;background:transparent;color:#66778c;padding:0;font:750 13px inherit;cursor:pointer;white-space:nowrap}.client-fiscal-tabs button.active{color:#0b2642}.client-fiscal-tabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:#0b2642}.client-fiscal-content{padding:27px 28px}.client-fiscal-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.client-fiscal-section-title h2{margin:0;font-size:22px}.client-fiscal-section-title p{margin:6px 0 0;color:#718197;font-size:12px}.client-fiscal-section-title>button{border:0;background:transparent;color:#0b2642;font:750 11px inherit;cursor:pointer}.client-fiscal-folders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:23px}.client-fiscal-folders>button{min-height:92px;border:1px solid #ebe8e3;border-radius:12px;background:#fefdfc;padding:15px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;color:#173454;text-align:left;cursor:pointer}.client-fiscal-folders>button:hover{border-color:#d3b38a;background:#fcfaf8}.client-fiscal-folders>button>span{width:38px;height:38px;border-radius:10px;background:#f9f4ee;color:#0b2642;display:grid;place-items:center}.client-fiscal-folders .client-ui-icon svg{width:21px;height:21px}.client-fiscal-folders strong,.client-fiscal-folders small{display:block}.client-fiscal-folders strong{font-size:13px}.client-fiscal-folders small{margin-top:4px;color:#7b899b;font-size:9px;line-height:1.35}.client-fiscal-folders b{color:#8290a2;font-size:20px}.client-fiscal-recent{margin-top:29px}.client-fiscal-recent h3{margin:0 0 8px;font-size:14px}.client-fiscal-document{min-height:61px;border-top:1px solid #f3f1ef;display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px}.client-fiscal-document>span{color:#e43b48}.client-fiscal-document strong,.client-fiscal-document small{display:block}.client-fiscal-document strong{font-size:12px}.client-fiscal-document small{margin-top:3px;color:#8592a4;font-size:9px}.client-fiscal-document button{border:1px solid #e6e3de;border-radius:7px;background:#fff;color:#0b2642;padding:7px 11px;font:750 10px inherit}.client-fiscal-layout>aside{padding:23px}.client-fiscal-layout>aside h2{margin:0;font-size:18px}.client-fiscal-layout>aside>p{margin:6px 0 17px;color:#7a899b;font-size:10px;line-height:1.45}.client-fiscal-other-services{display:grid;gap:8px}.client-fiscal-other-services button{min-height:58px;border:1px solid #eae8e5;border-radius:10px;background:#fff;padding:9px 10px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;color:#18385b;text-align:left;cursor:pointer}.client-fiscal-other-services button:hover{background:#fbfaf8}.client-fiscal-other-services button>span{width:34px;height:34px;border-radius:9px;background:#f4f3f2;display:grid;place-items:center}.client-fiscal-other-services svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.client-fiscal-other-services strong,.client-fiscal-other-services small{display:block}.client-fiscal-other-services strong{font-size:11px}.client-fiscal-other-services small{margin-top:3px;color:#8a96a5;font-size:8px}.client-fiscal-other-services b{color:#8c98a7;font-size:18px}.client-fiscal-empty{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#708196;text-align:center}.client-fiscal-empty>.client-ui-icon{width:62px;height:62px;border-radius:17px;background:#faf7f3;color:#0b2642}.client-fiscal-empty>.client-ui-icon svg{width:29px;height:29px}.client-fiscal-empty strong{margin-top:15px;color:#213d5b;font-size:16px}.client-fiscal-empty small{max-width:410px;margin-top:7px;font-size:11px;line-height:1.5}.client-fiscal-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.client-fiscal-info-grid article{border:1px solid #eceae7;border-radius:12px;background:#fcfbfb;padding:18px}.client-fiscal-info-grid small,.client-fiscal-info-grid strong{display:block}.client-fiscal-info-grid small{color:#7d8a9b;font-size:10px}.client-fiscal-info-grid strong{margin-top:7px;font-size:14px}.client-fiscal-info-grid strong.active{color:#15814c}
@media(max-width:760px){.client-fiscal-header{height:82px;padding:0 16px;border-radius:0 0 18px 18px}.client-fiscal-brand img{width:145px;height:52px}.client-fiscal-brand>span{display:none}.client-fiscal-header>strong{max-width:145px;text-align:right;font-size:14px;line-height:1.25}.client-fiscal-page{padding:13px 14px 90px}.client-fiscal-back span{display:none}.client-fiscal-back{width:41px;height:41px;border:1px solid #eae6e3;border-radius:11px;background:#fff;justify-content:center}.client-fiscal-heading{padding:13px 0 18px}.client-fiscal-heading h1{font-size:23px}.client-fiscal-heading>span{font-size:11px;line-height:1.4}.client-fiscal-layout{grid-template-columns:1fr}.client-fiscal-layout>main{min-height:480px}.client-fiscal-tabs{padding:0 13px;gap:18px;overflow-x:auto}.client-fiscal-tabs button{height:54px;font-size:11px}.client-fiscal-content{padding:20px 15px}.client-fiscal-section-title{display:block}.client-fiscal-section-title>button{margin-top:13px}.client-fiscal-folders{grid-template-columns:1fr;margin-top:18px}.client-fiscal-layout>aside{order:2}.client-fiscal-info-grid{grid-template-columns:1fr}}

/* Navegación superior del portal cliente: compacta, moderna y sin saltos de línea. */
@media(min-width:761px){
  .client-desktop-header{height:86px;padding:0 28px;gap:18px;box-shadow:0 8px 24px rgba(12,57,105,.18)}
  .client-desktop-header nav{height:auto;min-width:0;flex:1;margin-left:28px;align-items:center;justify-content:space-evenly;gap:12px}
  .client-desktop-header nav button,.client-desktop-logout{height:48px;padding:0 18px;border:1px solid transparent;border-radius:14px;gap:9px;font-size:14px;white-space:nowrap;transition:background .18s ease,border-color .18s ease,transform .18s ease}
  .client-desktop-header nav button:hover{background:rgba(255,255,255,.1);transform:translateY(-1px)}
  .client-desktop-header nav button.active{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
  .client-desktop-header nav button.active:after{left:16px;right:16px;bottom:-8px;height:3px;border-radius:999px;background:#d7b17c}
  .client-desktop-header nav button .client-ui-icon svg,.client-desktop-logout .client-ui-icon svg{width:20px;height:20px}
  .client-desktop-logout{height:44px;flex:0 0 auto;margin-left:12px;padding:0 18px;border-color:rgba(255,255,255,.22);background:rgba(9,46,86,.16);font-size:13px}
  .client-desktop-logout:hover{background:rgba(255,255,255,.13)}
}
@media(min-width:761px) and (max-width:1280px){
  .client-desktop-motto{display:none}.client-desktop-header>img{width:150px}.client-desktop-header{padding:0 20px;gap:8px}.client-desktop-header nav{margin-left:12px;gap:5px}.client-desktop-header nav button{padding:0 12px;font-size:13px}.client-desktop-logout{margin-left:6px;padding:0 12px}
}

/* Cierre visible del aviso de servicio no contratado. */
.client-unavailable-card>header button[data-close-client-unavailable]{grid-column:3;justify-self:end;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#f7f5f3;color:#123e6d;font-size:0;line-height:1;transition:background .18s ease,transform .18s ease}
.client-unavailable-card>header button[data-close-client-unavailable]::before{content:"\00d7";font:400 42px/1 Arial,sans-serif;transform:translateY(-1px)}
.client-unavailable-card>header button[data-close-client-unavailable]:hover{background:#eeebe7;transform:scale(1.04)}

/* Área fiscal: contenido más amplio, compacto y sin título duplicado bajo la cabecera. */
.client-fiscal-heading{display:none}.client-fiscal-page{max-width:none;padding:12px 32px 28px}.client-fiscal-back{margin:0 0 8px}.client-fiscal-layout{grid-template-columns:minmax(0,1fr) 285px;gap:18px}.client-fiscal-layout>main{min-height:calc(100vh - 148px)}.client-fiscal-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:100%;padding:0 18px}.client-fiscal-tabs button,.client-fiscal-tabs button.active{width:100%;height:58px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;color:#66778c!important;text-align:center}.client-fiscal-tabs button:hover{background:#fdfbf9!important;color:#0b2642!important}.client-fiscal-tabs button.active{color:#0b2642!important;font-weight:850}.client-fiscal-tabs button.active:after{left:18%;right:18%;bottom:0;height:3px}.client-fiscal-content{padding:24px 30px}.client-fiscal-layout>aside{padding:20px}
@media(max-width:760px){.client-fiscal-page{padding:9px 12px 78px}.client-fiscal-back{margin-bottom:7px}.client-fiscal-layout>main{min-height:calc(100vh - 145px)}.client-fiscal-tabs{display:flex;width:100%;padding:0 8px;gap:0}.client-fiscal-tabs button,.client-fiscal-tabs button.active{flex:0 0 auto;width:auto;min-width:118px;height:52px;padding:0 13px}.client-fiscal-content{padding:18px 14px}.client-fiscal-layout{gap:12px}}

/* El panel fiscal no hereda el margen del contenido principal del despacho. */
.client-fiscal-layout>main{width:auto!important;max-width:none!important;margin:0!important;padding:0!important;display:block!important}.client-fiscal-tabs button,.client-fiscal-tabs button.active{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1.2!important}.client-fiscal-other-services>article{border:1px solid #eae8e5;border-radius:11px;background:#fff;padding:11px}.client-fiscal-other-services>article>div:first-child{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:9px;min-height:38px}.client-fiscal-other-services>article>div:first-child>span{width:36px;height:36px;border-radius:9px;background:#f4f3f2;color:#173a60;display:grid;place-items:center}.client-fiscal-other-services>article svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.client-fiscal-other-services>article strong{font-size:11px;line-height:1.25}.client-fiscal-service-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.client-fiscal-service-actions button{min-height:31px;border:1px solid #dfdbd6;border-radius:7px;background:#fff;color:#0b2642;padding:5px 6px;font:750 9px inherit;cursor:pointer}.client-fiscal-service-actions button:last-child{border-color:#0b2642;background:#0b2642;color:#fff}.client-fiscal-service-actions button:hover{transform:translateY(-1px)}
@media(max-width:760px){.client-fiscal-layout>main{width:100%!important}.client-fiscal-other-services>article{padding:10px}.client-fiscal-service-actions button{font-size:10px}}

/* Acciones centradas e icono corporativo de Gestor Administrativo. */
.client-fiscal-service-actions{align-items:stretch}.client-fiscal-service-actions button{display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.15}.client-admin-logo{width:25px!important;height:21px!important;overflow:visible}.client-admin-logo ellipse,.client-admin-logo path{fill:none;stroke:currentColor;stroke-width:2.2}.client-admin-logo .client-admin-logo-swoosh{stroke-width:2.8}


/* Client fiscal portal: structured documents, declarations and read-only client record */
.client-fiscal-year-folders,.client-fiscal-quarter-folders{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}
.client-fiscal-year-folders{grid-template-columns:minmax(180px,280px)}
.client-fiscal-year-folders button,.client-fiscal-quarter-folders button{min-height:90px;border:1px solid #ebe8e3;border-radius:12px;background:#fefdfc;padding:16px;display:flex;align-items:center;gap:12px;color:#173454;text-align:left;cursor:pointer}
.client-fiscal-year-folders button:hover,.client-fiscal-quarter-folders button:hover{border-color:#d3b38a;background:#fcfaf8}
.client-fiscal-year-folders button>span,.client-fiscal-quarter-folders button>span{width:40px;height:40px;border-radius:10px;background:#f9f4ee;color:#0b2642;display:grid;place-items:center}
.client-fiscal-year-folders strong,.client-fiscal-quarter-folders strong{font-size:15px}.client-fiscal-year-folders b,.client-fiscal-quarter-folders b{margin-left:auto;color:#8290a2;font-size:20px}
.client-fiscal-year-filter{min-width:150px;display:flex;align-items:center;gap:9px;color:#728298;font-size:10px;font-weight:750}.client-fiscal-year-filter select{height:38px;border:1px solid #e6e2dd;border-radius:8px;background:#fff;color:#173454;padding:0 30px 0 11px;font:750 12px inherit}
.client-fiscal-declarations{display:grid;gap:18px;margin-top:22px}.client-fiscal-declarations section{border:1px solid #ece9e6;border-radius:12px;overflow:hidden}.client-fiscal-declarations h3{margin:0;padding:12px 15px;background:#faf8f6;color:#173454;font-size:13px}
.client-fiscal-file-list{margin-top:21px;border:1px solid #ece9e6;border-radius:12px;overflow:hidden}.client-fiscal-file-row{width:100%;min-height:62px;border:0;border-bottom:1px solid #f3f1ef;background:#fff;padding:10px 14px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;color:#173454;text-align:left;cursor:pointer}.client-fiscal-file-row:last-child{border-bottom:0}.client-fiscal-file-row:hover{background:#fcfbf9}.client-fiscal-file-row>.client-ui-icon{color:#e43b48}.client-fiscal-file-row strong,.client-fiscal-file-row small{display:block}.client-fiscal-file-row strong{font-size:12px}.client-fiscal-file-row small{margin-top:4px;color:#8491a1;font-size:9px}.client-fiscal-file-row b{color:#0b2642;font-size:10px}
.client-fiscal-empty.compact{min-height:250px}.client-fiscal-readonly{border:1px solid #e6e2dd;border-radius:999px;background:#faf8f6;color:#66788d;padding:7px 11px;font-size:10px;font-weight:800}
.client-fiscal-info-sections{display:grid;gap:16px;margin-top:22px}.client-fiscal-info-sections>section{border:1px solid #ebe8e5;border-radius:13px;background:#fff;padding:17px}.client-fiscal-info-sections h3{margin:0 0 13px;color:#173454;font-size:13px}.client-fiscal-info-grid{margin-top:0}.client-fiscal-info-field.wide{grid-column:1/-1}.client-fiscal-info-field strong{overflow-wrap:anywhere}
@media(max-width:760px){.client-fiscal-year-folders,.client-fiscal-quarter-folders{grid-template-columns:1fr 1fr}.client-fiscal-year-folders{grid-template-columns:1fr}.client-fiscal-section-title .client-fiscal-year-filter{margin-top:14px}.client-fiscal-info-field.wide{grid-column:auto}.client-fiscal-readonly{display:inline-block;margin-top:12px}}


/* Portal cliente: cabecera limpia y hero de formas fluidas */
@media(min-width:761px){
  .client-desktop-header nav,
  .client-desktop-logout{display:none!important}
  .client-desktop-header{height:92px;justify-content:flex-start;padding:0 34px;background:linear-gradient(112deg,#0b2642 0%,#0e3156 58%,#0b2642 100%)}
  .client-desktop-header>img{width:190px;height:66px}
  .client-desktop-motto{display:block!important;margin-left:24px;padding-left:25px;border-left:1px solid rgba(255,255,255,.38);font-size:14px;line-height:1.4}
  .client-desktop-hero{min-height:245px;grid-template-columns:42% 58%;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fdfcfa 68%,#faf7f3 100%)}
  .client-desktop-hero>div:first-child{position:relative;z-index:2;padding:45px 26px 38px 34px}
  .client-desktop-hero-image{
    min-height:220px;
    margin:14px 18px 14px -10px;
    padding:38px 55px 38px 78px;
    border-radius:46% 18px 18px 54% / 22% 18px 18px 78%;
    overflow:hidden;
    background-image:linear-gradient(90deg,rgba(255,255,255,.04),rgba(8,34,62,.16)),url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=1600&q=86");
    background-position:center 52%;
    box-shadow:0 16px 38px rgba(18,52,88,.18);
  }
  .client-desktop-hero-image:after{
    top:auto;right:22px;bottom:20px;width:255px;height:auto;min-height:78px;
    padding:18px 24px;border-radius:36px 12px 34px 12px;
    background:rgba(10,32,55,.68);backdrop-filter:blur(5px);
    align-items:center;font-size:11px;line-height:1.75;
  }
}


/* Informacion general compacta del portal cliente */
.client-fiscal-info-sections.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px}
.client-fiscal-info-sections.compact>section{padding:12px 14px;border-radius:10px;background:#fff}
.client-fiscal-info-sections.compact>section:first-child,
.client-fiscal-info-sections.compact>section:nth-child(2),
.client-fiscal-info-sections.compact>section:last-child{grid-column:1/-1}
.client-fiscal-info-sections.compact h3{margin:0 0 9px;padding-bottom:7px;border-bottom:1px solid #efedeb;font-size:12px}
.client-fiscal-info-grid.compact-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.client-fiscal-info-grid.compact-grid article{min-height:58px;padding:10px 12px;border-radius:8px}
.client-fiscal-info-grid.compact-grid article.wide{grid-column:span 2}
.client-fiscal-info-grid.compact-grid small{font-size:9px}
.client-fiscal-info-grid.compact-grid strong{margin-top:4px;font-size:11px;line-height:1.3}
.client-fiscal-subsection{margin-top:8px}.client-fiscal-subsection h4{margin:0 0 6px;color:#435970;font-size:10px}
.client-fiscal-record-head,.client-fiscal-record-row{display:grid;grid-template-columns:1.15fr .7fr .7fr;gap:7px;align-items:center}
.client-fiscal-record-head{padding:0 9px 4px;color:#8390a0;font-size:8px;text-transform:uppercase;letter-spacing:.04em}
.client-fiscal-record-row{min-height:42px;margin-bottom:5px;padding:6px 9px;border:1px solid #edebe8;border-radius:8px;background:#fcfbfb}
.client-fiscal-record-row small{display:none}.client-fiscal-record-row strong{display:block;font-size:10px;line-height:1.25;overflow-wrap:anywhere}
.client-fiscal-admin-type{display:flex;align-items:center;gap:10px;margin-top:7px;padding:7px 9px;border-radius:8px;background:#faf7f4}
.client-fiscal-admin-type small{color:#7c8999;font-size:9px}.client-fiscal-admin-type strong{font-size:10px}
.client-fiscal-no-data{margin:4px 0;padding:8px;border-radius:8px;background:#f9f9f8;color:#7c8999;font-size:9px}
.client-fiscal-summary-line{display:grid;grid-template-columns:1fr 1fr;gap:7px}.client-fiscal-summary-line>span{min-width:0;padding:9px 10px;border-radius:8px;background:#faf8f6}
.client-fiscal-summary-line small,.client-fiscal-summary-line strong{display:block}.client-fiscal-summary-line small{color:#7d8a9b;font-size:9px}.client-fiscal-summary-line strong{margin-top:4px;font-size:10px;overflow-wrap:anywhere}
.client-fiscal-models{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.client-fiscal-models span{border-radius:999px;background:#f9f4ef;color:#0b2642;padding:5px 9px;font-size:9px;font-weight:750}.client-fiscal-models em{color:#7c8999;font-size:9px}
.client-fiscal-single-value{min-height:38px;padding:10px 11px;border-radius:8px;background:#faf8f6;font-size:10px;line-height:1.35}
@media(max-width:900px){.client-fiscal-info-sections.compact{grid-template-columns:1fr}.client-fiscal-info-sections.compact>section{grid-column:auto!important}.client-fiscal-info-grid.compact-grid{grid-template-columns:1fr 1fr}.client-fiscal-info-grid.compact-grid article.wide{grid-column:1/-1}}
@media(max-width:520px){.client-fiscal-info-grid.compact-grid{grid-template-columns:1fr}.client-fiscal-info-grid.compact-grid article.wide{grid-column:auto}.client-fiscal-record-head{display:none}.client-fiscal-record-row{grid-template-columns:1fr}.client-fiscal-record-row small{display:block;color:#8995a5;font-size:8px}.client-fiscal-record-row strong{margin-top:2px}.client-fiscal-summary-line{grid-template-columns:1fr}}


/* Ficha cliente bento y Registro Mercantil con pestanas */
.client-fiscal-info-sections.bento{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:9px}
.client-fiscal-info-sections.bento>.client-info-card{position:relative;grid-column:auto!important;margin:0;padding:11px 12px;border:1px solid #eae7e3;border-radius:16px;background:linear-gradient(145deg,#fff 0%,#fefdfc 100%);box-shadow:0 5px 16px rgba(25,53,82,.055);overflow:hidden}
.client-fiscal-info-sections.bento>.client-info-card:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:0 6px 6px 0;background:#0f335a}
.client-fiscal-info-sections.bento>.client-info-card:nth-child(2n):before{background:#c79a61}
.client-fiscal-info-sections.bento>.client-info-card h3{padding:0 0 7px 7px;margin:0 0 8px;border-bottom:1px solid #efedeb;font-size:12px}
.client-info-identity{grid-column:span 2!important}.client-info-people{grid-row:span 2}.client-info-tax{grid-column:span 1!important}.client-info-framework{grid-column:span 1!important}.client-info-signature{grid-column:span 1!important}.client-info-registry{grid-column:1/-1!important}
.client-fiscal-info-sections.bento .compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.client-fiscal-info-sections.bento .compact-grid article{min-height:48px;padding:7px 9px;border:0;border-radius:9px;background:#faf7f4}
.client-fiscal-info-sections.bento .compact-grid article.wide{grid-column:span 2}
.client-fiscal-info-sections.bento .compact-grid small{font-size:8px}.client-fiscal-info-sections.bento .compact-grid strong{margin-top:3px;font-size:10px}
.client-fiscal-info-sections.bento .client-fiscal-summary-line>span{padding:7px 8px}.client-fiscal-info-sections.bento .client-fiscal-single-value{min-height:34px;padding:8px 9px}
.client-fiscal-info-sections.bento .client-fiscal-subsection{margin-top:5px}.client-fiscal-info-sections.bento .client-fiscal-record-row{min-height:34px;padding:5px 7px}.client-fiscal-info-sections.bento .client-fiscal-admin-type{padding:6px 7px}
.client-registry-tabs{display:flex;gap:4px;padding:4px;border-radius:12px;background:#f6f3f0;overflow-x:auto}
.client-registry-tabs button{flex:1;min-width:94px;height:34px;border:0;border-radius:9px;background:transparent;color:#66788d;padding:0 10px;font:750 10px inherit;cursor:pointer;white-space:nowrap}
.client-registry-tabs button[aria-selected="true"]{background:#fff;color:#0b2642;box-shadow:0 2px 8px rgba(11,38,66,.12)}
.client-registry-panels{margin-top:8px;padding:9px;border:1px solid #edeae7;border-radius:12px;background:#fff}
.client-registry-panels>section{padding:0!important;border:0!important;background:transparent!important}
.client-registry-panels .compact-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.client-registry-panels .compact-grid article.wide{grid-column:span 2}
.client-fiscal-observations{min-height:54px;white-space:pre-wrap}
@media(max-width:1100px){.client-fiscal-info-sections.bento{grid-template-columns:1fr 1fr}.client-info-identity,.client-info-registry{grid-column:1/-1!important}.client-info-people{grid-row:auto}.client-registry-panels .compact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.client-fiscal-info-sections.bento{grid-template-columns:1fr}.client-fiscal-info-sections.bento>.client-info-card{grid-column:auto!important}.client-fiscal-info-sections.bento .compact-grid,.client-registry-panels .compact-grid{grid-template-columns:1fr 1fr}.client-registry-tabs button{min-width:88px}}


/* Replica visual de la ficha de Clientes en el portal */
.client-copy-record{margin-top:14px}.client-copy-identity{display:grid;grid-template-columns:minmax(0,2.2fr) .62fr .72fr;gap:9px;margin-bottom:10px}.client-copy-identity>.wide{grid-column:span 1}
.client-copy-field{min-width:0;min-height:48px;padding:8px 10px;border:1px solid #eae6e3;border-radius:8px;background:#f8f7f6}.client-copy-field small,.client-copy-field strong{display:block}.client-copy-field small{color:#77869a;font-size:8px}.client-copy-field strong{margin-top:4px;color:#0e2f52;font-size:10px;line-height:1.25;overflow-wrap:anywhere}
.client-copy-columns{display:grid;grid-template-columns:1fr 1.04fr;gap:12px;align-items:start}.client-copy-left,.client-copy-right{display:grid;gap:10px}
.client-copy-box{min-width:0;margin:0;border:1px solid #e9e6e2;border-radius:15px;background:#fff;padding:10px 12px 12px}.client-copy-box legend{padding:0 8px;color:#0e2f52;font-size:13px;font-weight:850}.client-copy-box>p{margin:0 0 9px;color:#74859a;font-size:9px}
.client-copy-tabs-static{height:35px;margin:-2px 0 8px;border-bottom:1px solid #e8e5e1;display:grid;grid-template-columns:1fr 1fr;align-items:end}.client-copy-tabs-static span{height:34px;display:grid;place-items:center;color:#61738a;font-size:10px}.client-copy-tabs-static span:first-child{border-bottom:2px solid #0f335a;color:#0b2642}
.client-copy-box section h4{margin:6px 0 5px;font-size:10px}.client-copy-person-head,.client-copy-person-row{display:grid;grid-template-columns:1.2fr .7fr .75fr;gap:6px}.client-copy-person-head{padding:0 7px 4px;color:#8793a3;font-size:7px;text-transform:uppercase}.client-copy-person-row{min-height:32px;margin-bottom:4px;padding:5px 7px;border-radius:7px;background:#f8f7f6;align-items:center}.client-copy-person-row span{font-size:9px;overflow-wrap:anywhere}.client-copy-empty{margin:0 0 5px;padding:7px;border-radius:7px;background:#f8f7f6;color:#7c899a;font-size:8px}.client-copy-admin{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.client-copy-signature{display:grid;grid-template-columns:1.45fr .72fr;gap:7px}.client-copy-signature>.wide{grid-row:span 2;min-height:103px}
.client-copy-tax-head{display:grid;grid-template-columns:1fr 1fr;gap:8px}.client-copy-tax-head .client-copy-field{background:#faf7f3;border-color:#f5eee6}.client-copy-models{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.client-copy-models span{min-height:33px;padding:7px 8px;border:1px solid #eae7e3;border-radius:9px;background:#f8f7f6;color:#8793a2;font-size:8px}.client-copy-models span.selected{background:#faf7f3;color:#0b2642}.client-copy-models span.selected:first-letter{color:#28a776}
.client-copy-registry-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #e9e5e0}.client-copy-registry-tabs button{height:37px;border:0;border-bottom:2px solid transparent;background:transparent;color:#65768b;font:500 10px inherit;cursor:pointer}.client-copy-registry-tabs button[aria-selected="true"]{border-bottom-color:#0f335a;color:#0b2642}
.client-copy-registry-panels{min-height:205px;padding:9px;border:1px solid #ebe8e4;border-top:0;background:#fdfcfb}.client-copy-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.client-copy-fields>.wide{grid-column:1/-1}
@media(max-width:980px){.client-copy-identity{grid-template-columns:1fr 1fr}.client-copy-identity>.wide{grid-column:1/-1}.client-copy-columns{grid-template-columns:1fr}.client-copy-models{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.client-copy-identity,.client-copy-admin,.client-copy-signature,.client-copy-tax-head,.client-copy-fields{grid-template-columns:1fr}.client-copy-identity>.wide,.client-copy-fields>.wide{grid-column:auto}.client-copy-signature>.wide{grid-row:auto;min-height:48px}.client-copy-models{grid-template-columns:1fr 1fr}.client-copy-registry-tabs{display:flex;overflow-x:auto}.client-copy-registry-tabs button{min-width:95px}.client-copy-person-head{display:none}.client-copy-person-row{grid-template-columns:1fr}}


/* Tarjetas de servicio completamente seleccionables */
.client-desktop-service.contracted,.client-desktop-service[data-client-unavailable]{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.client-desktop-service.contracted:hover,.client-desktop-service[data-client-unavailable]:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(20,61,105,.12);border-color:#cfac7f}
.client-desktop-service.contracted:focus-visible,.client-desktop-service[data-client-unavailable]:focus-visible{outline:3px solid rgba(15,51,90,.25);outline-offset:3px}


/* Vista móvil compacta: fichas ajustadas y tablas desplegables por cliente */
.mobile-task-stage-filter{display:none}
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  main{width:100%;max-width:100%;min-width:0;overflow-x:hidden;padding-bottom:28px}
  main>*{max-width:100%;min-width:0}
  .mobile-app-chrome,.ai-launchers{display:none!important}
  .worker-chat{right:16px;bottom:16px}
  .login-card input,.login-card select,.login-card textarea{font-size:16px!important}
  .client-modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:18px;overflow-x:hidden}
  .client-modal form,.client-modal fieldset,.client-modal section,.client-modal div,
  .management-clients,.management-search,.folder-panel,.folder-grid,.folder-card,.management-client{min-width:0;max-width:100%}
  .client-modal input,.client-modal select,.client-modal textarea,.client-modal label{min-width:0;max-width:100%;width:100%}
  .folder-card,.management-client{width:100%;overflow:hidden}
  .folder-card>span:not(.folder-icon),.management-client>span:not(.folder-icon){min-width:0;overflow:hidden}
  .folder-card strong,.folder-card small,.management-client strong,.management-client small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .management-clients{padding:14px}
  .management-client-toolbar{min-width:0}
  .management-client-sections{max-width:100%;flex-wrap:wrap}

  .tax-table-wrap,.courtesy-table-wrap,.contacts-table-wrap{overflow:visible}
  .mobile-collapsible-table{display:block;width:100%;min-width:0!important}
  .mobile-collapsible-table thead{display:none}
  .mobile-collapsible-table tbody{display:grid;gap:10px;width:100%}
  .mobile-collapsible-table .mobile-client-row{display:block;width:100%;border:1px solid #ebe8e3;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 5px 16px rgba(20,49,80,.05);cursor:pointer}
  .mobile-collapsible-table .mobile-client-row>td{display:none;width:100%!important;max-width:none!important;border:0;padding:11px 14px}
  .mobile-collapsible-table .mobile-client-row>td:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:15px 42px 15px 14px;position:relative}
  .mobile-collapsible-table .mobile-client-row>td:first-child::after{content:"›";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:25px;color:#77829a;transition:.18s}
  .mobile-collapsible-table .mobile-client-row:not(.mobile-expanded)>td:first-child small{display:none}
  .mobile-collapsible-table .mobile-client-row.mobile-expanded>td{display:grid;grid-template-columns:minmax(90px,.42fr) minmax(0,1fr);align-items:center;gap:10px;border-top:1px solid #f3f1ef;white-space:normal}
  .mobile-collapsible-table .mobile-client-row.mobile-expanded>td:first-child{display:flex;border-top:0}
  .mobile-collapsible-table .mobile-client-row.mobile-expanded>td:first-child::after{transform:translateY(-50%) rotate(90deg)}
  .mobile-collapsible-table .mobile-client-row.mobile-expanded>td:not(:first-child)::before{content:attr(data-mobile-label);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#6f7a91}
  .mobile-collapsible-table input,.mobile-collapsible-table select,.mobile-collapsible-table textarea{min-width:0!important;width:100%!important;max-width:100%;font-size:16px}
  .mobile-collapsible-table .amount-input{width:100%}
  .mobile-collapsible-table .table-empty{display:block!important}

  .mobile-task-stage-filter{display:grid;gap:7px;margin:12px 0 14px;padding:15px;border:1px solid #ebe8e3;border-radius:16px;background:#fff;color:#667189;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
  .mobile-task-stage-filter select{height:46px;width:100%;border:1px solid #e6e2dc;border-radius:11px;background:#fbfaf9;padding:0 13px;color:var(--ink);font-size:16px;font-weight:750;text-transform:none;letter-spacing:0}
  .task-board{display:block}
  .task-column[hidden]{display:none!important}
}


/* Encabezado móvil simétrico */
@media(max-width:760px){
  main>header{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:12px;width:100%}
  main>header>.menu{grid-column:1;width:42px;height:42px;margin:0}
  main>header>div:nth-of-type(1){grid-column:2;text-align:center;width:100%;min-width:0}
  main>header h1{max-width:100%;text-align:center}
  main>header .profile{grid-column:3;width:42px;height:42px;margin:0;padding:3px;justify-self:end;justify-content:center}
  main>header .profile>span:first-child{width:34px;height:34px}
}


/* El fondo del encabezado móvil ocupa el ancho completo de la pantalla */
@media(max-width:760px){
  main>header{
    width:100vw;
    max-width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
  }
}


/* Portal de cliente móvil: sin barra inferior y servicios al final en carrusel */
@media(max-width:760px){
  .mobile-bottom-nav,
  .mobile-quick-button,
  .client-portal-nav,
  .client-unavailable-nav{display:none!important}

  .client-mobile-portal,
  .client-unavailable-card{padding-bottom:max(18px,env(safe-area-inset-bottom))}

  .client-fiscal-page{padding:9px 10px max(20px,env(safe-area-inset-bottom))}
  .client-fiscal-layout{display:flex;flex-direction:column;width:100%;gap:14px}
  .client-fiscal-layout>main{order:1;width:100%!important;min-height:calc(100dvh - 145px)}
  .client-fiscal-layout>aside{order:2;width:100%;max-width:100%;padding:17px 14px;overflow:hidden}
  .client-fiscal-layout>aside>p{margin-bottom:13px}

  .client-fiscal-other-services{
    display:flex;
    width:100%;
    max-width:100%;
    gap:10px;
    padding:2px 1px 8px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .client-fiscal-other-services::-webkit-scrollbar{display:none}
  .client-fiscal-other-services>article,
  .client-fiscal-other-services>button{
    flex:0 0 min(238px,78vw);
    width:min(238px,78vw);
    scroll-snap-align:start;
  }
}


/* La cabecera fiscal móvil conserva exactamente la identidad del inicio */
.client-fiscal-profile{display:none}
@media(max-width:760px){
  .client-fiscal-header{
    height:84px;
    padding:14px 16px max(13px,env(safe-area-inset-top));
    border-radius:0 0 20px 20px;
    background:linear-gradient(135deg,#0b2642,#0f345c);
    justify-content:space-between;
  }
  .client-fiscal-brand img{width:150px;height:51px}
  .client-fiscal-brand>span,
  .client-fiscal-header>strong{display:none}
  .client-fiscal-profile{
    display:flex;
    width:auto;
    height:42px;
    margin:0;
    padding:3px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:14px;
    background:rgba(255,255,255,.13);
    align-items:center;
    justify-content:center;
  }
  .client-fiscal-profile>span:first-child{
    width:34px;
    height:34px;
    border-radius:50%;
    background:#fff;
    color:#0b2642;
    display:grid;
    place-items:center;
    font-size:10px;
    font-weight:800;
  }
  .client-fiscal-profile .profile-copy{display:none}
  .client-fiscal-back{
    width:auto;
    height:41px;
    padding:0 12px;
    gap:7px;
  }
  .client-fiscal-back span{display:inline}
  .client-fiscal-back .client-ui-icon{display:grid;color:#173a60}
}


/* Fuerza logo a la izquierda y perfil a la derecha en la cabecera fiscal */
@media(max-width:760px){
  .client-fiscal-header>.client-fiscal-brand{display:flex!important;align-items:center;flex:0 0 auto}
  .client-fiscal-header>.client-fiscal-profile{margin-left:auto!important;flex:0 0 auto}
}


/* Inicio de escritorio · minimalista, moderno y corporativo */
@media(min-width:761px){
  main:has(.home-dashboard-layout){
    background:
      radial-gradient(circle at 76% 4%,rgba(18,62,109,.07),transparent 25%),
      linear-gradient(180deg,#fbfaf8 0%,#f8f7f6 100%);
  }
  main:has(.home-dashboard-layout)>header{
    height:104px;
    padding:0 2px;
    border-bottom:1px solid rgba(230,226,221,.72);
  }
  main:has(.home-dashboard-layout)>header h1{
    margin-top:6px;
    color:#0d243d;
    font-size:30px;
    letter-spacing:-.04em;
  }
  main:has(.home-dashboard-layout)>header .eyebrow{font-size:10px;letter-spacing:.17em}
  main:has(.home-dashboard-layout)>header .profile{
    padding:7px 14px 7px 7px;
    border-color:#ebe8e4;
    border-radius:18px;
    box-shadow:0 8px 25px rgba(20,49,80,.055);
  }

  .home-dashboard-layout{
    grid-template-columns:minmax(0,1fr) 350px;
    gap:22px;
    align-items:start;
  }
  .home-dashboard-layout>.welcome{
    position:relative;
    min-height:174px;
    padding:30px 39px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:27px;
    overflow:hidden;
    background:
      radial-gradient(circle at 84% 16%,rgba(255,255,255,.18),transparent 23%),
      linear-gradient(118deg,#0b2542 0%,#0f345c 63%,#113d6b 100%);
    box-shadow:0 20px 48px rgba(11,39,69,.17);
  }
  .home-dashboard-layout>.welcome:before{
    content:"";
    position:absolute;
    width:230px;
    height:230px;
    right:-63px;
    bottom:-142px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:50%;
  }
  .home-dashboard-layout>.welcome:after{
    content:"";
    position:absolute;
    width:115px;
    height:115px;
    right:152px;
    top:-70px;
    border-radius:50%;
    background:rgba(255,255,255,.07);
  }
  .home-dashboard-layout>.welcome>div,
  .home-dashboard-layout>.welcome>.welcome-actions{position:relative;z-index:1}
  .home-dashboard-layout>.welcome h2{
    margin:8px 0 6px;
    font-size:34px;
    letter-spacing:-.045em;
  }
  .home-dashboard-layout>.welcome p:last-child{
    max-width:620px;
    color:rgba(255,255,255,.78);
    font-size:16px;
  }
  .home-dashboard-layout>.welcome .primary{
    min-height:47px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.36);
    border-radius:14px;
    background:rgba(255,255,255,.1);
    color:#fff;
    box-shadow:none;
    backdrop-filter:blur(8px);
    transition:transform .18s ease,background .18s ease;
  }
  .home-dashboard-layout>.welcome .primary:last-child{
    border-color:#fff;
    background:#fff;
    color:#0b2642;
  }
  .home-dashboard-layout>.welcome .primary:hover{transform:translateY(-2px);background:rgba(255,255,255,.18)}
  .home-dashboard-layout>.welcome .primary:last-child:hover{background:#fcfbf9}

  .home-dashboard-layout>.metrics{
    gap:14px;
    margin:18px 0 22px;
  }
  .home-dashboard-layout>.metrics article{
    position:relative;
    min-height:148px;
    padding:22px 20px;
    border:1px solid #ece9e6;
    border-radius:22px;
    background:rgba(255,255,255,.88);
    box-shadow:0 10px 30px rgba(18,46,76,.045);
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
    overflow:hidden;
  }
  .home-dashboard-layout>.metrics article:after{
    content:"";
    position:absolute;
    left:20px;
    right:20px;
    bottom:0;
    height:3px;
    border-radius:99px 99px 0 0;
    background:#124070;
    opacity:.72;
  }
  .home-dashboard-layout>.metrics article:nth-child(2):after{background:#8a5bd3}
  .home-dashboard-layout>.metrics article:nth-child(3):after{background:#d79a28}
  .home-dashboard-layout>.metrics article:nth-child(4):after{background:#20a36b}
  .home-dashboard-layout>.metrics article:hover{
    transform:translateY(-3px);
    border-color:#e4dfd9;
    box-shadow:0 16px 34px rgba(18,46,76,.08);
  }
  .home-dashboard-layout>.metrics .metric-icon{
    width:48px;
    height:48px;
    border-radius:15px;
  }
  .home-dashboard-layout>.metrics strong{margin:7px 0 4px;font-size:29px;letter-spacing:-.04em}
  .home-dashboard-layout>.metrics small{font-size:13px}
  .home-dashboard-layout>.metrics p{color:#929caf;font-size:10px}

  .home-activity-rail{gap:16px}
  .home-activity-card{
    border:1px solid #ece9e5;
    border-radius:22px;
    background:rgba(255,255,255,.9);
    box-shadow:0 12px 32px rgba(18,46,76,.055);
    overflow:hidden;
  }
  .home-activity-heading{
    padding:19px 20px 15px;
    border-bottom:1px solid #f3f1ef;
  }
  .home-activity-heading h3{font-size:16px;letter-spacing:-.02em}
  .home-activity-heading button{font-size:12px}
  .home-activity-icon{border-radius:13px}
  .home-activity-list{padding:0 18px 15px}

  .home-dashboard-layout>.news-portal{
    border:1px solid #ece8e4;
    border-radius:25px;
    background:rgba(255,255,255,.92);
    box-shadow:0 14px 38px rgba(18,46,76,.055);
  }
  .news-portal-heading{
    padding-bottom:18px;
    border-bottom:1px solid #f0eeec;
  }
  .news-portal-heading h2{font-size:26px;letter-spacing:-.035em}
  .news-topic-filters button{
    border-color:#e8e5e0;
    background:#fff;
    transition:background .15s ease,border-color .15s ease,transform .15s ease;
  }
  .news-topic-filters button:hover{transform:translateY(-1px);border-color:#d8d1c8}
  .news-topic-filters button.active{border-color:#0b2642;background:#0b2642;color:#fff}
  .news-card{
    border-color:#eae7e3;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 8px 24px rgba(18,46,76,.05);
    transition:transform .2s ease,box-shadow .2s ease;
  }
  .news-card:hover{transform:translateY(-3px);box-shadow:0 15px 32px rgba(18,46,76,.09)}
}


/* Inicio de escritorio v2 · composición compacta y realmente distinta */
@media(min-width:761px){
  main:has(.home-dashboard-layout)>header{
    height:86px;
    border-bottom:0;
  }
  main:has(.home-dashboard-layout)>header h1{font-size:27px}

  .home-dashboard-layout{gap:18px}
  .home-dashboard-layout>.welcome{
    min-height:126px;
    padding:25px 30px 25px 34px;
    border:1px solid #ece8e3;
    border-left:5px solid #0e3054;
    border-radius:20px;
    background:
      linear-gradient(90deg,rgba(250,247,243,.9),rgba(255,255,255,.96) 46%),
      #fff;
    color:#102842;
    box-shadow:0 8px 24px rgba(18,46,76,.045);
  }
  .home-dashboard-layout>.welcome:before{
    width:155px;
    height:155px;
    right:-58px;
    bottom:-93px;
    border:32px solid rgba(15,52,91,.055);
    background:transparent;
  }
  .home-dashboard-layout>.welcome:after{
    width:9px;
    height:54px;
    right:238px;
    top:36px;
    border-radius:99px;
    background:#d8b578;
    opacity:.72;
  }
  .home-dashboard-layout>.welcome .eyebrow{color:#0e2f53}
  .home-dashboard-layout>.welcome h2{
    margin:5px 0 3px;
    color:#102842;
    font-size:29px;
  }
  .home-dashboard-layout>.welcome p:last-child{
    color:#66758a;
    font-size:14px;
  }
  .home-dashboard-layout>.welcome .primary{
    min-height:42px;
    padding:0 17px;
    border:1px solid #e3dcd4;
    border-radius:11px;
    background:#fff;
    color:#0b2745;
    backdrop-filter:none;
    box-shadow:none;
  }
  .home-dashboard-layout>.welcome .primary:last-child{
    border-color:#0d2c4d;
    background:#0d2c4d;
    color:#fff;
  }
  .home-dashboard-layout>.welcome .primary:hover{background:#fcfaf7}
  .home-dashboard-layout>.welcome .primary:last-child:hover{background:#0a223c}

  .home-dashboard-layout>.metrics{
    gap:10px;
    margin:12px 0 18px;
  }
  .home-dashboard-layout>.metrics article{
    min-height:96px;
    padding:16px;
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:13px;
    align-items:center;
    border:1px solid #ebe8e4;
    border-radius:16px;
    background:#fff;
    box-shadow:none;
  }
  .home-dashboard-layout>.metrics article:after{
    left:15px;
    right:auto;
    top:15px;
    bottom:15px;
    width:3px;
    height:auto;
    border-radius:99px;
    opacity:.55;
  }
  .home-dashboard-layout>.metrics article:hover{
    transform:translateY(-2px);
    border-color:#dedbd6;
    box-shadow:0 10px 24px rgba(18,46,76,.06);
  }
  .home-dashboard-layout>.metrics .metric-icon{
    grid-column:1;
    grid-row:1/3;
    width:42px;
    height:42px;
    margin:0 0 0 6px;
    border-radius:12px;
  }
  .home-dashboard-layout>.metrics article>div:last-child{
    grid-column:2;
    grid-row:1/3;
    min-width:0;
  }
  .home-dashboard-layout>.metrics small{font-size:11px}
  .home-dashboard-layout>.metrics strong{
    display:inline-block;
    margin:3px 8px 0 0;
    font-size:24px;
  }
  .home-dashboard-layout>.metrics p{
    display:inline;
    font-size:9px;
  }

  .home-activity-rail{gap:12px}
  .home-activity-card{
    border-radius:16px;
    box-shadow:none;
  }
  .home-activity-heading{padding:15px 16px 12px}
  .home-activity-list{padding:0 14px 12px}

  .home-dashboard-layout>.news-portal{
    border-radius:18px;
    box-shadow:none;
  }
  .news-portal-heading h2{font-size:23px}
  .news-card{border-radius:14px;box-shadow:none}
  .news-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(18,46,76,.07)}
}


/* Inicio de escritorio v3 · tablero bento editorial */
@media(min-width:761px){
  main:has(.home-dashboard-layout){
    background:
      radial-gradient(circle at 74% 8%,rgba(18,62,109,.09),transparent 27rem),
      #fbf9f7;
  }
  main:has(.home-dashboard-layout)>header{
    height:104px;
    padding:0 2px;
    border-bottom:1px solid rgba(228,224,218,.8);
  }
  main:has(.home-dashboard-layout)>header h1{
    margin-top:6px;
    font-size:30px;
    letter-spacing:-.04em;
  }

  .home-dashboard-layout{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(380px,.85fr);
    grid-template-areas:
      "welcome metrics"
      "activity activity"
      "news news";
    gap:20px;
    max-width:1540px;
    margin:0 auto;
    align-items:stretch;
  }

  .home-dashboard-layout>.welcome{
    grid-area:welcome;
    min-height:248px;
    margin:0;
    padding:38px 40px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border:0;
    border-radius:26px;
    background:
      radial-gradient(circle at 88% 18%,rgba(255,255,255,.16),transparent 22%),
      linear-gradient(135deg,#102f50 0%,#0a223c 58%,#103964 100%);
    color:#fff;
    box-shadow:0 20px 50px rgba(25,74,126,.16);
    overflow:hidden;
  }
  .home-dashboard-layout>.welcome:before{
    width:250px;
    height:250px;
    right:-84px;
    bottom:-150px;
    border:1px solid rgba(255,255,255,.22);
    background:transparent;
  }
  .home-dashboard-layout>.welcome:after{
    width:118px;
    height:118px;
    right:30px;
    top:-62px;
    border-radius:50%;
    background:rgba(255,255,255,.07);
    opacity:1;
  }
  .home-dashboard-layout>.welcome .eyebrow{color:#ede0d1}
  .home-dashboard-layout>.welcome h2{
    max-width:600px;
    margin:8px 0 7px;
    color:#fff;
    font-size:38px;
    line-height:1.08;
    letter-spacing:-.045em;
  }
  .home-dashboard-layout>.welcome p:last-child{
    max-width:570px;
    color:rgba(255,255,255,.73);
    font-size:15px;
    line-height:1.55;
  }
  .home-dashboard-layout>.welcome>div:last-child{
    margin-top:25px;
  }
  .home-dashboard-layout>.welcome .primary,
  .home-dashboard-layout>.welcome .primary:last-child{
    min-height:44px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:12px;
    background:rgba(255,255,255,.1);
    color:#fff;
    box-shadow:none;
    backdrop-filter:blur(8px);
  }
  .home-dashboard-layout>.welcome .primary:last-child{
    border-color:#fff;
    background:#fff;
    color:#16497f;
  }
  .home-dashboard-layout>.welcome .primary:hover{
    background:rgba(255,255,255,.18);
    transform:translateY(-1px);
  }
  .home-dashboard-layout>.welcome .primary:last-child:hover{background:#fbf9f6}

  .home-dashboard-layout>.metrics{
    grid-area:metrics;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(0,1fr));
    gap:12px;
    margin:0;
  }
  .home-dashboard-layout>.metrics article{
    min-height:0;
    padding:21px 20px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    align-items:flex-start;
    border:1px solid #ece8e4;
    border-radius:22px;
    background:rgba(255,255,255,.92);
    box-shadow:0 12px 32px rgba(20,48,78,.055);
  }
  .home-dashboard-layout>.metrics article:after{display:none}
  .home-dashboard-layout>.metrics article:hover{
    transform:translateY(-3px);
    border-color:#dfdad4;
    box-shadow:0 16px 36px rgba(20,48,78,.09);
  }
  .home-dashboard-layout>.metrics .metric-icon{
    width:38px;
    height:38px;
    margin:0;
    border-radius:11px;
  }
  .home-dashboard-layout>.metrics article>div:last-child{width:100%}
  .home-dashboard-layout>.metrics small{
    display:block;
    margin-top:11px;
    font-size:11px;
    color:#68758b;
  }
  .home-dashboard-layout>.metrics strong{
    display:inline-block;
    margin:3px 7px 0 0;
    font-size:28px;
    letter-spacing:-.04em;
  }
  .home-dashboard-layout>.metrics p{
    display:inline;
    font-size:10px;
    color:#8b95a7;
  }

  .home-dashboard-layout>.home-activity-rail{
    grid-area:activity;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin:2px 0 0;
  }
  .home-activity-card{
    min-height:184px;
    border:1px solid #eae7e4;
    border-radius:22px;
    background:rgba(255,255,255,.92);
    box-shadow:0 10px 28px rgba(20,48,78,.045);
    overflow:hidden;
  }
  .home-activity-heading{
    padding:18px 19px 14px;
  }
  .home-activity-heading h3{font-size:16px}
  .home-activity-list{padding:0 17px 15px}

  .home-dashboard-layout>.news-portal{
    grid-area:news;
    margin:0 0 32px;
    padding:28px 34px 34px;
    border:1px solid #eae7e4;
    border-radius:26px;
    background:#fff;
    box-shadow:0 14px 38px rgba(20,48,78,.05);
  }
  .home-dashboard-layout>.news-portal .news-portal-heading{
    align-items:flex-end;
  }
  .home-dashboard-layout>.news-portal .news-portal-heading h2{
    font-size:28px;
    letter-spacing:-.035em;
  }
  .home-dashboard-layout>.news-portal .news-card{
    border-radius:18px;
  }
}

@media(min-width:761px) and (max-width:1180px){
  .home-dashboard-layout{
    grid-template-columns:1fr;
    grid-template-areas:
      "welcome"
      "metrics"
      "activity"
      "news";
  }
  .home-dashboard-layout>.metrics{
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-template-rows:1fr;
  }
  .home-dashboard-layout>.metrics article{min-height:136px}
}

@media(min-width:761px) and (max-width:930px){
  .home-dashboard-layout>.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-dashboard-layout>.home-activity-rail{grid-template-columns:1fr}
}


/* Fecha y tiempo de Jaén en la cabecera del inicio */
@media(min-width:761px){
  .home-dashboard-layout>.welcome{
    justify-content:space-between;
  }
  .home-date-weather{
    position:relative;
    z-index:1;
  }
  .home-date{
    margin:9px 0 24px;
    color:#fff;
    font-size:31px;
    font-weight:750;
    line-height:1.15;
    letter-spacing:-.04em;
  }
  .home-weather-line{
    display:flex;
    align-items:center;
    gap:14px;
  }
  .home-weather-icon{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.2);
    border-radius:16px;
    background:rgba(255,255,255,.11);
    font-size:27px;
  }
  .home-weather-line>strong{
    color:#fff;
    font-size:43px;
    line-height:1;
    letter-spacing:-.055em;
  }
  .home-weather-line>span:last-child{
    display:grid;
    gap:4px;
  }
  .home-weather-line b{
    color:#fff;
    font-size:14px;
  }
  .home-weather-line small{
    color:rgba(255,255,255,.68);
    font-size:11px;
  }
  .home-dashboard-layout>.welcome .welcome-actions{
    position:relative;
    z-index:1;
    margin-top:27px;
  }
}


/* Interacción de los botones del aviso de servicios */
.client-unavailable-primary,
.client-unavailable-secondary,
.client-unavailable-advisor,
.client-unavailable-card>header button{
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease;
}
.client-unavailable-primary:hover{
  transform:translateY(-2px);
  background:linear-gradient(135deg,#0a223c,#08659a);
  box-shadow:0 13px 27px rgba(12,56,104,.28);
}
.client-unavailable-secondary:hover{
  transform:translateY(-2px);
  border-color:#173e67;
  background:#faf6f2;
  color:#0b3057;
  box-shadow:0 9px 20px rgba(22,60,101,.12);
}
.client-unavailable-advisor:hover{
  transform:translateY(-1px);
  color:#075ea0;
}
.client-unavailable-advisor:hover span:last-child{text-decoration:underline;text-underline-offset:4px}
.client-unavailable-card>header button:hover{
  transform:rotate(5deg) scale(1.06);
  background:#f6f3f0;
  color:#0d3055;
}
.client-unavailable-primary:active,
.client-unavailable-secondary:active,
.client-unavailable-advisor:active{transform:translateY(0) scale(.985)}
.client-unavailable-primary:focus-visible,
.client-unavailable-secondary:focus-visible,
.client-unavailable-advisor:focus-visible,
.client-unavailable-card>header button:focus-visible{
  outline:3px solid rgba(13,47,82,.3);
  outline-offset:3px;
}


/* Barra lateral de escritorio integrada en el lienzo */
@media(min-width:761px){
  body:not(.client-preview-mode){
    --integrated-rail:86px;
    background:#0c1f33;
  }
  body:not(.client-preview-mode) .sidebar{
    width:var(--integrated-rail);
    padding:18px 10px 16px;
    align-items:center;
    overflow:visible;
    background:linear-gradient(180deg,#0b1f35 0%,#102943 100%);
    border-right:0;
    box-shadow:none;
  }
  body:not(.client-preview-mode) .sidebar .brand{
    width:62px;
    min-height:62px;
    margin:0 0 13px;
    padding:7px;
    justify-content:center;
    border:1px solid rgba(255,255,255,.1);
    border-radius:18px;
    background:rgba(255,255,255,.055);
  }
  body:not(.client-preview-mode) .sidebar .brand img{
    width:48px;
    height:48px;
    object-fit:contain;
    filter:brightness(0) invert(1);
  }
  body:not(.client-preview-mode) .sidebar .brand>div,
  body:not(.client-preview-mode) .sidebar-footer>div{display:none}
  body:not(.client-preview-mode) .sidebar nav{
    width:100%;
    display:flex;
    flex:1;
    flex-direction:column;
    align-items:center;
    gap:5px;
    padding:4px 0;
    overflow-y:auto;
    overflow-x:visible;
    scrollbar-width:none;
  }
  body:not(.client-preview-mode) .sidebar nav::-webkit-scrollbar{display:none}
  body:not(.client-preview-mode) .sidebar nav button{
    position:relative;
    z-index:1;
    width:54px;
    min-height:46px;
    height:46px;
    flex:0 0 46px;
    padding:0;
    display:grid;
    place-items:center;
    border:0;
    border-radius:15px;
    background:transparent;
    color:#c8c2ba;
    font-size:0;
    cursor:pointer;
    transition:color .18s ease,transform .18s ease,background .18s ease;
  }
  body:not(.client-preview-mode) .sidebar nav button span{
    position:relative;
    z-index:2;
    width:auto;
    font-size:19px;
    line-height:1;
  }
  body:not(.client-preview-mode) .sidebar nav button:hover:not(.active){
    color:#fff;
    background:rgba(255,255,255,.09);
    transform:translateX(2px);
  }
  body:not(.client-preview-mode) .sidebar nav button.active{
    width:64px;
    margin-left:12px;
    color:#0c2948;
    background:#faf8f6;
    border:0;
    border-radius:18px 0 0 18px;
    box-shadow:none;
  }
  body:not(.client-preview-mode) .sidebar nav button.active::before{
    content:"";
    position:absolute;
    z-index:-1;
    right:-15px;
    top:0;
    bottom:0;
    width:22px;
    background:#faf8f6;
  }
  body:not(.client-preview-mode) .sidebar nav button::after{
    content:attr(data-title);
    position:fixed;
    left:78px;
    max-width:190px;
    padding:8px 11px;
    border-radius:9px;
    background:#081b2f;
    color:#fff;
    font-size:11px;
    font-weight:700;
    line-height:1.2;
    white-space:nowrap;
    opacity:0;
    visibility:hidden;
    transform:translateX(-5px);
    box-shadow:0 8px 22px rgba(3,16,30,.22);
    pointer-events:none;
    transition:opacity .14s ease,transform .14s ease,visibility .14s ease;
  }
  body:not(.client-preview-mode) .sidebar nav button:hover::after{
    opacity:1;
    visibility:visible;
    transform:translateX(0);
  }
  body:not(.client-preview-mode) .sidebar-footer{
    width:54px;
    margin:13px 0 0;
    padding:10px 0 0;
    justify-content:center;
    border-top:1px solid rgba(255,255,255,.12);
  }
  body:not(.client-preview-mode) .sidebar-footer .avatar{
    width:42px;
    height:42px;
    border:3px solid rgba(255,255,255,.2);
    background:#fff;
  }
  body:not(.client-preview-mode)>main{
    width:calc(100% - var(--integrated-rail));
    min-height:100vh;
    margin-left:var(--integrated-rail);
    padding-left:38px;
    border-radius:28px 0 0 28px;
    background:var(--bg);
    box-shadow:-12px 0 35px rgba(3,16,29,.13);
  }
}


/* Barra lateral integrada v2 · unión real y expansión al pasar el ratón */
@media(min-width:761px){
  body:not(.client-preview-mode) .sidebar{
    z-index:40;
    overflow:hidden;
    transition:width .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease;
  }

  body:not(.client-preview-mode)>main{
    position:relative;
    z-index:1;
    border-radius:0;
    box-shadow:none;
  }

  body:not(.client-preview-mode) .sidebar nav button.active{
    border-radius:18px 0 0 18px;
  }

  body:not(.client-preview-mode) .sidebar nav button.active::before{
    right:-14px;
    width:16px;
    background:var(--bg);
  }

  body:not(.client-preview-mode) .sidebar nav button::after{
    display:none!important;
  }

  body:not(.client-preview-mode) .sidebar:hover{
    width:250px;
    align-items:stretch;
    box-shadow:18px 0 42px rgba(3,16,30,.24);
  }

  body:not(.client-preview-mode) .sidebar:hover .brand{
    width:220px;
    min-height:70px;
    margin-left:5px;
    justify-content:center;
    padding:7px 12px;
  }

  body:not(.client-preview-mode) .sidebar:hover .brand img{
    width:190px;
    height:58px;
  }

  body:not(.client-preview-mode) .sidebar:hover nav{
    align-items:stretch;
    overflow-x:hidden;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button,
  body:not(.client-preview-mode) .sidebar:hover nav button.active{
    width:100%;
    min-width:0;
    margin-left:0;
    padding:0 17px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:14px;
    border-radius:13px;
    font-size:14px;
    font-weight:650;
    white-space:nowrap;
    color:#f2e9df;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button span{
    width:24px;
    flex:0 0 24px;
    text-align:center;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button.active{
    background:#faf8f6;
    color:#0c2948;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button.active::before{
    display:none;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button:hover:not(.active){
    transform:none;
    background:rgba(255,255,255,.1);
  }

  body:not(.client-preview-mode) .sidebar:hover .sidebar-footer{
    width:100%;
    padding:10px 9px 0;
    justify-content:flex-start;
  }

  body:not(.client-preview-mode) .sidebar:hover .sidebar-footer>div{
    display:block;
    min-width:0;
    white-space:nowrap;
  }
}


/* Barra lateral integrada v3 · pestaña unida, marca y avisos */
@media(min-width:761px){
  body:not(.client-preview-mode) .sidebar{
    overflow:visible;
  }

  body:not(.client-preview-mode) .sidebar .brand{
    position:relative;
    overflow:hidden;
  }

  /* En modo cerrado se muestra únicamente el isotipo, grande y legible. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand img{
    position:absolute;
    left:5px;
    top:50%;
    width:178px;
    max-width:none;
    height:auto;
    transform:translateY(-50%);
    object-fit:initial;
  }

  /* La pestaña activa llega al borde y entra en el lienzo: no queda franja intermedia. */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    width:calc(100% + 14px);
    margin-left:10px;
    padding-right:14px;
    overflow:visible;
    border-radius:18px 0 0 18px;
    background:var(--bg);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    display:block;
    right:-28px;
    width:30px;
    background:var(--bg);
  }

  /* Avisos compactos: círculo y número sobre la esquina del icono correspondiente. */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button .task-nav-alert,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button .billing-nav-alert{
    position:absolute;
    z-index:6;
    top:-2px;
    right:-2px;
    width:21px;
    min-width:21px;
    height:21px;
    padding:0;
    display:grid;
    place-items:center;
    gap:0;
    border:2px solid #0d2238;
    border-radius:50%;
    background:#f04438;
    color:#fff;
    font-size:10px;
    font-weight:900;
    line-height:1;
    box-shadow:0 4px 10px rgba(240,68,56,.4);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button .billing-nav-alert b{
    display:none;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button .billing-nav-alert small{
    align-self:auto;
    margin:0;
    color:#fff;
    font-size:10px;
    font-weight:900;
    line-height:1;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active .task-nav-alert,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active .billing-nav-alert{
    border-color:var(--bg);
  }

  /* Al desplegarse vuelve el logotipo completo y los avisos quedan alineados a la derecha. */
  body:not(.client-preview-mode) .sidebar:hover{
    overflow:hidden;
  }

  body:not(.client-preview-mode) .sidebar:hover .brand img{
    position:static;
    width:190px;
    max-width:190px;
    height:58px;
    transform:none;
    object-fit:contain;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button .task-nav-alert,
  body:not(.client-preview-mode) .sidebar:hover nav button .billing-nav-alert{
    top:11px;
    right:12px;
  }
}


/* Barra lateral integrada v4 · corrección geométrica definitiva */
@media(min-width:761px){
  /* Isotipo real en cerrado: sin recortar el logotipo horizontal. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand{
    width:62px;
    height:70px;
    min-height:70px;
    padding:8px;
    overflow:hidden;
    background:rgba(255,255,255,.055);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand::before{
    content:"";
    position:absolute;
    inset:8px;
    background:url("/app-icon.png?v=4") center/contain no-repeat;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand img{
    display:none;
  }

  /* El botón ocupa desde su sangría izquierda hasta el borde exacto de la barra. */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    align-self:stretch;
    width:auto!important;
    margin-left:10px!important;
    margin-right:-10px!important;
    padding:0 14px 0 0;
    flex-basis:46px;
    border-radius:18px 0 0 18px;
    background:var(--bg);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    display:none!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    content:"";
    display:block!important;
    position:absolute;
    top:0;
    right:-2px;
    bottom:0;
    left:auto;
    width:3px;
    max-width:none;
    padding:0;
    border:0;
    border-radius:0;
    background:var(--bg);
    opacity:1;
    visibility:visible;
    transform:none;
    box-shadow:none;
  }

  body:not(.client-preview-mode)>main{
    margin-left:var(--integrated-rail);
    border-left:0;
    background:var(--bg);
  }

  body:not(.client-preview-mode) .sidebar:hover .brand::before{
    display:none;
  }
}


/* Barra lateral integrada v5 · sin franja y marca blanca */
@media(min-width:761px){
  body:not(.client-preview-mode) .sidebar:not(:hover) nav{
    overflow:visible!important;
  }

  /* La superficie clara se prolonga por encima de todo el borde azul. */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    width:54px!important;
    margin-left:12px!important;
    margin-right:0!important;
    padding:0!important;
    overflow:visible!important;
    background:transparent!important;
    isolation:isolate;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    content:"";
    display:block!important;
    position:absolute;
    z-index:-1;
    top:0;
    bottom:0;
    left:0;
    right:-42px;
    width:auto;
    border-radius:18px 0 0 18px;
    background:var(--bg);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    display:none!important;
  }

  /* Marca original blanca, ampliada y recortada para mostrar solo el símbolo. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand{
    width:62px;
    height:70px;
    min-height:70px;
    padding:0;
    border-color:rgba(255,255,255,.13);
    background:rgba(255,255,255,.035);
    overflow:hidden;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand::before{
    display:none!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand img{
    display:block!important;
    position:absolute;
    top:-5px;
    left:1px;
    width:210px;
    max-width:none;
    height:auto;
    transform:none;
    object-fit:initial;
    filter:brightness(0) invert(1);
  }
}


/* Barra lateral integrada v6 · unión curva real y símbolo blanco centrado */
@media(min-width:761px){
  body:not(.client-preview-mode) .sidebar:not(:hover) nav{
    overflow:visible!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    --active-overlap:30px;
    position:relative;
    align-self:stretch;
    width:calc(100% + var(--active-overlap))!important;
    margin-left:10px!important;
    margin-right:calc(-1 * var(--active-overlap))!important;
    padding:0 0 0 19px!important;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    overflow:visible!important;
    border-radius:18px 0 0 18px;
    background:var(--bg)!important;
    isolation:auto;
  }

  /* Curvas cóncavas que hacen que la barra nazca del propio lienzo. */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    content:"";
    display:block!important;
    position:absolute;
    z-index:0;
    right:var(--active-overlap);
    left:auto;
    width:18px;
    height:18px;
    padding:0;
    background:transparent;
    opacity:1;
    visibility:visible;
    transform:none;
    pointer-events:none;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    top:-18px;
    bottom:auto;
    border-radius:0 0 18px 0;
    box-shadow:5px 5px 0 4px var(--bg);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    top:auto;
    bottom:-18px;
    border-radius:0 18px 0 0;
    box-shadow:5px -5px 0 4px var(--bg);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active .nav-icon,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active .holded-mark{
    position:relative;
    z-index:2;
  }

  /* Símbolo del logo blanco, completo y con aire dentro de su marco. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand{
    width:62px;
    height:70px;
    min-height:70px;
    padding:0;
    display:block;
    overflow:hidden;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand img{
    display:block!important;
    position:absolute;
    top:3px;
    left:3px;
    width:168px;
    max-width:none;
    height:auto;
    transform:none;
    object-fit:initial;
    filter:brightness(0) invert(1);
  }
}


/* Barra lateral integrada v7 · logo sin marco y superficie continua */
@media(min-width:761px){
  body:not(.client-preview-mode){
    --sidebar-active-surface:#fbf9f7;
  }

  body:not(.client-preview-mode)>main,
  body:not(.client-preview-mode) main:has(.home-dashboard-layout){
    background:var(--sidebar-active-surface);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    background:var(--sidebar-active-surface)!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    box-shadow:5px 5px 0 4px var(--sidebar-active-surface);
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    box-shadow:5px -5px 0 4px var(--sidebar-active-surface);
  }

  /* Sin tarjeta, borde ni cambio de tono alrededor de la marca. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand{
    width:62px;
    height:70px;
    min-height:70px;
    padding:0;
    border:0!important;
    border-radius:0;
    background:transparent!important;
    box-shadow:none!important;
    overflow:hidden;
  }

  /* Escala que deja entrar el símbolo completo dentro del ancho disponible. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand img{
    top:6px;
    left:4px;
    width:138px;
    max-width:none;
    height:auto;
    filter:brightness(0) invert(1);
  }

  /* Oculta únicamente la línea de texto inferior del logotipo horizontal. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand::after{
    content:"";
    display:block;
    position:absolute;
    z-index:3;
    left:0;
    right:0;
    bottom:0;
    height:14px;
    background:#0b1f35;
    pointer-events:none;
  }

  body:not(.client-preview-mode) .sidebar:hover .brand::after{
    display:none;
  }
}


/* Barra lateral integrada v8 · símbolo proporcionado y color único */
@media(min-width:761px){
  body:not(.client-preview-mode){
    --sidebar-active-surface:#fbf9f7;
    background:#0b1f35;
  }

  body:not(.client-preview-mode)>main,
  body:not(.client-preview-mode) main:has(.home-dashboard-layout){
    background:var(--sidebar-active-surface)!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    background:var(--sidebar-active-surface)!important;
    border:0!important;
    box-shadow:none!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    background:transparent!important;
    box-shadow:5px 5px 0 4px var(--sidebar-active-surface)!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    background:transparent!important;
    box-shadow:5px -5px 0 4px var(--sidebar-active-surface)!important;
  }

  /* Archivo exacto facilitado por el usuario, convertido visualmente a blanco. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand{
    width:62px;
    height:70px;
    min-height:70px;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand img,
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand::after{
    display:none!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand::before{
    content:"";
    display:block!important;
    position:absolute;
    inset:5px 3px;
    background-image:url("data:image/png;base64,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");
    background-position:center;
    background-repeat:no-repeat;
    background-size:contain;
    filter:brightness(0) invert(1);
    pointer-events:none;
  }
}


/* Barra lateral integrada v9 · unión plana sin corte ni sombras */
@media(min-width:761px){
  body:not(.client-preview-mode){
    --sidebar-active-surface:#fbf9f7;
  }

  body:not(.client-preview-mode) .sidebar,
  body:not(.client-preview-mode) .sidebar:not(:hover),
  body:not(.client-preview-mode)>main,
  body:not(.client-preview-mode) main:has(.home-dashboard-layout),
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    box-shadow:none!important;
    border-right:0!important;
    background-image:none!important;
  }

  body:not(.client-preview-mode)>main,
  body:not(.client-preview-mode) main:has(.home-dashboard-layout),
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    background-color:var(--sidebar-active-surface)!important;
  }

  /* Sin remates ni sombras: la pestaña entra directamente en el lienzo del mismo color. */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    content:none!important;
    display:none!important;
    box-shadow:none!important;
    background:none!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    --active-overlap:31px;
    border-radius:18px 0 0 18px!important;
  }

  /* Símbolo blanco ligeramente mayor. */
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand{
    width:68px;
    height:76px;
    min-height:76px;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) .brand::before{
    inset:0 -2px!important;
    background-size:contain!important;
  }
}


/* Corrección del desplegable lateral: ancho y fondo reales */
@media(min-width:761px){
  body:not(.client-preview-mode) .sidebar:hover{
    width:270px!important;
    min-width:270px!important;
    max-width:270px!important;
    align-items:stretch!important;
    overflow:hidden!important;
    background:#0b1f35!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
    z-index:60!important;
  }

  body:not(.client-preview-mode) .sidebar:hover .brand{
    width:240px!important;
    height:70px!important;
    min-height:70px!important;
    margin:0 5px 13px!important;
    padding:6px 12px!important;
    overflow:hidden!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body:not(.client-preview-mode) .sidebar:hover .brand::before,
  body:not(.client-preview-mode) .sidebar:hover .brand::after{
    display:none!important;
  }

  body:not(.client-preview-mode) .sidebar:hover .brand img{
    display:block!important;
    position:static!important;
    width:205px!important;
    max-width:205px!important;
    height:58px!important;
    margin:auto!important;
    transform:none!important;
    object-fit:contain!important;
    filter:brightness(0) invert(1)!important;
  }

  body:not(.client-preview-mode) .sidebar:hover nav{
    width:100%!important;
    align-items:stretch!important;
    overflow-x:hidden!important;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button,
  body:not(.client-preview-mode) .sidebar:hover nav button.active{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0 17px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:14px!important;
    border-radius:13px!important;
    font-size:14px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button.active{
    background:#faf8f6!important;
    color:#0c2948!important;
  }

  body:not(.client-preview-mode) .sidebar:hover nav button::before,
  body:not(.client-preview-mode) .sidebar:hover nav button::after{
    content:none!important;
    display:none!important;
  }

  body:not(.client-preview-mode) .sidebar:hover .sidebar-footer{
    width:100%!important;
    justify-content:flex-start!important;
  }

  body:not(.client-preview-mode) .sidebar:hover .sidebar-footer>div{
    display:block!important;
  }
}


/* Sin corte visual entre la pestaña lateral y el lienzo */
@media(min-width:761px){
  body:not(.client-preview-mode)>main,
  body:not(.client-preview-mode) main:has(.home-dashboard-layout),
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    background-color:#fbf9f7!important;
  }

  /* La franja oscura procedía de la sombra exterior del bloque azul. */
  body:not(.client-preview-mode) .home-dashboard-layout>.welcome{
    box-shadow:none!important;
    filter:none!important;
  }
}


/* Centrado óptico del isotipo en la barra cerrada */
@media(min-width:761px){
  body:not(.client-preview-mode) .sidebar:not(:hover) .brand::before{
    inset:0!important;
    background-size:105px auto!important;
    background-position:3px center!important;
    background-repeat:no-repeat!important;
  }
}


/* Encabezado de Inicio sin línea divisoria */
@media(min-width:761px){
  body:not(.client-preview-mode) main:has(.home-dashboard-layout)>header{
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
  }
}


/* Curvas compactas alineadas con el borde real de la barra cerrada */
@media(min-width:761px){
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    overflow:visible!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:0!important;
    left:auto!important;
    right:31px!important;
    width:16px!important;
    height:16px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:none!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    top:-16px!important;
    bottom:auto!important;
    background:radial-gradient(circle at 0 0,transparent 16px,#fbf9f7 16px)!important;
  }

  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    top:auto!important;
    bottom:-16px!important;
    background:radial-gradient(circle at 0 100%,transparent 16px,#fbf9f7 16px)!important;
  }
}

/* Active sidebar icon: exact sidebar navy on the light selected tab */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar nav button.active .nav-icon{
    color:#0b1f35!important;
  }

  body:not(.client-preview-mode) .sidebar nav button.active .nav-icon svg{
    stroke:currentColor!important;
    shape-rendering:geometricPrecision;
  }
}

/* Cierre continuo: la superficie azul acompaña a la anchura y evita el hueco blanco */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar{
    contain:paint;
    background:#0b1f35!important;
  }
  body:not(.client-preview-mode) .sidebar::before{
    content:"";
    position:absolute;
    z-index:-2;
    top:0;
    bottom:0;
    left:0;
    width:100%;
    background:#0b1f35;
    pointer-events:none;
    opacity:1;
    transition:width .95s cubic-bezier(.16,.72,.22,1);
  }
  body:not(.client-preview-mode) .sidebar::after{
    width:100%!important;
    inset:0 auto 0 0!important;
    transform:none!important;
    transform-origin:left center;
    transition:opacity .82s cubic-bezier(.16,.72,.22,1)!important;
  }
  body:not(.client-preview-mode) .sidebar:hover::after{
    transform:none!important;
  }
}

/* Barra lateral de escritorio: expansión superpuesta sin desplazar el contenido */
@media (min-width:761px){
  body:not(.client-preview-mode){
    --sidebar-closed-width:86px;
  }
  body:not(.client-preview-mode) .sidebar{
    position:fixed!important;
    left:0;
    top:0;
    bottom:0;
    z-index:120!important;
    width:var(--sidebar-closed-width)!important;
    min-width:var(--sidebar-closed-width)!important;
    max-width:var(--sidebar-closed-width)!important;
    overflow:visible;
    box-shadow:none!important;
    transition:width .95s cubic-bezier(.16,.72,.22,1),
               min-width .95s cubic-bezier(.16,.72,.22,1),
               max-width .95s cubic-bezier(.16,.72,.22,1),
               box-shadow .7s ease!important;
  }
  body:not(.client-preview-mode) .sidebar:hover{
    width:270px!important;
    min-width:270px!important;
    max-width:270px!important;
    box-shadow:18px 0 34px rgba(11,31,53,.12)!important;
  }
  body:not(.client-preview-mode)>main{
    margin-left:var(--sidebar-closed-width)!important;
    width:calc(100% - var(--sidebar-closed-width))!important;
    max-width:none!important;
    transition:none!important;
  }
  body:not(.client-preview-mode) .sidebar:hover + main,
  body:not(.client-preview-mode) .sidebar:hover ~ main{
    margin-left:var(--sidebar-closed-width)!important;
    width:calc(100% - var(--sidebar-closed-width))!important;
    transform:none!important;
  }
  body:not(.client-preview-mode) .sidebar::after{
    right:0!important;
  }
}

/* Aparición progresiva del fondo azul al desplegar la barra */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar{
    position:relative;
    isolation:isolate;
    background:#0b1f35!important;
  }
  body:not(.client-preview-mode) .sidebar::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:linear-gradient(90deg,#0b1f35 0%,#143d68 58%,#0e3156 100%);
    opacity:0;
    transform:scaleX(.82);
    transform-origin:left center;
    transition:opacity .95s cubic-bezier(.16,.72,.22,1),
               transform 1.05s cubic-bezier(.16,.72,.22,1);
  }
  body:not(.client-preview-mode) .sidebar:hover::after{
    opacity:1;
    transform:scaleX(1);
  }
  body:not(.client-preview-mode) .sidebar .brand,
  body:not(.client-preview-mode) .sidebar nav,
  body:not(.client-preview-mode) .sidebar .sidebar-footer{
    position:relative;
    z-index:1;
  }
}

/* Transición especialmente suave entre la barra plegada y desplegada */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar{
    will-change:width;
    transition:width .95s cubic-bezier(.16,.72,.22,1),
               min-width .95s cubic-bezier(.16,.72,.22,1),
               max-width .95s cubic-bezier(.16,.72,.22,1),
               box-shadow .76s ease!important;
  }

  body:not(.client-preview-mode) .sidebar .brand{
    transition:width .86s cubic-bezier(.16,.72,.22,1),
               min-height .86s cubic-bezier(.16,.72,.22,1),
               height .86s cubic-bezier(.16,.72,.22,1),
               margin .86s cubic-bezier(.16,.72,.22,1),
               padding .86s cubic-bezier(.16,.72,.22,1),
               background-color .64s ease!important;
  }

  body:not(.client-preview-mode) .sidebar nav button{
    transition:width .86s cubic-bezier(.16,.72,.22,1),
               margin .86s cubic-bezier(.16,.72,.22,1),
               padding .86s cubic-bezier(.16,.72,.22,1),
               border-radius .68s ease,
               background-color .58s ease,
               color .58s ease,
               transform .58s ease!important;
  }

  body:not(.client-preview-mode) .sidebar .sidebar-footer{
    transition:width .86s cubic-bezier(.16,.72,.22,1),
               padding .86s cubic-bezier(.16,.72,.22,1),
               margin .86s cubic-bezier(.16,.72,.22,1)!important;
  }

  @media (prefers-reduced-motion:reduce){
    body:not(.client-preview-mode) .sidebar,
    body:not(.client-preview-mode) .sidebar .brand,
    body:not(.client-preview-mode) .sidebar nav button,
    body:not(.client-preview-mode) .sidebar .sidebar-footer{
      transition-duration:.01ms!important;
    }
  }
}

/* Logotipo blanco centrado en la cabecera del chat móvil */
@media (max-width:760px){
  .worker-chat #chatPanel .chat-team-header{
    position:relative;
    min-height:108px;
  }

  .worker-chat #chatPanel .chat-team-header .chat-brand{
    position:absolute!important;
    z-index:3;
    left:50%!important;
    top:calc(50% + env(safe-area-inset-top)/3)!important;
    width:174px;
    height:78px;
    display:block!important;
    transform:translate(-50%,-50%)!important;
    pointer-events:none;
  }

  .worker-chat #chatPanel .chat-team-header .chat-brand::before{
    content:"";
    display:block;
    width:100%;
    height:100%;
    background:url("data:image/png;base64,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") center/contain no-repeat;
    opacity:1;
  }

  .worker-chat #chatPanel .chat-team-header .chat-brand-logo,
  .worker-chat #chatPanel .chat-team-header .chat-brand>div{
    display:none!important;
  }

  .worker-chat #chatPanel .chat-team-header #closeChat{
    position:relative;
    z-index:4;
    margin-left:auto;
  }
}

/* Quiet, aligned task counter in the sidebar. */
body .sidebar nav button[data-title="Tareas"]{position:relative}
body .sidebar nav button .task-nav-alert{position:static!important;flex:0 0 auto!important;margin:0 0 0 auto!important;min-width:22px!important;width:auto!important;height:22px!important;padding:0 6px!important;border:1px solid rgba(212,181,141,.25)!important;border-radius:7px!important;background:#35506c!important;color:#faf7f3!important;display:inline-flex!important;align-items:center;justify-content:center;font-size:11px!important;font-weight:700!important;font-variant-numeric:tabular-nums;line-height:1!important;box-shadow:none!important;animation:none!important;transform:none!important;pointer-events:none}
body .sidebar nav button.active .task-nav-alert{background:#466381!important;border-color:rgba(238,225,210,.25)!important}
@media(min-width:761px){body:not(.client-preview-mode) .sidebar:not(:hover) nav button .task-nav-alert{position:absolute!important;top:1px!important;right:1px!important;margin:0!important;min-width:17px!important;height:17px!important;padding:0 4px!important;font-size:9px!important;border-radius:5px!important}}

/* High-visibility task count, retaining the compact layout. */
body .sidebar nav button .task-nav-alert,body .sidebar nav button.active .task-nav-alert{background:#e53935!important;color:#fff!important;border-color:#e53935!important}

/* Cierre fluido conservando la unión visual del apartado activo con el lienzo */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar nav{
    overflow:visible!important;
  }
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    --active-overlap:30px!important;
    width:calc(100% + var(--active-overlap))!important;
    margin-left:10px!important;
    margin-right:calc(-1 * var(--active-overlap))!important;
    padding:0 0 0 19px!important;
    overflow:visible!important;
    border-radius:18px 0 0 18px!important;
    background:var(--sidebar-active-surface,#fbf9f7)!important;
    transition:width .95s cubic-bezier(.16,.72,.22,1),
               margin .95s cubic-bezier(.16,.72,.22,1),
               padding .86s cubic-bezier(.16,.72,.22,1),
               border-radius .68s ease!important;
  }
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    opacity:1!important;
    visibility:visible!important;
  }
}

/* Pestaña activa: unión continua al lienzo sin piezas adelantadas */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar nav{overflow:visible!important}
  body:not(.client-preview-mode) .sidebar nav button.active{
    position:relative!important;
    overflow:visible!important;
    border-radius:18px 0 0 18px!important;
    background:var(--sidebar-active-surface,#fbf9f7)!important;
  }
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{
    width:calc(100% + 32px)!important;
    margin-left:10px!important;
    margin-right:-32px!important;
    padding:0 0 0 19px!important;
  }
  /* En estado plegado, la superficie blanca cubre también cualquier separación entre rail y main. */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:-1!important;
    top:0!important;
    bottom:0!important;
    left:0!important;
    right:-2px!important;
    width:auto!important;
    height:auto!important;
    padding:0!important;
    border-radius:18px 0 0 18px!important;
    background:var(--sidebar-active-surface,#fbf9f7)!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:none!important;
  }
  body:not(.client-preview-mode) .sidebar nav button.active::after{display:none!important}
  /* No se dibujan curvas auxiliares durante la animación: evita el saliente que aparecía antes de tiempo. */
  body:not(.client-preview-mode) .sidebar:hover nav button.active::before,
  body:not(.client-preview-mode) .sidebar:hover nav button.active::after{
    display:none!important;
  }
  body:not(.client-preview-mode) .sidebar:not(:hover){box-shadow:none!important}
}

/* Redondeo cóncavo de la unión de la pestaña activa con el lienzo */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:0!important;
    top:-18px!important;
    bottom:auto!important;
    left:auto!important;
    right:30px!important;
    width:18px!important;
    height:18px!important;
    padding:0!important;
    border-radius:0 0 18px 0!important;
    background:transparent!important;
    box-shadow:5px 5px 0 4px var(--sidebar-active-surface,#fbf9f7)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:none!important;
  }
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:0!important;
    top:auto!important;
    bottom:-18px!important;
    left:auto!important;
    right:30px!important;
    width:18px!important;
    height:18px!important;
    padding:0!important;
    border-radius:0 18px 0 0!important;
    background:transparent!important;
    box-shadow:5px -5px 0 4px var(--sidebar-active-surface,#fbf9f7)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:none!important;
  }
}

/* Full-width horizontal regulatory news carousel. */
.home-dashboard-layout>.news-portal{grid-column:1/-1;width:100%;min-width:0}
.news-portal{overflow:hidden}
.news-portal .news-carousel-controls{display:flex;align-items:center;gap:7px;flex-shrink:0}
.news-portal .news-carousel-controls button{min-height:36px}
.news-portal #newsPrevious,.news-portal #newsNext{width:36px;padding:0;font-size:24px}
.news-portal .news-carousel-controls button:disabled{opacity:.35;cursor:default}
.news-portal #homeNews{display:flex;flex-wrap:nowrap;gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:3px 2px 14px;scrollbar-width:thin;scrollbar-color:#d0cac3 transparent;max-width:100%}
.news-portal #homeNews:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.news-portal #homeNews .news-card{flex:0 0 310px;max-width:calc(100% - 16px);scroll-snap-align:start}
.news-portal #homeNews .news-card-image{height:125px}
.news-portal #homeNews .news-card-body{min-height:205px}
.news-portal #homeNews .news-card h4{display:block;overflow:visible;font-size:14px}
.news-portal #homeNews .news-loading,.news-portal #homeNews .news-empty{flex:1 0 100%;min-height:160px}
.news-portal .news-topic-filters{padding-top:14px}
@media(max-width:760px){.news-portal-heading{flex-direction:column;gap:12px}.news-portal #homeNews .news-card{flex-basis:280px}.news-portal .news-carousel-controls{align-self:flex-end}}

/* Continuous concave joins without unpainted corners. */
@media(min-width:761px){
 body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{border-radius:0!important;box-shadow:none!important;background:radial-gradient(circle at 0 0,#0b1f35 17.5px,var(--sidebar-active-surface,#fbf9f7) 18px)!important}
 body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{border-radius:0!important;box-shadow:none!important;background:radial-gradient(circle at 0 100%,#0b1f35 17.5px,var(--sidebar-active-surface,#fbf9f7) 18px)!important}
}
.inspection-table-wrap{overflow-x:auto}
.inspection-table{width:100%;min-width:840px;border-collapse:collapse;text-align:left}
.inspection-table th{padding:12px;font-size:11px;color:var(--muted);font-weight:700;background:#fdfcfa;border-bottom:1px solid var(--line)}
.inspection-table td{padding:15px 12px;font-size:13px;border-bottom:1px solid var(--line);vertical-align:middle}
.inspection-reference{display:block;margin-top:4px;color:var(--muted);font-size:11px}
.inspection-deadline{display:inline-flex;padding:6px 9px;border-radius:8px;font-size:12px;font-weight:700;white-space:nowrap}
.inspection-deadline.green{background:#e5f6ec;color:#16703e}
.inspection-deadline.orange{background:#fff0d9;color:#9a5700}
.inspection-deadline.red{background:#ffebeb;color:#bc2828}
.inspection-documents-overlay{position:fixed;inset:0;z-index:2100;display:grid;place-items:center;padding:24px}
.inspection-documents-backdrop{position:absolute;inset:0;background:rgba(7,24,42,.55);backdrop-filter:blur(3px)}
.inspection-documents-dialog{position:relative;background:#fff;border-radius:20px;width:min(860px,100%);max-height:85dvh;overflow:auto;overscroll-behavior:contain;padding:28px;box-shadow:0 24px 80px #07182a33}
.inspection-documents-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:0;border-radius:50%;background:#f5f3f0;cursor:pointer;font-size:22px}
.inspection-documents-content .inspection-docs-head{padding-right:28px}
.inspection-documents-content input[type=file]{display:block;margin:10px 0 16px;max-width:100%}
html:has(#inspectionDocumentsOverlay),body:has(#inspectionDocumentsOverlay){overflow:hidden}
@media(max-width:760px){.inspection-documents-overlay{padding:12px}.inspection-documents-dialog{padding:20px 15px}.inspection-docs-head{align-items:flex-start;flex-direction:column}}

/* Document explorer cards matching the client portal. */
.inspection-documents-dialog{width:min(1200px,calc(100vw - 48px));min-height:320px;padding:28px}
.inspection-docs-head h3{margin:0 0 8px;font-size:22px;color:#143355}
.inspection-docs-head p{margin:0;color:#718aa5;font-size:12px}
.inspection-document-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px}
.inspection-document-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:5px;min-width:0}
.inspection-document-breadcrumbs button{padding:5px 7px;border:0;background:transparent;color:var(--blue);font:inherit;font-size:12px;cursor:pointer;overflow-wrap:anywhere;text-align:left}
.inspection-document-breadcrumbs button[aria-current]{color:#677f99}
.inspection-upload-button{position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:1px solid #f3eadf;border-radius:9px;padding:9px 12px;color:var(--blue);background:#fcfaf8;font-size:12px;font-weight:600;cursor:pointer}
.inspection-documents-content .inspection-upload-button input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
.inspection-upload-button:focus-within{outline:2px solid var(--blue);outline-offset:2px}
.inspection-document-hint{font-size:12px;color:#7a91aa;margin:12px 0 18px}
.inspection-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.inspection-document-card{display:flex;align-items:center;gap:12px;min-height:94px;padding:16px;border:1px solid #f2e9df;border-radius:12px;background:#fefdfb;text-align:left;font:inherit;cursor:pointer;transition:background .15s,border-color .15s}
.inspection-document-card:hover{background:#fcfaf7;border-color:#d5b790}
.inspection-document-card:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.inspection-document-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:#f9f4ef;color:var(--blue)}
.inspection-document-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.inspection-document-copy{display:grid;gap:5px;min-width:0}
.inspection-document-copy strong{font-size:12px;color:#123050;line-height:1.5;overflow-wrap:anywhere}
.inspection-document-copy small{font-size:10px;color:#7a91aa}
.inspection-document-arrow{margin-left:auto;color:#a49c92;font-size:20px}
.inspection-documents-empty{grid-column:1/-1;color:#7a91aa;font-size:13px;padding:24px 0}
@media(max-width:1000px){.inspection-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.inspection-documents-dialog{width:100%;padding:24px 16px}.inspection-document-grid{grid-template-columns:1fr}.inspection-document-toolbar{align-items:flex-start;flex-direction:column}}

/* Team suggestions */
.worker-chat .suggestion-launcher{position:absolute;right:calc(100% + 10px);bottom:0;height:56px;white-space:nowrap;display:flex;align-items:center;gap:7px;padding:0 17px;border:0;border-radius:18px;background:linear-gradient(135deg,#0f345c,#0b2642);color:#fff;font:600 13px inherit;box-shadow:0 14px 36px rgba(11,38,66,.28);cursor:pointer;transition:transform .2s,box-shadow .2s,filter .2s}
.suggestion-launcher:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(11,38,66,.36);filter:brightness(1.06)}
.suggestion-modal-shell{z-index:2300}
.suggestion-modal{width:min(540px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px}
.suggestion-modal form{display:grid;gap:15px}
.suggestion-modal label{display:grid;gap:6px;font-size:13px;font-weight:600}
.suggestion-modal input,.suggestion-modal select,.suggestion-modal textarea{width:100%;box-sizing:border-box;border:1px solid #eae6e1;border-radius:10px;padding:10px 12px;font:inherit;background:#fff;color:#18293c}
.suggestion-modal input[readonly]{background:#f9f8f6;color:#69758c}
.suggestion-modal textarea{resize:vertical;min-height:120px}
body:has(#suggestionModal){overflow:hidden}
.suggestion-list{display:grid;gap:14px}
.suggestion-entry{background:#fff;border:1px solid #eae6e1;border-radius:16px;padding:20px}
.suggestion-entry header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;margin:0}
.suggestion-entry header div{display:grid;gap:4px}
.suggestion-entry small{color:#7b869c}
.suggestion-entry p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
.suggestion-area{padding:6px 10px;border-radius:8px;background:#faf7f3;color:#0c2a49;font-size:12px}
.suggestion-notice{position:fixed;bottom:94px;right:24px;max-width:min(390px,calc(100vw - 48px));display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid #eae6e1;border-left:4px solid #0c2a49;border-radius:14px;background:#fff;color:#18293c;box-shadow:0 12px 40px #122c4725;z-index:2400;font-size:14px}
.suggestion-notice button{border:0;background:transparent;font-size:23px;cursor:pointer}
.sidebar nav button .suggestion-nav-alert{position:absolute;right:8px;bottom:0;z-index:7;min-width:23px;padding:3px 5px;border-radius:7px;background:#e53935;color:white;font-size:10px;font-weight:800;line-height:1}
@media(max-width:760px){.worker-chat .suggestion-launcher{height:54px;padding:0 12px}.suggestion-modal{padding:18px}.suggestion-entry header{align-items:flex-start;flex-wrap:wrap}}

.suggestion-modal{box-sizing:border-box}

/* Móvil: viewport fijo y fondo inmóvil mientras hay un modal/banner */
@media (max-width:760px){
  html{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;touch-action:pan-y}
  body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior:none}
  input,select,textarea,button{font-size:16px}
  .modal-shell[aria-hidden="false"],
  .suggestion-modal-shell[aria-hidden="false"]{overscroll-behavior:contain;touch-action:none}
  .modal-shell[aria-hidden="false"] .modal,
  .suggestion-modal-shell[aria-hidden="false"] .suggestion-modal{touch-action:pan-y;overscroll-behavior:contain}
}
html:has(.modal-shell[aria-hidden="false"]),
html:has(.suggestion-modal-shell[aria-hidden="false"]){overflow:hidden!important;overscroll-behavior:none}
body:has(.modal-shell[aria-hidden="false"]),
body:has(.suggestion-modal-shell[aria-hidden="false"]){overflow:hidden!important;overscroll-behavior:none;touch-action:none}
body:has(.modal-shell[aria-hidden="false"]) .modal-shell[aria-hidden="false"] .modal,
body:has(.suggestion-modal-shell[aria-hidden="false"]) .suggestion-modal-shell[aria-hidden="false"] .suggestion-modal{touch-action:pan-y}


/* Interactive new client button */
#openNewClient{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,filter .2s ease;box-shadow:0 8px 20px rgba(11,38,66,.2)}
#openNewClient:hover{transform:translateY(-2px);background:#0f345c;box-shadow:0 13px 28px rgba(11,38,66,.32);filter:brightness(1.04)}
#openNewClient:active{transform:translateY(0) scale(.98);box-shadow:0 5px 14px rgba(11,38,66,.24)}
#openNewClient:focus-visible{outline:3px solid rgba(15,52,92,.3);outline-offset:3px}


/* Keep client modal clear of the desktop sidebar */
@media(min-width:761px){
  body:not(.client-preview-mode) #clientModal{left:var(--integrated-rail);right:0;width:auto}
  body:not(.client-preview-mode) #clientModal .client-modal{max-width:calc(100vw - var(--integrated-rail) - 32px)}
  body:not(.client-preview-mode):has(#clientModal.open) .sidebar{width:var(--integrated-rail)!important;pointer-events:none;box-shadow:none!important}
}


/* Compact client identity and portal access layout */
@media(min-width:1100px){
  #newClientForm{grid-template-areas:"identity identity" "internal fiscal" "access registry" "courtesy registry" "signature registry" "message message" "actions actions"}
  #newClientForm .client-identity-grid{grid-template-columns:minmax(260px,1.7fr) minmax(165px,.85fr) minmax(150px,.72fr) minmax(170px,.85fr) minmax(180px,.9fr);align-items:start}
  #newClientForm .client-portal-access{grid-area:access;align-self:start;margin:0;padding:11px 13px 13px}
  #newClientForm .client-portal-access-grid{grid-template-columns:minmax(0,1fr) minmax(105px,.5fr);gap:12px;align-items:end}
  #newClientForm .client-portal-access legend{font-size:14px}
  #newClientForm .client-portal-access-grid input{height:30px;min-height:30px;padding:4px 8px;border-radius:7px;font-size:12px}
  #newClientForm .client-portal-access-grid label,#newClientForm .client-portal-access-grid>div{gap:4px}
  #newClientForm .portal-status{min-height:30px;padding:5px 9px}
}
@media(max-width:1099px){
  #newClientForm .client-portal-access{margin:0}
  #newClientForm .client-portal-access-grid{grid-template-columns:minmax(0,1fr) auto}
}
@media(max-width:600px){
  #newClientForm .client-portal-access-grid{grid-template-columns:1fr}
}


/* Prevent hidden client switches from inheriting visible form-control dimensions. */
#clientModal .client-active-control{position:relative;overflow:hidden}
#clientModal .client-active-control input[type="checkbox"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-width:1px!important;
  min-height:1px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  clip-path:inset(50%);
  appearance:none;
  pointer-events:none;
}
#clientModal .client-active-control input[type="checkbox"]:focus,
#clientModal .client-active-control input[type="checkbox"]:focus-visible{outline:0!important;box-shadow:none!important}


/* Partner carousel: keep the client card height stable as partners are added. */
#clientPartnerRows{position:relative;min-height:58px}
#clientPartnerRows .client-person-row{margin-bottom:0}
#clientPartnerRows .client-person-row.is-carousel-hidden{display:none!important}
.client-partner-carousel-controls{display:flex;align-items:center;justify-content:center;gap:9px;margin:5px 0 4px}
.client-partner-carousel-controls[hidden]{display:none!important}
.client-partner-carousel-controls button{width:28px;height:28px;min-width:28px;padding:0;border:1px solid #e9e5e0;border-radius:50%;background:#fff;color:var(--blue);font:700 20px/1 inherit;cursor:pointer;display:grid;place-items:center}
.client-partner-carousel-controls button:hover:not(:disabled){background:#faf7f3;border-color:#d6b892}
.client-partner-carousel-controls button:disabled{opacity:.32;cursor:default}
.client-partner-carousel-controls span{min-width:52px;text-align:center;color:#68738a;font-size:11px;font-weight:800}
@media(max-width:760px){#clientPartnerRows{min-height:150px}}

/* ===== Splash Molinero ===== */
:root {
  --splash-bg: #0a243f;
  --splash-bg-2: #06182b;
  --splash-accent: #123f6f;
}
html.splash-activo, html.splash-activo body { overflow: hidden; }
#splash { display:none; }
@media (max-width:760px) {
#splash {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  background:
    radial-gradient(120% 80% at 50% 40%, #13365c 0%, var(--splash-bg) 45%, var(--splash-bg-2) 100%);
  transition: opacity 1.1s cubic-bezier(.4,0,.2,1), filter 1.1s cubic-bezier(.4,0,.2,1), visibility 1.1s;
  -webkit-tap-highlight-color: transparent;
}
#splash::before {
  content: "";
  position: absolute;
  width: 70vmin; height: 70vmin;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(18,63,111,.35) 0%, transparent 65%);
  filter: blur(20px);
  opacity: 0;
  animation: splash-halo 3s cubic-bezier(.4,0,.2,1) .1s forwards;
}
.splash-contenido {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
}
.splash-logo {
  position: relative;
  width: min(84vw, 380px);
  overflow: hidden;
}
.splash-logo img {
  display: block;
  width: 100%;
  height: auto;
  opacity: 0;
  transform: scale(.97);
  filter: blur(14px);
  animation: splash-logo-in 2.2s cubic-bezier(.4,0,.2,1) .5s forwards;
}
.splash-logo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 35%, rgba(213,184,145,.9) 50%, transparent 65%) no-repeat;
  background-size: 250% 100%;
  background-position: 150% 0;
  -webkit-mask: var(--splash-logo-url, url("/splash-logo.png?v=pp7")) center / 100% 100% no-repeat;
          mask: var(--splash-logo-url, url("/splash-logo.png?v=pp7")) center / 100% 100% no-repeat;
  animation: splash-brillo 1.8s ease-in-out 2.2s forwards;
}
.splash-barra {
  width: 120px;
  height: 2px;
  border-radius: 2px;
  background: rgba(255,255,255,.12);
  overflow: hidden;
  opacity: 0;
  animation: splash-fade 1s ease 1s forwards;
}
.splash-barra span {
  display: block;
  height: 100%;
  width: 100%;
  transform: scaleX(0);
  transform-origin: left center;
  box-shadow: 0 0 8px rgba(213,184,145,.6);
  border-radius: 2px;
  background: linear-gradient(90deg, rgba(255,255,255,.15), rgba(255,255,255,.9));
  animation: splash-carga 3s cubic-bezier(.4,0,.3,1) 1.2s forwards;
}
#splash.saliendo .splash-contenido {
  animation: splash-logo-out 1s cubic-bezier(.4,0,.2,1) forwards;
}
#splash.saliendo { opacity: 0; filter: blur(12px); visibility: hidden; transition-delay: .2s; }
.app-entrando { animation: app-in 1.1s cubic-bezier(.22,1,.36,1) .25s both; }
}
@keyframes splash-logo-in { to { opacity: 1; transform: none; filter: blur(0); } }
@keyframes splash-halo    { to { opacity: 1; } }
@keyframes splash-brillo  { to { background-position: -50% 0; } }
@keyframes splash-fade    { to { opacity: 1; } }
@keyframes splash-desvanecer { to { opacity: 0; } }
@keyframes splash-carga   { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes splash-logo-out{ to { opacity: 0; transform: scale(1.04); filter: blur(16px); } }
@keyframes app-in         { from { opacity: 0; transform: scale(.985); filter: blur(10px); } to { opacity: 1; transform: none; filter: none; } }
@media (prefers-reduced-motion: reduce) {
  .splash-logo img { transform: none; filter: none; }
  #splash.saliendo { filter: none; }
  #splash.saliendo .splash-contenido { animation: splash-desvanecer 1s ease forwards; }
  .app-entrando { animation: splash-fade .8s ease both; }
}

/* Accesos flotantes móviles: chat minimalista y sugerencias apiladas */
@media(max-width:760px){
  .worker-chat{
    right:max(20px,env(safe-area-inset-right))!important;
    bottom:calc(34px + env(safe-area-inset-bottom))!important;
    display:flex;flex-direction:column;align-items:center;gap:12px;
  }
  .chat-launcher{
    width:60px!important;min-width:60px!important;height:60px!important;padding:0!important;
    border-radius:24px!important;box-shadow:0 12px 30px rgba(11,38,66,.26)!important;
  }
  .chat-launcher-icon{
    width:24px;height:24px;font-size:0!important;position:relative;display:block;
  }
  .chat-launcher-icon::before{
    content:"";position:absolute;left:3px;top:4px;width:18px;height:14px;
    border:1.8px solid currentColor;border-radius:5px;box-sizing:border-box;
  }
  .chat-launcher-icon::after{
    content:"";position:absolute;left:7px;bottom:3px;width:6px;height:6px;
    border-left:1.8px solid currentColor;border-bottom:1.8px solid currentColor;
    transform:skewY(-35deg);background:transparent;
  }
  .worker-chat .suggestion-launcher{
    position:static!important;order:-1;width:46px!important;min-width:46px!important;height:46px!important;
    padding:0!important;border-radius:50%!important;display:grid!important;place-items:center!important;
    font-size:0!important;box-shadow:0 9px 24px rgba(11,38,66,.22)!important;
  }
  .worker-chat .suggestion-launcher span{
    font-size:27px!important;font-weight:300!important;line-height:1!important;margin:0!important;
  }
}

/* ===== Inicio de sesión Molinero (tras el splash) ===== */
html.auth-pending #splash{visibility:visible}
#splash.a-login{background:none!important}
#splash.a-login::before{animation:l2-salir 1.2s ease forwards}
#splash.a-login .splash-barra{animation:l2-salir .5s ease forwards}
#splash.a-login .splash-logo{transition:transform 1.2s cubic-bezier(.65,0,.35,1)}
@keyframes l2-salir{from{opacity:1}to{opacity:0}}

.login2{position:fixed;inset:0;z-index:9000;overflow-y:auto;-webkit-overflow-scrolling:touch;color:#fff;
  background:radial-gradient(120% 80% at 50% 40%,#13365c 0%,#0a243f 45%,#06182b 100%);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased;
  transition:opacity .9s cubic-bezier(.4,0,.2,1),filter .9s cubic-bezier(.4,0,.2,1)}
.login2.saliendo{opacity:0;filter:blur(10px);pointer-events:none}
.l2-halo{position:absolute;left:50%;top:calc(max(56px,13vh) + 40px);width:70vmin;height:70vmin;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,rgba(18,63,111,.3) 0%,transparent 65%);filter:blur(20px);opacity:0;pointer-events:none;transition:opacity 1.2s ease}
.login2.activo .l2-halo{opacity:1}
.l2-inner{position:relative;min-height:100%;max-width:460px;margin:0 auto;display:flex;flex-direction:column;justify-content:space-between;gap:40px;
  padding:max(56px,13vh) 28px calc(28px + env(safe-area-inset-bottom))}
.l2-logo{align-self:center;width:calc(min(84vw,380px) * .82);opacity:0}
.l2-logo img{display:block;width:100%;height:auto}
.login2.logo-listo .l2-logo{opacity:1}
.login2.directo .l2-logo{transition:opacity 1s cubic-bezier(.4,0,.2,1),filter 1s ease;filter:blur(10px)}
.login2.directo.logo-listo .l2-logo{filter:none}

.l2-form > *{opacity:0;transform:translateY(18px);filter:blur(6px);
  transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter .9s ease}
.login2.activo .l2-form > *{opacity:1;transform:none;filter:none}
.login2.activo .l2-form > :nth-child(1){transition-delay:.55s}
.login2.activo .l2-form > :nth-child(2){transition-delay:.65s}
.login2.activo .l2-form > :nth-child(3){transition-delay:.75s}
.login2.activo .l2-form > :nth-child(4){transition-delay:.85s}
.login2.activo .l2-form > :nth-child(5){transition-delay:.95s}
.login2.activo .l2-form > :nth-child(6){transition-delay:1.05s}

.l2-titulo{margin:0;font-size:26px;font-weight:600;letter-spacing:-.02em;color:#fff}
.l2-sub{margin:6px 0 34px;color:rgba(255,255,255,.55);font-size:14px}
.l2-campo{position:relative;margin-bottom:22px}
.l2-campo input{width:100%;height:54px;padding:18px 44px 0 0;margin:0;border:0;border-bottom:1px solid rgba(255,255,255,.14);border-radius:0;
  background:transparent;color:#fff;font-family:inherit;font-size:16px;font-weight:500;outline:none;box-shadow:none;-webkit-appearance:none;appearance:none}
.l2-campo input:-webkit-autofill{-webkit-text-fill-color:#fff;-webkit-box-shadow:0 0 0 1000px #0a243f inset;transition:background-color 9999s}
.l2-campo label{position:absolute;left:0;top:17px;margin:0;color:rgba(255,255,255,.55);font-size:15px;font-weight:400;pointer-events:none;
  transform-origin:left top;transition:transform .3s cubic-bezier(.22,1,.36,1),color .3s}
.l2-campo input:focus + label,.l2-campo input:not(:placeholder-shown) + label,.l2-campo input:-webkit-autofill + label{transform:translateY(-15px) scale(.78);color:rgba(213,184,145,.9)}
.l2-campo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(213,184,145,.85);
  transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.l2-campo:focus-within::after{transform:scaleX(1)}
.l2-ojo{position:absolute;right:0;bottom:8px;width:36px;height:36px;padding:0;border:0;background:none;color:rgba(255,255,255,.55);
  display:grid;place-items:center;cursor:pointer;border-radius:50%;box-shadow:none}
.l2-ojo.on,.l2-ojo:hover{color:#fff}
.l2-ojo svg{width:20px;height:20px}
.l2-error{height:0;overflow:hidden;color:#FFB4B4;font-size:13px;transition:height .3s ease}
.l2-error.visible{height:auto;min-height:24px}
.l2-fila{display:flex;justify-content:flex-end;margin:4px 0 30px;font-size:13px}
.l2-fila button{padding:0;border:0;background:none;color:rgba(213,184,145,.9);font:inherit;cursor:pointer;box-shadow:none}
.l2-ayuda{display:none;margin:-18px 0 26px;color:rgba(255,255,255,.55);font-size:13px;line-height:1.5}
.l2-ayuda.visible{display:block}
.l2-boton{position:relative;width:100%;height:54px;margin:0;border:0;border-radius:14px;background:#fff;color:#0a243f;
  font-family:inherit;font-size:16px;font-weight:600;letter-spacing:.01em;cursor:pointer;overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .15s ease,background .3s ease,color .3s ease}
.l2-boton:active{transform:scale(.98)}
.l2-boton .l2-spin{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px;border-radius:50%;
  border:2px solid rgba(10,36,63,.2);border-top-color:#0a243f;opacity:0;animation:l2-giro .8s linear infinite}
.l2-boton.cargando .l2-txt{opacity:0}.l2-boton.cargando .l2-spin{opacity:1}
.l2-boton.ok{background:#E7F7EE;color:#0B6B3A}
.l2-pie{margin:28px 0 0;text-align:center;font-size:11px;letter-spacing:.08em;color:rgba(255,255,255,.3)}
.l2-agitar{animation:l2-agitar .45s cubic-bezier(.36,.07,.19,.97)}
@keyframes l2-giro{to{transform:rotate(360deg)}}
@keyframes l2-agitar{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}
@media (min-width:761px){
  .l2-inner{justify-content:center;gap:56px}
  .l2-logo{width:300px}
  .l2-halo{top:calc(50% - 180px)}
}
@media (prefers-reduced-motion:reduce){
  .l2-form > *{transform:none;filter:none}
  .login2.directo .l2-logo{filter:none}
}

/* ===== Inicio móvil Molinero (solo móvil) ===== */
.m2-barra,.m2-hoja,.m2-velo,.m2-hero,.m2-flota>.m2-acciones,.m2-seccion>.m2-seccion-cab,.m2-accesos,.m2-pestanas{display:none}
@media (max-width:760px){
  body.m2-en-inicio{background:#f8f7f5}
  body.m2-en-inicio main{padding:0 0 120px!important;background:#f8f7f5}
  body.m2-en-inicio main>header{display:none!important}
  body.m2-en-inicio .home-dashboard-layout{display:block!important;padding:0!important;margin:0!important;gap:0!important;max-width:none!important}
  body.m2-en-inicio .home-dashboard-layout>.welcome{display:none!important}
  .worker-chat .suggestion-launcher,.worker-chat .chat-launcher{display:none!important}
  main{padding-bottom:110px}

  /* Cabecera */
  .m2-hero{display:block;position:relative;overflow:hidden;padding:calc(22px + env(safe-area-inset-top)) 20px 86px;color:#fff;
    background:radial-gradient(120% 90% at 80% 0%,#13365c 0%,#0a243f 50%,#06182b 100%);border-radius:0 0 30px 30px}
  .m2-hero::before{content:"";position:absolute;right:-60px;top:-40px;width:260px;height:260px;border-radius:50%;
    background:radial-gradient(circle,rgba(18,63,111,.45),transparent 65%);filter:blur(10px);pointer-events:none}
  .m2-hero-top{position:relative;display:flex;align-items:center;justify-content:space-between}
  .m2-hero-logo{height:44px;width:auto}
  .m2-avatar{width:42px;height:42px;padding:0;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#fff;
    font:600 13px/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.02em;box-shadow:none}
  .m2-saludo{position:relative;margin-top:26px}
  .m2-fecha,.m2-fecha *{margin:0!important;font-size:12px!important;font-weight:500!important;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)!important}
  .m2-saludo h1{margin:6px 0 0;font-size:28px;font-weight:600;letter-spacing:-.02em;color:#fff;line-height:1.15}
  .m2-clima{position:relative;margin-top:12px}
  .m2-clima .home-weather-line{display:flex!important;align-items:center;gap:8px;margin:0!important;font-size:14px!important;color:rgba(255,255,255,.82)!important}
  .m2-clima .home-weather-line *{color:inherit!important;font-size:inherit!important}
  .m2-clima .home-weather-line strong,.m2-clima .home-weather-line b{color:#fff!important;font-weight:600!important}

  /* Tarjeta flotante: acciones + contadores */
  .m2-flota{position:relative;z-index:1;margin:-62px 16px 0;padding:16px;background:#fff;border-radius:22px;
    box-shadow:0 18px 40px -18px rgba(10,36,63,.35),0 2px 6px rgba(10,36,63,.05)}
  .m2-flota>.m2-acciones{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .m2-acciones button{height:48px!important;min-height:0!important;margin:0!important;padding:0 10px!important;border:0!important;border-radius:14px!important;
    display:flex!important;align-items:center;justify-content:center;gap:8px;font-size:14px!important;font-weight:600!important;box-shadow:none!important;width:100%!important}
  .m2-acciones button svg{width:18px;height:18px;flex:0 0 auto}
  .m2-acciones #homeNewTask{background:#0a243f!important;color:#fff!important}
  .m2-acciones #homeBilling{background:#faf7f3!important;color:#113b67!important}
  .m2-flota .metrics{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;margin:16px 0 0!important;padding:14px 0 0!important;border-top:1px solid #eeece9;background:none!important;box-shadow:none!important}
  .m2-flota .metrics article{display:block!important;min-height:0!important;height:auto!important;margin:0!important;padding:4px 0!important;border:0!important;border-radius:12px!important;background:none!important;box-shadow:none!important;text-align:center}
  .m2-flota .metrics article::before,.m2-flota .metrics article::after{display:none!important}
  .m2-flota .metrics article:active{background:#f8f7f5!important}
  .m2-flota .metrics .metric-icon,.m2-flota .metrics p{display:none!important}
  .m2-flota .metrics article>div{display:flex!important;flex-direction:column-reverse;align-items:center;gap:2px;padding:0!important}
  .m2-flota .metrics strong{display:block;margin:0!important;font-size:22px!important;font-weight:600!important;letter-spacing:-.02em;color:#0e2033!important;line-height:1.2}
  .m2-flota .metrics small{display:flex;align-items:center;gap:4px;margin:0!important;font-size:11px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:#6B7488!important}
  .m2-flota .metrics small::before{content:"";width:6px;height:6px;border-radius:50%;background:#113b67}
  .m2-flota .metrics article:nth-child(2) small::before{background:#6D4AE0}
  .m2-flota .metrics article:nth-child(3) small::before{background:#B7791F}
  .m2-flota .metrics article:nth-child(4) small::before{background:#12805C}

  /* Secciones */
  .m2-seccion{margin:28px 16px 0}
  .m2-seccion>.m2-seccion-cab{display:flex;align-items:baseline;justify-content:space-between;margin:0 4px 12px}
  .m2-seccion-cab h2{margin:0;font-size:17px;font-weight:600;letter-spacing:-.01em;color:#0e2033}
  .m2-seccion-cab button{padding:0;border:0;background:none;box-shadow:none;font-size:13px;font-weight:500;color:#113b67}
  .m2-accesos{display:flex;gap:6px;overflow-x:auto;margin:0 -16px;padding:2px 16px 6px;scrollbar-width:none}
  .m2-accesos::-webkit-scrollbar{display:none}
  .m2-acceso{flex:0 0 76px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:0;background:none;box-shadow:none;
    font-size:11.5px;font-weight:500;color:#0e2033;text-align:center;line-height:1.2}
  .m2-acceso span{width:54px;height:54px;border-radius:18px;background:#fff;display:grid;place-items:center;color:#0a243f;
    box-shadow:0 1px 2px rgba(10,36,63,.06),0 6px 16px -10px rgba(10,36,63,.25)}
  .m2-acceso svg{width:22px;height:22px;fill:none;stroke:currentColor}
  .m2-acceso img{width:24px;height:auto}

  /* Actividad con pestañas */
  .m2-actividad .home-activity-rail{display:block!important;position:static!important;width:auto!important;margin:0!important;padding:0 0 6px!important;background:#fff!important;border-radius:22px!important;
    box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -20px rgba(10,36,63,.3)!important;overflow:hidden}
  .m2-pestanas{display:grid;position:relative;grid-template-columns:repeat(4,minmax(0,1fr));margin:6px;padding:4px;background:#f8f7f5;border-radius:14px}
  .m2-pestanas button{position:relative;z-index:1;height:36px;padding:0;border:0;background:none;box-shadow:none;font-size:13px;font-weight:500;color:#6B7488;transition:color .3s}
  .m2-pestanas button.on{color:#0e2033;font-weight:600}
  .m2-indicador{position:absolute;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/4);border-radius:10px;background:#fff;box-shadow:0 1px 3px rgba(10,36,63,.12);
    transition:transform .45s cubic-bezier(.22,1,.36,1)}
  .home-activity-rail[data-m2-tab] .home-activity-card,.home-activity-rail[data-m2-tab] .home-activity-card[hidden]{display:none!important;margin:0!important;padding:4px 16px 4px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;min-height:0!important}
  .home-activity-rail[data-m2-tab="0"] .home-messages-card,.home-activity-rail[data-m2-tab="1"] .home-client-messages-card,.home-activity-rail[data-m2-tab="2"] .home-tasks-card,.home-activity-rail[data-m2-tab="3"] .home-reminders-card{display:block!important;animation:m2-entra .45s cubic-bezier(.22,1,.36,1)}
  .home-activity-rail[data-m2-tab] .home-activity-heading{display:flex!important;justify-content:flex-end;margin:0!important;padding:6px 0 0!important;border:0!important;min-height:0!important}
  .home-activity-rail[data-m2-tab] .home-activity-heading>:not(button):not(a){display:none!important}
  .home-activity-rail[data-m2-tab] .home-activity-heading button,.home-activity-rail[data-m2-tab] .home-activity-heading a{font-size:12.5px!important;font-weight:600!important;color:#113b67!important;background:none!important;border:0!important;box-shadow:none!important;padding:4px 0!important}
  .home-activity-rail[data-m2-tab] .home-activity-list{margin:0!important;padding:0!important;border:0!important}

  /* Novedades */
  body.m2-en-inicio .news-portal{margin:28px 0 0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important}
  body.m2-en-inicio .news-portal-heading{display:flex!important;align-items:center;justify-content:space-between;min-height:0!important;height:auto!important;margin:0 20px 12px!important;padding:0!important;gap:10px}
  body.m2-en-inicio .news-portal-heading{flex-direction:row!important;flex-wrap:nowrap!important}
  body.m2-en-inicio .news-portal-heading>*{flex:0 1 auto!important;min-height:0!important;height:auto!important;padding:0!important;margin:0!important;background:none!important}
  body.m2-en-inicio .news-portal-heading>div:first-child>:not(h2):not(h3){display:none!important}
  body.m2-en-inicio .news-portal-heading h2,body.m2-en-inicio .news-portal-heading h3{margin:0!important;font-size:17px!important;font-weight:600!important;letter-spacing:-.01em;color:#0e2033!important;line-height:1.3}
  body.m2-en-inicio .news-carousel-controls{display:flex!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;gap:0!important}
  body.m2-en-inicio .news-carousel-controls>:not(#refreshHomeNews){display:none!important}
  body.m2-en-inicio #refreshHomeNews{height:auto!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;font-size:13px!important;font-weight:500!important;color:#113b67!important;white-space:nowrap}
  body.m2-en-inicio .news-topic-filters{display:flex!important;gap:8px;overflow-x:auto;flex-wrap:nowrap!important;margin:0 0 14px!important;padding:0 16px!important;scrollbar-width:none}
  body.m2-en-inicio .news-topic-filters::-webkit-scrollbar{display:none}
  body.m2-en-inicio .news-topic-filters button{flex:0 0 auto;height:34px!important;padding:0 14px!important;border-radius:17px!important;background:#fff!important;border:1px solid #eeece9!important;box-shadow:none!important;font-size:13px!important;font-weight:500!important;color:#6B7488!important}
  body.m2-en-inicio .news-topic-filters button.active{background:#0a243f!important;border-color:#0a243f!important;color:#fff!important}
  body.m2-en-inicio #homeNews{display:flex!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;margin:0!important;padding:0 16px 8px!important;scrollbar-width:none;grid-template-columns:none!important}
  body.m2-en-inicio #homeNews::-webkit-scrollbar{display:none}
  body.m2-en-inicio #homeNews .news-card{flex:0 0 80%;scroll-snap-align:start;margin:0!important;border:0!important;border-radius:20px!important;overflow:hidden;background:#fff!important;
    box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -20px rgba(10,36,63,.3)!important}
  body.m2-en-inicio #homeNews .news-card-image img{display:block;width:100%;height:130px!important;object-fit:cover}
  body.m2-en-inicio #homeNews .news-card-body{padding:14px 16px 16px!important}
  body.m2-en-inicio #homeNews h4{margin:8px 0 0!important;font-size:15px!important;font-weight:600!important;line-height:1.35!important;color:#0e2033!important;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  body.m2-en-inicio #homeNews .news-empty{flex:1 0 100%;margin:0 !important;border-radius:20px!important;background:#fff!important;border:0!important}

  body.m2-en-inicio .m2-flota,body.m2-en-inicio .m2-seccion{width:auto!important;max-width:none!important;min-width:0!important;box-sizing:border-box}
  body.m2-en-inicio .m2-actividad .home-activity-rail{width:auto!important;max-width:none!important}
  body.m2-en-inicio #homeNews .news-card{display:flex!important;flex-direction:column;height:auto!important;min-height:0!important}
  body.m2-en-inicio #homeNews .news-card-body{display:flex!important;flex-direction:column;flex:1;height:auto!important;min-height:0!important}
  body.m2-en-inicio #homeNews .news-card-actions{margin-top:auto!important;padding-top:12px!important}
  body.m2-en-inicio #homeNews .news-card-image{display:block;background:linear-gradient(135deg,#0a243f,#123f6f)}
  /* Barra inferior */
  .m2-barra{display:grid;position:fixed;z-index:1000;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));height:68px;border-radius:24px;
    grid-template-columns:repeat(5,1fr);align-items:center;background:rgba(255,255,255,.88);
    -webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 12px 30px -12px rgba(10,36,63,.35),0 0 0 1px rgba(10,36,63,.05)}
  .m2-tab{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;border:0;background:none;box-shadow:none;color:#6B7488;font:inherit}
  .m2-tab svg{width:22px;height:22px}
  .m2-tab small{font-size:10.5px;font-weight:500}
  body:has(.modal-shell.open) .m2-barra,body:has(.account-shell) .m2-barra,body:has(.chat-panel[aria-hidden="false"]) .m2-barra{transform:translateY(160%);pointer-events:none}
  .m2-barra{transition:transform .35s cubic-bezier(.22,1,.36,1)}
  .m2-barra .m2-tab,.m2-barra .m2-tab:hover,.m2-barra .m2-tab.active{background:none!important;border-radius:0}
  .m2-tab.active{color:#0a243f!important}.m2-tab.active small{font-weight:600}
  .m2-badge{position:absolute;top:-5px;left:calc(50% + 5px);min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#D64545;color:#fff;
    font-size:10px;font-weight:600;display:grid;place-items:center;border:2px solid #fff}
  .m2-badge[hidden]{display:none}
  .m2-mas{justify-self:center;width:52px;height:52px;padding:0;border:0;border-radius:18px;background:#0a243f;color:#fff;display:grid;place-items:center;
    box-shadow:0 10px 20px -8px rgba(10,36,63,.6);transition:transform .35s cubic-bezier(.22,1,.36,1)}
  .m2-mas svg{width:24px;height:24px}
  .m2-mas.abierto{transform:rotate(45deg)}
  .m2-velo{display:block;position:fixed;inset:0;z-index:1001;background:rgba(6,24,43,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}
  .m2-velo.on{opacity:1;visibility:visible}
  .m2-hoja{display:block;position:fixed;z-index:1002;left:0;right:0;bottom:0;max-height:82vh;overflow-y:auto;padding:10px 20px calc(30px + env(safe-area-inset-bottom));
    background:#fff;border-radius:28px 28px 0 0;transform:translateY(105%);visibility:hidden;transition:transform .5s cubic-bezier(.22,1,.36,1),visibility .5s}
  .m2-hoja.on{transform:none;visibility:visible}
  .m2-asa{display:block;width:40px;height:5px;border-radius:3px;background:#e1ded9;margin:0 auto 18px}
  .m2-hoja h3{margin:0 0 12px;font-size:17px;font-weight:600;color:#0e2033}
  .m2-op{display:flex;align-items:center;gap:14px;width:100%;padding:11px 4px;border:0;border-radius:14px;background:none;box-shadow:none;text-align:left;font:inherit;color:#0e2033}
  .m2-op:active{background:#f8f7f5}
  .m2-op span{flex:0 0 44px;height:44px;border-radius:14px;display:grid;place-items:center}
  .m2-op span svg{width:20px;height:20px}
  .m2-op b{display:block;font-size:15px;font-weight:600}
  .m2-op small{display:block;margin-top:1px;font-size:12.5px;color:#6B7488}
  .m2-rejilla{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 4px}
  .m2-rejilla .m2-acceso{flex:none;width:auto}
  @keyframes m2-entra{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
}

/* Unión de la pestaña activa: se oculta mientras la barra lateral se pliega y aparece con fundido al terminar */
@media (min-width:761px){
  /* Curva con interior transparente: nunca pinta esquinas oscuras sobre el lienzo */
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{background:radial-gradient(circle at 0 0,transparent 17.5px,var(--sidebar-active-surface,#fbf9f7) 18px)!important;
    animation:curva-aparece .95s cubic-bezier(.4,0,.2,1) both}
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{background:radial-gradient(circle at 0 100%,transparent 17.5px,var(--sidebar-active-surface,#fbf9f7) 18px)!important;
    animation:curva-aparece .95s cubic-bezier(.4,0,.2,1) both}
}
@keyframes curva-aparece{from{opacity:0}to{opacity:1}}
@media (max-width:760px){
  .m2-acceso span{position:relative}
  .m2-alerta{position:absolute;top:-6px;right:-8px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;border:2px solid #fff;
    display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:700;line-height:1;color:#fff;background:#D64545;white-space:nowrap}
  .m2-alerta-factura{background:#113b67}
  .m2-alerta-idea{background:#B7791F}
  .m2-alerta+.m2-alerta{top:auto;bottom:-6px}
  .m2-menu .m2-punto{position:absolute;top:-2px;left:calc(50% + 7px);width:9px;height:9px;border-radius:50%;background:#D64545;border:2px solid #fff}
  .m2-menu .m2-punto[hidden]{display:none}
}

/* Sin líneas en la unión con escalas de Windows (125 %, 150 %…): la barra no recorta la pestaña y las curvas solapan 1 px */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar{contain:none!important}
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before{top:-17px!important;width:26px!important;right:22px!important}
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{bottom:-17px!important;width:26px!important;right:22px!important}
}

/* Al plegarse, la pestaña activa sigue el ancho real de la barra en cada instante (sin animación propia de ancho) */
@media (min-width:761px){
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active{transition:padding .86s cubic-bezier(.16,.72,.22,1),border-radius .68s!important}
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::before,
  body:not(.client-preview-mode) .sidebar:not(:hover) nav button.active::after{animation-duration:.6s!important}
}

/* Vista de cliente: no mostrar la barra inferior del despacho */
@media (max-width:760px){
  body.client-preview-mode .m2-barra,body.client-preview-mode .m2-hoja,body.client-preview-mode .m2-velo{display:none!important}
}

/* ===== Área de cliente en móvil (solo móvil) ===== */
@media (max-width:760px){
  body.client-preview-mode main:has(.client-mobile-portal.c2){padding:0!important;background:#f8f7f5!important}
  .client-mobile-portal.c2{background:#f8f7f5!important;padding:0 0 120px!important;min-height:100vh}
  .client-mobile-portal.c2 .client-portal-header{display:block!important;position:relative!important;overflow:hidden;height:auto!important;min-height:0!important;margin:0!important;
    padding:calc(22px + env(safe-area-inset-top)) 20px 92px!important;border:0!important;border-radius:0 0 30px 30px!important;box-shadow:none!important;color:#fff;
    background:radial-gradient(120% 90% at 80% 0%,#13365c 0%,#0a243f 50%,#06182b 100%)!important}
  .client-mobile-portal.c2 .client-portal-header::before{content:"";position:absolute;right:-60px;top:-40px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.45),transparent 65%);filter:blur(10px);pointer-events:none}
  .c2-top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px}
  .c2-top img{height:44px!important;width:auto!important;max-width:60%;filter:none!important}
  .c2-top .client-preview-user{display:flex!important;align-items:center;gap:8px;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:4px 12px 4px 4px!important;
    border-radius:22px!important;background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:none!important;color:#fff!important}
  .c2-top .client-preview-user>span:first-child{width:32px!important;height:32px!important;border-radius:50%!important;background:rgba(255,255,255,.16)!important;color:#fff!important;display:grid!important;place-items:center;font-size:12px!important;font-weight:600!important}
  .c2-top .client-preview-user .profile-copy{display:block!important}
  .c2-top .client-preview-user .profile-copy strong{display:none!important}
  .c2-top .client-preview-user .profile-copy small{display:block;margin:0!important;color:#fff!important;font-size:12px!important;opacity:1!important}
  .client-mobile-portal.c2 .client-greeting{position:relative;margin:28px 0 0!important;padding:0!important;background:none!important;text-align:left!important}
  .c2-eyebrow{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}
  .client-mobile-portal.c2 .client-greeting h1{margin:6px 0 0!important;font-size:30px!important;font-weight:600!important;letter-spacing:-.02em;color:#fff!important;line-height:1.15}
  .client-mobile-portal.c2 .client-greeting p{margin:6px 0 0!important;font-size:14px!important;color:rgba(255,255,255,.72)!important}
  .client-mobile-portal.c2 .client-portal-content{padding:0!important;margin:0!important;background:none!important;display:block!important;gap:0!important}

  .c2-flota{position:relative;z-index:1;margin:-66px 16px 0;padding:8px;background:#fff;border-radius:22px;box-shadow:0 18px 40px -18px rgba(10,36,63,.35),0 2px 6px rgba(10,36,63,.05)}
  .c2-flota hr{height:1px;margin:0 12px;border:0;background:#eeece9}
  .client-mobile-portal.c2 .c2-fila{display:flex!important;align-items:center;gap:14px;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:14px 12px!important;
    border:0!important;border-radius:16px!important;background:none!important;box-shadow:none!important;text-align:left;color:#0e2033!important;font:inherit}
  .c2-fila:active{background:#f8f7f5!important}
  .c2-ic{flex:0 0 48px;height:48px;border-radius:15px;display:grid;place-items:center}
  .c2-ic svg{width:22px;height:22px}
  .c2-ic-navy{background:#0a243f;color:#fff}.c2-ic-azul{background:#faf7f3;color:#113b67}.c2-ic-verde{background:#E8F6F0;color:#12805C}
  .c2-txt{min-width:0}
  .c2-txt b{display:block;font-size:15px;font-weight:600;color:inherit}
  .c2-txt small{display:block;margin-top:2px;font-size:12.5px;color:#6B7488}
  .c2-flecha{margin-left:auto;color:#A5ADBF;display:grid}
  .c2-flecha svg{width:18px;height:18px}

  .client-mobile-portal.c2 .client-services{margin:28px 16px 0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
  .client-mobile-portal.c2 .client-section-title{display:flex!important;align-items:baseline;justify-content:space-between;margin:0 4px 12px!important;padding:0!important}
  .client-mobile-portal.c2 .client-section-title h2{margin:0!important;font-size:17px!important;font-weight:600!important;color:#0e2033!important}
  .c2-cuenta{font-size:12.5px;color:#6B7488}
  .client-mobile-portal.c2 .c2-contratado{position:relative;display:flex!important;flex-direction:row!important;align-items:center;gap:14px;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:18px!important;
    border:0!important;border-radius:22px!important;overflow:hidden;color:#fff!important;text-align:left;background:linear-gradient(135deg,#13365c 0%,#113b67 100%)!important;box-shadow:0 16px 30px -16px rgba(17,59,103,.6)!important}
  .c2-contratado::after{content:"";position:absolute;right:-40px;top:-60px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}
  .c2-contratado .c2-ic{flex-basis:52px;height:52px;background:rgba(255,255,255,.14);color:#fff}
  .c2-contratado .c2-ic svg{width:24px;height:24px;stroke:currentColor}
  .c2-contratado .c2-txt b{font-size:16px}
  .c2-contratado em{display:inline-flex;align-items:center;gap:5px;margin-top:6px;padding:3px 9px;border-radius:9px;background:rgba(52,211,153,.18);color:#A7F3D0;font-style:normal;font-size:11.5px;font-weight:600}
  .c2-contratado em::before{content:"";width:6px;height:6px;border-radius:50%;background:#34D399}
  .c2-contratado .c2-flecha{color:#fff;position:relative;z-index:1}
  .client-mobile-portal.c2 .c2-rejilla{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:10px 0 0!important}
  .client-mobile-portal.c2 .c2-rejilla .client-service-card{position:relative;display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:flex-start;gap:10px;height:auto!important;min-height:0!important;margin:0!important;padding:14px!important;
    border:0!important;border-radius:18px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 8px 24px -18px rgba(10,36,63,.35)!important;text-align:left!important;opacity:1!important;filter:none!important}
  .c2-rejilla .client-service-card:active{transform:scale(.98)}
  .c2-rejilla .client-service-card .c2-ic{flex:none;width:40px;height:40px;border-radius:13px;background:#f8f7f5;color:#8A93A8}
  .c2-rejilla .client-service-card .c2-ic svg{width:20px;height:20px;stroke:currentColor}
  .c2-rejilla .client-service-card b{font-size:13.5px;font-weight:600;line-height:1.25;color:#3a4959}
  .c2-rejilla .client-service-card small{font-size:11.5px;color:#9AA2B4}
  .c2-candado{position:absolute;top:12px;right:12px;color:#B7BECC;display:grid}
  .c2-candado svg{width:14px;height:14px}
  .client-mobile-portal.c2 .c2-rejilla .client-service-card:last-child:nth-child(odd){grid-column:1/-1;flex-direction:row;align-items:center!important}
  .c2-rejilla .client-service-card:last-child:nth-child(odd) small{margin-left:auto;margin-right:22px;white-space:nowrap}

  .client-mobile-portal.c2 .client-help-card{display:flex!important;align-items:center;gap:14px;width:auto!important;height:auto!important;min-height:0!important;margin:28px 16px 0!important;padding:16px!important;
    border:0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 8px 24px -18px rgba(10,36,63,.35)!important;color:#0e2033!important;text-align:left}
  .c2-equipo{display:flex;margin-top:8px}
  .c2-equipo i{width:24px;height:24px;margin-left:-6px;border-radius:50%;border:2px solid #fff;display:grid;place-items:center;font-style:normal;font-size:9px;font-weight:700;color:#fff}
  .c2-equipo i:first-child{margin-left:0}

  body.client-preview-mode .c2-nav{position:fixed!important;z-index:1000;left:12px!important;right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;top:auto!important;width:auto!important;height:68px!important;margin:0!important;padding:0!important;
    display:grid!important;grid-template-columns:repeat(4,1fr);align-items:center;border:0!important;border-radius:24px!important;background:rgba(255,255,255,.88)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 12px 30px -12px rgba(10,36,63,.35),0 0 0 1px rgba(10,36,63,.05)!important}
  body.client-preview-mode .c2-nav button{position:relative;display:flex!important;flex-direction:column;align-items:center;gap:4px;height:auto!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#6B7488!important}
  body.client-preview-mode .c2-nav button span{display:grid!important;font-size:0!important;line-height:0!important}
  body.client-preview-mode .c2-nav button svg{width:22px;height:22px}
  body.client-preview-mode .c2-nav button small{font-size:10.5px!important;font-weight:500!important;color:inherit!important}
  body.client-preview-mode .c2-nav button.active{color:#0a243f!important}
  body.client-preview-mode .c2-nav button.active small{font-weight:600!important}
  body.client-preview-mode .c2-nav button.active::before{content:"";position:absolute;top:-12px;width:20px;height:3px;border-radius:2px;background:#0a243f}
}
@media (max-width:760px){
  body.client-preview-mode main:has(.client-mobile-portal.c2){transform:none!important;filter:none!important;overflow:visible!important}
  .client-mobile-portal.c2 .c2-top{display:flex!important}
  .client-mobile-portal.c2 .c2-top img{display:block!important}
  .client-mobile-portal.c2 .c2-fila>.c2-ic{display:grid!important;flex:0 0 48px!important;width:48px!important;height:48px!important;padding:0!important;border-radius:15px!important}
  .client-mobile-portal.c2 .c2-fila>.c2-ic-navy{background:#0a243f!important;color:#fff!important}
  .client-mobile-portal.c2 .c2-fila>.c2-ic-azul{background:#faf7f3!important;color:#113b67!important}
  .client-mobile-portal.c2 .c2-fila>.c2-txt,.client-mobile-portal.c2 .client-help-card>.c2-txt,.client-mobile-portal.c2 .c2-contratado>.c2-txt{display:block!important;flex:1 1 auto!important;width:auto!important;height:auto!important;padding:0!important;background:none!important;border-radius:0!important;box-shadow:none!important;text-align:left!important}
  .client-mobile-portal.c2 .c2-txt b{font-weight:600!important;line-height:1.3!important}
  .client-mobile-portal.c2 .c2-txt small,.client-mobile-portal.c2 .c2-rejilla .client-service-card small{padding:0!important;margin-top:2px;border-radius:0!important;background:none!important;border:0!important;font-weight:400!important;text-transform:none!important;letter-spacing:0!important}
  .client-mobile-portal.c2 .c2-contratado>.c2-ic{display:grid!important;flex:0 0 52px!important;width:52px!important;height:52px!important;border-radius:16px!important;background:rgba(255,255,255,.14)!important;color:#fff!important}
  .client-mobile-portal.c2 .client-help-card>.c2-ic{display:grid!important;flex:0 0 48px!important;width:48px!important;height:48px!important;border-radius:15px!important;background:#E8F6F0!important;color:#12805C!important}
  .client-mobile-portal.c2 .c2-flecha{flex:0 0 auto}
  .client-mobile-portal.c2 .client-help-card{width:calc(100% - 32px)!important;box-sizing:border-box}
  body.client-preview-mode .c2-nav{transform:none!important;max-width:none!important}
}

@media (max-width:760px){
  .client-mobile-portal.c2 .c2-fila .c2-txt b{display:block!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:none!important;color:#0e2033!important;font-size:15px!important;text-align:left!important;box-shadow:none!important}
  .client-mobile-portal.c2 .c2-fila .c2-txt small{color:#6B7488!important;font-size:12.5px!important;text-align:left!important}
  .client-mobile-portal.c2 .c2-fila{justify-content:flex-start!important}
}
@media (min-width:761px){body > .c2-nav{display:none!important}}
@media (max-width:760px){
  .client-mobile-portal.c2 .c2-fila>.c2-txt,.client-mobile-portal.c2 .c2-fila>.c2-ic{margin:0!important}
  .client-mobile-portal.c2 .c2-fila>.c2-txt{flex:1 1 auto!important;text-align:left!important}
}
@media (max-width:760px){
  .client-mobile-portal.c2 .c2-txt{place-items:normal!important;justify-items:normal!important;align-items:normal!important}
}

/* ===== Área de cliente en escritorio ===== */
.cd2{display:none}
@media (min-width:761px){
  body.client-preview-mode main:has(.cd2){padding:0!important;background:#f8f7f5!important;display:block!important}
  .client-desktop-shell.cd2-oculto{display:none!important}
  .cd2{display:block;min-height:100vh;background:#f8f7f5;color:#0e2033;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
  .cd2 *{box-sizing:border-box}
  .cd2 button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;text-align:left;box-shadow:none;margin:0;min-height:0}
  .cd2 svg{display:block}
  .cd2 h1,.cd2 h2,.cd2 h3,.cd2 h4,.cd2 p{margin:0}
  .cd2-ancho{max-width:1240px;margin:0 auto;padding:0 40px}

  .cd2-cab{position:relative;overflow:hidden;color:#fff;padding-bottom:120px;background:radial-gradient(90% 140% at 85% -10%,#13365c 0%,#0a243f 45%,#06182b 100%)}
  .cd2-cab::before{content:"";position:absolute;right:6%;top:-120px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.42),transparent 65%);filter:blur(12px);pointer-events:none}
  .cd2-cab::after{content:"";position:absolute;left:-120px;bottom:-220px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(255,255,255,.06);pointer-events:none}
  .cd2-barra{position:relative;display:flex;align-items:center;gap:24px;height:84px}
  .cd2-barra>img{height:46px;width:auto}
  .cd2-lema{padding-left:22px;border-left:1px solid rgba(255,255,255,.18);font-size:13px;line-height:1.35;color:rgba(255,255,255,.6);font-style:italic}
  .cd2-menu{display:flex;gap:4px;margin-left:auto;padding:5px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)}
  .cd2 .cd2-menu button{display:flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:12px;font-size:14px;color:rgba(255,255,255,.72);transition:background .2s,color .2s}
  .cd2-menu button svg{width:18px;height:18px}
  .cd2 .cd2-menu button:hover{color:#fff;background:rgba(255,255,255,.08)}
  .cd2 .cd2-menu button.on{background:#fff;color:#0a243f;font-weight:600}
  .cd2 .cd2-perfil{display:flex;align-items:center;gap:10px;padding:5px 14px 5px 5px;border-radius:24px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:13px;color:#fff}
  .cd2-perfil i{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;font-style:normal;font-weight:600;font-size:12px}
  .cd2 .cd2-salir{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.14);cursor:default}
  .cd2-salir svg{width:18px;height:18px}
  .cd2-saludo{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:44px}
  .cd2-saludo small{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55)}
  .cd2-saludo h1{margin-top:10px;font-size:44px;font-weight:600;letter-spacing:-.025em;line-height:1.05;color:#fff}
  .cd2-saludo p{max-width:560px;margin-top:14px;font-size:15.5px;line-height:1.6;color:rgba(255,255,255,.72)}
  .cd2-sello{flex:0 0 auto;text-align:right;padding-bottom:6px}
  .cd2-sello b{display:block;font-size:12px;letter-spacing:.2em;color:rgba(255,255,255,.9)}
  .cd2-sello span{display:block;margin-top:6px;font-family:Georgia,serif;font-style:italic;font-size:15px;color:rgba(255,255,255,.55)}

  .cd2-flota{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:-72px}
  .cd2 .cd2-acc{display:flex;align-items:center;gap:16px;padding:22px;border-radius:22px;background:#fff;box-shadow:0 22px 44px -24px rgba(10,36,63,.45),0 2px 6px rgba(10,36,63,.05);transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s}
  .cd2 .cd2-acc:hover{transform:translateY(-3px);box-shadow:0 28px 50px -24px rgba(10,36,63,.5),0 2px 6px rgba(10,36,63,.05)}
  .cd2-ic{flex:0 0 54px;width:54px;height:54px;border-radius:17px;display:grid;place-items:center}
  .cd2-ic svg{width:24px;height:24px;stroke:currentColor;fill:none}
  .cd2-acc b{display:block;font-size:16px;font-weight:600}
  .cd2-acc small{display:block;margin-top:3px;font-size:13px;color:#6B7488}
  .cd2-fl{margin-left:auto;color:#A5ADBF;transition:transform .25s}
  .cd2-fl svg{width:20px;height:20px}
  .cd2-acc:hover .cd2-fl{transform:translateX(3px);color:#113b67}
  .cd2-acc em{margin-left:auto;padding:4px 10px;border-radius:10px;background:#FDECEC;color:#D64545;font-style:normal;font-size:12px;font-weight:600}

  .cd2-cuerpo{display:grid;grid-template-columns:1.45fr 1fr;gap:28px;margin-top:40px;align-items:stretch}
  .cd2-bloque{display:flex;align-items:baseline;justify-content:space-between;margin:0 4px 14px}
  .cd2-bloque h2{font-size:20px;font-weight:600;letter-spacing:-.01em;color:#0e2033}
  .cd2-bloque span{font-size:13px;color:#6B7488}
  .cd2-contratado{position:relative;display:flex;align-items:center;gap:20px;padding:26px 28px;border-radius:24px;color:#fff;overflow:hidden;cursor:pointer;background:linear-gradient(135deg,#13365c 0%,#113b67 100%);box-shadow:0 20px 40px -22px rgba(17,59,103,.7)}
  .cd2-contratado::after{content:"";position:absolute;right:-60px;top:-90px;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}
  .cd2-contratado .cd2-ic{flex-basis:64px;width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,.14);color:#fff}
  .cd2-contratado .cd2-ic svg{width:28px;height:28px}
  .cd2-contratado b{display:block;font-size:19px;font-weight:600}
  .cd2-contratado p{margin-top:4px;font-size:13.5px;color:rgba(255,255,255,.72)}
  .cd2-contratado em{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:4px 10px;border-radius:10px;background:rgba(52,211,153,.18);color:#A7F3D0;font-style:normal;font-size:12px;font-weight:600}
  .cd2-contratado em::before{content:"";width:7px;height:7px;border-radius:50%;background:#34D399}
  .cd2 .cd2-entrar{position:relative;z-index:1;margin-left:auto;display:flex;align-items:center;gap:8px;height:46px;padding:0 20px;border-radius:14px;background:#fff;color:#0a243f;font-weight:600;font-size:14px;white-space:nowrap}
  .cd2-entrar svg{width:16px;height:16px}
  .cd2-rejilla{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
  .cd2 .cd2-serv{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:18px;border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 26px -20px rgba(10,36,63,.4);transition:transform .25s cubic-bezier(.22,1,.36,1)}
  .cd2 .cd2-serv:hover{transform:translateY(-3px)}
  .cd2-serv .cd2-ic{flex:none;width:44px;height:44px;border-radius:14px;background:#f8f7f5;color:#8A93A8}
  .cd2-serv .cd2-ic svg{width:21px;height:21px}
  .cd2-serv b{font-size:14.5px;font-weight:600;color:#3a4959;line-height:1.3}
  .cd2-serv small{font-size:12px;color:#9AA2B4}
  .cd2-mas{margin-top:auto;font-size:12.5px;font-weight:600;color:#113b67}
  .cd2-candado{position:absolute;top:16px;right:16px;color:#B7BECC}
  .cd2-candado svg{width:15px;height:15px}
  .cd2 .cd2-nuevo{justify-content:center;background:linear-gradient(160deg,#fff 40%,#fcf9f6);border:1px dashed #eddfcf;box-shadow:none}
  .cd2 .cd2-nuevo:hover{transform:none}
  .cd2-nuevo .cd2-ic{background:#faf7f3;color:#113b67}

  .cd2-lateral{position:relative;min-height:420px}
  .cd2-lateral-in{position:absolute;inset:0;display:flex;flex-direction:column;gap:20px}
  .cd2-tarjeta{flex:1 1 0;min-height:0;display:flex;flex-direction:column;padding:8px 22px 0;border-radius:22px;background:#fff;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -22px rgba(10,36,63,.4)}
  .cd2-tcab{display:flex;align-items:center;justify-content:space-between;padding:14px 0 10px}
  .cd2-tcab h3{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#0e2033}
  .cd2-tcab h3 i{width:34px;height:34px;border-radius:11px;display:grid;place-items:center}
  .cd2-tcab h3 i svg{width:17px;height:17px}
  .cd2-tcab h3 small{padding:2px 8px;border-radius:9px;background:#f8f7f5;font-size:11.5px;font-weight:600;color:#6B7488}
  .cd2 .cd2-tcab button{font-size:13px;font-weight:600;color:#113b67}
  .cd2-lista{flex:1;min-height:0;overflow-y:auto;margin-right:-10px;padding-right:10px;scrollbar-width:thin;scrollbar-color:#d9d5d0 transparent;
    -webkit-mask-image:linear-gradient(#000 calc(100% - 26px),transparent);mask-image:linear-gradient(#000 calc(100% - 26px),transparent)}
  .cd2-lista::-webkit-scrollbar{width:6px}.cd2-lista::-webkit-scrollbar-thumb{background:#d9d5d0;border-radius:3px}
  .cd2-fila{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid #eeece9}
  .cd2-fila:last-child{margin-bottom:18px}
  .cd2-pdf{flex:0 0 38px;height:38px;border-radius:12px;background:#FDF0F0;color:#D64545;display:grid;place-items:center;font-size:9.5px;font-weight:700;letter-spacing:.04em}
  .cd2-av{flex:0 0 38px;height:38px;border-radius:50%;background:#0a243f;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:700}
  .cd2-txt{flex:1;min-width:0}
  .cd2-txt b{display:block;font-size:14px;font-weight:600;color:#0e2033;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cd2-txt span{display:block;margin-top:2px;font-size:12px;color:#6B7488;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cd2-txt p{margin-top:2px;font-size:12.5px;color:#6B7488;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .cd2-fila time{flex:0 0 auto;font-size:12px;color:#9AA2B4}
  .cd2-nuevo-msg .cd2-txt b::after{content:"";display:inline-block;width:7px;height:7px;margin-left:8px;border-radius:50%;background:#113b67;vertical-align:2px}
  .cd2-vacio{padding:20px 0;font-size:13px;color:#9AA2B4}

  .cd2-ayuda{display:grid;grid-template-columns:1.2fr 1fr;margin-top:24px;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -22px rgba(10,36,63,.4)}
  .cd2-ayuda-izq{display:flex;align-items:center;gap:22px;padding:28px 30px}
  .cd2-ayuda-izq .cd2-ic{flex-basis:58px;width:58px;height:58px;border-radius:18px;background:#E8F6F0;color:#12805C}
  .cd2-ayuda-izq b{display:block;font-size:18px;font-weight:600}
  .cd2-ayuda-izq p{margin-top:4px;font-size:13.5px;color:#6B7488;line-height:1.5;max-width:380px}
  .cd2-equipo{display:flex;margin-top:12px}
  .cd2-equipo i{width:30px;height:30px;margin-left:-8px;border-radius:50%;border:2px solid #fff;display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:700;color:#fff}
  .cd2-equipo i:first-child{margin-left:0}
  .cd2 .cd2-btn{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;gap:8px;height:48px;padding:0 22px;border-radius:14px;background:#0a243f;color:#fff;font-weight:600;font-size:14px;white-space:nowrap}
  .cd2-btn svg{width:17px;height:17px}
  .cd2-ayuda-der{display:grid;align-content:center;gap:12px;padding:24px 30px;background:linear-gradient(135deg,#fbfaf8,#faf7f3);border-left:1px solid #eeece9}
  .cd2-ayuda-der h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#6B7488;font-weight:600}
  .cd2-dato{display:flex;align-items:center;gap:12px;font-size:14px}
  .cd2-dato i{width:34px;height:34px;border-radius:11px;background:#fff;color:#113b67;display:grid;place-items:center;box-shadow:0 1px 3px rgba(10,36,63,.08)}
  .cd2-dato i svg{width:16px;height:16px}
  .cd2-pie{display:flex;align-items:center;gap:18px;margin-top:44px;padding:26px 0 34px;border-top:1px solid #eeece9;font-size:12.5px;color:#6B7488}
  .cd2-pie img{height:34px;border-radius:9px}
  .cd2-pie b{color:#0e2033}.cd2-pie em{font-family:Georgia,serif;color:#9AA2B4}
  .cd2-pie nav{margin-left:auto;display:flex;gap:22px}
  .cd2-pie nav a{color:#6B7488;cursor:pointer}
  .cd2-cab,.cd2-flota,.cd2-cuerpo,.cd2-ayuda{animation:cd2-sube .8s cubic-bezier(.22,1,.36,1) both}
  .cd2-flota{animation-delay:.1s}.cd2-cuerpo{animation-delay:.18s}.cd2-ayuda{animation-delay:.26s}
  @keyframes cd2-sube{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
}
@media (min-width:761px) and (max-width:1100px){
  .cd2-lema,.cd2-sello{display:none}
  .cd2 .cd2-menu button{padding:0 12px}
  .cd2-cuerpo{grid-template-columns:1fr}
  .cd2-lateral{min-height:560px}
  .cd2-rejilla{grid-template-columns:repeat(2,1fr)}
  .cd2-ayuda{grid-template-columns:1fr}
  .cd2-ayuda-der{border-left:0;border-top:1px solid #eeece9}
}
@media (prefers-reduced-motion:reduce){.cd2-cab,.cd2-flota,.cd2-cuerpo,.cd2-ayuda{animation:none}}
@media (min-width:761px){
  .cd2 .cd2-cab{display:block!important;position:relative!important;top:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;
    padding:0 0 120px!important;border:0!important;border-radius:0!important;box-shadow:none!important;z-index:auto!important;
    background:radial-gradient(90% 140% at 85% -10%,#13365c 0%,#0a243f 45%,#06182b 100%)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .cd2 .cd2-pie{position:static!important;height:auto!important;background:none!important;box-shadow:none!important}
}
@media (min-width:761px){
  .cd2 .cd2-ancho{max-width:none!important;padding:0 clamp(32px,3.5vw,72px)!important}
}

/* ===== Inicio de empleados en escritorio ===== */
.e2-cab,.e2-actividad>.e2-titulo{display:none}
@media (min-width:761px){
  body.e2-en-inicio:not(.client-preview-mode) main{padding:0 0 110px!important;background:#f8f7f5!important}
  body.e2-en-inicio:not(.client-preview-mode) main>header{display:none!important}
  body.e2-en-inicio:not(.client-preview-mode) .home-dashboard-layout{display:block!important;max-width:none!important;margin:0!important;padding:0!important;gap:0!important}
  body.e2-en-inicio:not(.client-preview-mode) .home-dashboard-layout>.welcome{display:none!important}

  .e2-cab{display:block;position:relative;overflow:hidden;margin:14px 14px 0 18px;padding:0 clamp(28px,3vw,56px) 112px;border-radius:30px;color:#fff;
    background:radial-gradient(80% 160% at 80% -20%,#13365c 0%,#0a243f 45%,#06182b 100%)}
  .e2-cab::before{content:"";position:absolute;right:8%;top:-160px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.42),transparent 65%);filter:blur(12px);pointer-events:none}
  .e2-cab::after{content:"";position:absolute;right:-140px;bottom:-260px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(255,255,255,.07);pointer-events:none}
  .e2-logo{position:absolute;z-index:1;left:50%;top:calc((100% - 66px) / 2);transform:translate(-50%,-50%);height:clamp(84px,7vw,120px);width:auto;pointer-events:none;filter:drop-shadow(0 8px 24px rgba(0,0,0,.25))}
  .e2-barra{position:relative;z-index:2;display:flex;align-items:center;height:90px}
  .e2-barra>small{font-size:11px;letter-spacing:.2em;color:rgba(255,255,255,.55);font-weight:600}
  .e2-cab .e2-perfil{margin-left:auto;display:flex;align-items:center;gap:10px;height:auto;padding:5px 16px 5px 5px;border-radius:26px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#fff;box-shadow:none;cursor:pointer;font:inherit;text-align:left}
  .e2-perfil i{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center;font-style:normal;font-weight:600;font-size:12.5px}
  .e2-perfil b{display:block;font-size:13.5px;font-weight:600}
  .e2-perfil small{display:block;font-size:11px;color:rgba(255,255,255,.6)}
  .e2-hero{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:24px}
  .e2-fecha,.e2-fecha *{display:inline!important;margin:0!important;font-size:12px!important;font-weight:500!important;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55)!important}
  .e2-saludo{margin:10px 0 0!important;font-size:42px!important;font-weight:600!important;letter-spacing:-.025em;line-height:1.05;color:#fff!important}
  .e2-clima{margin-top:16px}
  .e2-clima .home-weather-line{display:flex!important;align-items:center;gap:12px;margin:0!important;padding:0!important;background:none!important;border:0!important;color:rgba(255,255,255,.78)!important;font-size:14.5px!important}
  .e2-clima .home-weather-icon{width:38px!important;height:38px!important;border-radius:12px!important;background:rgba(255,255,255,.1)!important;display:grid!important;place-items:center;color:#FCD34D!important;font-size:18px!important;border:0!important}
  .e2-clima #homeWeatherTemp{font-size:22px!important;font-weight:600!important;color:#fff!important}
  .e2-clima .home-weather-line>span:last-child{display:flex!important;align-items:center;gap:10px}
  .e2-clima #homeWeatherText{font-weight:500!important;color:rgba(255,255,255,.85)!important;font-size:14.5px!important}
  .e2-clima #homeWeatherDetail{display:inline!important;margin:0!important;color:rgba(255,255,255,.6)!important;font-size:14px!important}
  .e2-clima #homeWeatherDetail::before{content:"•";margin-right:10px;color:rgba(255,255,255,.35)}
  .e2-acciones{display:flex;gap:10px}
  .e2-acciones button{display:flex!important;align-items:center;gap:8px;height:46px!important;min-height:0!important;margin:0!important;padding:0 20px!important;border-radius:14px!important;font-weight:600!important;font-size:14px!important;box-shadow:none!important;width:auto!important}
  .e2-acciones button svg{width:17px;height:17px}
  .e2-acciones #homeBilling{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important}
  .e2-acciones #homeBilling:hover{background:rgba(255,255,255,.16)!important}
  .e2-acciones #homeNewTask{background:#fff!important;border:0!important;color:#0a243f!important}

  body.e2-en-inicio:not(.client-preview-mode) .e2-metricas{position:relative;z-index:2;display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;
    margin:-66px clamp(32px,3.2vw,70px) 0 clamp(36px,3.4vw,74px)!important;padding:0 24px!important;background:none!important;box-shadow:none!important;width:auto!important;max-width:none!important}
  .e2-metricas article{position:relative;display:flex!important;align-items:center;gap:16px;height:auto!important;min-height:0!important;margin:0!important;padding:20px 22px!important;border:0!important;border-radius:22px!important;background:#fff!important;
    box-shadow:0 22px 44px -24px rgba(10,36,63,.45),0 2px 6px rgba(10,36,63,.05)!important;cursor:pointer;transition:transform .25s cubic-bezier(.22,1,.36,1)}
  .e2-metricas article::before,.e2-metricas article::after{display:none!important}
  .e2-metricas article:hover{transform:translateY(-3px)}
  .e2-metricas .metric-icon{flex:0 0 50px!important;width:50px!important;height:50px!important;margin:0!important;border-radius:16px!important;display:grid!important;place-items:center}
  .e2-metricas .metric-icon svg{width:22px!important;height:22px!important}
  .e2-metricas article>div{display:flex!important;flex-wrap:wrap;align-items:baseline;gap:5px 6px;padding:0!important;min-width:0}
  .e2-metricas article>div strong{order:-1;flex-basis:100%;margin:0!important;font-size:28px!important;font-weight:600!important;letter-spacing:-.02em;line-height:1!important;color:#0e2033!important}
  .e2-metricas article>div small,.e2-metricas article>div p{margin:0!important;font-size:13px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:#6B7488!important;white-space:nowrap}
  .e2-metricas article>div p::before{content:"·";margin-right:6px}
  .e2-fl{margin-left:auto;color:#B7BECC;display:grid}
  .e2-fl svg{width:18px;height:18px}

  .e2-actividad{margin:36px clamp(32px,3.2vw,70px) 0 clamp(36px,3.4vw,74px)}
  .e2-actividad>.e2-titulo{display:block;margin:0 4px 14px!important;font-size:20px!important;font-weight:600!important;color:#0e2033!important}
  body.e2-en-inicio:not(.client-preview-mode) .e2-actividad .home-activity-rail{display:grid!important;grid-template-columns:1fr 1.15fr 1fr!important;gap:20px!important;height:330px;margin:0!important;padding:0!important;background:none!important;box-shadow:none!important;position:static!important;width:auto!important;max-width:none!important}
  .e2-actividad .home-activity-card{display:flex!important;flex-direction:column;min-height:0!important;height:auto!important;margin:0!important;padding:6px 22px 0!important;border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -22px rgba(10,36,63,.4)!important}
  .e2-actividad .home-activity-heading{flex:0 0 auto;padding:14px 0 10px!important;margin:0!important;border-bottom:1px solid #eeece9!important}
  .e2-actividad .home-activity-list{flex:1;min-height:0;overflow-y:auto!important;margin:0 -10px 0 0!important;padding:0 10px 14px 0!important;scrollbar-width:thin;scrollbar-color:#d9d5d0 transparent;
    -webkit-mask-image:linear-gradient(#000 calc(100% - 22px),transparent);mask-image:linear-gradient(#000 calc(100% - 22px),transparent)}

  body.e2-en-inicio:not(.client-preview-mode) .news-portal{margin:36px clamp(32px,3.2vw,70px) 0 clamp(36px,3.4vw,74px)!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;width:auto!important;max-width:none!important}
  .e2-nov-cab{display:flex!important;align-items:center!important;justify-content:space-between;gap:16px;margin:0 4px 14px!important;padding:0!important;min-height:0!important;border:0!important}
  .e2-nov-cab>div:first-child>:not(h2):not(h3){display:none!important}
  .e2-nov-cab h2,.e2-nov-cab h3{margin:0!important;font-size:20px!important;font-weight:600!important;color:#0e2033!important}
  .e2-nov-cab .news-carousel-controls{display:flex!important;align-items:center;gap:10px!important}
  .e2-nov-cab #homeNewsFilters{display:flex!important;gap:8px!important;margin:0!important;padding:0!important;flex-wrap:nowrap}
  .e2-nov-cab #homeNewsFilters button{height:34px!important;min-height:0!important;padding:0 14px!important;border-radius:17px!important;background:#fff!important;border:1px solid #eeece9!important;box-shadow:none!important;font-size:13px!important;font-weight:500!important;color:#6B7488!important}
  .e2-nov-cab #homeNewsFilters button.active{background:#0a243f!important;border-color:#0a243f!important;color:#fff!important}
  .e2-nov-cab #newsPrevious,.e2-nov-cab #newsNext,.e2-nov-cab #refreshHomeNews{width:36px!important;height:36px!important;min-height:0!important;padding:0!important;border-radius:12px!important;background:#fff!important;border:1px solid #eeece9!important;box-shadow:none!important;color:#6B7488!important;display:grid!important;place-items:center}
  .e2-nov-cab #newsPrevious svg,.e2-nov-cab #newsNext svg,.e2-nov-cab #refreshHomeNews svg{width:16px;height:16px}
  body.e2-en-inicio:not(.client-preview-mode) #homeNews{gap:20px!important;padding:0 0 10px!important}
  body.e2-en-inicio:not(.client-preview-mode) #homeNews .news-card{flex:0 0 calc((100% - 60px) / 4)!important;max-width:none!important;border:0!important;border-radius:20px!important;overflow:hidden;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -22px rgba(10,36,63,.4)!important;transition:transform .25s}
  body.e2-en-inicio:not(.client-preview-mode) #homeNews .news-card:hover{transform:translateY(-3px)}

  body.e2-en-inicio:not(.client-preview-mode) .worker-chat .suggestion-launcher,body.e2-en-inicio:not(.client-preview-mode) .worker-chat .chat-launcher{height:52px!important;border-radius:17px!important;padding:0 20px!important;font-weight:600!important;box-shadow:0 16px 30px -12px rgba(10,36,63,.5)!important}
  body.e2-en-inicio:not(.client-preview-mode) .worker-chat .suggestion-launcher{background:#fff!important;color:#0a243f!important;border:1px solid #eeece9!important}
  body.e2-en-inicio:not(.client-preview-mode) .worker-chat .chat-launcher{background:#0a243f!important;color:#fff!important;border:0!important}

  .e2-cab,.e2-metricas,.e2-actividad{animation:e2-sube .8s cubic-bezier(.22,1,.36,1) both}
  .e2-metricas{animation-delay:.08s!important}.e2-actividad{animation-delay:.16s!important}
  @keyframes e2-sube{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
}
@media (min-width:761px) and (max-width:1250px){
  body.e2-en-inicio:not(.client-preview-mode) .e2-metricas{grid-template-columns:repeat(2,1fr)!important}
  body.e2-en-inicio:not(.client-preview-mode) .e2-actividad .home-activity-rail{grid-template-columns:1fr!important;height:auto}
  .e2-actividad .home-activity-card{height:300px!important}
  .e2-nov-cab{flex-wrap:wrap}
  body.e2-en-inicio:not(.client-preview-mode) #homeNews .news-card{flex-basis:calc((100% - 20px) / 2)!important}
}
@media (prefers-reduced-motion:reduce){.e2-cab,.e2-metricas,.e2-actividad{animation:none}}
@media (min-width:761px){
  body.e2-en-inicio:not(.client-preview-mode) .home-dashboard-layout>.e2-metricas{grid-template-rows:none!important;grid-auto-rows:auto!important;height:auto!important;min-height:0!important;align-items:stretch!important}
  body.e2-en-inicio:not(.client-preview-mode) .home-dashboard-layout>.e2-metricas article{flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;grid-template-columns:none!important;min-height:0!important;padding:20px 22px!important}
}
@media (min-width:761px) and (max-width:1250px){
  body.e2-en-inicio:not(.client-preview-mode) .home-dashboard-layout>.e2-metricas{grid-template-columns:repeat(2,1fr)!important}
}

@media (min-width:761px) and (max-width:1500px){
  .e2-logo{top:45px;height:50px;filter:none}
  body.e2-en-inicio:not(.client-preview-mode) .e2-metricas article>div p{display:none!important}
}
@media (min-width:761px){
  /* La cabecera deja sitio a la pestaña activa del menú lateral */
  .e2-cab{margin-left:40px!important}
}
/* ===== Menú lateral en móvil ===== */
.s2-cerrar,.s2-yo,.s2-grupo,.s2-pie{display:none}
@media (max-width:760px){
  body .overlay{display:block!important;position:fixed!important;inset:0!important;z-index:60!important;background:rgba(6,24,43,.42)!important;opacity:0;pointer-events:none;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:opacity .38s ease,backdrop-filter .38s ease,-webkit-backdrop-filter .38s ease}
  body .overlay.show{opacity:1;pointer-events:auto;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
  body aside#sidebar.sidebar.s2-listo{position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:auto!important;width:min(86vw,340px)!important;max-width:none!important;height:auto!important;padding:0!important;margin:0!important;z-index:70!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;contain:none!important;color:#fff!important;
    background:radial-gradient(120% 60% at 0 0,#1b4470 0,transparent 60%),linear-gradient(180deg,#0a243f 0,#081d33 60%,#06182b 100%)!important;
    border-radius:0 28px 28px 0!important;box-shadow:24px 0 60px rgba(6,24,43,.35)!important;border:0!important;
    transform:translateX(-104%)!important;visibility:hidden;transition:transform .46s cubic-bezier(.22,.8,.24,1),visibility 0s linear .46s!important}
  body aside#sidebar.sidebar.s2-listo.open{transform:none!important;visibility:visible;transition:transform .46s cubic-bezier(.22,.8,.24,1),visibility 0s!important}
  #sidebar.s2-listo .brand{display:block!important;padding:calc(env(safe-area-inset-top,0px) + 30px) 70px 14px 24px!important;margin:0!important;flex:none!important}
  #sidebar.s2-listo .brand img{width:auto!important;max-width:170px!important;height:44px!important;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)!important}
  #sidebar.s2-listo .s2-cerrar{display:grid!important;place-items:center;position:absolute;top:calc(env(safe-area-inset-top,0px) + 33px);right:18px;width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;padding:0;z-index:2}
  #sidebar.s2-listo .s2-yo{display:flex!important;align-items:center;gap:12px;margin:6px 16px 8px;padding:12px;width:calc(100% - 32px);border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);color:#fff;font:inherit;text-align:left;cursor:pointer;flex:none}
  #sidebar.s2-listo .s2-av{width:42px;height:42px;border-radius:50%;background:#fff;color:#0a243f;display:grid;place-items:center;font-weight:700;font-size:15px;flex:none;box-shadow:0 4px 12px rgba(0,0,0,.18)}
  #sidebar.s2-listo .s2-yo-txt{min-width:0;flex:1}
  #sidebar.s2-listo .s2-yo b{display:block;font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #sidebar.s2-listo .s2-yo small{display:block;font-size:12px;color:rgba(255,255,255,.6);margin-top:2px}
  #sidebar.s2-listo .s2-yo>svg{opacity:.55;flex:none}
  #sidebar.s2-listo nav{display:flex!important;flex-direction:column!important;gap:2px!important;flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:6px 12px 14px!important;margin:0!important;scrollbar-width:none;
    -webkit-mask:linear-gradient(180deg,transparent 0,#000 14px,#000 calc(100% - 22px),transparent 100%);mask:linear-gradient(180deg,transparent 0,#000 14px,#000 calc(100% - 22px),transparent 100%)}
  #sidebar.s2-listo nav::-webkit-scrollbar{display:none}
  #sidebar.s2-listo nav>*{order:var(--s2o,99);flex:none!important}
  body.menu-open .m2-barra,body.menu-open .c2-nav{opacity:0!important;pointer-events:none!important;transform:translateY(20px)!important;transition:opacity .25s,transform .3s!important}
  #sidebar.s2-listo .s2-grupo{display:block!important;margin:0!important;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.42);font-weight:600;padding:16px 12px 6px}
  #sidebar.s2-listo nav button[data-title]{position:relative!important;display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;min-height:0!important;height:auto!important;margin:0!important;padding:7px 10px!important;border:0!important;border-radius:14px!important;background:transparent!important;color:rgba(255,255,255,.86)!important;font:inherit!important;font-size:14.5px!important;font-weight:500!important;text-align:left!important;box-shadow:none!important;cursor:pointer;
    opacity:0;transform:translateX(-14px)!important;transition:opacity .2s ease,transform .2s ease,background .2s,color .2s!important}
  #sidebar.s2-listo.open nav button[data-title]{opacity:1;transform:none!important;transition:opacity .4s ease calc(.08s + var(--s2i,0)*.022s),transform .5s cubic-bezier(.22,.8,.24,1) calc(.08s + var(--s2i,0)*.022s),background .2s,color .2s!important}
  #sidebar.s2-listo nav button[data-title]::before,#sidebar.s2-listo nav button[data-title]::after{display:none!important;content:none!important}
  #sidebar.s2-listo nav button[data-title]:active{background:rgba(255,255,255,.08)!important}
  #sidebar.s2-listo nav button .nav-icon,#sidebar.s2-listo nav button .holded-mark{width:36px!important;height:36px!important;min-width:36px!important;border-radius:11px!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.07)!important;color:inherit!important;flex:none!important;margin:0!important;padding:0!important;transition:background .2s,color .2s}
  #sidebar.s2-listo nav button .nav-icon svg{width:19px!important;height:19px!important}
  #sidebar.s2-listo nav button .holded-mark img{width:20px!important;height:auto!important;filter:brightness(0) invert(1)}
  #sidebar.s2-listo nav button.active{background:#fff!important;color:#0a243f!important;font-weight:600!important;box-shadow:0 8px 22px rgba(0,0,0,.22)!important}
  #sidebar.s2-listo nav button.active .nav-icon,#sidebar.s2-listo nav button.active .holded-mark{background:transparent!important;color:#0b2744!important}
  #sidebar.s2-listo nav button .task-nav-alert,#sidebar.s2-listo nav button .billing-nav-alert,#sidebar.s2-listo nav button .suggestion-nav-alert{position:static!important;margin-left:auto!important;min-width:22px!important;height:22px!important;padding:0 7px!important;border-radius:11px!important;background:#ef4444!important;color:#fff!important;font-size:12px!important;font-weight:700!important;line-height:22px!important;text-align:center!important;box-shadow:0 0 0 3px rgba(239,68,68,.18)!important;transform:none!important;top:auto!important;right:auto!important}
  #sidebar.s2-listo nav button .task-nav-alert[hidden],#sidebar.s2-listo nav button .billing-nav-alert[hidden],#sidebar.s2-listo nav button .suggestion-nav-alert[hidden]{display:none!important}
  #sidebar.s2-listo .s2-pie{display:flex!important;align-items:center;justify-content:space-between;flex:none;padding:12px 16px calc(env(safe-area-inset-bottom,0px) + 22px);border-top:1px solid rgba(255,255,255,.08)}
  #sidebar.s2-listo .s2-salir{display:flex;align-items:center;gap:10px;border:0;background:none;color:rgba(255,255,255,.72);font:inherit;font-size:14px;padding:8px;border-radius:12px;cursor:pointer}
  #sidebar.s2-listo .s2-salir:active{background:rgba(255,255,255,.08)}
  #sidebar.s2-listo .s2-pie small{font-size:11px;color:rgba(255,255,255,.35)}
  #sidebar.s2-listo .sidebar-footer{display:none!important}
}
@media (max-width:760px) and (prefers-reduced-motion:reduce){
  #sidebar.s2-listo nav button[data-title]{opacity:1;transform:none!important}
}
/* ===== Menú lateral en escritorio (mismo estilo que el móvil) ===== */
@media (min-width:761px){
  body:not(.client-preview-mode) #sidebar.s2-listo{background:linear-gradient(180deg,#0a243f 0,#081d33 60%,#06182b 100%)!important;transition:width .42s cubic-bezier(.22,.8,.24,1),min-width .42s cubic-bezier(.22,.8,.24,1),max-width .42s cubic-bezier(.22,.8,.24,1),border-radius .3s ease,box-shadow .3s ease}
  body:not(.client-preview-mode) #sidebar.s2-listo:hover{background:radial-gradient(120% 55% at 0 0,#1b4470 0,transparent 62%),linear-gradient(180deg,#0a243f 0,#081d33 60%,#06182b 100%)!important;border-radius:0 28px 28px 0!important;box-shadow:24px 0 60px rgba(6,24,43,.35)!important}
  body:not(.client-preview-mode) #sidebar.s2-listo .brand{order:0}
  body:not(.client-preview-mode) #sidebar.s2-listo nav{order:1;display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;gap:2px!important}
  body:not(.client-preview-mode) #sidebar.s2-listo nav>*{order:var(--s2o,99)}
  body:not(.client-preview-mode) #sidebar.s2-listo nav button[data-title]{height:40px!important;min-height:32px!important;flex:0 1 40px!important}
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .nav-icon,
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .holded-mark{position:relative!important;z-index:0!important;overflow:visible!important}
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .nav-icon::before,
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .holded-mark::before{content:"";position:absolute;left:50%;top:50%;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:11px;background:rgba(255,255,255,.07);z-index:-1;transition:background .2s ease}
  body:not(.client-preview-mode) #sidebar.s2-listo nav button.active .nav-icon,
  body:not(.client-preview-mode) #sidebar.s2-listo nav button.active .holded-mark{color:#0b2744!important}
  body:not(.client-preview-mode) #sidebar.s2-listo nav button.active .nav-icon::before,
  body:not(.client-preview-mode) #sidebar.s2-listo nav button.active .holded-mark::before{background:transparent}
  body:not(.client-preview-mode) #sidebar.s2-listo:hover nav button.active{color:#0a243f!important;font-weight:600}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-grupo{display:block!important;order:var(--s2o,0);position:relative;flex:0 1 26px;min-height:10px;margin:0;padding:10px 0 0 16px;overflow:hidden;white-space:nowrap;font-size:10px;line-height:14px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:transparent;transition:color .25s ease}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-grupo::after{content:"";position:absolute;left:22px;width:22px;top:50%;height:1px;background:rgba(255,255,255,.16);transition:opacity .2s ease}
  body:not(.client-preview-mode) #sidebar.s2-listo nav>.s2-grupo:first-of-type{flex-basis:18px;padding-top:2px}
  body:not(.client-preview-mode) #sidebar.s2-listo nav>.s2-grupo:first-of-type::after{display:none}
  body:not(.client-preview-mode) #sidebar.s2-listo:hover .s2-grupo{color:rgba(255,255,255,.42)}
  body:not(.client-preview-mode) #sidebar.s2-listo:hover .s2-grupo::after{opacity:0}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-yo{order:2;display:flex!important;align-items:center;gap:12px;align-self:stretch!important;flex:none;margin:10px 0 0;padding:8px 13px;border-radius:16px;border:1px solid transparent;background:transparent;color:#fff;font:inherit;text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;transition:background .25s ease,border-color .25s ease}
  body:not(.client-preview-mode) #sidebar.s2-listo:hover .s2-yo{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.08);padding-right:56px}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-av{width:40px;height:40px;border-radius:50%;background:#fff;color:#0a243f;display:grid;place-items:center;font-weight:700;font-size:14px;flex:none;box-shadow:0 4px 12px rgba(0,0,0,.18)}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-yo-txt{min-width:0;flex:1;opacity:0;transition:opacity .2s ease}
  body:not(.client-preview-mode) #sidebar.s2-listo:hover .s2-yo-txt{opacity:1;transition-delay:.12s}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-yo b{display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-yo small{display:block;font-size:11.5px;color:rgba(255,255,255,.6);margin-top:2px;overflow:hidden;text-overflow:ellipsis}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-yo>svg{display:none}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-pie{display:block!important;position:absolute;right:22px;bottom:26px;opacity:0;pointer-events:none;transition:opacity .2s ease}
  body:not(.client-preview-mode) #sidebar.s2-listo:hover .s2-pie{opacity:1;pointer-events:auto;transition-delay:.12s}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-pie small{display:none}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-salir{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:11px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.8);font-size:0;cursor:pointer;transition:background .2s,color .2s}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-salir:hover{background:rgba(239,68,68,.9);color:#fff}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-salir svg{width:18px;height:18px}
}
@media (min-width:761px){
  body:not(.client-preview-mode) #sidebar.s2-listo::before{background:linear-gradient(180deg,#0a243f 0,#081d33 60%,#06182b 100%)!important}
  body:not(.client-preview-mode) #sidebar.s2-listo::after{background:radial-gradient(120% 55% at 0 0,#1b4470 0,transparent 62%),linear-gradient(180deg,#0a243f 0,#081d33 60%,#06182b 100%)!important;border-radius:inherit}
}
@media (min-width:761px) and (max-height:860px){
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .nav-icon::before,
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .holded-mark::before{width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:9px}
  body:not(.client-preview-mode) #sidebar.s2-listo .s2-grupo{flex-basis:22px;padding-top:7px}
}
@media (min-width:761px) and (max-height:700px){
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .nav-icon::before,
  body:not(.client-preview-mode) #sidebar.s2-listo nav button .holded-mark::before{width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:8px}
}
@media (min-width:761px){
  body:not(.client-preview-mode) #sidebar.s2-listo:not(:hover) nav button.active .task-nav-alert,
  body:not(.client-preview-mode) #sidebar.s2-listo:not(:hover) nav button.active .billing-nav-alert,
  body:not(.client-preview-mode) #sidebar.s2-listo:not(:hover) nav button.active .suggestion-nav-alert{left:33px!important;right:auto!important;top:-2px!important;z-index:2}
}

/* Vista previa de facturas */
.invoice-preview{position:fixed;inset:0;z-index:1000;background:rgba(12,29,48,.55);display:grid;place-items:center;padding:3vh 3vw}.invoice-preview[hidden]{display:none}.invoice-preview-box{width:min(1400px,100%);height:100%;background:#fff;border-radius:18px;box-shadow:0 24px 60px rgba(10,29,50,.35);display:flex;flex-direction:column;overflow:hidden}.invoice-preview-box header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #edeae6}.invoice-preview-box header h4{margin:3px 0 0;font-size:17px}.invoice-preview-box .eyebrow{margin:0}.invoice-preview-nav{display:flex;align-items:center;gap:8px;color:#667188;font-size:12px;font-weight:700}.invoice-preview-nav button{width:36px;height:36px;border:0;border-radius:50%;background:#f4f2ef;color:#17395d;font:400 24px/1 Arial;cursor:pointer}.invoice-preview-nav button:disabled{opacity:.35;cursor:default}.invoice-preview-nav .invoice-preview-close{margin-left:8px;font-size:28px}.invoice-preview-body{flex:1;min-height:0;display:grid;grid-template-columns:1fr 340px}.invoice-preview-doc{position:relative;min-height:0;background:#f0eeeb;display:flex;align-items:stretch;justify-content:center;overflow:auto}.invoice-preview-pages{display:flex;flex-direction:column;align-items:center;gap:14px;padding:14px;height:max-content}.invoice-preview-pages canvas{background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.15);max-width:100%}.invoice-preview-doc iframe{width:100%;height:100%;border:0}.invoice-preview-doc img{max-width:100%;height:auto;align-self:flex-start;margin:14px;box-shadow:0 4px 16px rgba(0,0,0,.15)}.invoice-preview-doc pre{margin:0;padding:18px;width:100%;white-space:pre-wrap;font-size:12px;background:#fff}.invoice-preview-empty{align-self:center;color:#667188}.invoice-preview-box aside{overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px;border-left:1px solid #edeae6}.invoice-preview-box aside>div{display:flex;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid #f3f2f0;font-size:13px}.invoice-preview-box aside>div>span{color:#69748a}.invoice-preview-box aside>div>strong{text-align:right;font-variant-numeric:tabular-nums}.invoice-preview-box aside>div.is-total strong{font-size:16px;color:var(--blue)}.invoice-preview-box aside .invoice-preview-concept,.invoice-preview-box aside .invoice-preview-note{flex-direction:column;gap:5px;padding:12px;border:0;border-radius:12px;background:#faf7f3}.invoice-preview-box aside .invoice-preview-note{background:#fff8e8}.invoice-preview-concept span,.invoice-preview-note span{color:#69748a;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.invoice-preview-concept p,.invoice-preview-note p{margin:0;font-size:14px;line-height:1.4;color:var(--ink)}.invoice-preview-box aside small{margin-top:auto;color:#8a93a6;font-size:11px;word-break:break-all}@media(max-width:900px){.invoice-preview{padding:0}.invoice-preview-box{border-radius:0}.invoice-preview-body{grid-template-columns:1fr;grid-template-rows:1fr auto}.invoice-preview-box aside{max-height:40vh;border-left:0;border-top:1px solid #edeae6}}

/* El símbolo de Holded también conserva el azul en la opción seleccionada. */
body:not(.client-preview-mode) #sidebar.s2-listo nav button.active .holded-mark img{filter:brightness(0) saturate(100%) invert(16%) sepia(84%) saturate(3500%) hue-rotate(235deg)!important}


/* Separate internal staff chats from client conversations. */
.chat-contact-group{padding:4px 0 8px}
.chat-contact-group+.chat-contact-group{margin-top:8px;padding-top:14px;border-top:1px solid #eeebe7}
.chat-contact-group h4{margin:0 10px 5px;display:flex;align-items:center;gap:7px;color:#637089;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.chat-contact-group h4 span{width:8px;height:8px;border-radius:50%;background:var(--blue)}
.chat-contact-group.client-chat-group h4{color:#85612c}
.chat-contact-group.client-chat-group h4 span{background:#c48a32}
.chat-contacts button.internal-chat-contact{background:#fdfbf9}
.chat-contacts button.internal-chat-contact+.internal-chat-contact{margin-top:4px}
.chat-contacts button.internal-chat-contact:hover{background:#faf6f2}
.chat-contacts button.client-chat-contact{margin-top:4px;background:#fff8eb;border:1px solid #f0dfbd}
.chat-contacts button.client-chat-contact:hover{background:#ffefcf;border-color:#dfbd7c}
.chat-contacts button.client-chat-contact .chat-avatar,.conversation-bar.client-conversation .chat-avatar{background:#f7e6c5;color:#875916}
.conversation-bar.client-conversation{background:#fff8eb;border-bottom-color:#ead6af}
.conversation-bar.internal-conversation{background:#fdfcfa}
/* ===== Tareas en escritorio: tarjetas superpuestas ===== */
@media (min-width:761px){
  body.t2-apiladas .task-column{display:flex!important;flex-direction:column!important;min-height:0!important}
  body.t2-apiladas .task-list[data-task-list]{flex:1 1 auto;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;padding:6px 6px 18px!important;margin:0 -6px!important;scrollbar-width:thin;scrollbar-color:#d3d0cb transparent}
  body.t2-apiladas .task-list[data-task-list]::-webkit-scrollbar{width:8px}
  body.t2-apiladas .task-list[data-task-list]::-webkit-scrollbar-thumb{background:#d3d0cb;border-radius:8px;border:2px solid #f6f3f0}
  body.t2-apiladas .task-list[data-task-list]::-webkit-scrollbar-track{background:transparent}
  body.t2-apiladas .task-list>.task-note.t2-nota{position:relative;flex:none;margin-top:var(--t2-solape,0px)!important;box-shadow:0 -6px 18px rgba(30,54,80,.08),0 7px 18px rgba(30,54,80,.06)!important;transition:margin-top .34s cubic-bezier(.22,.8,.24,1),transform .16s ease,box-shadow .2s ease,opacity .16s ease!important}
  body.t2-apiladas .task-list>.task-note.t2-nota:first-child{box-shadow:0 7px 18px rgba(30,54,80,.06)!important}
  body.t2-apiladas .task-list>.task-note.t2-abierta+.task-note{margin-top:0!important}
  body.t2-apiladas .task-list>.task-note.t2-abierta{box-shadow:0 12px 28px rgba(30,54,80,.14)!important;transform:none!important}
  body.t2-apiladas .task-list>.task-note.t2-nota:hover{transform:none!important}
  body.t2-apiladas .task-list>.task-note.dragging+.task-note{margin-top:0!important}
}
@media (min-width:761px){
  body.t2-apiladas .task-column-head{flex:none!important;height:auto!important;min-height:0!important;padding:8px 8px 14px!important}
}

/* ===== Inicio: últimos mensajes separados en chat interno y chat de clientes ===== */
#homeMessagesPreview{display:flex!important;flex-direction:column!important;gap:12px!important;justify-content:flex-start!important;align-items:stretch!important}
#homeMessagesPreview .home-message-group{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:14px;background:#fdfbf9;border:1px solid #f6f0e9}
#homeMessagesPreview .home-message-group-client{background:#fff8eb;border-color:#f0dfbd}
#homeMessagesPreview .home-message-group h4{margin:0 2px 2px;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#4b6886}
#homeMessagesPreview .home-message-group h4 span{width:8px;height:8px;border-radius:50%;background:var(--blue,#113b67);flex:none}
#homeMessagesPreview .home-message-group-client h4{color:#85612c}
#homeMessagesPreview .home-message-group-client h4 span{background:#c48a32}
#homeMessagesPreview .home-message-row{margin:0!important;border-radius:11px!important;background:#fff!important;border:1px solid transparent!important;padding:8px 10px!important;min-height:0!important;flex:none!important}
#homeMessagesPreview .home-message-internal:hover{border-color:#efe4d7!important;background:#fefefe!important}
#homeMessagesPreview .home-message-client:hover{border-color:#dfbd7c!important;background:#fffcf5!important}
#homeMessagesPreview .home-message-internal .home-activity-avatar{background:#f9f4ef!important;color:#113b67!important}
#homeMessagesPreview .home-message-client .home-activity-avatar{background:#f7e6c5!important;color:#875916!important}
#homeMessagesPreview .home-message-unread{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;margin-left:auto;flex:none}
#homeMessagesPreview .home-message-unread+time{margin-left:8px}
#homeMessagesPreview .home-message-group-empty{margin:2px 4px 4px;font-size:12px;color:#8a93a8}
#homeMessagesPreview .home-message-group-client .home-message-group-empty{color:#a0875f}
@media (min-width:761px){
  #homeMessagesPreview{gap:8px!important}
  #homeMessagesPreview .home-message-group{gap:4px;padding:7px 8px}
  #homeMessagesPreview .home-message-row{padding:5px 9px!important}
  #homeMessagesPreview .home-message-group h4{margin:1px 2px 1px}
}
@media (min-width:761px){
  .e2-actividad #homeMessagesPreview{padding-top:4px!important;padding-bottom:2px!important}
}

/* ===== Inicio en escritorio: cuatro columnas de actividad con tarjetas superpuestas ===== */
.home-row-detail{display:none}
@media (min-width:761px){
  body.home-cuatro-columnas.e2-en-inicio:not(.client-preview-mode) .e2-actividad .home-activity-rail{grid-template-columns:repeat(4,minmax(0,1fr))!important;height:400px!important}
  body.home-cuatro-columnas .e2-actividad .home-activity-card{padding:6px 16px 0!important}
  body.home-cuatro-columnas .home-activity-rail .home-activity-list{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:8px!important;padding:12px 8px 16px 2px!important;margin:0 -8px 0 -2px!important;overflow-y:auto!important;overscroll-behavior:contain}
  body.home-cuatro-columnas .home-activity-rail .home-activity-list>.home-activity-row{position:relative;flex:none!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;column-gap:10px!important;row-gap:0!important;width:100%!important;min-height:0!important;margin:0!important;padding:11px 12px!important;border:1px solid #edeae6!important;border-radius:14px!important;background:#fff!important;text-align:left;box-shadow:0 -5px 14px rgba(30,54,80,.07),0 4px 12px rgba(30,54,80,.05)!important;transition:margin-top .34s cubic-bezier(.22,.8,.24,1),box-shadow .2s ease,border-color .2s ease!important;cursor:pointer}
  body.home-cuatro-columnas .home-activity-rail .home-activity-list>.home-activity-row::after{display:none!important}
  body.home-cuatro-columnas .home-activity-rail .home-activity-list>.home-activity-row.h4-nota{margin-top:var(--h4-solape,0px)!important}
  body.home-cuatro-columnas .home-activity-rail .home-activity-list>.home-activity-row.h4-nota:first-child{margin-top:0!important;box-shadow:0 4px 12px rgba(30,54,80,.05)!important}
  body.home-cuatro-columnas .home-activity-rail .home-activity-list>.home-activity-row.h4-abierta+.home-activity-row{margin-top:0!important}
  body.home-cuatro-columnas .home-activity-rail .home-activity-list>.home-activity-row.h4-abierta{border-color:#e1dbd4!important;box-shadow:0 10px 24px rgba(30,54,80,.13)!important}
  body.home-cuatro-columnas .home-activity-rail .home-activity-copy{flex:1 1 0;min-width:0}
  body.home-cuatro-columnas .home-activity-rail .home-activity-copy strong,body.home-cuatro-columnas .home-activity-rail .home-activity-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.home-cuatro-columnas .home-activity-rail .home-activity-row time{flex:none;margin-left:auto}
  body.home-cuatro-columnas .home-row-detail{display:flex;flex-direction:column;gap:4px;flex:0 0 100%;margin-top:10px;padding-top:9px;border-top:1px dashed #edeae6;font-size:12.5px;line-height:1.45;color:#3e5166;white-space:normal;text-align:left}
  body.home-cuatro-columnas .home-row-detail span{display:block;overflow-wrap:anywhere}
  body.home-cuatro-columnas .home-row-detail em{font-style:normal;font-size:11.5px;color:#7A849B}
  body.home-cuatro-columnas .home-row-detail em b{font-weight:700}
  /* Colores: chat interno azul, chat de clientes ámbar */
  body.home-cuatro-columnas #homeMessagesPreview .home-message-internal{border-left:3px solid #113b67!important}
  body.home-cuatro-columnas #homeMessagesPreview .home-message-internal .home-activity-avatar{background:#f9f4ef!important;color:#113b67!important}
  body.home-cuatro-columnas .home-client-messages-card .home-activity-icon{background:#fdf1dc!important;color:#b07a22!important}
  body.home-cuatro-columnas .home-client-messages-card{background:linear-gradient(180deg,#fffaf0 0,#fff 120px)!important}
  body.home-cuatro-columnas #homeClientMessagesPreview .home-message-client{border-color:#F0DFBD!important;border-left:3px solid #c48a32!important;background:#fffdf8!important}
  body.home-cuatro-columnas #homeClientMessagesPreview .home-message-client .home-activity-avatar{background:#f7e6c5!important;color:#875916!important}
  body.home-cuatro-columnas #homeClientMessagesPreview .home-message-client.h4-abierta{border-color:#dfbd7c!important}
  body.home-cuatro-columnas .home-activity-rail .home-message-unread{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;flex:none}
  body.home-cuatro-columnas .e2-actividad #homeMessagesPreview{padding-top:12px!important;padding-bottom:16px!important}
}
@media (min-width:761px) and (max-width:1250px){
  body.home-cuatro-columnas.e2-en-inicio:not(.client-preview-mode) .e2-actividad .home-activity-rail{grid-template-columns:repeat(2,minmax(0,1fr))!important;height:auto!important}
  body.home-cuatro-columnas .e2-actividad .home-activity-card{height:340px!important}
}
@media (min-width:761px){
  body.home-cuatro-columnas .home-activity-rail #homeMessagesPreview>.home-activity-row,
  body.home-cuatro-columnas .home-activity-rail #homeClientMessagesPreview>.home-activity-row{padding:11px 12px!important;margin:0!important}
  body.home-cuatro-columnas .home-activity-rail #homeMessagesPreview>.home-activity-row.h4-nota,
  body.home-cuatro-columnas .home-activity-rail #homeClientMessagesPreview>.home-activity-row.h4-nota{margin-top:var(--h4-solape,0px)!important}
  body.home-cuatro-columnas .home-activity-rail #homeMessagesPreview>.home-activity-row.h4-nota:first-child,
  body.home-cuatro-columnas .home-activity-rail #homeClientMessagesPreview>.home-activity-row.h4-nota:first-child,
  body.home-cuatro-columnas .home-activity-rail #homeMessagesPreview>.home-activity-row.h4-abierta+.home-activity-row,
  body.home-cuatro-columnas .home-activity-rail #homeClientMessagesPreview>.home-activity-row.h4-abierta+.home-activity-row{margin-top:0!important}
  body.home-cuatro-columnas .home-activity-rail #homeMessagesPreview,body.home-cuatro-columnas .home-activity-rail #homeClientMessagesPreview{gap:8px!important}
}
/* Al refrescar los datos en segundo plano las tarjetas se recolocan sin animación */
body.h4-quieto .home-activity-rail .home-activity-list>.home-activity-row,
body.t2-quieto .task-list>.task-note{transition:none!important;animation:none!important}
body.t2-quieto.t2-apiladas .task-list[data-task-list]>.task-note.t2-nota,
body.h4-quieto.home-cuatro-columnas .home-activity-rail .home-activity-list>.home-activity-row.h4-nota{transition:none!important;animation:none!important}

/* ===== Ficha de cliente: fecha de alta y aplicación dentro de Acceso del cliente ===== */
#newClientForm .client-start-field{display:grid;align-content:start}
#newClientForm .client-start-field>span{display:block}
#newClientForm .client-start-field small{margin:2px 0 0!important;color:#68738a!important;font-size:10px!important;line-height:1.2}
#newClientForm .client-portal-access-grid .client-app-field{align-self:end}
#newClientForm .client-portal-access-grid .client-app-field>span:first-child{font-size:12px;font-weight:700}
#newClientForm .client-portal-access-grid .client-app-field .client-active-control{white-space:nowrap}
@media(min-width:1100px){
  #newClientForm .client-portal-access-grid{grid-template-columns:minmax(150px,1fr) minmax(170px,auto) minmax(95px,auto)!important}
}
@media(min-width:601px) and (max-width:1099px){
  #newClientForm .client-portal-access-grid{grid-template-columns:minmax(0,1fr) auto auto!important}
}

/* ===== Documentos pendientes de revisar (aplicación del cliente) ===== */
.folder-card{position:relative}
.dp-aviso{display:inline-flex;align-items:center;gap:7px;margin-left:12px;border:1px solid #f3c969;background:#fff8e6;color:#8a5a00;font:inherit;font-weight:700;font-size:13px;padding:6px 11px 6px 9px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:transform .15s,box-shadow .15s;vertical-align:middle}
.dp-aviso:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(196,138,50,.22)}
.dp-aviso b{background:#e8a317;color:#fff;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-size:11px;padding:0 6px}
.dp-aviso.dp-ok{border-color:#bfe6d0;background:#effaf4;color:#16784a;cursor:default}
.dp-aviso.dp-ok:hover{transform:none;box-shadow:none}
.dp-chip{position:absolute;top:9px;right:12px;display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:999px;background:#fff1cf;color:#8a5a00;pointer-events:none}
.folder-card:has(.dp-ojo) .dp-chip{right:54px}
.dp-ojo{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:10px;border:1px solid #edeae6;background:#fff;display:grid;place-items:center;color:#8a93a8;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.dp-ojo:hover{border-color:#cfcac4;color:#34465a}
.dp-ojo.dp-si{background:#e9f7ef;border-color:#bfe6d0;color:#16784a}
.dp-ojo.dp-guardando{opacity:.5;pointer-events:none}
.folder-card:has(.dp-ojo){padding-right:56px}
.folder-grid.list-view .dp-chip{top:50%;transform:translateY(-50%);right:56px}
.dp-shell{position:fixed;inset:0;z-index:1200}
.dp-velo{position:absolute;inset:0;background:rgba(6,24,43,.35);backdrop-filter:blur(3px);opacity:0;transition:opacity .25s}
.dp-banner{position:absolute;left:50%;top:50%;width:min(720px,calc(100vw - 32px));max-height:min(640px,calc(100vh - 40px));display:flex;flex-direction:column;background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(6,24,43,.3);transform:translate(-50%,-46%) scale(.97);opacity:0;transition:opacity .25s,transform .3s cubic-bezier(.22,.8,.24,1)}
.dp-shell.dp-on .dp-velo{opacity:1}.dp-shell.dp-on .dp-banner{opacity:1;transform:translate(-50%,-50%)}
.dp-bcab{padding:20px 22px 14px;border-bottom:1px solid #f3f2f0;display:flex;gap:14px;align-items:flex-start}
.dp-tri{width:44px;height:44px;border-radius:13px;background:#fff4dc;color:#d08a00;display:grid;place-items:center;flex:none}
.dp-bcab h3{margin:0;font-size:18px}.dp-bcab p{margin:3px 0 0;font-size:13px;color:#6f7787}
.dp-cerrar{margin-left:auto;width:36px;height:36px;border-radius:50%;border:0;background:#f4f3f2;font-size:20px;cursor:pointer;flex:none}
.dp-todos{display:flex;gap:8px;padding:12px 22px;border-bottom:1px solid #f3f2f0;align-items:center;font-size:13px;color:#6f7787}
.dp-todos button{border:1px solid #e5e1dc;background:#fff;border-radius:9px;padding:6px 10px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;color:#34465a}
.dp-todos button:first-of-type{margin-left:auto}
.dp-lista{overflow:auto;padding:6px 22px 14px}
.dp-fila{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #f6f5f3}
.dp-fila:last-child{border-bottom:0}
.dp-ico{width:38px;height:38px;border-radius:10px;background:#f9f4ef;color:#0b2744;display:grid;place-items:center;flex:none}
.dp-txt{min-width:0;flex:1}
.dp-txt strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dp-txt small{font-size:12px;color:#7a849b}
.dp-txt a{font-size:12px;color:#0b2744;font-weight:600;text-decoration:none;margin-left:8px}
.dp-dec{display:flex;gap:6px;flex:none}
.dp-dec button{border-radius:10px;padding:8px 11px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;border:1px solid #e5e1dc;background:#fff;color:#34465a;display:flex;align-items:center;gap:6px}
.dp-dec .dp-bsi.dp-act{background:#16784a;border-color:#16784a;color:#fff}
.dp-dec .dp-bno.dp-act{background:#5b6477;border-color:#5b6477;color:#fff}
.dp-bpie{padding:14px 22px;border-top:1px solid #f3f2f0;display:flex;align-items:center;gap:12px}
.dp-bpie small{color:#6f7787;font-size:12.5px}
.dp-bpie button{margin-left:auto}
.dp-bpie button:disabled{opacity:.45;cursor:default}
@media(max-width:640px){
  .dp-aviso{margin:8px 0 0}
  .dp-fila{flex-wrap:wrap}.dp-dec{width:100%}.dp-dec button{flex:1;justify-content:center}
  .dp-todos{flex-wrap:wrap}.dp-todos span{width:100%}.dp-todos button:first-of-type{margin-left:0}
}
@media (min-width:761px){
.folder-toolbar>div:first-child:has(.dp-aviso){align-items:center;min-width:0}
.folder-toolbar>div:first-child:has(.dp-aviso) #folderName,.folder-toolbar>div:first-child:has(.dp-aviso) #folderCount{white-space:nowrap}
.folder-toolbar:has(.dp-aviso){flex-wrap:wrap;row-gap:12px}
.folder-toolbar:has(.dp-aviso)>div:first-child{flex:0 0 auto}
.folder-toolbar:has(.dp-aviso) .folder-actions{margin-left:auto}
.folder-toolbar:has(.dp-aviso) .client-search{width:min(260px,24vw)}
.folder-toolbar .dp-aviso{margin-left:0;flex:none}
.folder-toolbar>div:first-child>span.dp-aviso,.folder-toolbar>div:first-child>button.dp-aviso{font-size:12.5px}
}
@media (max-width:760px){
  .folder-toolbar>div:first-child:has(.dp-aviso){flex-wrap:wrap;align-items:center}
  .folder-toolbar .dp-aviso{margin:6px 0 0;flex-basis:auto}
}

/* Logotipos de Word, Excel y PDF en los documentos */
.file-type-icon.file-logo{background:transparent!important;overflow:visible}
.file-type-icon.file-logo img{width:88%;height:88%;object-fit:contain;display:block;filter:drop-shadow(0 2px 4px rgba(24,43,64,.12));pointer-events:none;user-select:none}
.file-type-icon.file-logo.pdf img{width:80%;height:92%}

/* ===== Estética del inicio en el resto de apartados ===== */
.g2-marca{display:none}
@media (min-width:761px){
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio){--g2-izq:clamp(36px,3.4vw,74px);--g2-der:clamp(32px,3.2vw,70px);background:#f8f7f5}
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio) main{padding:0 var(--g2-der) 110px var(--g2-izq)!important;background:#f8f7f5!important}
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio) main>header.g2-cab{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:84px auto;align-items:end;column-gap:24px;height:auto!important;min-height:0!important;
    margin:14px calc(14px - var(--g2-der)) 0 calc(40px - var(--g2-izq))!important;padding:0 clamp(28px,3vw,56px) 96px!important;border:0!important;border-radius:30px!important;color:#fff;overflow:hidden;box-shadow:none!important;
    background:radial-gradient(80% 160% at 80% -20%,#13365c 0%,#0a243f 45%,#06182b 100%)!important;animation:g2-sube .7s cubic-bezier(.22,1,.36,1) both}
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio) main>header.g2-cab::before{content:"";position:absolute;right:8%;top:-190px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.42),transparent 65%);filter:blur(12px);pointer-events:none;z-index:0}
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio) main>header.g2-cab::after{content:"";position:absolute;right:-140px;bottom:-300px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(255,255,255,.07);background:none;opacity:1;filter:none;transform:none;top:auto;pointer-events:none;z-index:0}
  body.g2-interior main>header.g2-cab>*{position:relative;z-index:1}
  body.g2-interior main>header.g2-cab>.menu{display:none!important}
  body.g2-interior main>header.g2-cab>.g2-marca{display:block;grid-row:1;grid-column:1;align-self:center;font-size:11px;letter-spacing:.2em;color:rgba(255,255,255,.55);font-weight:600}
  body.g2-interior main>header.g2-cab>div:not(.g2-marca){grid-row:2;grid-column:1;margin:18px 0 0!important;min-width:0}
  body.g2-interior main>header.g2-cab .eyebrow{display:block;margin:0!important;font-size:12px!important;font-weight:500!important;letter-spacing:.16em!important;text-transform:uppercase;color:rgba(255,255,255,.55)!important}
  body.g2-interior main>header.g2-cab h1{margin:10px 0 0!important;font-size:clamp(32px,2.6vw,42px)!important;font-weight:600!important;letter-spacing:-.025em;line-height:1.05;color:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.g2-interior main>header.g2-cab>.profile{grid-row:1;grid-column:2;align-self:center;justify-self:end;display:flex;align-items:center;gap:10px;height:auto;margin:0!important;padding:5px 16px 5px 5px!important;border-radius:26px!important;background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.16)!important;color:#fff!important;box-shadow:none!important;cursor:pointer}
  body.g2-interior main>header.g2-cab>.profile>span:first-child{width:36px!important;height:36px!important;border-radius:50%!important;background:rgba(255,255,255,.18)!important;color:#fff!important;font-weight:600;font-size:12.5px}
  body.g2-interior main>header.g2-cab>.profile .profile-copy{display:block!important}
  body.g2-interior main>header.g2-cab>.profile strong{color:#fff!important;font-size:13.5px;font-weight:600}
  body.g2-interior main>header.g2-cab>.profile small{color:rgba(255,255,255,.6)!important;font-size:11px}
  body.g2-interior main>header.g2-cab>button:not(.profile):not(.menu),body.g2-interior main>header.g2-cab>.primary{grid-row:2;grid-column:2;align-self:end;justify-self:end;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 20px!important;border-radius:14px!important;background:#fff!important;color:#0a243f!important;border:0!important;font-weight:700;box-shadow:0 10px 24px -12px rgba(0,0,0,.5)!important}
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio) main>.g2-primero{position:relative;z-index:2;margin-top:-60px!important;animation:g2-sube .8s .06s cubic-bezier(.22,1,.36,1) both}
  /* Tarjetas con el mismo acabado que el inicio */
  body.g2-interior:not(.client-preview-mode) main>:is(.folder-panel,.panel,.signatures-panel,.declarations-panel,.courtesy-panel,.annual-closing-panel,.contacts-panel,.tasks-head,.clients-head,.management-workspace-head,.holded-panel,.inspection-panel,.calendar-shell),
  body.g2-interior:not(.client-preview-mode) main .management-workspace>section,
  body.g2-interior:not(.client-preview-mode) main :is(.management-search,.management-clients){border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -22px rgba(10,36,63,.4)!important}
  body.g2-interior:not(.client-preview-mode) main>.management-tabs{border:0!important;border-radius:18px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -22px rgba(10,36,63,.4)!important}
  body.g2-interior:not(.client-preview-mode) main>.task-board .task-column{border:0!important;background:#f3f0ec!important}
  body.g2-interior:not(.client-preview-mode) main :is(.eyebrow){letter-spacing:.14em}
  body.g2-interior:not(.client-preview-mode) main :is(.blue-button,.primary.blue-button){background:#0a243f!important;color:#fff!important;border-color:#0a243f!important}
  body.g2-interior:not(.client-preview-mode) main :is(.blue-button,.primary.blue-button):hover{background:#13365c!important}
  @keyframes g2-sube{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
}
@media (min-width:761px) and (prefers-reduced-motion:reduce){
  body.g2-interior main>header.g2-cab,body.g2-interior main>.g2-primero{animation:none!important}
}
@media (max-width:760px){
  body.g2-interior:not(.client-preview-mode) main>header{background:radial-gradient(120% 90% at 80% 0%,#13365c 0%,#0a243f 50%,#06182b 100%)!important;box-shadow:0 14px 30px rgba(6,24,43,.22)!important;border-radius:0 0 30px 30px!important}
  body.g2-interior:not(.client-preview-mode) main>header::before{content:"";position:absolute;right:-60px;top:-40px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.45),transparent 65%);filter:blur(10px);pointer-events:none}
  body.g2-interior:not(.client-preview-mode) main>:is(.folder-panel,.panel,.signatures-panel,.declarations-panel,.courtesy-panel,.annual-closing-panel,.contacts-panel,.tasks-head,.clients-head,.management-workspace-head,.inspection-panel,.calendar-shell){border:0!important;border-radius:20px!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 26px -20px rgba(10,36,63,.4)!important}
  body.g2-interior:not(.client-preview-mode) main :is(.blue-button,.primary.blue-button){background:#0a243f!important;border-color:#0a243f!important;color:#fff!important}
}
/* Logo centrado en la cabecera de cada apartado, como en el inicio */
.g2-logo{display:none}
@media (min-width:761px){
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio) main>header.g2-cab>.g2-logo{display:block;position:absolute;z-index:1;left:50%;top:calc((100% - 60px) / 2);transform:translate(-50%,-50%);height:clamp(72px,6vw,104px);width:auto;pointer-events:none;filter:drop-shadow(0 8px 24px rgba(0,0,0,.25))}
}
@media (min-width:761px) and (max-width:1500px){
  body.g2-interior:not(.client-preview-mode):not(.e2-en-inicio) main>header.g2-cab>.g2-logo{top:42px;height:48px;filter:none}
}

/* ===== Cabeceras móviles de los apartados: más altas, con logo y título completo ===== */
@media (max-width:760px){
  body.g2-interior:not(.client-preview-mode) main>header.g2-cab{display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;grid-template-rows:auto auto;align-items:center;row-gap:18px;column-gap:12px;height:auto!important;min-height:0!important;padding:calc(14px + env(safe-area-inset-top)) 18px 26px!important;margin-bottom:20px!important}
  body.g2-interior:not(.client-preview-mode) main>header.g2-cab::after{display:none!important}
  body.g2-interior main>header.g2-cab>*{position:relative;z-index:1}
  body.g2-interior main>header.g2-cab>.g2-marca{display:none!important}
  body.g2-interior main>header.g2-cab>.menu{grid-row:1;grid-column:1;margin:0}
  body.g2-interior main>header.g2-cab>.g2-logo{display:block!important;grid-row:1;grid-column:2;justify-self:center;height:28px;width:auto;max-width:100%;object-fit:contain;pointer-events:none}
  body.g2-interior main>header.g2-cab>.profile{grid-row:1;grid-column:3;justify-self:end;margin:0!important}
  body.g2-interior main>header.g2-cab>div:not(.g2-marca){grid-row:2;grid-column:1/-1!important;text-align:left!important;width:100%;min-width:0}
  body.g2-interior main>header.g2-cab .eyebrow{display:block;margin:0!important;font-size:10px!important;font-weight:600!important;letter-spacing:.16em!important;color:rgba(255,255,255,.6)!important;text-align:left!important}
  body.g2-interior main>header.g2-cab h1{max-width:none!important;margin:6px 0 0!important;font-size:clamp(24px,7.4vw,30px)!important;font-weight:650!important;line-height:1.1!important;letter-spacing:-.02em;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;text-align:left!important;color:#fff!important;overflow-wrap:anywhere}
  body.g2-interior main>header.g2-cab>button:not(.profile):not(.menu){grid-row:1;grid-column:3;justify-self:end;height:42px;min-width:42px;padding:0 12px!important;border-radius:13px!important;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:none!important}
  body.g2-interior main>header.g2-cab:has(>button:not(.profile):not(.menu)){grid-template-columns:42px minmax(0,1fr) auto!important}
}
@media (max-width:760px){
  body.g2-interior:not(.client-preview-mode) main>header.g2-cab{row-gap:26px!important;column-gap:12px!important;padding:calc(18px + env(safe-area-inset-top)) 20px 34px!important;margin-bottom:22px!important}
  body.g2-interior main>header.g2-cab>.g2-logo{height:30px}
  body.g2-interior main>header.g2-cab h1{margin-top:8px!important;font-size:clamp(26px,8vw,32px)!important}
}


/* Ajuste del aviso de tareas en los accesos rápidos móviles */
@media (max-width:760px){
  body.m2-en-inicio .m2-acceso > span{
    position:relative;
    overflow:visible;
  }
  body.m2-en-inicio .m2-acceso .m2-alerta-tareas{
    top:4px;
    right:4px;
    bottom:auto;
    box-sizing:border-box;
    min-width:20px;
    width:auto;
    height:20px;
    padding:0 5px;
    border:2px solid #fff;
    border-radius:999px;
    z-index:2;
    line-height:16px;
    box-shadow:0 2px 7px rgba(214,69,69,.28);
  }
}
#sidebar,#sidebar nav{overscroll-behavior:contain}
/* Área de cliente: logotipos reales en los últimos documentos */
.cd2 .cd2-pdf.cd2-logo{background:transparent!important}
.cd2 .cd2-pdf.cd2-logo img{width:30px;height:34px;object-fit:contain;display:block;filter:drop-shadow(0 2px 4px rgba(24,43,64,.12));pointer-events:none}

/* ===== Área de cliente · Asesoría Fiscal: misma estética que el resto de la app ===== */
.client-fiscal-overlay{background:#f8f7f5!important}
@media (min-width:761px){
  .client-fiscal-overlay .client-fiscal-header{position:relative;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:24px;height:auto!important;min-height:0!important;margin:14px 14px 0!important;padding:26px clamp(28px,3vw,56px) 100px!important;border:0!important;border-radius:30px!important;color:#fff;overflow:hidden;box-shadow:none!important;
    background:radial-gradient(80% 160% at 80% -20%,#13365c 0%,#0a243f 45%,#06182b 100%)!important}
  .client-fiscal-overlay .client-fiscal-header::before{content:"";position:absolute;right:8%;top:-190px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.42),transparent 65%);filter:blur(12px);pointer-events:none}
  .client-fiscal-overlay .client-fiscal-header::after{content:"";position:absolute;right:-140px;bottom:-300px;width:520px;height:520px;border-radius:50%;border:1px solid rgba(255,255,255,.07);pointer-events:none}
  .client-fiscal-overlay .client-fiscal-header>*{position:relative;z-index:1}
  .client-fiscal-overlay .client-fiscal-brand{grid-row:1;grid-column:1}
  .client-fiscal-overlay .client-fiscal-brand span{color:rgba(255,255,255,.75)!important;border-color:rgba(255,255,255,.2)!important}
  .client-fiscal-overlay .client-fiscal-header>.profile{grid-row:1;grid-column:3;justify-self:end;background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.16)!important;color:#fff!important;box-shadow:none!important}
  .client-fiscal-overlay .client-fiscal-header>strong{grid-row:2;grid-column:1/-1;justify-self:start;margin-top:30px;font-size:clamp(30px,2.6vw,40px)!important;font-weight:600!important;letter-spacing:-.025em;line-height:1.05;color:#fff!important;text-align:left}
  .client-fiscal-overlay .client-fiscal-header>strong::before{content:"ÁREA DE CLIENTE";display:block;margin-bottom:10px;font-size:12px;font-weight:500;letter-spacing:.16em;color:rgba(255,255,255,.55)}
  .client-fiscal-overlay .client-fiscal-page{position:relative;z-index:2;margin-top:-72px!important;padding-top:0!important;padding-left:clamp(28px,3vw,56px)!important;padding-right:clamp(28px,3vw,56px)!important}
  .client-fiscal-overlay .client-fiscal-back{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px 4px!important;padding:7px 14px 7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.18)!important;background:rgba(255,255,255,.1)!important;color:#fff!important}
  .client-fiscal-overlay .client-fiscal-back *{color:#fff!important}
}
.client-fiscal-overlay .client-fiscal-layout>main,.client-fiscal-overlay .client-fiscal-layout>aside{border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 30px -22px rgba(10,36,63,.4)!important}
.client-fiscal-overlay .client-fiscal-tabs button.active{color:#0a243f!important;background:transparent!important}
.client-fiscal-overlay .client-fiscal-tabs button.active::after{background:#0a243f!important}
.client-fiscal-overlay .client-fiscal-folders>button{border:1px solid #f5f3f0!important;border-radius:16px!important;background:#fbfaf8!important;transition:transform .15s ease,box-shadow .2s ease,border-color .2s ease}
.client-fiscal-overlay .client-fiscal-folders>button:hover{transform:translateY(-2px);border-color:#e9e4de!important;background:#fff!important;box-shadow:0 12px 26px -18px rgba(10,36,63,.45)}
.client-fiscal-overlay .client-fiscal-folders>button>span{background:#f8f3ed!important;color:#0a243f!important;border-radius:12px!important}
.client-fiscal-overlay .client-fiscal-other-services>article{border:1px solid #f5f3f0!important;border-radius:16px!important;background:#fdfbf9!important}
.client-fiscal-overlay .client-fiscal-service-actions button[data-fiscal-contact]{background:#0a243f!important;border-color:#0a243f!important;color:#fff!important;border-radius:12px!important}
.client-fiscal-overlay .client-fiscal-service-actions button:first-child{border:1px solid #e5e1dc!important;background:#fff!important;color:#0a243f!important;border-radius:12px!important}
.client-fiscal-overlay :is(.client-fiscal-year-folders,.client-fiscal-quarter-folders) button{border-color:#f5f3f0!important;border-radius:16px!important;background:#fbfaf8!important}
.client-fiscal-overlay :is(.client-fiscal-declarations section,.client-fiscal-file-list,.client-fiscal-info-sections>section){border-color:#f5f3f0!important;border-radius:16px!important}
@media (max-width:760px){
  .client-fiscal-overlay .client-fiscal-header{background:radial-gradient(120% 90% at 80% 0%,#13365c 0%,#0a243f 50%,#06182b 100%)!important;border-radius:0 0 30px 30px!important;box-shadow:0 14px 30px rgba(6,24,43,.22)!important;position:relative;overflow:hidden}
  .client-fiscal-overlay .client-fiscal-header::before{content:"";position:absolute;right:-60px;top:-40px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.45),transparent 65%);filter:blur(10px);pointer-events:none}
  .client-fiscal-overlay .client-fiscal-header>*{position:relative;z-index:1}
  .client-fiscal-overlay .client-fiscal-back{border:0!important;border-radius:14px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 10px 26px -20px rgba(10,36,63,.4)!important;color:#0a243f!important}
  .client-fiscal-overlay .client-fiscal-layout>main,.client-fiscal-overlay .client-fiscal-layout>aside{border-radius:20px!important}
}

/* ===== Aviso de servicio no contratado (área de cliente) ===== */
html:has(.client-unavailable-overlay),body:has(.client-unavailable-overlay){overflow:hidden!important;overscroll-behavior:none}
.client-unavailable-overlay{align-items:center!important;padding:24px 16px!important;background:rgba(6,24,43,.5)!important;backdrop-filter:blur(6px)!important;overflow-y:auto;overscroll-behavior:contain;opacity:0;transition:opacity .25s ease}
.client-unavailable-overlay.on{opacity:1}
.client-unavailable-overlay .client-unavailable-card{width:min(440px,100%)!important;max-width:440px!important;min-height:0!important;height:auto!important;margin:auto 0;padding:0!important;border-radius:28px!important;background:#fff!important;color:#0e2033!important;box-shadow:0 30px 80px rgba(6,24,43,.35)!important;overflow:hidden!important;transform:translateY(14px) scale(.98);transition:transform .35s cubic-bezier(.22,.8,.24,1)}
.client-unavailable-overlay.on .client-unavailable-card{transform:none}
.client-unavailable-overlay .client-unavailable-card>header{position:relative;display:block!important;height:auto!important;padding:26px 70px 28px 28px!important;border:0!important;color:#fff;overflow:hidden;background:radial-gradient(120% 140% at 85% -20%,#13365c 0%,#0a243f 50%,#06182b 100%)!important}
.client-unavailable-overlay .client-unavailable-card>header::before{content:"";position:absolute;right:-70px;top:-90px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.45),transparent 65%);filter:blur(8px);pointer-events:none}
.client-unavailable-overlay .client-unavailable-card>header>*{position:relative;z-index:1}
.client-unavailable-overlay .client-unavailable-card>header small{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.client-unavailable-overlay .client-unavailable-card>header strong{display:block;margin-top:6px;font-size:24px!important;font-weight:650;line-height:1.15;letter-spacing:-.015em;color:#fff;text-align:left!important;white-space:normal;overflow-wrap:anywhere}
.client-unavailable-overlay .client-unavailable-card>header button[data-close-client-unavailable]{position:absolute!important;top:18px;right:18px;width:40px!important;height:40px!important;border-radius:50%!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.2)!important;color:transparent!important;font-size:0!important}
.client-unavailable-overlay .client-unavailable-card>header button[data-close-client-unavailable]::before{content:"\00d7";color:#fff;font:400 26px/1 Arial,sans-serif}
.client-unavailable-overlay .client-unavailable-card>header button[data-close-client-unavailable]:hover{background:rgba(255,255,255,.22)!important;transform:none}
.client-unavailable-overlay .client-unavailable-body{padding:22px 30px 28px!important}
.client-unavailable-overlay .client-unavailable-illustration{width:150px!important;height:126px!important;margin-top:-4px}
.client-unavailable-overlay .client-unavailable-body h2{margin:8px 0 0!important;font-size:26px!important;color:#0a243f!important;letter-spacing:-.02em}
.client-unavailable-overlay .client-unavailable-body h3{margin:6px 0 0!important;font-size:16px!important;font-weight:600!important;color:#34465a!important;line-height:1.35}
.client-unavailable-overlay .client-unavailable-body p{margin:12px 0 20px!important;font-size:14px!important;line-height:1.55!important;color:#6B7590!important}
.client-unavailable-overlay .client-unavailable-primary,.client-unavailable-overlay .client-unavailable-secondary{width:100%!important;height:50px!important;min-height:0!important;margin:0 0 10px!important;border-radius:14px!important;font-weight:700!important;font-size:15px!important}
.client-unavailable-overlay .client-unavailable-primary{background:#0a243f!important;border:0!important;color:#fff!important;box-shadow:0 14px 26px -16px rgba(10,36,63,.7)!important}
.client-unavailable-overlay .client-unavailable-primary:hover{background:#13365c!important}
.client-unavailable-overlay .client-unavailable-secondary{background:#fff!important;border:1px solid #e5e1dc!important;color:#0a243f!important}
.client-unavailable-overlay .client-unavailable-secondary:hover{border-color:#0a243f!important}
.client-unavailable-overlay .client-unavailable-advisor{margin-top:4px!important;color:#113b67!important}
.client-unavailable-overlay .client-unavailable-nav{display:none!important}
@media (max-width:760px){
  .client-unavailable-overlay{align-items:flex-end!important;padding:0!important}
  .client-unavailable-overlay .client-unavailable-card{width:100%!important;max-width:none!important;border-radius:28px 28px 0 0!important;padding-bottom:env(safe-area-inset-bottom)!important;margin:auto 0 0!important;transform:translateY(40px)}
}
/* Logo en lugar del lema, a la derecha del saludo del área de cliente */
@media (min-width:761px){
  .cd2 .cd2-sello.cd2-sello-logo{display:block!important;align-self:flex-end;padding-bottom:4px}
  .cd2 .cd2-sello.cd2-sello-logo img{display:block;height:clamp(64px,5.2vw,92px);width:auto;filter:drop-shadow(0 8px 24px rgba(0,0,0,.25))}
}
a.cd2-dato{color:inherit;text-decoration:none}
a.cd2-dato:hover{color:#113b67}

/* ===== Botones flotantes de Sugerencias y Chat (escritorio) ===== */
.worker-chat .wc-ico{display:none}
.worker-chat .suggestion-launcher .wc-txt{font-weight:inherit}
@media (min-width:761px){
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat{right:28px!important;bottom:26px!important}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .suggestion-launcher,
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-launcher{display:inline-flex!important;align-items:center!important;gap:10px!important;height:50px!important;min-width:0!important;width:auto!important;padding:0 18px 0 7px!important;border-radius:999px!important;font:inherit!important;font-size:14px!important;font-weight:650!important;letter-spacing:.005em;cursor:pointer;transition:transform .2s cubic-bezier(.22,.8,.24,1),box-shadow .2s ease,background .2s ease,border-color .2s ease!important}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .suggestion-launcher>span,
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-launcher-icon{display:none!important}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .wc-ico{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;flex:none;transition:transform .25s ease}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .suggestion-launcher{right:calc(100% + 10px)!important;background:rgba(255,255,255,.92)!important;color:#0a243f!important;border:1px solid #edeae6!important;box-shadow:0 1px 2px rgba(10,36,63,.06),0 14px 32px -16px rgba(10,36,63,.45)!important;backdrop-filter:blur(10px)}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .suggestion-launcher .wc-ico{background:#FFF4DC;color:#B7791F}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-launcher{background:linear-gradient(135deg,#1a4470 0%,#0a243f 60%,#06182b 100%)!important;color:#fff!important;border:0!important;box-shadow:0 16px 34px -14px rgba(6,24,43,.75)!important}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-launcher .wc-ico{background:rgba(255,255,255,.14);color:#fff}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-launcher-label{display:inline!important;font-size:14px!important;font-weight:650!important}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat :is(.suggestion-launcher,.chat-launcher):hover{transform:translateY(-2px)}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .suggestion-launcher:hover{border-color:#e3ded8!important;background:#fff!important}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .suggestion-launcher:hover .wc-ico{transform:rotate(-12deg)}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-launcher:hover .wc-ico{transform:scale(1.08)}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat :is(.suggestion-launcher,.chat-launcher):active{transform:translateY(0) scale(.98)}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat :is(.suggestion-launcher,.chat-launcher):focus-visible{outline:3px solid rgba(17,59,103,.35);outline-offset:3px}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-launcher.active{background:#13365c!important}
  body:not(.client-preview-mode):not(.wc-sin) .worker-chat .chat-unread-badge{right:-4px!important;top:-6px!important;min-width:22px;height:22px;border:2px solid #fff;background:#EF4444;font-size:11px;font-weight:700;box-shadow:0 4px 10px rgba(239,68,68,.35)}
}

/* ===== Chat de trabajadores rediseñado ===== */
@media (min-width:761px){
  .worker-chat #chatPanel{width:410px!important;height:min(640px,calc(100vh - 120px))!important;border:0!important;border-radius:26px!important;background:#f9f8f6!important;box-shadow:0 30px 80px -20px rgba(6,24,43,.45),0 0 0 1px rgba(10,36,63,.06)!important;overflow:hidden!important}
}
#chatPanel .chat-team-header{position:relative;overflow:hidden;padding:20px 20px 22px!important;border:0!important;background:radial-gradient(120% 160% at 85% -30%,#13365c 0%,#0a243f 50%,#06182b 100%)!important;color:#fff}
#chatPanel .chat-team-header::before{content:"";position:absolute;right:-60px;top:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(18,63,111,.45),transparent 65%);filter:blur(8px);pointer-events:none}
#chatPanel .chat-team-header>*{position:relative;z-index:1}
#chatPanel .chat-brand-logo{width:40px!important;height:40px!important;padding:8px;border-radius:13px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16)}
#chatPanel .chat-kicker{color:rgba(255,255,255,.6)!important;letter-spacing:.16em!important;font-size:10.5px!important}
#chatPanel .chat-team-header h2{color:#fff!important;font-size:19px!important;font-weight:650!important;letter-spacing:-.01em}
#chatPanel #closeChat{width:36px!important;height:36px!important;border-radius:50%!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;font-size:20px!important}
#chatPanel #closeChat:hover{background:rgba(255,255,255,.22)!important}
#chatContent.ch2 .chat-intro{padding:16px 18px 6px!important;background:transparent!important;border:0!important}
#chatContent.ch2 .chat-intro strong{font-size:15px;color:#0e2033}
#chatContent.ch2 .chat-intro span{font-size:12.5px;color:#6B7590}
#chatContent .ch2-buscar{display:flex;align-items:center;gap:8px;margin:8px 16px 4px;padding:0 12px;height:40px;border-radius:12px;background:#fff;border:1px solid #edeae6;color:#8A93A8}
#chatContent .ch2-buscar:focus-within{border-color:#ceab7e;box-shadow:0 0 0 3px rgba(17,59,103,.12)}
#chatContent .ch2-buscar input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:13.5px;color:#0e2033}
#chatContent.ch2 .chat-contacts{padding:6px 12px 16px!important}
#chatContent.ch2 .chat-contact-group{padding:6px 0 8px!important;border:0!important;margin:0!important}
#chatContent.ch2 .chat-contact-group h4{margin:8px 6px 8px!important;font-size:10.5px!important;letter-spacing:.12em!important}
#chatContent.ch2 [data-chat-worker]{position:relative;display:flex!important;align-items:center;gap:12px;width:100%;min-height:64px;margin:0 0 6px!important;padding:10px 12px!important;border:0!important;border-radius:16px!important;background:#fff!important;box-shadow:0 1px 2px rgba(10,36,63,.05);text-align:left;transition:transform .15s ease,box-shadow .2s ease}
#chatContent.ch2 [data-chat-worker]:hover{transform:translateY(-1px);box-shadow:0 10px 24px -14px rgba(10,36,63,.45)}
#chatContent.ch2 [data-chat-worker].client-chat-contact{background:#FFFBF2!important;box-shadow:inset 3px 0 0 #D59A3C,0 1px 2px rgba(10,36,63,.05)}
#chatContent.ch2 [data-chat-worker] .chat-avatar{width:42px!important;height:42px!important;border-radius:50%!important;flex:none;font-size:13px!important;font-weight:700!important}
#chatContent.ch2 [data-chat-worker]>span:nth-of-type(2){flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;align-items:baseline}
#chatContent.ch2 [data-chat-worker] strong{grid-column:1;font-size:14px;font-weight:650;color:#0e2033;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatContent.ch2 [data-chat-worker] small{grid-column:1/-1;margin-top:3px;font-size:12.5px;color:#6B7590;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatContent.ch2 [data-chat-worker] small.has-unread{color:#113b67!important;font-weight:650}
#chatContent.ch2 [data-chat-worker] .ch2-hora{grid-column:2;grid-row:1;font-size:11px;color:#8A93A8}
#chatContent.ch2 [data-chat-worker] .chat-contact-unread{min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#113b67!important;color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;flex:none;box-shadow:none!important}
#chatContent.ch2 [data-chat-worker]>b{display:none}
#chatContent .ch2-vacio{margin:18px 8px;text-align:center;font-size:13px;color:#8A93A8}
/* Conversación */
#chatContent.ch2 .conversation-bar{padding:12px 14px!important;background:#fff!important;border-bottom:1px solid #f2efec!important}
#chatContent.ch2 .conversation-bar.client-conversation{background:#FFFBF2!important}
#chatContent.ch2 .conversation-bar .chat-avatar{width:40px!important;height:40px!important;border-radius:50%!important;font-weight:700}
#chatContent.ch2 .conversation-bar #chatBack{width:36px;height:36px;border-radius:12px;background:#f7f5f3;border:0}
#chatContent.ch2 .chat-messages{background:#f9f8f6!important;padding:16px 14px!important}
#chatContent.ch2 .chat-message p{font-size:14px;line-height:1.45}
#chatContent.ch2 .chat-message.incoming{background:#fff!important;border:0!important;border-radius:18px 18px 18px 6px!important;box-shadow:0 1px 2px rgba(10,36,63,.06)!important;color:#0e2033!important}
#chatContent.ch2 .chat-message.outgoing{background:linear-gradient(135deg,#1a4470,#0a243f)!important;border:0!important;border-radius:18px 18px 6px 18px!important;color:#fff!important;box-shadow:0 8px 18px -12px rgba(10,36,63,.6)!important}
#chatContent.ch2 .chat-message time{font-size:10.5px;opacity:.7}
#chatContent.ch2 .chat-composer{gap:8px!important;padding:10px 12px!important;background:#fff!important;border-top:1px solid #f2efec!important}
#chatContent.ch2 .chat-composer textarea{border-radius:22px!important;border:1px solid #edeae6!important;background:#faf9f7!important;padding:11px 16px!important;font-size:14px!important;min-height:44px}
#chatContent.ch2 .chat-composer textarea:focus{background:#fff!important;border-color:#ceab7e!important;box-shadow:0 0 0 3px rgba(17,59,103,.12)!important;outline:0}
#chatContent.ch2 .chat-composer button{width:44px!important;height:44px!important;min-width:44px;border-radius:50%!important;background:#0a243f!important;color:#fff!important;border:0!important}
#chatContent.ch2 .chat-composer button:hover{background:#13365c!important}
#chatContent.ch2 .chat-note{background:#fff;margin:0!important;padding:0 12px 10px!important;font-size:10.5px!important;color:#9AA2B6!important}

/* ===== Iconos de Inicio: azul marino de marca con punto de color ===== */
html body .metrics .metric-icon,
html body .home-activity-card .home-activity-icon{position:relative!important;overflow:visible!important;background:radial-gradient(120% 120% at 20% 0%,#1d4876 0%,#0a243f 55%,#06182b 100%)!important;color:#fff!important;border:0!important;box-shadow:0 10px 20px -10px rgba(6,24,43,.7),inset 0 1px 0 rgba(255,255,255,.15)!important}
html body .metrics .metric-icon svg,
html body .home-activity-card .home-activity-icon svg{stroke:#fff!important;color:#fff!important;fill:none!important}
html body .metrics .metric-icon::after,
html body .home-activity-card .home-activity-icon::after{content:""!important;position:absolute!important;right:-3px;top:-3px;width:12px;height:12px;border-radius:50%;border:3px solid #fff;background:var(--ip,#c69d68);box-sizing:content-box;display:block!important}
html body .home-activity-card .home-activity-icon::after{width:8px;height:8px;border-width:2.5px}
html body .metrics .metric-icon.blue,html body .home-messages-card .home-activity-icon{--ip:#c69d68}
html body .metrics .metric-icon.violet{--ip:#9278F2}
html body .metrics .metric-icon.amber,html body .home-tasks-card .home-activity-icon,html body .home-client-messages-card .home-activity-icon{--ip:#F5A524}
html body .metrics .metric-icon.green,html body .home-reminders-card .home-activity-icon{--ip:#2DB585}
html body.home-cuatro-columnas .home-activity-card.home-client-messages-card .home-activity-icon{background:radial-gradient(120% 120% at 20% 0%,#1d4876 0%,#0a243f 55%,#06182b 100%)!important;color:#fff!important}

/* Chat móvil: conserva accesible la navegación inferior y deja espacio para ella. */
@media(max-width:760px){
  .mobile-app-chrome{position:relative;z-index:2200}
  .mobile-bottom-nav{z-index:1301}
  .chat-panel,.chat-panel.perplexity-mode{inset:0 0 calc(88px + env(safe-area-inset-bottom));height:auto;max-height:none}
}

/* Barra persistente dentro del chat móvil */
.chat-mobile-bottom-nav{display:none}
@media(max-width:760px){
  body.chat-open .mobile-bottom-nav{display:none}
  .chat-panel,.chat-panel.perplexity-mode{inset:0;width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}
  .chat-mobile-bottom-nav{display:grid;position:relative;z-index:2;flex:0 0 calc(72px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;padding:7px 6px calc(7px + env(safe-area-inset-bottom));border-top:1px solid #efedea;background:rgba(255,255,255,.98);box-shadow:0 -7px 22px rgba(15,44,75,.08)}
  .chat-mobile-bottom-nav button{min-width:0;height:54px;border:0;border-radius:14px;background:transparent;color:#727d95;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:inherit}
  .chat-mobile-bottom-nav button span{font-size:21px;line-height:1;color:#0b2846}
  .chat-mobile-bottom-nav button small{font-size:9px;font-weight:750;white-space:nowrap}
  .chat-mobile-bottom-nav [data-chat-mobile-close]{color:#0b2846;background:#faf6f2}
}

/* ===== Chat móvil con la estética de Inicio ===== */
.ch3-logo{display:none}
@media (max-width:760px){
  html body .worker-chat #chatPanel{display:flex!important;flex-direction:column!important;inset:0!important;width:100%!important;height:100dvh!important;max-height:100dvh!important;border:0!important;border-radius:0!important;background:#f9f8f6!important;padding:0 0 calc(92px + env(safe-area-inset-bottom))!important;box-sizing:border-box!important}
  html body .worker-chat #chatPanel .chat-mobile-bottom-nav{display:none!important}
  /* Cabecera como la de Inicio */
  html body .worker-chat #chatPanel .chat-team-header{flex:none!important;display:block!important;min-height:0!important;height:auto!important;max-height:none!important;padding:calc(22px + env(safe-area-inset-top)) 20px 70px!important;border-radius:0 0 30px 30px!important;background:radial-gradient(120% 90% at 80% 0%,#13365c 0%,#0a243f 50%,#06182b 100%)!important;overflow:hidden!important}
  html body .worker-chat #chatPanel .chat-team-header::before{right:-60px!important;top:-40px!important;width:260px!important;height:260px!important}
  html body .worker-chat #chatPanel .chat-team-header .ch3-logo{display:block;position:relative;z-index:1;height:44px;width:auto}
  html body .worker-chat #chatPanel .chat-team-header .chat-brand{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:auto!important;height:auto!important;display:block!important;margin-top:24px!important;pointer-events:auto}
  html body .worker-chat #chatPanel .chat-team-header .chat-brand::before,
  html body .worker-chat #chatPanel .chat-team-header .chat-brand-logo{display:none!important}
  html body .worker-chat #chatPanel .chat-team-header .chat-brand>div{display:block!important}
  html body .worker-chat #chatPanel .chat-team-header .chat-kicker{display:block!important;margin:0!important;font-size:12px!important;font-weight:500!important;letter-spacing:.14em!important;color:rgba(255,255,255,.55)!important}
  html body .worker-chat #chatPanel .chat-team-header h2{margin:6px 0 0!important;font-size:28px!important;font-weight:600!important;letter-spacing:-.02em!important;line-height:1.15!important;color:#fff!important}
  html body .worker-chat #chatPanel .chat-team-header #closeChat{position:absolute!important;z-index:2!important;top:calc(22px + env(safe-area-inset-top))!important;right:20px!important;margin:0!important;width:42px!important;height:42px!important;border-radius:50%!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;font-size:22px!important;display:grid!important;place-items:center!important;box-shadow:none!important}
  /* Contenido que monta sobre la cabecera */
  html body .worker-chat #chatPanel #chatContent{flex:1 1 auto!important;min-height:0!important;margin-top:-48px!important;position:relative;z-index:2;background:transparent!important;overflow-y:auto!important;padding:0 16px 16px!important}
  html body .worker-chat #chatPanel #chatContent.ch2 .chat-intro{display:block!important;margin:0 0 6px!important;padding:18px 16px 16px!important;background:#fff!important;border-radius:22px!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 16px 36px -22px rgba(10,36,63,.45)!important}
  html body .worker-chat #chatPanel #chatContent.ch2 .chat-intro strong{display:block;font-size:17px!important;font-weight:650!important}
  html body .worker-chat #chatPanel #chatContent.ch2 .chat-intro span{display:block;margin-top:3px;font-size:13px!important}
  html body .worker-chat #chatPanel #chatContent.ch2 .chat-intro .ch2-buscar{margin:14px 0 0!important;background:#f9f8f6!important;border-color:transparent!important}
  html body .worker-chat #chatPanel #chatContent.ch2 .chat-contacts{padding:0!important}
  html body .worker-chat #chatPanel #chatContent.ch2 .chat-contact-group{padding-left:0!important;padding-right:0!important}
  /* Conversación: la barra del contacto es la tarjeta flotante */
  html body .worker-chat #chatPanel #chatContent .conversation-bar{border-radius:22px!important;border:0!important;box-shadow:0 1px 2px rgba(10,36,63,.05),0 16px 36px -22px rgba(10,36,63,.45)!important;background:#fff!important}
  /* La barra inferior de la app sigue visible encima del chat */
  html body:has(.chat-panel[aria-hidden="false"]) .m2-barra{transform:none!important;pointer-events:auto!important}
  html body.chat-open .m2-barra{z-index:1300!important}
  html body.chat-open .m2-velo{z-index:1301!important}
  html body.chat-open .m2-hoja{z-index:1302!important}
  html body.chat-open .m2-barra .m2-tab.active{color:#6B7488!important}
  html body.chat-open .m2-barra .m2-tab.active small{font-weight:500}
  html body.chat-open .m2-barra .m2-chat{color:#0a243f!important}
  html body.chat-open .m2-barra .m2-chat small{font-weight:600}
  html body.chat-open .chat-launcher,html body.chat-open .suggestion-launcher{visibility:hidden}
  html body .worker-chat #chatPanel #chatContent .chat-composer,html body .worker-chat #chatPanel #chatContent .chat-note{background:transparent!important;border:0!important;box-shadow:none!important}
}
/* Menú lateral por encima del chat móvil */
@media (max-width:760px){
  html body.chat-open.menu-open aside#sidebar.sidebar{z-index:1400!important}
  html body.chat-open.menu-open .overlay{z-index:1399!important}
}

/* ===== Pestaña activa de la barra lateral plegada: mismo tono que el lienzo y sin pisar el apartado de abajo ===== */
@media (min-width:761px){
  html body .sidebar,html body .sidebar nav,html body .sidebar nav button{--sidebar-active-surface:#f8f7f5!important}
  html body:not(.client-preview-mode) .sidebar nav button.active{background:#f8f7f5!important;color:#0a243f!important}
  html body:not(.client-preview-mode) .sidebar nav button.active svg{color:#0a243f!important;stroke:#0a243f!important}
  html body:not(.client-preview-mode) .sidebar nav button.active{margin-top:14px!important;margin-bottom:14px!important}
}
