:root{--ink:#18211d;--muted:#6f7d76;--line:#e7ebe8;--paper:#f4f6f3;--green:#176b4d;--mint:#dff4e9;--amber:#b57519;--blue:#2f67a8;--purple:#7655a8}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,select{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:238px 1fr;min-height:100vh;display:grid}.sidebar{color:#dce7e1;background:#102a21;flex-direction:column;height:100vh;padding:24px 17px;display:flex;position:sticky;top:0}.brand{color:#fff;letter-spacing:.15em;align-items:center;gap:11px;margin:0 9px 25px;font-weight:800;display:flex}.brand-mark{color:#173427;letter-spacing:0;background:#ebc96c;border-radius:9px;place-items:center;width:31px;height:31px;font-family:Georgia,serif;display:grid}.company{background:#17382c;border:1px solid #2b493d;border-radius:12px;gap:3px;margin-bottom:18px;padding:13px 14px;display:grid}.company small,.company span{color:#9db5aa;font-size:11px}.company strong{color:#fff;font-size:13px}nav{gap:4px;display:grid}.nav-item{color:#b8ccc2;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;width:100%;padding:10px 12px;font-size:13px;display:flex;position:relative}.nav-item:hover,.nav-item.active{color:#fff;background:#24533f}.nav-item span{text-align:center;width:18px}.nav-item i{color:#1d382d;background:#e8c565;border-radius:10px;margin-left:auto;padding:1px 6px;font-size:10px;font-style:normal}.sidebar-foot{margin-top:auto}.profile{border-top:1px solid #315044;align-items:center;gap:10px;margin-top:15px;padding:15px 8px 0;display:flex}.profile>span{color:#173427;background:#d9b657;border-radius:50%;place-items:center;width:33px;height:33px;font-size:12px;font-weight:700;display:grid}.profile div{flex:1;display:grid}.profile strong{color:#fff;font-size:12px}.profile small{color:#91aa9f;text-transform:capitalize;font-size:10px}.profile button{color:#9eb4aa;background:0 0;border:0;padding:5px;font-size:17px}.auth-loading{min-height:100vh;color:var(--muted);place-content:center;justify-items:center;gap:12px;font-size:12px;display:grid}.login-page{background:#f6f7f4;grid-template-columns:1.1fr .9fr;max-width:none;min-height:100vh;padding:0;display:grid}.login-story{color:#fff;background:radial-gradient(circle at 80% 20%,#275d48 0,#0000 35%),linear-gradient(145deg,#0d2a20,#173e30);flex-direction:column;justify-content:space-between;padding:58px 7vw;display:flex}.login-brand{margin:0}.login-story h1{color:#fff;margin:13px 0 20px;font-size:52px;line-height:1.04}.login-story>div>p:not(.eyebrow){color:#b9cdc4;max-width:520px;font-size:14px;line-height:1.7}.eyebrow.light{color:#e2c56f!important}.trust-row{color:#bcd0c6;flex-wrap:wrap;gap:22px;font-size:10px;display:flex}.login-panel{place-items:center;padding:40px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(420px,100%);padding:38px;box-shadow:0 24px 70px #17382c18}.login-card h2{margin:6px 0;font-family:Georgia,serif;font-size:28px}.login-subtitle{color:var(--muted);margin:0 0 25px;font-size:12px}.login-card label{color:#46534d;gap:7px;margin-top:17px;font-size:11px;font-weight:650;display:grid}.login-card input{background:#fbfcfb;border:1px solid #dce3df;border-radius:9px;outline:none;width:100%;height:44px;padding:0 12px}.login-card input:focus{border-color:var(--green);box-shadow:0 0 0 3px #176b4d16}.password-field{position:relative}.password-field input{padding-right:60px}.password-field button{height:30px;color:var(--green);background:0 0;border:0;font-size:10px;font-weight:700;position:absolute;top:7px;right:7px}.login-submit{width:100%;margin-top:23px}.login-submit:disabled{opacity:.65}.login-help{text-align:center;color:#87938d;margin:16px 0 0;font-size:9px}.login-error{color:#a24231;background:#fff0ec;border-radius:8px;margin-top:15px;padding:10px 12px;font-size:10px}.login-mobile-brand{letter-spacing:.12em;align-items:center;gap:9px;display:none}main{width:100%;min-width:0;max-width:1600px;margin:auto;padding:32px 40px 18px}header{justify-content:space-between;align-items:center;gap:25px;margin-bottom:27px;display:flex}h1{margin:2px 0 4px;font-family:Georgia,serif;font-size:31px;font-weight:600}header p{color:var(--muted);margin:0;font-size:13px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--green)!important;font-size:9px!important}.header-actions{align-items:center;gap:10px;display:flex}.header-actions select,.icon-button{border:1px solid var(--line);color:#4b5952;background:#fff;border-radius:10px;height:40px;padding:0 12px}.icon-button{width:40px;padding:0;position:relative}.icon-button b{color:#fff;background:#c76545;border-radius:50%;place-items:center;width:16px;height:16px;font-size:9px;display:grid;position:absolute;top:-4px;right:-3px}.primary{background:var(--green);color:#fff;border:0;border-radius:10px;height:40px;padding:0 17px;font-weight:650;box-shadow:0 7px 16px #176b4d2c}.module-banner{background:#edf5f0;border:1px solid #d5e7db;border-radius:12px;justify-content:space-between;align-items:center;margin:-8px 0 18px;padding:12px 17px;font-size:12px;display:flex}.module-banner div{font-weight:700}.module-banner p{color:var(--muted);margin:0}.status-dot{background:#2d9a69;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.workspace{margin-bottom:16px}.workspace-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.workspace-head h2{margin:3px 0;font-family:Georgia,serif;font-size:22px}.workspace-head p{color:var(--muted);margin:0;font-size:11px}.compliance-note{background:#fcf8ed;border-left:3px solid #d3a841;gap:2px;margin:18px 0;padding:12px 14px;font-size:10px;display:grid}.compliance-note span{color:var(--muted)}.format-grid{grid-template-columns:repeat(5,minmax(130px,1fr));gap:11px;display:grid}.format-card{border:1px solid var(--line);background:#fbfcfb;border-radius:11px;padding:14px}.format-card>div{align-items:baseline;gap:7px;display:flex}.format-card>div span{color:var(--muted);text-transform:uppercase;font-size:9px}.format-card>div strong{font-family:Georgia,serif;font-size:20px}.format-card>p{color:#536159;min-height:34px;font-size:9px;line-height:1.4}.format-card footer{border-top:1px solid var(--line);padding:9px 0 0}.format-card footer b{color:var(--green)}.loading,.error-state{text-align:center;color:var(--muted);padding:18px;font-size:11px}.error-state{color:#a14c3b}.security-badge{background:var(--mint);color:var(--green);border-radius:20px;padding:6px 10px;font-size:10px;font-weight:700}.role-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;display:grid}.role-card{border:1px solid var(--line);border-radius:11px;gap:11px;padding:15px;display:flex}.role-card>span{width:34px;height:34px;color:var(--green);background:#e5f1ea;border-radius:9px;flex:none;place-items:center;font-size:10px;font-weight:800;display:grid}.role-card strong{font-size:11px}.role-card p{color:var(--muted);margin:4px 0 0;font-size:9px;line-height:1.4}.metric-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:16px;display:grid}.card,.metric{border:1px solid var(--line);background:#fff;border-radius:14px;box-shadow:0 5px 16px #20342b08}.metric{padding:20px;position:relative}.metric p{color:var(--muted);margin:0 0 9px;font-size:12px}.metric strong{font-family:Georgia,serif;font-size:24px;display:block}.metric>span{margin-top:9px;font-size:10px;font-weight:700;display:inline-block}.metric-icon{border-radius:9px;place-items:center;width:29px;height:29px;display:grid;position:absolute;top:17px;right:17px}.green{color:var(--green)}.blue{color:var(--blue)}.amber{color:var(--amber)}.purple{color:var(--purple)}.metric-icon.green{background:#e3f4eb}.metric-icon.blue{background:#e8f0fa}.metric-icon.amber{background:#fbf0de}.metric-icon.purple{background:#f0eafa}.content-grid{grid-template-columns:minmax(0,1.65fr) minmax(290px,.75fr);gap:16px;margin-bottom:16px;display:grid}.card{padding:20px}.card-title{justify-content:space-between;align-items:start;display:flex}.card-title h2{margin:0 0 4px;font-family:Georgia,serif;font-size:17px}.card-title p{color:var(--muted);margin:0;font-size:10px}.card-title button{color:var(--green);background:0 0;border:0;font-size:10px;font-weight:700}.legend{color:var(--muted);align-items:center;gap:5px;font-size:9px;display:flex}.legend i{background:#267b5a;border-radius:50%;width:7px;height:7px}.legend i:nth-of-type(2){background:#d6b25d;margin-left:6px}.chart{background:repeating-linear-gradient(#fff 0 48px,#edf0ee 49px);border-bottom:1px solid #dfe5e1;justify-content:space-around;align-items:end;gap:12px;height:195px;margin-top:20px;padding:10px 12px 0;display:flex}.bar-pair{flex:1;justify-content:center;align-items:end;gap:5px;height:100%;padding-bottom:19px;display:flex;position:relative}.bar-pair span{background:#287a5a;border-radius:5px 5px 1px 1px;width:12px}.bar-pair span:nth-child(2){background:#e0bd67}.bar-pair small{color:#89958f;font-size:9px;position:absolute;bottom:1px}.score{border-bottom:1px solid var(--line);align-items:center;gap:15px;padding:19px 0 14px;display:flex}.score div{text-align:center;background:conic-gradient(#2c8060 82%,#e7ece9 0);border:7px solid #edf5f1;border-radius:50%;place-content:center;width:75px;height:75px;display:grid;box-shadow:inset 0 0 0 2px #fff}.score strong{font-size:22px}.score small{color:var(--muted);font-size:9px}.score>span{background:var(--mint);color:var(--green);border-radius:20px;padding:5px 10px;font-size:10px;font-weight:700}.health-row{color:var(--muted);justify-content:space-between;padding-top:13px;font-size:11px;display:flex}.health-row strong{color:var(--ink)}.lower{grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr)}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;margin-top:13px;font-size:10px}th{color:#8a958f;border-bottom:1px solid var(--line);padding:8px;font-weight:600}td{border-bottom:1px solid #f0f2f1;padding:10px 8px}tbody tr:last-child td{border-bottom:0}.pill{border-radius:20px;padding:4px 8px;font-size:9px;font-weight:700;display:inline-block}.validada,.pagada{color:#287253;background:#e1f3e9}.pendiente{color:#a46b17;background:#fbefd9}.obligation{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:15px 0;display:flex}.obligation:last-child{border:0}.obligation>div{text-align:center;color:#7d672b;background:#f3f0e7;border-radius:9px;place-content:center;width:43px;height:43px;display:grid}.obligation b{font-size:15px}.obligation div span{font-size:8px}.obligation p{flex:1;gap:3px;margin:0;font-size:10px;display:grid}.obligation p small{color:var(--muted)}footer{color:#87938d;justify-content:space-between;padding:1px 3px;font-size:9px;display:flex}.online{background:#30a16e;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.toast{color:#fff;background:#173b2e;border-radius:10px;max-width:370px;padding:13px 17px;font-size:12px;animation:.25s ease-out slide;position:fixed;bottom:24px;right:26px;box-shadow:0 14px 35px #102a2140}@keyframes slide{0%{opacity:0;transform:translateY(10px)}}@media (max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.content-grid,.lower{grid-template-columns:1fr}.format-grid{grid-template-columns:repeat(3,1fr)}.app-shell{grid-template-columns:205px 1fr}main{padding:27px 24px}}@media (max-width:720px){.app-shell{display:block}.sidebar{height:auto;padding-bottom:13px;position:static}.sidebar .company,.sidebar-foot{display:none}.sidebar nav{gap:5px;padding-bottom:3px;display:flex;overflow-x:auto}.sidebar .nav-item{flex:none;width:auto;padding:8px 11px}.sidebar .nav-item i{display:none}main{padding:22px 14px}header,.workspace-head{flex-direction:column;align-items:start}.header-actions{flex-wrap:wrap;width:100%}.metric-grid,.format-grid,.role-grid{grid-template-columns:1fr}.module-banner,footer{flex-direction:column;align-items:start;gap:7px}.login-page{min-height:100vh;padding:24px;display:block}.login-story{display:none}.login-panel{min-height:calc(100vh - 48px);padding:0}.login-card{padding:29px 24px}.login-mobile-brand{margin-bottom:28px;display:flex}}body{font-feature-settings:"tnum" 1,"ss01" 1;font-family:Aptos,Segoe UI Variable Text,Segoe UI,Arial,sans-serif}button,select,input{font:inherit}h1,.login-card h2,.workspace-head h2,.card-title h2,.format-card>div strong,.metric strong{letter-spacing:-.02em;font-family:inherit;font-weight:650}.primary:disabled,.secondary:disabled{opacity:.58;cursor:not-allowed}.secondary{height:40px;color:var(--green);background:#fff;border:1px solid #cfdbd5;border-radius:10px;padding:0 15px;font-weight:650}.inline-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.inline-actions select{border:1px solid var(--line);background:#fff;border-radius:9px;height:40px;padding:0 12px}.connection-badge{color:#68746e;background:#eef1ef;border-radius:20px;padding:7px 10px;font-size:10px;font-weight:700}.connection-badge.connected{background:var(--mint);color:var(--green)}.sandbox-note{background:#f8f3e5;border:1px solid #eee2bd;border-radius:9px;align-items:center;gap:12px;margin:20px 0 8px;padding:12px 14px;font-size:10px;display:flex}.sandbox-note strong{color:#765d1d}.sandbox-note span{color:var(--muted)}.data-table{font-size:11px}.data-table td{padding:13px 8px}.data-table td:first-child{gap:3px;display:grid}.data-table td small{color:var(--muted);font-size:8px}.empty-cell{color:var(--muted);text-align:center!important;padding:35px!important}.alert-error{color:#8f3f31;background:#fff4f1;border:1px solid #efcfc8;border-radius:10px;gap:2px;margin:-8px 0 18px;padding:12px 42px 12px 15px;font-size:11px;display:grid;position:relative}.alert-error span{color:#a05b4e}.alert-error button{color:#8f3f31;background:0 0;border:0;font-size:18px;position:absolute;top:9px;right:10px}.section-label{text-transform:uppercase;letter-spacing:.1em;color:#5d6b64;margin:22px 0 10px;font-size:10px}.report-grid{grid-template-columns:repeat(3,minmax(190px,1fr));gap:11px;display:grid}.report-card{border:1px solid var(--line);background:#fbfcfb;border-radius:11px;padding:15px}.report-card>div{justify-content:space-between;align-items:center;display:flex}.report-card>div small{color:var(--muted);font-size:9px}.report-card>strong{margin-top:14px;font-size:14px;display:block}.report-card>p{min-height:28px;color:var(--muted);margin:5px 0 12px;font-size:10px}.report-card footer{border-top:1px solid var(--line);padding-top:10px}.report-card footer button{color:var(--green);background:0 0;border:0;font-weight:700}.empty-panel{min-height:115px;color:var(--muted);text-align:center;border:1px dashed #cad5cf;border-radius:10px;grid-column:1/-1;place-content:center;gap:5px;font-size:10px;display:grid}.empty-panel strong{color:var(--ink);font-size:12px}.format-card{font:inherit;text-align:left;color:inherit;cursor:pointer}.format-card.selected{background:#f2f8f4;border-color:#6b9a84;box-shadow:0 0 0 2px #176b4d0d}.prepared-module{text-align:center;place-content:center;justify-items:center;min-height:310px;display:grid}.prepared-module h2{margin:5px}.prepared-module>p:last-child{max-width:470px;color:var(--muted);font-size:12px;line-height:1.6}.prepared-icon{background:var(--mint);width:48px;height:48px;color:var(--green);border-radius:13px;place-items:center;font-size:20px;display:grid}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#081b148c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.invoice-modal{background:#fff;border-radius:16px;width:min(720px,100%);max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 28px 90px #0b2118aa}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;padding:25px 28px 14px;display:flex}.modal-head h2{letter-spacing:-.02em;margin:4px 0 0;font-size:23px}.modal-head>button{color:#536159;background:#f1f3f2;border:0;border-radius:50%;width:34px;height:34px;font-size:20px}.stepper{grid-template-columns:24px 1fr 24px;align-items:center;width:210px;margin:18px 28px 0;display:grid;position:relative}.stepper span{color:#7b8781;background:#e8ecea;border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;font-weight:700;display:grid}.stepper span.done{background:var(--green);color:#fff}.stepper i{background:#dce4df;height:2px}.stepper small{color:var(--muted);margin-top:5px;font-size:8px}.stepper small:last-child{grid-column:3}.invoice-modal form{padding:4px 28px 26px}.invoice-modal fieldset{border:1px solid var(--line);border-radius:11px;margin:18px 0 0;padding:16px}.invoice-modal legend{color:#526059;text-transform:uppercase;letter-spacing:.08em;padding:0 7px;font-size:10px;font-weight:700}.form-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.form-grid label{color:#55625c;gap:6px;font-size:10px;font-weight:650;display:grid}.form-grid label.wide{grid-column:1/-1}.form-grid input,.form-grid select{background:#fbfcfb;border:1px solid #d8e0dc;border-radius:8px;outline:none;width:100%;height:41px;padding:0 11px}.form-grid input:focus,.form-grid select:focus{border-color:var(--green);box-shadow:0 0 0 3px #176b4d12}.modal-actions{border-top:1px solid var(--line);justify-content:space-between;margin-top:20px;padding-top:18px;display:flex}.invoice-review{padding-top:18px}.review-banner{color:var(--green);background:#edf7f1;border-radius:10px;align-items:center;gap:12px;padding:14px;display:flex}.review-banner>span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.review-banner p{color:#668174;margin:3px 0 0;font-size:10px}.invoice-review dl{margin:18px 0 0}.invoice-review dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:11px 3px;display:flex}.invoice-review dt{color:var(--muted);font-size:10px}.invoice-review dd{text-align:right;gap:3px;margin:0;font-size:11px;font-weight:650;display:grid}.invoice-review dd small{color:var(--muted);font-size:9px;font-weight:400}.invoice-review .review-total{border-bottom:0;padding-top:15px}.review-total dd{color:var(--green);font-size:18px}@media (max-width:1050px){.report-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.inline-actions{justify-content:flex-start;width:100%}.report-grid,.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.sandbox-note{flex-direction:column;align-items:start}.modal-backdrop{padding:10px}.invoice-modal{max-height:calc(100vh - 20px)}.modal-head,.invoice-modal form{padding-left:20px;padding-right:20px}}
