:root{font-family:Inter,Arial,sans-serif;color:#191919;background:#f4f4f4;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.file{cursor:pointer;border:1px solid #d9d9d9;background:white;border-radius:7px;padding:10px 15px;color:inherit}button:hover,.file:hover{background:#ebebeb}button.primary{background:#171717;color:white;border-color:#171717}button:disabled{opacity:.5;cursor:wait}input,select,textarea{padding:10px;border:1px solid #cccccc;border-radius:6px;width:100%;background:white;color:#191919}label{display:grid;gap:7px;font-size:13px;margin:10px 0}h1{font-size:30px;letter-spacing:-1px;margin:0 0 8px}h2{font-size:19px;margin:0 0 18px}h3{font-size:15px}p{line-height:1.5}.muted,small{color:#666666}.layout{display:grid;grid-template-columns:220px 1fr;min-height:100vh}aside{background:#101010;color:#eeeeee;padding:32px 20px;display:flex;flex-direction:column;gap:28px}.brand{font-weight:900;font-size:37px;letter-spacing:-3px;color:#ffffff}.brand small{display:block;letter-spacing:3px;font-size:10px;margin-top:5px;color:#aaaaaa}nav{display:grid;gap:6px}nav button{background:transparent;color:#c6c6c6;text-align:left;border:0;padding:13px 15px}nav button.active{background:#ffffff;color:#111111;font-weight:700}.asidefoot{margin-top:auto;font-size:12px;line-height:1.6}main{padding:32px 40px;max-width:1500px;width:100%;margin:auto}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px;font-size:12px;color:#666666}.pill{display:inline-block;border-radius:30px;padding:6px 10px;background:#eaeaea;color:#444444;font-size:12px}.pagehead{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:15px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:25px 0}.card,.panel{background:white;border:1px solid #dddddd;border-radius:12px;padding:24px}.card .value{font-size:26px;font-weight:650;margin:15px 0 8px;letter-spacing:-.8px}.card:first-child{background:#ededed}.grid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px}.panel{margin-bottom:20px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row.between{justify-content:space-between}.tabs{display:flex;gap:7px;margin:16px 0}.tabs .active{background:#171717;color:white}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;white-space:nowrap}th{color:#666666;font-size:11px;text-transform:uppercase;letter-spacing:.6px;background:#f6f6f6}th,td{padding:14px 11px;border-bottom:1px solid #ebebeb}td button{font-size:12px;padding:6px 9px}.empty{text-align:center;padding:40px;color:#666666}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 16px}.full{grid-column:1/-1}.notice{background:#eeeeee;padding:13px 17px;border-left:3px solid #888888;font-size:13px;margin:14px 0}.chart{display:grid;gap:15px}.barrow{display:grid;grid-template-columns:65px 1fr;gap:12px;font-size:12px;align-items:center}.bars{display:grid;gap:4px}.bar{height:13px;min-width:2px;border-radius:3px;background:#242424}.bar.expense{background:#999999}.legend{display:flex;gap:20px;color:#666666;font-size:12px;margin-bottom:22px}.dot{display:inline-block;width:8px;height:8px;background:#242424;border-radius:50%;margin-right:5px}.dot.orange{background:#999999}.login{max-width:480px;margin:7vh auto;padding:35px}.login .brand{color:#171717}.login button{width:100%;margin-top:12px}#toast{position:fixed;bottom:25px;right:25px;max-width:450px;background:#222222;color:white;border-radius:9px;padding:15px 20px;z-index:5;display:none}.error{color:#333333}.audit{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:350px;overflow:auto}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}a{color:#222222}footer{font-size:11px;color:#777777;margin-top:30px}@media(max-width:1000px){main{padding:24px}.cards{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.layout{grid-template-columns:180px 1fr}}@media(max-width:650px){.layout{display:block}aside{padding:15px;gap:12px}nav{display:flex;overflow:auto}nav button{white-space:nowrap}.brand{font-size:28px}.brand small,.asidefoot{display:none}main{padding:20px 15px}.topbar{margin-bottom:22px}.pagehead{align-items:flex-start;flex-direction:column}.cards{gap:10px}.card{padding:16px}.card .value{font-size:21px}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}h1{font-size:26px}}

.cards-home{grid-template-columns:repeat(3,minmax(0,1fr))}.cards-finance{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:650px){.cards-home,.cards-finance{grid-template-columns:1fr}}

[hidden]{display:none!important}.expense-totals{padding:18px 0;gap:30px}.report-total{padding:18px;background:#ededed;border-radius:8px;font-size:20px}.closure-report td{white-space:normal;min-width:90px}.bank-field{padding-bottom:10px}.formgrid>div{min-width:0}@media(max-width:650px){.tabs{flex-wrap:wrap}.expense-totals{display:grid;gap:10px}.report-total{font-size:18px}.closure-report{padding:15px}}

main{min-width:0}.tablewrap{max-width:100%}

/* ALT: negro, gris y blanco. */
.card:first-child{background:#171717;color:#ffffff;border-color:#171717}.card:first-child small{color:#d0d0d0}nav button:hover{background:#292929;color:#ffffff}nav button.active:hover{background:#ffffff;color:#111111}:is(button,input,select,textarea,.file):focus-visible{outline:2px solid #777777;outline-offset:3px}input[type="checkbox"]{accent-color:#171717}.report-total{background:#ededed;color:#191919}

/* Color funcional reservado a entradas y salidas de dinero. */
.flow-income{color:#16703f}.flow-expense{color:#b42318}.flow-amount{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.flow-badge{display:inline-block;padding:5px 9px;border-radius:5px;font-size:12px;font-weight:600;border:1px solid transparent}.flow-badge.flow-income{background:#edf8f1;border-color:#cbe8d5}.flow-badge.flow-expense{background:#fff1f0;border-color:#f2cfcb}.expense-totals{color:#b42318}

.flow-table table{white-space:normal;min-width:660px}.flow-table th,.flow-table td{padding:12px 8px}.flow-table td:first-child{min-width:86px}.flow-badge{white-space:nowrap}

.channel-badge{font-weight:600;border:1px solid transparent}.channel-shopify{color:#16703f;background:#edf8f1;border-color:#cbe8d5}.channel-external{color:#1759a3;background:#edf4ff;border-color:#cbdcf5}

.chart .bar,.legend .dot{background:#16703f}.chart .bar.expense,.legend .dot.orange{background:#b42318}
