.gastos-page{--ink:#172b40;--muted:#586d80;--line:#dce4ec;--blue:#1469b8;background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;color:var(--ink);max-width:1500px;margin:auto}.gastos-header,.gastos-actions,.gastos-toolbar,.gastos-month,.gastos-list-header,.gastos-spread,.gastos-service-top,.gastos-service-bottom,.gastos-payment,.gastos-file{display:flex;align-items:center;gap:12px;justify-content:space-between}.gastos-header{align-items:flex-start;margin-bottom:26px}.gastos-eyebrow{color:#276caa;font-size:.7rem;letter-spacing:.12em;font-weight:700;margin-bottom:7px}.gastos-page h1{font-size:1.8rem;margin:0 0 8px;letter-spacing:-.03em;color:var(--ink)}.gastos-page h2,.gastos-dialog h2{font-size:1.2rem;margin:0 0 6px}.gastos-page h3,.gastos-dialog h3{font-size:1rem;margin:0 0 6px}.gastos-page p,.gastos-dialog p{color:var(--muted,#586d80);margin-bottom:8px}.gastos-page .btn,.gastos-dialog .btn{white-space:normal;border-radius:7px;font-weight:600}.gastos-actions{justify-content:flex-end;flex-wrap:wrap}.gastos-toolbar{margin-bottom:18px;flex-wrap:wrap;justify-content:flex-start}.gastos-month{gap:4px}.gastos-month input{border:1px solid var(--line);border-radius:6px;padding:8px;min-height:38px;color:var(--ink);background:white}.gastos-search{flex:1;min-width:180px}.gastos-toolbar select{width:auto;max-width:240px}.gastos-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 24px}.gastos-summary>div{border:1px solid var(--line);border-radius:10px;padding:18px;min-width:0}.gastos-summary span{display:block;font-size:.8rem;color:var(--muted)}.gastos-summary strong{display:block;font-size:1.65rem;font-variant-numeric:tabular-nums;margin:7px 0;overflow-wrap:anywhere}.gastos-page small,.gastos-dialog small{display:block;color:var(--muted,#586d80);font-size:.76rem;line-height:1.5}.gastos-summary .gastos-overdue{background:#fff7f3;border-color:#f0d6c6}.gastos-overdue strong{color:#a14020}.gastos-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;margin-bottom:18px;background:#edf5fc;border-radius:8px;color:#274d70;font-size:.85rem}.gastos-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:24px;overflow-x:auto}.gastos-tabs button,.gastos-status-tabs button{border:0;background:transparent;white-space:nowrap;color:var(--muted);padding:12px 0;font-weight:600}.gastos-tabs button.active{color:var(--blue);box-shadow:inset 0 -3px var(--blue)}.gastos-config-link{margin-left:auto}.gastos-list-header{margin-bottom:18px;align-items:flex-start}.gastos-status-tabs{display:flex;gap:7px;flex-wrap:wrap}.gastos-status-tabs button{padding:6px 13px;border-radius:7px;font-size:.85rem}.gastos-status-tabs button.active{background:#e8f2fc;color:#175d9c}.gastos-table-wrap{position:relative;overflow-x:auto}.gastos-table{width:100%;border-collapse:collapse;font-size:.9rem}.gastos-table th{font-size:.74rem;color:var(--muted,#586d80);font-weight:600;letter-spacing:.02em;padding:12px;background:#f6f8fa;white-space:nowrap}.gastos-table td{border-bottom:1px solid var(--line,#dce4ec);padding:16px 12px;vertical-align:middle}.gastos-table .number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.gastos-table td small{margin-top:3px}.gastos-row-actions{text-align:right;white-space:nowrap}.gastos-row-actions .btn{margin:3px}.gastos-text-button{border:0;background:transparent;padding:0;color:#165d9b;font-weight:600;text-align:left;overflow-wrap:anywhere}.gastos-text-button:hover{text-decoration:underline}.gastos-badge{display:inline-block;padding:5px 9px;border-radius:6px;font-size:.73rem;font-weight:600;white-space:nowrap}.gastos-badge.paid{background:#e5f3e9;color:#216943}.gastos-badge.overdue{background:#fff0e8;color:#a14020}.gastos-badge.pending{background:#fff6db;color:#7b5c10}.gastos-badge.neutral{background:#edf1f5;color:#506477}.gastos-empty{text-align:center;padding:50px 16px}.gastos-empty p{max-width:480px;margin:10px auto 22px}.gastos-empty-icon{display:inline-grid;place-items:center;background:#edf5fb;color:#2d6da5;width:52px;height:52px;border-radius:50%;font-size:1.4rem;margin-bottom:18px}.gastos-filter-panel{padding:16px;background:#f6f8fa;border-radius:9px;margin-bottom:16px}.gastos-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gastos-form-grid .wide{grid-column:1/-1}.gastos-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.gastos-filter-end{align-self:end;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.gastos-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gastos-service-card{border:1px solid var(--line);border-radius:10px;padding:20px}.gastos-service-top{margin-bottom:14px}.gastos-service-card h3{font-size:1.1rem}.gastos-service-amount{font-size:1.45rem;display:block;margin:18px 0 7px;font-variant-numeric:tabular-nums}.gastos-service-amount small{display:inline;font-weight:400}.gastos-service-bottom{border-top:1px solid var(--line);margin-top:18px;padding-top:16px;flex-wrap:wrap}.gastos-history-label{background:#f5f7fa;border-radius:7px;padding:10px;font-size:.8rem}.gastos-checkbox{display:flex;align-items:center;gap:8px;font-weight:400!important}.gastos-checkbox input{width:17px;height:17px;flex-shrink:0}.gastos-section{border-top:1px solid var(--line,#dce4ec);padding:18px 0;margin-top:14px}.gastos-section summary{color:#284c6d;font-weight:600;cursor:pointer;padding:3px 0 10px}.gastos-hint{font-size:.8rem;margin-top:10px}.gastos-overlay{--ink:#172b40;--muted:#586d80;--line:#dce4ec;position:fixed;inset:0;background:rgba(14,31,49,.52);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1100}.gastos-dialog{padding:0;background:white;border-radius:14px;width:min(840px,100%);max-height:calc(100dvh - 48px);display:flex;flex-direction:column;box-shadow:0 24px 90px #06162940;color:var(--ink);outline:none}.gastos-dialog>header{padding:22px 28px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px}.gastos-dialog>header small{letter-spacing:.05em;font-size:.7rem;margin-bottom:6px}.gastos-dialog-body{padding:24px 28px;overflow:auto}.gastos-dialog>footer{border-top:1px solid var(--line);padding:16px 28px;display:flex;justify-content:flex-end;gap:10px;background:#f8fafc;border-radius:0 0 14px 14px}.gastos-dialog label,.gastos-filter-panel label{font-size:.82rem;font-weight:600;display:block;margin-bottom:6px}.gastos-dialog .gastos-checkbox{display:flex}.gastos-dialog .form-control{min-height:40px;color:var(--ink);border-color:#c7d3df}.gastos-dialog .form-control:focus{border-color:#2f80ca;box-shadow:0 0 0 3px #2080d126}.gastos-dialog .gastos-form-grid label:has(input){width:100%}.gastos-dialog .gastos-form-grid label input{margin-top:6px}.gastos-invoice-total{background:#edf5fc;padding:16px;border-radius:8px;margin:20px 0;display:flex;justify-content:space-between;gap:12px}.gastos-allocation{border:1px solid var(--line);padding:16px;border-radius:9px;margin:12px 0}.gastos-upload{padding:15px;border:1px dashed #b0c7db;border-radius:8px;background:#fafcfe;margin:14px 0}.gastos-upload input{max-width:100%;margin:6px 0}.gastos-detail-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px;background:#f6f8fa;padding:18px;border-radius:9px}.gastos-detail-summary strong{font-size:1.1rem}.gastos-meta{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.gastos-meta dt{font-size:.75rem;color:var(--muted);font-weight:400}.gastos-meta dd{font-size:.87rem;margin:4px 0 0}.gastos-payment,.gastos-file{padding:12px 0;border-bottom:1px solid #edf1f5;align-items:flex-start}.gastos-payment>div:last-child{flex-shrink:0}.gastos-dialog .gastos-actions{justify-content:flex-start;margin-top:16px}.gastos-page button:focus-visible,.gastos-dialog button:focus-visible,.gastos-page a:focus-visible,.gastos-dialog a:focus-visible,.gastos-page summary:focus-visible,.gastos-dialog summary:focus-visible{outline:3px solid #3584c7;outline-offset:3px}.gastos-dialog .gastos-table{display:table}.gastos-page .gasto-selector-label,.gastos-dialog .gasto-selector-label{display:block;font-size:.82rem;font-weight:600;margin-bottom:6px}.gastos-dialog .form-control{min-height:40px;border-color:#c7d3df;color:var(--ink)}
@media(min-width:1500px){.gastos-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.gastos-summary{grid-template-columns:repeat(2,1fr)}.gastos-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.gastos-header{flex-wrap:wrap}.gastos-tabs{gap:16px}.gastos-config-link{margin-left:0}}
@media(max-width:640px){.gastos-page{padding:16px 12px;border-radius:10px}.gastos-header{gap:14px;margin-bottom:18px}.gastos-header .gastos-actions{width:100%;justify-content:flex-start}.gastos-page h1{font-size:1.5rem}.gastos-search{order:3;flex-basis:100%}.gastos-toolbar select{flex:1;min-width:140px}.gastos-toolbar{gap:8px}.gastos-summary{gap:8px}.gastos-summary>div{padding:12px}.gastos-summary strong{font-size:1.3rem}.gastos-summary span{font-size:.73rem}.gastos-summary small{font-size:.7rem}.gastos-service-grid,.gastos-form-grid,.gastos-filter-panel,.gastos-meta{grid-template-columns:1fr}.gastos-list-header{flex-wrap:wrap;gap:10px}.gastos-tabs{font-size:.82rem;gap:18px}.gastos-overlay{padding:8px}.gastos-dialog{max-height:calc(100dvh - 16px);border-radius:10px}.gastos-dialog>header{padding:16px}.gastos-dialog-body{padding:16px}.gastos-dialog>footer{padding:12px 16px}.gastos-payment,.gastos-file,.gastos-spread,.gastos-invoice-total,.gastos-notice{flex-wrap:wrap}.gastos-dialog .gastos-table{display:block;overflow-x:auto}.gastos-table td,.gastos-table th{padding:12px 9px}.gastos-checkbox{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.gastos-page *,.gastos-dialog *{scroll-behavior:auto!important;transition:none!important}}
