:root{--ink:#18243a;--muted:#778397;--line:#e5e9ef;--canvas:#f5f7fa;--card:#fff;--lime:#d7f000;--lime-dark:#9faf00;--nav:#10170b;--nav-soft:#1c2610;--blue:#243450;--green:#0e9f70;--red:#e94b6d;--amber:#df9b35;--radius:14px;--shadow:0 8px 24px rgba(30,44,65,.05)}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}.app-shell{display:flex;min-height:100vh}.sidebar{width:250px;background:var(--nav);color:#fff;display:flex;flex-direction:column;flex-shrink:0;padding:24px 14px 18px}.brand{display:flex;align-items:center;gap:10px;font:700 24px 'Space Grotesk';padding:0 12px 25px}.brand span:last-child span{color:var(--lime)}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:6px;background:var(--lime);color:var(--nav);font-size:18px}.workspace-switcher{border:1px solid #354025;background:#19230f;border-radius:8px;padding:11px 10px;display:flex;align-items:center;gap:8px;font-size:11px;color:#dbe2d5}.status-dot{width:7px;height:7px;border-radius:50%;background:#72df9d}.workspace-switcher .chevron{margin-left:auto;color:#a4b18c}.side-nav{margin-top:25px;display:flex;flex-direction:column;gap:4px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:#778267;margin:12px 12px 7px}.nav-item{border:0;background:transparent;color:#aeb9a5;border-radius:8px;text-align:left;padding:12px;display:flex;align-items:center;gap:11px;font:500 13px 'DM Sans';cursor:pointer}.nav-item span{font-size:17px;width:18px;text-align:center;color:#879176}.nav-item:hover,.nav-item.active{background:var(--lime);color:#141b0b}.nav-item.active span,.nav-item:hover span{color:#141b0b}.nav-count{margin-left:auto;border-radius:20px;background:#26351a;color:var(--lime);padding:2px 7px;font-size:10px}.sidebar-footer{margin-top:auto;border-top:1px solid #2b351d;padding:17px 8px 0;display:flex;align-items:center;gap:9px;font-size:12px}.sidebar-footer small,.user-chip small{display:block;color:#8c9884;margin-top:3px}.sidebar-footer>span{margin-left:auto;color:#758069}.avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#dce8ca;color:#263420;font-weight:700;font-size:10px}.main-wrap{min-width:0;flex:1}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px}.breadcrumbs{display:flex;gap:11px;align-items:center;color:#94a0b0;font-size:13px}.breadcrumbs b{font-weight:400;color:#ccd2da}.breadcrumbs strong{color:var(--ink)}.top-actions{display:flex;align-items:center;gap:17px}.icon-button,.mobile-menu{border:0;background:transparent;color:#8591a3;font-size:19px;cursor:pointer}.user-chip{border:0;background:transparent;display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:600}.content{max-width:1480px;margin:0 auto;padding:30px 34px 55px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:26px}.eyebrow{color:#99a4b2;font-size:12px;margin:0 0 5px}.page-title{font:700 27px 'Space Grotesk';margin:0;letter-spacing:-.5px}.page-subtitle{color:var(--muted);margin:8px 0 0}.button{border:0;border-radius:8px;padding:11px 16px;font-weight:700;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.button-primary{background:var(--lime);color:#17200e}.button-primary:hover{background:#c7df00}.button-dark{background:var(--blue);color:#fff}.button-light{background:#fff;border:1px solid var(--line);color:var(--ink)}.button-danger{background:#fff0f2;color:var(--red)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.stat-card,.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.stat-card{padding:20px}.stat-top{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.stat-icon{font-size:20px;color:#a2afbe}.stat-number{font:700 29px 'Space Grotesk';margin:14px 0 8px}.stat-meta{font-size:11px;color:var(--green)}.stat-meta.warning{color:var(--amber)}.dashboard-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:18px}.card{padding:22px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.card-heading h2,.card-heading h3{font:700 16px 'Space Grotesk';margin:0}.card-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}.link-button{border:0;background:transparent;color:#8da200;font-weight:700;font-size:12px;cursor:pointer}.chart{height:190px;display:flex;align-items:flex-end;gap:14px;padding:18px 8px 25px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,transparent 24%,#f0f3f7 25%,transparent 26%,transparent 49%,#f0f3f7 50%,transparent 51%,transparent 74%,#f0f3f7 75%,transparent 76%)}.bar{flex:1;position:relative;background:#dbe9b7;border-radius:5px 5px 0 0;min-width:16px}.bar.active{background:var(--lime)}.bar small{position:absolute;bottom:-24px;color:var(--muted);font-size:10px;left:50%;transform:translateX(-50%)}.bar em{position:absolute;top:-20px;left:50%;transform:translateX(-50%);font-style:normal;font-size:10px;color:var(--ink)}.donut-row{display:flex;align-items:center;justify-content:center;gap:24px;min-height:190px}.donut{width:140px;height:140px;border-radius:50%;background:conic-gradient(var(--lime) 0 42%,#70cbb1 42% 71%,#243450 71% 88%,#dfe5ea 88%);position:relative}.donut:after{content:'';position:absolute;inset:30px;background:#fff;border-radius:50%}.legend{display:grid;gap:10px;font-size:11px}.legend span{display:flex;gap:7px;align-items:center}.legend i{width:8px;height:8px;border-radius:50%;background:var(--lime)}.legend i.blue{background:var(--blue)}.legend i.green{background:#70cbb1}.legend i.gray{background:#dfe5ea}.recent{grid-column:1/-1}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:600px}.data-table th{text-align:left;background:#f7f8fa;color:#8994a4;font-size:10px;text-transform:uppercase;letter-spacing:.5px;padding:12px}.data-table td{padding:14px 12px;border-bottom:1px solid #edf0f3;font-size:12px}.data-table tr:last-child td{border-bottom:0}.tag{border-radius:20px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-block}.tag-green{background:#e2f8ee;color:#169568}.tag-amber{background:#fff4df;color:#c88728}.tag-gray{background:#eff2f5;color:#8290a0}.quote-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:20px;align-items:start}.form-section{margin-bottom:22px}.section-title{font:700 15px 'Space Grotesk';margin:0 0 15px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:11px;font-weight:700;color:#5d697a}.field input,.field select,.field textarea{width:100%;border:1px solid #dfe5ec;border-radius:7px;background:#fff;padding:11px 12px;color:var(--ink);font:13px 'DM Sans';outline:0}.field input:focus,.field select:focus,.field textarea:focus{border-color:#b6cc00;box-shadow:0 0 0 3px rgba(215,240,0,.14)}.field textarea{min-height:82px;resize:vertical}.items-card{padding:0;overflow:hidden}.items-header{padding:20px 22px 15px;display:flex;justify-content:space-between;align-items:center}.items-header h2{font:700 15px 'Space Grotesk';margin:0}.items-header .button{padding:8px 11px;font-size:12px}.items-table{min-width:700px}.items-table th{background:var(--blue);color:#d8e0ec}.items-table td{vertical-align:middle}.item-input{border:1px solid #e0e5ea;border-radius:5px;padding:8px;width:72px}.remove-item{border:0;background:transparent;color:#c6ced9;font-size:18px;cursor:pointer}.remove-item:hover{color:var(--red)}.summary{padding:20px;background:#f8fafb;border-top:1px solid var(--line);display:flex;justify-content:flex-end}.summary-box{width:min(100%,330px)}.summary-line{display:flex;justify-content:space-between;padding:7px 0;color:#687487;font-size:12px}.summary-line strong{color:var(--ink)}.summary-total{border-top:2px solid var(--blue);margin-top:8px;padding-top:14px;font-size:16px;color:var(--ink)}.summary-total strong{font-size:20px}.preview{position:sticky;top:20px;padding:0;overflow:hidden}.preview-top{background:var(--blue);color:#fff;padding:18px 22px;display:flex;justify-content:space-between;align-items:center}.preview-top h2{font:700 14px 'Space Grotesk';margin:0}.preview-body{padding:22px}.preview-brand{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px}.preview-brand strong{font:700 18px 'Space Grotesk'}.preview-brand strong span{color:#a8bf00}.preview-brand small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.quote-number{text-align:right;font-size:10px;color:var(--muted)}.quote-number strong{display:block;color:var(--ink);font-size:13px}.preview-client{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}.preview-label{display:block;color:#9aa5b2;text-transform:uppercase;font-size:9px;letter-spacing:.5px;margin-bottom:5px}.preview-client strong{font-size:11px}.preview-items{padding:18px 0}.preview-item{display:flex;justify-content:space-between;gap:12px;font-size:10px;padding:7px 0;border-bottom:1px solid #eef1f4}.preview-item span:last-child{font-weight:700}.preview-totals{border-top:1px solid var(--line);padding-top:12px}.preview-totals div{display:flex;justify-content:space-between;padding:4px 0;font-size:11px}.preview-totals .total{font-size:17px;font-weight:700;color:var(--blue);padding-top:10px}.action-row{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.empty-state{text-align:center;padding:50px 20px;color:var(--muted)}.empty-state strong{display:block;color:var(--ink);margin-bottom:6px}.module-card{padding:0;overflow:hidden}.module-card .card-heading{padding:22px 22px 0}.search-bar{margin:0 22px 18px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px;color:#98a2b0}.search-bar input{border:0;outline:0;width:100%;font:13px 'DM Sans'}.mobile-menu{display:none}.toast{position:fixed;right:24px;bottom:24px;background:#17240f;color:#fff;padding:13px 18px;border-radius:8px;box-shadow:0 10px 30px #0003;transform:translateY(100px);opacity:0;transition:.25s;z-index:10}.toast.show{transform:translateY(0);opacity:1}
@media(max-width:1000px){.sidebar{width:220px}.content{padding:24px}.stats-grid{grid-template-columns:repeat(2,1fr)}.quote-layout{grid-template-columns:1fr}.preview{position:static}.preview-body{max-width:600px;margin:auto}.dashboard-grid{grid-template-columns:1fr}.recent{grid-column:auto}}
@media(max-width:1023px){.sidebar{position:fixed;z-index:5;left:-260px;top:0;bottom:0;transition:.25s}.sidebar.open{left:0;box-shadow:10px 0 30px #0004}.mobile-menu{display:block;position:relative;z-index:6;margin-right:12px}.breadcrumbs{margin-right:auto}}
@media(max-width:720px){.topbar{padding:0 18px}.user-chip span:not(.avatar){display:none}.content{padding:22px 15px 42px}.page-heading{display:block}.page-heading .button{margin-top:18px}.page-title{font-size:23px}.stats-grid{gap:10px}.stat-card{padding:15px}.stat-number{font-size:24px}.dashboard-grid{gap:12px}.card{padding:16px}.form-grid,.form-grid.three{grid-template-columns:1fr}.field.full{grid-column:auto}.items-header{padding:16px}.summary{padding:16px}.action-row{flex-wrap:wrap}.action-row .button{flex:1;justify-content:center}.donut-row{flex-direction:column;gap:12px}.chart{gap:7px}.top-actions{gap:8px}}

/* Ajustes exclusivos del Dashboard Spotlight */
:root{--lime:#C3D600;--turquoise:#00B2A7;--black:#1D1D1B;--gray:#9D9C9C;--ink:#1D1D1B;--nav:#1D1D1B;--green:#00B2A7;--shadow:0 8px 24px rgba(29,29,27,.055)}body{font-family:'Inter',sans-serif}.brand,.page-title,.stat-number,.card-heading h2,.card-heading h3,.section-title,.items-header h2,.preview-top h2{font-family:'Inter',sans-serif}.dashboard-view{max-width:1100px;margin:0 auto}.dashboard-view .page-heading{margin-bottom:24px}.dashboard-view .page-title{font-size:28px;font-weight:700;letter-spacing:-.7px}.dashboard-view .page-subtitle{color:#71809a}.dashboard-view .button-primary{background:var(--lime);border-radius:8px;padding:12px 18px;color:#1d1d1b;box-shadow:0 2px 0 rgba(29,29,27,.06)}.dashboard-view .button-primary:hover{background:#d3e600}.dashboard-view .stats-grid{gap:16px;margin-bottom:18px}.dashboard-view .stat-card{min-height:142px;padding:22px 21px;border-color:#e4e9ef;border-radius:15px}.dashboard-view .stat-top{color:#71809a;font-size:12px}.dashboard-view .stat-icon{color:#8ca0bb;font-size:18px}.dashboard-view .stat-number{font-size:30px;letter-spacing:-1px;margin:17px 0 8px}.dashboard-view .stat-meta{color:var(--turquoise);font-size:11px}.dashboard-view .stat-meta.warning{color:#d89024}.dashboard-view .dashboard-grid{grid-template-columns:1.4fr 1fr;gap:18px}.dashboard-view .card{border-color:#e2e7ed;border-radius:15px;padding:22px;box-shadow:0 7px 20px rgba(29,29,27,.035)}.dashboard-view .card-heading{margin-bottom:16px}.dashboard-view .card-heading h2{font-size:16px;letter-spacing:-.15px}.dashboard-view .card-heading p{color:#71809a;font-size:12px}.dashboard-view .link-button{color:#8da500}.dashboard-view .chart{height:190px;gap:15px;padding:18px 8px 25px;background:linear-gradient(180deg,transparent 24%,#eef2f5 25%,transparent 26%,transparent 49%,#eef2f5 50%,transparent 51%,transparent 74%,#eef2f5 75%,transparent 76%)}.dashboard-view .bar{background:#dbe9b8;border-radius:5px 5px 0 0}.dashboard-view .bar.active{background:var(--lime)}.dashboard-view .bar small{color:#71809a}.dashboard-view .donut{width:140px;height:140px;background:conic-gradient(var(--lime) 0 42%,#69c8b5 42% 71%,#243450 71% 88%,#dfe5ea 88%)}.dashboard-view .legend{color:#435069;gap:10px}.dashboard-view .legend i{background:var(--lime)}.dashboard-view .legend i.green{background:#69c8b5}.dashboard-view .recent{grid-column:1/-1}.dashboard-view .data-table{min-width:680px}.dashboard-view .data-table th{background:#f6f8fa;color:#8290a6;padding:12px;font-size:10px}.dashboard-view .data-table td{padding:14px 12px;color:#27364d;font-size:12px}.dashboard-view .tag-green{background:#e0f7f0;color:#008f83}.dashboard-view .tag-amber{background:#fff2db;color:#c88120}.dashboard-view .tag-gray{background:#eef1f4;color:#71809a}
body[data-theme="dark"]{background:#151914;color:#eef2e7}body[data-theme="dark"] .topbar{background:#1d231d;border-color:#303830}body[data-theme="dark"] .breadcrumbs,body[data-theme="dark"] .breadcrumbs strong,body[data-theme="dark"] .user-chip{color:#eef2e7}body[data-theme="dark"] .dashboard-view .stat-card,body[data-theme="dark"] .dashboard-view .card{background:#202720;border-color:#353e35;box-shadow:0 8px 24px rgba(0,0,0,.18)}body[data-theme="dark"] .dashboard-view .stat-top,body[data-theme="dark"] .dashboard-view .card-heading p,body[data-theme="dark"] .dashboard-view .page-subtitle,body[data-theme="dark"] .dashboard-view .data-table th{color:#aab6a8}body[data-theme="dark"] .dashboard-view .stat-number,body[data-theme="dark"] .dashboard-view .card-heading h2,body[data-theme="dark"] .dashboard-view .data-table td,body[data-theme="dark"] .dashboard-view .legend{color:#f0f4e9}body[data-theme="dark"] .dashboard-view .chart{background:linear-gradient(180deg,transparent 24%,#354037 25%,transparent 26%,transparent 49%,#354037 50%,transparent 51%,transparent 74%,#354037 75%,transparent 76%)}body[data-theme="dark"] .dashboard-view .data-table th{background:#293229}body[data-theme="dark"] .dashboard-view .data-table td{border-color:#303930}body[data-theme="dark"] .dashboard-view .donut:after{background:#202720}body[data-theme="dark"] .dashboard-view .donut{background:conic-gradient(var(--lime) 0 42%,#69c8b5 42% 71%,#36496c 71% 88%,#566157 88%)}
@media(max-width:1000px){.dashboard-view{max-width:none}.dashboard-view .dashboard-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.dashboard-view .dashboard-grid{grid-template-columns:1fr}.dashboard-view .stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-view .stat-card{min-height:126px;padding:17px}.dashboard-view .stat-number{font-size:25px}.dashboard-view .page-title{font-size:24px}.dashboard-view .chart{gap:8px}.dashboard-view .donut-row{flex-direction:row;gap:16px}}

/* Corrección visual del encabezado, filtros y métricas superiores según referencia */
.dashboard-view .page-heading{margin-bottom:20px;align-items:flex-start}.dashboard-view .page-heading .eyebrow{display:none}.dashboard-view .page-title{font-size:20px;letter-spacing:-.35px}.dashboard-view .page-subtitle{font-size:10px;margin-top:4px}.dashboard-filters{background:var(--surface,#fff);border:1px solid #dfe5ec;border-radius:8px;padding:14px 14px 13px;margin-bottom:16px}.dashboard-filters h2{margin:0 0 11px;color:#8190a7;font-size:9px;letter-spacing:.55px;text-transform:uppercase}.dashboard-filter-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.05fr;gap:11px}.dashboard-filter-field label{display:block;margin:0 0 5px;color:#304967;font-size:8px;font-weight:700;text-transform:uppercase}.dashboard-filter-control{position:relative}.dashboard-filter-control input,.dashboard-filter-control select{width:100%;height:33px;border:1px solid #d6e0eb;border-radius:5px;background:#f9fbfd;color:#536b88;font:500 10px Inter,system-ui,sans-serif;padding:0 28px 0 10px;outline:0}.dashboard-filter-control input:focus,.dashboard-filter-control select:focus{border-color:var(--turquoise);box-shadow:0 0 0 2px rgba(0,178,167,.12)}.dashboard-filter-control select{appearance:none;cursor:pointer}.dashboard-filter-icon{position:absolute;right:9px;top:8px;color:#142944;font-size:13px;line-height:16px;pointer-events:none}.dashboard-filter-actions{display:flex;gap:10px;margin-top:13px;padding-top:1px}.dashboard-filter-actions button{height:20px;border:0;border-radius:5px;padding:0 14px;font:700 9px Inter,system-ui,sans-serif;cursor:pointer}.dashboard-search-button{background:var(--lime);color:#121a08}.dashboard-clear-button{background:#edf2f7;color:#526781}.dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.dashboard-stat{min-width:0;min-height:116px;padding:14px 16px;background:var(--surface,#fff);border:1px solid #dfe5ec;border-radius:8px;box-shadow:0 2px 5px rgba(33,54,79,.05)}.dashboard-stat-total{border-left:3px solid var(--lime);padding-left:14px}.dashboard-stat-top{display:flex;justify-content:space-between;align-items:center;color:#8393aa;font-size:8px;font-weight:700;letter-spacing:.55px;text-transform:uppercase}.dashboard-stat-top span:last-child{width:26px;height:26px;border-radius:9px;background:#f4f7fa;color:#8da0b9;display:grid;place-items:center;font-size:15px;font-weight:400}.dashboard-stat>strong{display:block;margin:8px 0 17px;color:#02050a;font-size:25px;line-height:1;letter-spacing:-.6px}.dashboard-stat-total>strong{font-size:21px;letter-spacing:-.3px}.dashboard-stat>div:last-child{display:flex;align-items:center;gap:7px;min-height:20px;border-top:1px solid #edf1f5;padding-top:8px;color:#718198;font-size:8px}.dashboard-stat>div:last-child small{font-size:8px;line-height:1.3}.dashboard-chip{display:inline-flex;align-items:center;min-height:14px;border-radius:9px;padding:0 7px;white-space:nowrap;font-size:8px}.dashboard-chip.green{background:#e7fbf1;color:#00a974}.dashboard-chip.amber{background:#fff5db;color:#e99500}.dashboard-view .dashboard-grid{margin-top:0}
body[data-theme="dark"] .dashboard-filters,body[data-theme="dark"] .dashboard-stat{background:#202720;border-color:#353e35}.dashboard-view .dashboard-filters h2,body[data-theme="dark"] .dashboard-filter-field label{color:#aab6a8}body[data-theme="dark"] .dashboard-filter-control input,body[data-theme="dark"] .dashboard-filter-control select{background:#293229;border-color:#465146;color:#e9f0e2}body[data-theme="dark"] .dashboard-filter-icon{color:#dbe7d3}body[data-theme="dark"] .dashboard-stat-top,body[data-theme="dark"] .dashboard-stat>div:last-child{color:#aab6a8}body[data-theme="dark"] .dashboard-stat>strong{color:#f0f4e9}body[data-theme="dark"] .dashboard-stat-top span:last-child{background:#293229;color:#b8c8b3}body[data-theme="dark"] .dashboard-stat>div:last-child{border-color:#354035}
@media(max-width:900px){.dashboard-filter-grid{grid-template-columns:repeat(2,1fr)}.dashboard-stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.dashboard-filter-grid,.dashboard-stat-grid{grid-template-columns:1fr}.dashboard-filters{padding:13px 11px}.dashboard-stat{min-height:110px}.dashboard-stat>strong{margin-bottom:14px}.dashboard-view .page-title{font-size:19px}}

/* Ajustes de la zona inferior del Dashboard según la referencia */
.dashboard-view .dashboard-grid{grid-template-columns:minmax(0,1.62fr) minmax(230px,.84fr);gap:16px}.dashboard-view .dashboard-grid>.card{min-width:0;padding:16px;border-radius:8px;box-shadow:0 2px 5px rgba(33,54,79,.04)}.dashboard-view .dashboard-month-card,.dashboard-view .dashboard-status-card{height:220px}.dashboard-view .dashboard-recent-card,.dashboard-view .dashboard-activity-card{height:272px}.dashboard-view .card-heading{margin-bottom:12px}.dashboard-view .card-heading h2{font-size:11px;letter-spacing:0}.dashboard-view .card-heading h2 span{color:#8190a7;font-size:8px;font-weight:400}.dashboard-view .card-heading p{font-size:8px;margin-top:3px}.dashboard-view .link-button{font-size:9px;color:#1d1d1b;text-decoration:underline}.dashboard-year{width:49px;height:20px;border:1px solid #dce5ee;border-radius:5px;background:#fafcfd;color:#48617d;font:500 9px Inter;padding:0 4px}.dashboard-month-chart{height:155px;display:grid;grid-template-columns:repeat(12,1fr);align-items:end;gap:10px;padding:10px 6px 21px;border-bottom:1px solid #e3e9ef;background:linear-gradient(180deg,transparent 24%,#f0f4f7 25%,transparent 26%,transparent 49%,#f0f4f7 50%,transparent 51%,transparent 74%,#f0f4f7 75%,transparent 76%)}.month-column{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}.month-bar{height:var(--bar-height);width:100%;max-width:22px;background:#f0f4f7;border-radius:4px 4px 0 0;position:relative}.month-column:nth-child(7) .month-bar{background:#f0f4f7}.month-column.current .month-bar{background:var(--lime)}.month-bar b{position:absolute;top:-16px;left:50%;transform:translateX(-50%);padding:2px 4px;border-radius:3px;background:var(--lime);color:#182000;font-size:7px;white-space:nowrap}.month-column small{position:absolute;bottom:-17px;color:#718198;font-size:7px}.dashboard-status-body{height:160px;display:flex;align-items:center;justify-content:center;gap:16px}.dashboard-donut{width:72px;height:72px;border-radius:50%;background:conic-gradient(var(--lime) 0 71%,#6d7f96 71% 100%);position:relative;flex:none}.dashboard-donut:after{content:'';position:absolute;inset:8px;background:#fff;border-radius:50%}.dashboard-donut>div{position:absolute;z-index:1;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.dashboard-donut strong{font-size:6px;letter-spacing:1px;color:#8190a7;font-weight:500}.dashboard-donut b{font-size:14px;color:#14243c}.dashboard-status-legend{display:grid;gap:6px;font-size:8px;color:#41516a}.dashboard-status-legend span{display:grid;grid-template-columns:8px 1fr auto auto;gap:5px;align-items:center;white-space:nowrap}.dashboard-status-legend i{width:7px;height:7px;border-radius:50%;background:#6d7f96}.dashboard-status-legend i.blue{background:#2d78ef}.dashboard-status-legend i.lime{background:var(--lime)}.dashboard-status-legend i.red{background:#ff4165}.dashboard-status-legend b{font-size:8px}.dashboard-status-legend small{font-size:7px;color:#718198}.dashboard-recent-card{grid-column:auto!important}.dashboard-activity-card{grid-column:auto!important}.dashboard-recent-table{min-width:0;table-layout:fixed}.dashboard-recent-table th{padding:8px 6px;font-size:7px;line-height:1.25}.dashboard-recent-table td{padding:8px 6px;font-size:8px;line-height:1.35;vertical-align:middle}.dashboard-recent-table th:nth-child(1){width:17%}.dashboard-recent-table th:nth-child(2){width:27%}.dashboard-recent-table th:nth-child(3){width:18%}.dashboard-recent-table th:nth-child(4){width:17%}.dashboard-recent-table th:nth-child(5){width:13%}.dashboard-recent-table th:nth-child(6){width:12%}.dashboard-recent-table td:first-child{overflow-wrap:anywhere}.dashboard-recent-table .tag{padding:2px 7px;font-size:7px}.dashboard-edit-button{border:1px solid #304967;background:#fff;color:#203957;border-radius:4px;padding:3px 7px;font:500 8px Inter;cursor:pointer}.dashboard-activities{display:grid;gap:9px;border-top:1px solid #e6ebf0;padding-top:9px}.dashboard-activity{display:flex;gap:8px;align-items:flex-start}.activity-check{width:16px;height:16px;border:1px solid #6e8097;border-radius:50%;display:grid;place-items:center;color:#203957;font-size:9px;flex:none}.dashboard-activity strong{display:block;color:#263954;font-size:8px;line-height:1.3;font-weight:500}.dashboard-activity small{display:block;color:#8190a7;font-size:7px;line-height:1.3;margin-top:2px}.dashboard-sync{border-top:1px solid #e6ebf0;margin-top:8px;padding-top:8px;text-align:center;color:#9aa6b8;font-size:7px}
body[data-theme="dark"] .dashboard-year,body[data-theme="dark"] .dashboard-edit-button{background:#293229;border-color:#465146;color:#e9f0e2}body[data-theme="dark"] .dashboard-month-chart{background:linear-gradient(180deg,transparent 24%,#354037 25%,transparent 26%,transparent 49%,#354037 50%,transparent 51%,transparent 74%,#354037 75%,transparent 76%);border-color:#465146}body[data-theme="dark"] .dashboard-donut:after{background:#202720}body[data-theme="dark"] .dashboard-donut b,body[data-theme="dark"] .dashboard-status-legend,body[data-theme="dark"] .dashboard-activity strong{color:#eef2e7}body[data-theme="dark"] .dashboard-activities,body[data-theme="dark"] .dashboard-sync{border-color:#465146}
@media(max-width:1000px){.dashboard-view .dashboard-month-card,.dashboard-view .dashboard-status-card{height:220px}.dashboard-view .dashboard-recent-card,.dashboard-view .dashboard-activity-card{height:auto}.dashboard-view .dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(230px,1fr)}}
@media(max-width:720px){.dashboard-view .dashboard-grid{grid-template-columns:1fr}.dashboard-view .dashboard-month-card,.dashboard-view .dashboard-status-card,.dashboard-view .dashboard-recent-card,.dashboard-view .dashboard-activity-card{height:auto}.dashboard-month-chart{gap:5px}.dashboard-recent-table{min-width:540px}.dashboard-status-body{padding-bottom:8px}}
.dashboard-view .dashboard-recent-table{min-width:0}
@media(max-width:720px){.dashboard-view .dashboard-recent-table{min-width:540px}}

/* Módulo Clientes: tarjetas y modal de contactos múltiples */
.client-search{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;margin-bottom:16px;border-radius:8px}.client-search .search-bar{flex:1;margin:0;max-width:300px;border-color:#dce4ed;padding:7px 9px}.client-search .search-bar input{font-size:10px}.client-search>span{color:#8190a7;font-size:9px}.clients-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-card{min-width:0;min-height:278px;background:#fff;border:1px solid #dfe5ec;border-radius:8px;padding:16px;box-shadow:0 2px 5px rgba(33,54,79,.04);display:flex;flex-direction:column}.client-card-top{display:flex;justify-content:space-between;align-items:center}.client-id{background:#edf4ff;color:#3677d5;border-radius:3px;padding:3px 6px;font:700 7px Inter}.client-active{background:#e3fbf2;color:#00a67c;border-radius:8px;padding:3px 7px;font:700 7px Inter}.client-card h3{margin:13px 0 4px;color:#101e34;font-size:11px;line-height:1.3}.client-nit{margin:0;color:#8090a5;font:8px monospace}.client-contacts{margin-top:14px;padding-top:11px;border-top:1px solid #e8edf2}.client-contacts>strong{display:block;color:#27415e;font-size:8px;margin-bottom:7px}.client-contact{background:#f5f8fb;border:1px solid #e4eaf0;border-radius:5px;padding:7px;margin-top:5px;color:#67809d;font-size:8px;line-height:1.6}.client-contact b{display:inline-block;color:#264365;font-size:8px}.client-contact small{float:right;background:#e6ebf1;color:#6d7d91;border-radius:3px;padding:0 3px;font-size:6px}.client-contact span{display:block;margin-top:2px;font-size:7px}.client-location{margin-top:auto;padding:9px 0 10px;border-top:1px solid #e8edf2;color:#71839b;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-actions{display:flex;gap:7px}.client-actions button{height:23px;border-radius:5px;font:700 8px Inter;cursor:pointer}.client-edit{flex:1;border:1px solid #d7e0ea;background:#fafcfd;color:#57708d}.client-delete{width:31px;border:1px solid #ffc8cf;background:#fff5f6;color:#ff5367}.modal-backdrop{position:fixed;inset:0;z-index:20;background:rgba(20,28,38,.65);display:grid;place-items:center;padding:16px}.client-modal{width:min(100%,700px);max-height:calc(100vh - 32px);overflow:auto;background:#f9fbfd;border-radius:9px;box-shadow:0 18px 55px rgba(0,0,0,.28)}.client-modal-heading{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 18px 13px;border-bottom:1px solid #e0e7ef;background:#fbfcfe}.client-modal-heading h2{margin:0;color:#162640;font-size:15px}.client-modal-heading p{margin:3px 0 0;color:#71839b;font-size:9px}.modal-close{border:0;background:transparent;color:#8ca0b6;font-size:24px;line-height:18px;cursor:pointer}.client-form-body{padding:16px 18px 8px}.client-form-grid,.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.client-form-grid .field{gap:5px}.client-form-grid .field.full{grid-column:1/-1}.client-modal .field label{font-size:8px;color:#526b89;text-transform:uppercase}.client-modal .field label em{color:#ff5367;font-style:normal}.client-modal .field input,.client-modal .field select,.client-modal .field textarea{height:32px;padding:8px 10px;border-radius:5px;font-size:10px;background:#fff;border-color:#d7e1ed}.client-modal .field textarea{height:60px;resize:vertical}.client-modal .field small{color:#8a9bb0;font-size:7px}.contacts-editor{margin:14px 0;border:1px solid #d8e2ed;border-radius:7px;padding:11px 12px;background:#fff}.contacts-editor-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;color:#2c405b;font-size:9px}.contacts-editor-heading span{color:#8190a7;font-size:8px}.contact-editor{border:1px solid #dce5ee;border-radius:6px;padding:9px 10px;margin-top:8px;background:#f9fbfd}.contact-editor-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e1e8ef;padding-bottom:7px;margin-bottom:8px;color:#335070;font-size:8px}.contact-editor-heading em{color:#b2c900;font-style:normal}.remove-contact{border:0;background:transparent;color:#ff5265;cursor:pointer;font-size:13px}.contact-grid{gap:8px}.contact-grid .field{gap:4px}.contact-grid .field label{font-size:7px}.contact-grid .field input{height:27px;font-size:9px;padding:6px 8px}.add-contact{width:100%;height:30px;margin-top:9px;border:0;border-radius:5px;background:#e9eef4;color:#263c59;font:700 9px Inter;cursor:pointer}.client-modal-actions{display:flex;justify-content:flex-end;gap:9px;padding:11px 18px 15px;border-top:1px solid #e1e7ee}.client-modal-actions .button{padding:8px 13px;font-size:9px}.client-modal-actions .button-primary{background:var(--lime)}
body[data-theme="dark"] .client-search,body[data-theme="dark"] .client-card,body[data-theme="dark"] .client-modal,body[data-theme="dark"] .client-modal-heading,body[data-theme="dark"] .contacts-editor,body[data-theme="dark"] .contact-editor{background:#202720;border-color:#353e35}body[data-theme="dark"] .client-card h3,body[data-theme="dark"] .client-contact b,body[data-theme="dark"] .contacts-editor-heading,body[data-theme="dark"] .client-modal-heading h2{color:#eef2e7}body[data-theme="dark"] .client-nit,body[data-theme="dark"] .client-location,body[data-theme="dark"] .client-search>span,body[data-theme="dark"] .contacts-editor-heading span{color:#aab6a8}body[data-theme="dark"] .client-contact{background:#293229;border-color:#465146;color:#b8c8b3}body[data-theme="dark"] .client-modal .field input,body[data-theme="dark"] .client-modal .field select,body[data-theme="dark"] .client-modal .field textarea{background:#293229;border-color:#465146;color:#e9f0e2}body[data-theme="dark"] .client-modal-actions{border-color:#465146}
@media(max-width:900px){.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.client-search{display:block}.client-search .search-bar{max-width:none}.client-search>span{display:block;margin-top:8px}.clients-grid{grid-template-columns:1fr}.client-card{min-height:250px}.client-modal{max-height:calc(100vh - 16px)}.client-form-body{padding:13px}.client-form-grid,.contact-grid{grid-template-columns:1fr}.client-form-grid .field.full{grid-column:auto}.client-modal-actions{padding:10px 13px}.client-modal-actions .button{flex:1;justify-content:center}}
.page-container{width:100%;max-width:1100px;margin-left:auto;margin-right:auto;min-width:0}.dashboard-view{max-width:none;margin-left:0;margin-right:0}.page-container .module-card,.page-container .quote-layout,.page-container .clients-grid,.page-container .client-search{min-width:0}.page-container .table-wrap{max-width:100%}
@media(max-width:1100px){.page-container{max-width:100%}}
@media(max-width:720px){.page-container{width:100%;overflow-x:clip}.page-container .page-heading{width:100%}.page-container .page-heading .button{max-width:100%}.page-container .clients-grid{width:100%}.page-container .client-card{width:100%;min-width:0}.page-container .data-table{max-width:100%}}
.catalog-actions{display:flex;gap:8px;align-items:center}.catalog-actions .button{font-size:10px;padding:10px 14px}.catalog-actions .button-light{border-color:#d9e2ec;background:#fff}.catalog-search{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;margin-bottom:16px;border-radius:8px}.catalog-search .search-bar{flex:1;margin:0;max-width:405px;padding:7px 9px}.catalog-search .search-bar input{font-size:10px}.catalog-search>span{color:#8190a7;font-size:9px}.catalog-search>span b{color:#375476}.catalog-table-card{padding:0;overflow:hidden;border-radius:8px}.catalog-table{min-width:760px;border-collapse:collapse}.catalog-table thead{background:#10170b}.catalog-table th{background:#10170b;color:#fff;padding:12px 14px;font-size:9px;letter-spacing:.25px}.catalog-table td{padding:10px 14px;border-bottom:1px solid #e8edf2;color:#375476;font-size:10px;vertical-align:middle}.catalog-table tr:last-child td{border-bottom:0}.catalog-table td:nth-child(3){min-width:260px}.catalog-table td:nth-child(3) strong{display:block;color:#152641;font-size:10px}.catalog-table td:nth-child(3) em{display:block;margin-top:3px;color:#8190a7;font-size:8px}.catalog-id{color:#315782!important;font:9px monospace!important;line-height:1.3}.catalog-category{display:inline-block;padding:3px 7px;border-radius:9px;background:#f0f3f6;color:#35506e;font-size:8px}.catalog-table td:nth-child(5){color:#111;font-size:10px;white-space:nowrap}.catalog-table td:nth-child(5) strong{color:#111}.catalog-edit,.catalog-delete{border:0;background:transparent;color:#647b97;font-size:16px;cursor:pointer;margin-right:8px}.catalog-delete{margin-right:0}.catalog-edit:hover{color:#0f74d8}.catalog-delete:hover{color:#ff5367}.catalog-modal{width:min(100%,500px);max-height:calc(100vh - 32px);overflow:auto;background:#f9fbfd;border-radius:9px;box-shadow:0 18px 55px rgba(0,0,0,.28)}.catalog-modal-heading{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 22px 13px;border-bottom:1px solid #e0e7ef;background:#fbfcfe}.catalog-modal-heading h2{margin:0;color:#162640;font-size:15px}.catalog-modal-heading p{margin:3px 0 0;color:#71839b;font-size:9px}.catalog-form-body{padding:20px 22px 12px}.catalog-form-body>.field,.catalog-form-row{margin-bottom:13px}.catalog-form-body .field{gap:5px}.catalog-form-body .field label{font-size:8px;color:#526b89;text-transform:uppercase}.catalog-form-body .field label em{color:#ff5367;font-style:normal}.catalog-form-body .field input,.catalog-form-body .field select,.catalog-form-body .field textarea{height:32px;padding:8px 10px;border-radius:6px;font-size:10px;background:#fff;border-color:#d7e1ed}.catalog-form-body .field select{cursor:pointer}.catalog-form-body .field textarea{height:58px;resize:vertical}.catalog-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.catalog-modal-actions{display:flex;justify-content:flex-end;gap:9px;padding:11px 22px 17px;border-top:1px solid #e1e7ee}.catalog-modal-actions .button{padding:8px 13px;font-size:9px}.catalog-modal-actions .button-primary{background:var(--lime)}
body[data-theme="dark"] .catalog-search,body[data-theme="dark"] .catalog-table-card,body[data-theme="dark"] .catalog-modal,body[data-theme="dark"] .catalog-modal-heading{background:#202720;border-color:#353e35}body[data-theme="dark"] .catalog-table td{border-color:#354035;color:#b8c8b3}body[data-theme="dark"] .catalog-table td:nth-child(3) strong,body[data-theme="dark"] .catalog-table td:nth-child(5) strong{color:#eef2e7}body[data-theme="dark"] .catalog-category{background:#293229;color:#dbe7d3}body[data-theme="dark"] .catalog-form-body .field input,body[data-theme="dark"] .catalog-form-body .field select,body[data-theme="dark"] .catalog-form-body .field textarea{background:#293229;border-color:#465146;color:#e9f0e2}body[data-theme="dark"] .catalog-modal-actions{border-color:#465146}
@media(max-width:720px){.catalog-actions{width:100%;margin-top:14px}.catalog-actions .button{flex:1;justify-content:center;padding:9px 6px;font-size:8px}.catalog-search{display:block}.catalog-search .search-bar{max-width:none}.catalog-search>span{display:block;margin-top:8px}.catalog-modal{max-height:calc(100vh - 16px)}.catalog-form-body{padding:15px}.catalog-modal-heading{padding:14px 15px}.catalog-modal-actions{padding:10px 15px}.catalog-modal-actions .button{flex:1;justify-content:center}}
/* Iconos de acciones del catálogo: trazo lineal consistente con la referencia */
.catalog-row-actions{white-space:nowrap}
.catalog-edit,.catalog-delete{width:24px;height:28px;padding:5px 3px;border:0;background:transparent;color:#647b97;cursor:pointer;vertical-align:middle;margin-right:8px}
.catalog-delete{margin-right:0}
.catalog-edit svg,.catalog-delete svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.catalog-edit:hover{color:#0f74d8}
.catalog-delete:hover{color:#ff5367}
/* Clientes: iconografía lineal y lectura reforzada */
.client-inline-icon,.client-actions svg{display:inline-block;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px;margin-right:5px}
.client-contacts>strong{font-size:10px}
.client-card h3{font-size:13px}
.client-nit{font-size:10px}
.client-contact{font-size:10px;line-height:1.55}
.client-contact b{font-size:10px}
.client-contact small{font-size:8px}
.client-contact span{font-size:9px}
.client-location{font-size:10px}
.client-actions button{font-size:10px}
.client-edit{display:flex;align-items:center;justify-content:center;gap:2px}
.client-edit svg{margin-right:2px}
.client-delete{display:grid;place-items:center}
.client-delete svg{margin:0;width:14px;height:14px}
/* Bandeja de borradores */
.drafts-search{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;margin-bottom:20px;border-radius:8px}
.drafts-search .search-bar{flex:1;max-width:405px;margin:0;padding:7px 9px}
.drafts-search .search-bar input{font-size:10px}
.drafts-search>span{color:#8190a7;font-size:9px}.drafts-search>span b{color:#375476}
.draft-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.draft-card{padding:22px;min-width:0}
.draft-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.draft-number{background:#edf4ff;color:#315782;border-radius:3px;padding:5px 9px;font:700 10px monospace}
.draft-status{background:#fff5df;color:#e78b00;border-radius:10px;padding:5px 9px;font-size:9px;white-space:nowrap}
.draft-divider{border-top:1px solid #e8edf2;margin:12px 0}
.draft-card h2{font:700 15px 'Space Grotesk';margin:0 0 10px;color:#152641}
.draft-card p{margin:7px 0;color:#5f7693;font-size:11px}.draft-card p strong{color:#233d5d;font-weight:500}
.draft-total{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding:13px;border:1px solid #e5ebf1;border-radius:8px;color:#526b89;font-size:9px;font-weight:700}
.draft-total small{display:block;color:#8190a7;font:9px monospace;margin-top:3px}.draft-total>strong{color:#9aaa00;font-size:14px}
.draft-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:18px;padding-top:8px;border-top:1px solid #edf1f5}
.draft-actions .button{justify-content:center;padding:9px 7px;font-size:10px}
.draft-approve{border:1px solid #9de4c6;background:#effcf6;color:#00a678}.draft-remove{border:1px solid #ffb9c2;background:#fff3f5;color:#f24762}
.drafts-empty{grid-column:1/-1;text-align:center;padding:48px 20px}.drafts-empty strong{display:block;color:var(--ink);margin-bottom:6px}.drafts-empty span{color:var(--muted);font-size:12px}
body[data-theme="dark"] .draft-card,body[data-theme="dark"] .drafts-search{background:#202720;border-color:#353e35}body[data-theme="dark"] .draft-card h2{color:#eef2e7}body[data-theme="dark"] .draft-card p strong{color:#dbe7d3}body[data-theme="dark"] .draft-total{border-color:#465146;background:#293229}
@media(max-width:720px){.drafts-search{display:block}.drafts-search .search-bar{max-width:none}.drafts-search>span{display:block;margin-top:8px}.draft-grid{grid-template-columns:1fr}.draft-card{padding:16px}.draft-actions{grid-template-columns:1fr}.draft-actions .button{width:100%}}
.draft-section-title{margin:0 0 10px;color:var(--ink);font:700 14px 'Space Grotesk'}.draft-search-fields{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.draft-search-fields label{display:flex;align-items:center;gap:5px;color:#8190a7;font-size:9px}.draft-search-fields label input{height:30px;border:1px solid #dfe5ec;border-radius:6px;padding:5px 7px;color:#526b89;font:10px Inter;background:#fff}.draft-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}.draft-card{padding:17px}.draft-card h2{font-size:14px}.draft-card p{font-size:10px;margin:6px 0}.draft-total{margin-top:11px;padding:10px}.draft-actions{margin-top:12px}.draft-actions .button{padding:8px 6px;font-size:9px}.draft-list-panel{padding:0;overflow:hidden}.draft-list-heading{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.draft-list-heading h2{margin:0;color:var(--ink);font:700 14px 'Space Grotesk'}.draft-list-heading p{margin:3px 0 0;color:var(--muted);font-size:10px}.draft-list-heading>span{color:#8190a7;font-size:9px}.draft-list{max-height:680px;overflow-y:auto;padding:0 14px}.draft-list-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(100px,.5fr) minmax(360px,1.3fr);align-items:center;gap:14px;padding:12px 4px;border-bottom:1px solid #edf1f5}.draft-list-row:last-child{border-bottom:0}.draft-list-info{display:grid;gap:3px;min-width:0}.draft-list-info strong{color:#315782;font:10px monospace}.draft-list-info b{color:#152641;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.draft-list-info span{color:#8190a7;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.draft-list-value{color:#9aaa00;font-size:11px;white-space:nowrap}.draft-list-actions{display:flex;justify-content:flex-end;gap:6px}.draft-list-actions .button{padding:7px 8px;font-size:9px;white-space:nowrap}.drafts-empty{grid-column:1/-1}.draft-list .drafts-empty{padding:35px 15px;text-align:center}.draft-list .drafts-empty strong{display:block;color:var(--ink);margin-bottom:5px}.draft-list .drafts-empty span{color:var(--muted);font-size:10px}body[data-theme="dark"] .draft-list-panel{background:#202720;border-color:#353e35}body[data-theme="dark"] .draft-list-row{border-color:#354035}body[data-theme="dark"] .draft-list-info b,body[data-theme="dark"] .draft-list-heading h2{color:#eef2e7}body[data-theme="dark"] .draft-search-fields label input{background:#293229;border-color:#465146;color:#e9f0e2}
@media(max-width:720px){.draft-search-fields{display:grid;grid-template-columns:1fr 1fr}.draft-search-fields .search-bar{grid-column:1/-1;max-width:none}.draft-search-fields label{display:block}.draft-search-fields label input{width:100%;margin-top:4px}.draft-grid{grid-template-columns:1fr;gap:10px}.draft-card:nth-child(n+6){display:none}.draft-card{padding:13px}.draft-card h2{font-size:13px}.draft-list{max-height:500px;padding:0 10px}.draft-list-row{grid-template-columns:1fr 1fr;gap:8px;padding:11px 3px}.draft-list-info{grid-column:1/-1}.draft-list-value{grid-column:1}.draft-list-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.draft-list-actions .button{width:100%;padding:8px 3px;font-size:8px}.draft-list-heading{padding:13px 14px}}
/* Borradores: layout responsive por rango, sin reglas móviles globales */
.draft-filters{width:100%;min-width:0;margin:0 0 20px;padding:18px 20px;border:1px solid #dfe5ec;border-radius:12px;background:var(--card);box-shadow:0 5px 16px rgba(30,44,65,.045)}
.draft-filters h2{margin:0 0 14px;color:#8190a7;font:700 10px Inter,system-ui,sans-serif;letter-spacing:.55px;text-transform:uppercase}
.draft-filter-grid{display:grid;grid-template-columns:minmax(220px,1.35fr) repeat(3,minmax(150px,1fr));gap:12px;min-width:0}
.draft-filter-field{display:grid;gap:6px;min-width:0}
.draft-filter-field>span{color:#36506e;font:700 9px Inter,system-ui,sans-serif;letter-spacing:.15px;text-transform:uppercase}
.draft-filter-control{position:relative;min-width:0}
.draft-filter-control input,.draft-filter-control select{width:100%;min-width:0;height:42px;box-sizing:border-box;border:1px solid #d8e2ed;border-radius:7px;background:#fbfcfe;color:#344e6c;padding:0 34px 0 12px;font:500 12px Inter,system-ui,sans-serif;outline:0}
.draft-filter-control input[type="date"]{padding-right:10px}
.draft-filter-control input::placeholder{color:#9aa9ba}
.draft-filter-control input:focus,.draft-filter-control select:focus{border-color:#00b2a7;box-shadow:0 0 0 3px rgba(0,178,167,.12)}
.draft-filter-control select{appearance:none;cursor:pointer}
.draft-filter-control i{position:absolute;right:11px;top:12px;color:#7187a1;font:16px/1 Inter,system-ui,sans-serif;pointer-events:none}
.draft-filter-control:has(input[type="date"]) i{display:none}
.draft-filter-actions{display:flex;align-items:center;gap:10px;margin-top:15px}
.draft-filter-actions button{height:36px;border:0;border-radius:7px;padding:0 17px;font:700 11px Inter,system-ui,sans-serif;cursor:pointer}
.draft-filter-search{background:#c3d600;color:#132006}.draft-filter-search:hover{background:#b3c600}
.draft-filter-clear{background:#edf2f7;color:#526781}.draft-filter-clear:hover{background:#e1e9f1}
.draft-section-title{margin:0 0 11px;font-size:15px}
.draft-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 22px}
.draft-card{min-width:0;padding:16px}.draft-card h2{font-size:14px;overflow-wrap:anywhere}.draft-card p{font-size:10px;line-height:1.4;overflow-wrap:anywhere}.draft-card-top{align-items:flex-start}.draft-status{white-space:normal;text-align:center}.draft-total{padding:10px;margin-top:11px}.draft-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px}.draft-actions .button{min-width:0;padding:8px 5px;font-size:9px;white-space:normal}
.draft-list-panel{min-width:0}.draft-list{max-height:650px;overflow-y:auto;overflow-x:hidden}.draft-list-row{grid-template-columns:minmax(0,1.4fr) minmax(105px,.45fr) minmax(320px,1.1fr);min-width:0}.draft-list-info b,.draft-list-info span{white-space:normal;overflow-wrap:anywhere}.draft-list-actions{min-width:0}.draft-list-actions .button{min-width:0;white-space:normal}
body[data-theme="dark"] .draft-filters{background:#202720;border-color:#353e35}body[data-theme="dark"] .draft-filter-field>span,body[data-theme="dark"] .draft-filters h2{color:#aab6a8}body[data-theme="dark"] .draft-filter-control input,body[data-theme="dark"] .draft-filter-control select{background:#293229;border-color:#465146;color:#e9f0e2}
@media (min-width:1200px){.draft-filter-grid{grid-template-columns:minmax(250px,1.45fr) repeat(3,minmax(160px,1fr))}.draft-card{padding:15px}.draft-list{max-height:650px}}
@media (min-width:768px) and (max-width:1199px){.draft-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.draft-list-row{grid-template-columns:minmax(0,1fr) minmax(105px,.4fr);gap:10px}.draft-list-actions{grid-column:1/-1;justify-content:flex-start}.draft-list{max-height:640px}}
@media (max-width:767px){.draft-filters{padding:15px;margin-bottom:16px}.draft-filter-grid{grid-template-columns:minmax(0,1fr);gap:12px}.draft-filter-control input,.draft-filter-control select{height:44px;font-size:13px}.draft-filter-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.draft-filter-actions button{width:100%;height:44px;font-size:12px}.draft-grid{grid-template-columns:minmax(0,1fr);gap:11px;margin-bottom:18px}.draft-card{padding:14px}.draft-card h2{font-size:14px}.draft-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.draft-actions .button{min-height:44px;padding:6px 3px;font-size:8px}.draft-list-heading{align-items:flex-start;gap:10px}.draft-list{max-height:590px;padding:0 12px}.draft-list-row{grid-template-columns:minmax(0,1fr);gap:9px;padding:13px 2px}.draft-list-value{justify-self:start}.draft-list-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;justify-content:stretch}.draft-list-actions .button{min-height:44px;padding:6px 3px;font-size:8px;white-space:normal}.draft-list-info b,.draft-list-info span{white-space:normal;overflow-wrap:anywhere}.draft-list-panel{overflow:hidden}}

/* Editor de cotizaciones: columnas fluidas y sin desbordamiento horizontal */
.quote-layout,.quote-layout>div,.quote-layout .card{min-width:0}
.items-card .table-wrap{overflow:visible}
.items-table{table-layout:fixed;min-width:0;width:100%}
.items-table th,.items-table td{overflow:hidden;word-break:break-word}
.items-table th:nth-child(1){width:18%}.items-table th:nth-child(2){width:20%}.items-table th:nth-child(3){width:9%}.items-table th:nth-child(4),.items-table th:nth-child(5){width:9%}.items-table th:nth-child(6){width:14%}.items-table th:nth-child(7){width:13%}.items-table th:nth-child(8){width:5%}
.items-table select,.items-table input{box-sizing:border-box;max-width:100%;min-width:0}
.items-table .item-input{width:100%;padding:8px 7px}
.items-empty{padding:24px!important;text-align:center;color:var(--muted)}
.page-heading .action-row{flex-wrap:wrap}
@media(max-width:1000px){.quote-layout{grid-template-columns:1fr}.preview{position:static;order:2}.items-card .table-wrap{overflow:hidden}.items-table{font-size:11px}.items-table th,.items-table td{padding:8px 5px}.items-table th:nth-child(2){width:18%}.items-table th:nth-child(6){width:16%}}
@media(max-width:720px){.quote-layout{display:flex;flex-direction:column}.quote-layout>div{width:100%}.preview{width:100%;order:2}.items-card .table-wrap{overflow:visible}.items-table,.items-table thead{display:block}.items-table thead{display:none}.items-table tbody,.items-table tr{display:block}.items-table tr{position:relative;border-bottom:1px solid var(--line);padding:12px 36px 12px 0}.items-table td{display:block;width:100%!important;padding:3px 0;border:0;overflow:visible}.items-table td:nth-child(1)::before{content:'Servicio';display:block;color:var(--muted);font-size:10px;margin-bottom:3px}.items-table td:nth-child(2)::before{content:'Detalle';display:block;color:var(--muted);font-size:10px;margin-bottom:3px}.items-table td:nth-child(3),.items-table td:nth-child(4),.items-table td:nth-child(5),.items-table td:nth-child(6),.items-table td:nth-child(7){display:inline-block;width:49%!important;vertical-align:top;padding-right:8px}.items-table td:nth-child(3)::before{content:'Unidad';display:block;color:var(--muted);font-size:10px}.items-table td:nth-child(4)::before{content:'Cantidad';display:block;color:var(--muted);font-size:10px}.items-table td:nth-child(5)::before{content:'Días';display:block;color:var(--muted);font-size:10px}.items-table td:nth-child(6)::before{content:'Valor unitario';display:block;color:var(--muted);font-size:10px}.items-table td:nth-child(7)::before{content:'Subtotal';display:block;color:var(--muted);font-size:10px}.items-table td:last-child{position:absolute;right:0;top:12px;width:auto!important}.items-header{gap:10px;align-items:flex-start}.items-header .button{white-space:nowrap}.page-heading .action-row .button{flex:1 1 auto}.preview-client{grid-template-columns:1fr}.preview-body{padding:16px}}

/* Tarjetas de cotizaciones: cuatro columnas en escritorio y adaptación móvil */
.quote-cards-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.quote-cards-grid .draft-card{height:100%;display:flex;flex-direction:column}
.quote-cards-grid .draft-actions{margin-top:auto;padding-top:12px}

@media (min-width:768px) and (max-width:1199px){.quote-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.quote-cards-grid{grid-template-columns:minmax(0,1fr);gap:11px}.quote-cards-grid .draft-card{display:flex}.quote-cards-grid .draft-card:nth-child(n+6){display:flex}.quote-cards-grid .draft-actions{margin-top:12px}}

/* Bandeja de Borradores — misma jerarquía visual que Clientes: 3 columnas en PC, 2 en tablet y 1 en móvil. */
.draft-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
@media (max-width:900px){.draft-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:600px){.draft-grid{grid-template-columns:minmax(0,1fr)!important;gap:11px!important}}

/* Búsqueda de borradores: bloque compacto y usable en pantallas pequeñas. */
.draft-filters{padding:14px 16px;margin-bottom:16px}
.draft-filters h2{margin-bottom:10px}
.draft-filter-grid{gap:10px}
.draft-filter-field{gap:5px}
.draft-filter-control input,.draft-filter-control select{height:38px;padding-left:10px;font-size:11px}
.draft-filter-actions{gap:8px;margin-top:11px}
.draft-filter-actions button{height:32px;padding:0 14px;font-size:10px}
@media(max-width:767px){.draft-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.draft-filter-field:first-child{grid-column:1/-1}.draft-filter-control input,.draft-filter-control select{height:36px;font-size:11px}.draft-filter-actions{margin-top:10px}.draft-filter-actions button{height:34px}}

/* Tarjetas de borradores: jerarquía visual y metadatos de contacto por cotización. */
.draft-card{padding:15px!important;border-radius:14px;box-shadow:0 5px 14px rgba(30,44,65,.055);display:flex;flex-direction:column}
/* display:flex anula el display:none que el navegador aplica a [hidden]; sin esto los
   filtros de la bandeja marcan las tarjetas como ocultas pero siguen viéndose. */
.draft-card[hidden]{display:none!important}
.draft-card-top{min-height:25px}
.draft-number{background:#edf4ff;color:#315782;border-radius:3px;padding:5px 9px;font:700 9px monospace}
.draft-status{display:inline-flex;align-items:center;gap:4px;background:#fff5df;color:#e78b00;border-radius:12px;padding:5px 9px;font-size:9px}.draft-status-sent{background:#e8f1ff;color:#2f6ecb}
.draft-card h2{font:700 15px Georgia,'Times New Roman',serif!important;margin:0 0 3px;color:#152641}
.draft-nit{margin:0 0 8px!important;color:#8190a7;font:9px monospace!important;line-height:1.15}
.draft-nit strong{color:#526b89;font-weight:500}
.draft-meta{display:flex;align-items:flex-start;gap:5px;margin:4px 0!important;color:#5f7693;font-size:10px!important;line-height:1.2}
.draft-meta strong{color:#233d5d;font-weight:500}
.draft-meta-icon{display:inline-flex;flex:0 0 13px;color:#627c9b;margin-top:1px}
.draft-icon{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.draft-status .draft-icon{width:10px;height:10px}.draft-total{margin-top:12px!important;padding:10px!important;border-radius:9px}.draft-actions{margin-top:auto!important;padding-top:12px!important;gap:6px;display:grid!important;grid-template-columns:1fr 1fr}.draft-actions .button{display:inline-flex;align-items:center;gap:4px;justify-content:center;padding:8px 5px!important;border-radius:8px;font-size:10px}.draft-send{border:1px solid #b9d2f7;background:#f2f7ff;color:#2f6ecb}.draft-actions .draft-icon{width:11px;height:11px}.draft-approve{border:1px solid #9de4c6;background:#effcf6;color:#00a678}.draft-remove{border:1px solid #ffb9c2;background:#fff3f5;color:#f24762}
@media(max-width:767px){.draft-card{padding:14px!important}.draft-card h2{font-size:14px!important}.draft-meta{font-size:10px!important}.draft-actions .button{min-height:36px;padding:6px 3px!important;font-size:9px}}

.draft-total{margin-top:12px!important;padding:9px 10px!important;border-radius:9px;display:grid;gap:7px}
.draft-total-row{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#526b89;font-size:8px;font-weight:700}
.draft-total-row small{display:block;color:#8190a7;font:8px monospace;margin-top:2px}
.draft-total-row>strong{color:#9aaa00;font-size:13px;white-space:nowrap}
.draft-total-final{border-top:1px solid #e5ebf1;padding-top:7px}
.draft-total-final>strong{font-size:14px}

/* Catálogo de servicios: contenedor con scroll interno para 114+ ítems, header fijo. */
.catalog-table-card{padding:0;overflow:hidden}
.catalog-table-card .table-wrap{max-height:65vh;overflow-y:auto;padding:0}
.catalog-table-card .catalog-table{margin:0}
.catalog-table-card .catalog-table thead th{position:sticky;top:0;background:#10170b;color:#fff;z-index:2}
body[data-theme="dark"] .catalog-table-card{background:#202720;border-color:#353e35}
body[data-theme="dark"] .catalog-table-card .catalog-table td{border-color:#303930;color:#f0f4e9}
.catalog-row-actions{display:flex;gap:6px;white-space:nowrap}
.catalog-edit,.catalog-delete{border:1px solid var(--line);background:#fff;border-radius:6px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#5d697a}
.catalog-edit svg,.catalog-delete svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.catalog-edit:hover{border-color:#b6cc00;color:#7c8a00}
.catalog-delete:hover{border-color:var(--red);color:var(--red)}

@media(max-width:900px){.catalog-table-card .table-wrap{max-height:60vh}}

/* Móvil: la tabla de catálogo se convierte en lista de tarjetas apiladas, igual que items-table. */
@media(max-width:720px){
  .catalog-table-card .table-wrap{padding:0 14px;max-height:70vh;overflow-x:hidden}
  .catalog-table-card .catalog-table{min-width:0}
  .catalog-table-card .catalog-table,.catalog-table-card .catalog-table tbody,.catalog-table-card .catalog-table tr{display:block}
  .catalog-table-card .catalog-table tr[hidden]{display:none}
  .catalog-table-card .catalog-table thead{display:none}
  .catalog-table-card .catalog-table tr{position:relative;border-bottom:1px solid var(--line);padding:12px 0}
  .catalog-table-card .catalog-table td{display:block;width:100%!important;padding:3px 0;border:0}
  .catalog-table-card .catalog-table td.catalog-id{display:inline-block;width:auto!important;color:var(--muted);font-size:10px}
  .catalog-table-card .catalog-table td:nth-child(2){display:inline-block;width:auto!important;margin-left:8px}
  .catalog-table-card .catalog-table td:nth-child(4)::before{content:'Unidad: ';color:var(--muted);font-size:10px}
  .catalog-table-card .catalog-table td:nth-child(5)::before{content:'Valor: ';color:var(--muted);font-size:10px}
  .catalog-table-card .catalog-table td.catalog-row-actions{position:absolute;right:0;top:12px;width:auto!important}
}

/* Encabezados de tabla en negro (mismo --nav del sidebar) para todos los módulos:
   Cotizaciones, Catálogo, Últimas cotizaciones del Dashboard, Inventario y Reportes. */
.data-table th{background:var(--nav);color:#f2f4ef;font-weight:700}
.data-table thead{background:var(--nav)}
body[data-theme="dark"] .data-table th{background:#101210;color:#e9ede3}
.catalog-table thead,.catalog-table th,.catalog-table thead th{background:var(--nav)}

/* Acciones del historial de cotizaciones: iconos compactos, mismo trazo que el Catálogo.
   Al medir 30px la fila deja de crecer por culpa del botón. */
.quote-row-actions{white-space:nowrap}
.quote-view,.quote-print{border:1px solid var(--line);background:#fff;border-radius:6px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;color:#5d697a;vertical-align:middle}
.quote-view{margin-right:8px}
.quote-view svg,.quote-print svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.quote-view:hover{color:#0f74d8;border-color:#b9d3f0}
.quote-print:hover{color:#1D1D1B;border-color:var(--lime);background:#fbffe0}
.data-table td.quote-row-actions{padding-top:8px;padding-bottom:8px}
body[data-theme="dark"] .quote-view,body[data-theme="dark"] .quote-print{background:#262d26;border-color:#3c453c;color:#c3cfbe}

/* Mismo encabezado negro donde el módulo ya traía su propio override de mayor peso. */
.dashboard-view .data-table th{background:var(--nav);color:#f2f4ef}
.catalog-table-card .catalog-table thead th{background:var(--nav)}
body[data-theme="dark"] .dashboard-view .data-table th{background:#101210;color:#e9ede3}

/* Historial de cotizaciones: alto fijo de ~6 filas con scroll dentro del contenedor
   y encabezado fijo, igual que el Catálogo de servicios. */
.quotes-history-card .table-wrap{max-height:340px;overflow-y:auto}
.quotes-history-card .data-table thead th{position:sticky;top:0;z-index:2}
.quotes-history-card .quote-no-results{padding:22px 12px;text-align:center;color:var(--muted);font-style:italic}
@media(max-width:720px){.quotes-history-card .table-wrap{max-height:300px}}

/* Historial de cotizaciones: tipografía y alturas más compactas para que quepa una fila más
   en el mismo contenedor. Solo afecta a esta tabla. */
.quotes-history-card .data-table th{font-size:9px;padding:9px 12px}
.quotes-history-card .data-table td{font-size:11px;padding:10px 12px}
.quotes-history-card .data-table .tag{font-size:9px;padding:3px 7px}
.quotes-history-card .data-table td.quote-row-actions{padding-top:6px;padding-bottom:6px}
.quotes-history-card .quote-view,.quotes-history-card .quote-print{width:28px;height:28px}
.quotes-history-card .quote-view svg,.quotes-history-card .quote-print svg{width:15px;height:15px}

/* Tarjeta de borrador: el valor bruto (sin IVA) en gris medio y el total con IVA en color de
   marca, para que no se confundan de un vistazo. */
.draft-total-row>strong{color:var(--muted,#778397)}
.draft-total-final>strong{color:#9aaa00}
body[data-theme="dark"] .draft-total-row>strong{color:#9aa7b5}
body[data-theme="dark"] .draft-total-final>strong{color:#C3D600}

/* Dashboard: barras del gráfico por mes apiladas por estado (agregado 2026-08-23) */
.month-bar{display:flex;flex-direction:column-reverse;overflow:hidden}
.month-bar-segment{width:100%}
.month-bar-segment.borrador{background:#6d7f96}
.month-bar-segment.enviada{background:#2d78ef}
.month-bar-segment.aprobada{background:var(--lime)}
.month-column.current .month-bar{background:transparent}
.dashboard-no-results{padding:16px 8px;text-align:center;color:var(--muted,#718198);font-size:8px;font-style:italic}
