@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;650;700&family=Manrope:wght@400;500;600;650;700;800&display=swap');
:root{--bg:#f6f7f9;--ink:#202b36;--muted:#6b7783;--line:#e5e9ed;--green:#176551;--light:#eaf4ef;--orange:#c98139}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',system-ui,sans-serif}aside{width:242px;background:#172f2c;color:#eaf0eb;position:fixed;inset:0 auto 0 0;padding:34px 22px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-size:12px;letter-spacing:1px;font-weight:700}.brand small{display:block;font-size:8px;letter-spacing:1.8px;margin-top:7px;color:#acbfb5}.monogram{font:800 27px Manrope,sans-serif;letter-spacing:-3px;color:#fff}.monogram span{color:#e2b681}.navlabel{font-size:10px;letter-spacing:1.6px;color:#92aaa1;margin:58px 12px 18px}nav a{display:flex;gap:14px;align-items:center;color:#c1d0c9;text-decoration:none;padding:13px 15px;margin:5px 0;border-radius:8px;font-size:13px}nav a svg{width:19px;height:19px}nav a.active{color:#fff;background:#2c4941}nav a:hover{background:#253f39}.asidebottom{margin-top:auto;padding:20px 12px 0;font-size:11px;color:#b3c5bc}.asidebottom p{margin-top:15px;font-size:11px;color:#8fa99c}.dot{display:inline-block;width:6px;height:6px;background:#9dc6a3;border-radius:50%;margin-right:5px}main{margin-left:242px}header{height:76px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 42px;background:#fff;font-size:12px;color:var(--muted)}.version{border:1px solid var(--line);border-radius:20px;padding:7px 12px;font-size:11px}.content{padding:38px 42px;max-width:1540px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--green);font-weight:700;margin:0 0 10px}h1{font:750 29px Manrope,system-ui;margin:0;letter-spacing:-1px}h2{font:700 17px Manrope,system-ui;margin:0}h3{font-size:14px;margin:0 0 7px}p{line-height:1.6}#subtitle{color:var(--muted);margin:10px 0 0;font-size:13px}button{font:600 12px 'DM Sans',system-ui;cursor:pointer;background:#fff;color:var(--ink);border:1px solid var(--line);padding:11px 16px;border-radius:7px}button:hover{filter:brightness(.96)}button:focus-visible,a:focus-visible{outline:3px solid #d49a55;outline-offset:3px}.primary{background:var(--green);color:#fff;border-color:var(--green)}.small{font-size:11px;padding:6px 9px}.danger{color:#a43c32}.banner{background:#edf3ee;border:1px solid #dbe7df;border-radius:9px;padding:16px 20px;display:flex;gap:16px;align-items:center;margin-bottom:24px}.banner strong{font-size:13px}.banner p{margin:3px 0 0;color:#627466;font-size:12px}.banner .round{width:33px;height:33px;display:grid;place-items:center;background:#dbe8dd;border-radius:50%;color:var(--green);flex-shrink:0}.banner button{margin-left:auto;white-space:nowrap}.toolbar{display:flex;align-items:center;gap:10px;margin:0 0 22px;flex-wrap:wrap}.toolbar .end{margin-left:auto}.muted{color:var(--muted);font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.card{border:1px solid var(--line);border-radius:11px;background:#fff;padding:23px}.metric{min-height:140px;position:relative}.metric .label{font-size:12px;color:var(--muted)}.metric .number{font:750 27px Manrope,system-ui;letter-spacing:-1px;margin-top:18px}.metric small{display:block;color:var(--muted);font-size:11px;margin-top:9px}.metric:first-child{border-top:3px solid var(--green);padding-top:21px}.metric .symbol{float:right;color:#8da197;font-size:18px}.grid{display:grid;grid-template-columns:1.35fr 1fr;gap:22px;margin-bottom:22px}.cardhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.tag{padding:5px 9px;background:var(--light);border-radius:5px;color:var(--green);font-size:10px}.bars{display:flex;align-items:end;gap:12px;height:150px;padding:12px 5px 0;border-bottom:1px solid var(--line)}.barwrap{flex:1;height:100%;display:flex;gap:3px;align-items:end;position:relative}.bar{width:50%;background:#377b63;border-radius:4px 4px 0 0;min-height:2px}.bar.out{background:#d9b58c}.barlabels{display:flex;justify-content:space-around;color:var(--muted);font-size:10px;margin-top:10px}.legend{display:flex;gap:18px;font-size:11px;color:var(--muted);margin-top:20px}.legend i{display:inline-block;width:8px;height:8px;border-radius:2px;background:#377b63;margin-right:6px}.legend i.sand{background:#d9b58c}.rank{display:flex;gap:13px;align-items:center;margin:18px 0}.ranknum{width:27px;height:27px;background:#f2f5f3;border-radius:7px;display:grid;place-items:center;color:#6c8376;font-size:11px}.rankbody{flex:1}.rankbody strong{font-size:12px}.track{height:5px;background:#eff2ef;border-radius:4px;margin-top:9px;overflow:hidden}.fill{height:100%;background:#8bad92;border-radius:4px}.rank small{color:var(--muted);font-size:11px}.empty{padding:32px 10px;text-align:center;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:14px;margin:12px 0 6px}.empty p{font-size:12px;max-width:350px;margin:0 auto 16px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}th{text-align:left;color:var(--muted);font-size:10px;letter-spacing:.6px;text-transform:uppercase;font-weight:600;background:#f8faf9;padding:13px 12px}td{padding:14px 12px;border-bottom:1px solid #eef1f3}td.num,th.num{text-align:right}.pill{font-size:10px;border-radius:4px;padding:4px 7px;background:#edf4ef;color:#337054}.pill.expense{background:#f9efe5;color:#946027}.pill.pending{background:#fff3d8;color:#86641c}.pill.void{background:#f0f0f0;color:#777}.zero{font-size:12px;color:var(--muted)}.progress{height:9px;border-radius:9px;background:#edf1ed;overflow:hidden;margin:19px 0 10px}.progress div{background:var(--green);height:100%;border-radius:9px}.row{display:flex;justify-content:space-between;gap:16px;font-size:12px;margin:11px 0}.summary{font:700 22px Manrope}.note{font-size:11px;color:var(--muted);line-height:1.7}.fieldgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:block;font-size:12px;font-weight:600}.field.full{grid-column:1/-1}input,select{display:block;width:100%;font:13px 'DM Sans',system-ui;padding:11px;border:1px solid #dce2df;border-radius:6px;background:#fff;color:var(--ink);margin-top:7px}input:focus,select:focus{outline:2px solid #95bba9;outline-offset:1px}.toolbar input,.toolbar select{margin:0;width:auto;padding:9px;font-size:12px}.field small{font-weight:400;color:var(--muted);display:block;margin-top:5px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}dialog{border:0;border-radius:14px;width:560px;max-width:94vw;max-height:90vh;padding:27px;box-shadow:0 24px 90px #102c302e}dialog::backdrop{background:#122b296b;backdrop-filter:blur(3px)}.modalhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}.icon{border:0;font-size:25px;padding:0 4px;color:#687d72}.tabs{display:flex;gap:7px;margin-bottom:20px;flex-wrap:wrap}.tabs button.selected{background:var(--green);color:#fff}.help{background:#fff7e9;border:1px solid #f2e1c5;border-radius:8px;padding:12px 16px;font-size:12px;color:#795f36;margin-bottom:18px}.settings{max-width:680px}.settings .fieldgrid{margin-top:22px}footer{display:flex;justify-content:space-between;color:#8a958e;border-top:1px solid var(--line);padding-top:22px;margin-top:30px;font-size:10px;letter-spacing:.3px}#toast{position:fixed;right:24px;bottom:24px;background:#173c2e;color:white;padding:14px 22px;border-radius:8px;display:none;z-index:10}#formerror{color:#aa322d;font-size:12px}.link{border:0;padding:0;background:none;color:var(--green);font-size:12px}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}@media(min-width:1450px){.metric .number{font-size:32px}}@media(max-width:1050px){aside{width:200px;padding:30px 14px}main{margin-left:200px}.content{padding:28px 24px}header{padding:0 24px}.metrics{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}.heading{align-items:flex-start}h1{font-size:25px}}@media(max-width:650px){aside{position:static;width:auto;padding:18px}.navlabel,.asidebottom{display:none}nav{display:flex;overflow:auto;margin-top:15px;gap:3px}nav a{white-space:nowrap;font-size:11px;padding:9px;gap:6px}nav a svg{display:none}.brand{font-size:12px}main{margin-left:0}header{height:48px;padding:0 18px;font-size:10px}.version{font-size:9px;padding:5px 8px}.content{padding:24px 16px}.heading{display:block}.heading>button{margin-top:18px}.card{padding:17px}.metrics{gap:10px}.metric .number{font-size:23px}.metric{min-height:125px}.banner{padding:13px}.banner button{white-space:normal}.fieldgrid{grid-template-columns:1fr}.field.full{grid-column:auto}footer span{display:none}.toolbar .end{margin-left:0}input,select{font-size:16px}}

[hidden]{display:none!important}

/* Identidad de Vale’s Burger: logotipo original, negro y dorado. */
:root{--bg:#f8f7f4;--ink:#29251f;--muted:#767064;--line:#e9e3d9;--green:#80541e;--light:#f5eddf;--orange:#ba7d35}
aside{background:#171614;color:#f5eadb;padding-top:20px}
.brand{display:flex;flex-direction:column;gap:10px;letter-spacing:1px}
.brandlogo{display:block;width:100%;max-width:196px;height:auto;border-radius:6px}
.brandcaption{font-size:9px;color:#d6b27b;letter-spacing:2px;font-weight:500}
.navlabel{color:#b5a58c;margin-top:32px}
nav a{color:#cfc6b8}nav a.active{color:#f7d7a5;background:#34291d}nav a:hover{background:#2c251e}
.asidebottom{color:#c9b594}.asidebottom p{color:#b8a88f}.dot{background:#d8ad70}
.banner{background:#f6efe3;border-color:#eaddc6}.banner p{color:#7a6a50}.banner .round{background:#ecddc2}
.bar{background:#a87638}.bar.out{background:#ddc8a7}.legend i{background:#a87638}.legend i.sand{background:#ddc8a7}
.ranknum{background:#f5f0e7;color:#8a6b42}.track{background:#f3eee5}.fill{background:#caa36c}
.pill{background:#f5eddf;color:#80541e}.primary{background:#80541e;border-color:#80541e}
input:focus,select:focus{outline-color:#c9a370}.progress{background:#f2eadc}#toast{background:#4b351c}
@media(max-width:650px){.brand{flex-direction:row;justify-content:flex-start;gap:18px}.brandlogo{width:105px;max-width:105px}.brandcaption{font-size:10px}aside{padding-top:14px}}
