@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-main:#0f0f0f;--bg-surface:#161616;--bg-edit:#0d0d1a;--border-subtle:#2a2a2a;--border-medium:#2d2d2d;--accent:#7c6fff;--accent-dark:#1e1a3a;--accent-border:#3d2fa0;--color-text-base:#e0e0e0;--text-primary:var(--color-text-base);--text-secondary:#e0e0e066;--text-inactive:#e0e0e040;--text-accent-light:#c0b4ff;--text-accent-medium:#9f8fff;--color-error:#f44;--color-warning:#fc0;--total-bg:#1a1530;--total-border:#2e2060;--separator:#1a1a1a;--whatsapp-green:#128c3e;--whatsapp-bg:#0d1a0d;--whatsapp-border:#1e3a1e;--whatsapp-text:#8fbc8f;--font-display:18px;--font-primary:13px;--font-secondary:11px;--font-auxiliary:9px;--weight-regular:400;--weight-medium:500;--line-height-single:1.4;--line-height-multi:1.6;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--bg-main);width:100%;height:100%;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:var(--font-primary);line-height:var(--line-height-single);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.app-container{flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex;position:relative}.floating-field{margin-bottom:16px;position:relative}.floating-field__input,.floating-field__select{border:1px solid var(--border-medium);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-family:Inter,sans-serif;font-size:var(--font-secondary);appearance:none;background:0 0;outline:none;padding:12px 16px;transition:border-color .2s}.floating-field__select{cursor:pointer;padding-right:36px}.floating-field__select-arrow{pointer-events:none;color:var(--text-inactive);transition:color .2s;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.floating-field__input:focus,.floating-field__select:focus{border-color:var(--accent)}.floating-field__input:focus~.floating-field__select-arrow,.floating-field__select:focus~.floating-field__select-arrow{color:var(--accent)}.floating-field__label{font-size:var(--font-secondary);color:var(--text-inactive);pointer-events:none;background:0 0;padding:0;transition:all .2s;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.floating-field__input:focus~.floating-field__label,.floating-field__input.has-value~.floating-field__label,.floating-field__select:focus~.floating-field__label,.floating-field__select.has-value~.floating-field__label{font-size:var(--font-auxiliary);color:var(--accent);background:var(--bg-surface);padding:0 4px;top:0;transform:translateY(-50%)}.floating-field--main-bg .floating-field__input:focus~.floating-field__label,.floating-field--main-bg .floating-field__input.has-value~.floating-field__label,.floating-field--main-bg .floating-field__select:focus~.floating-field__label,.floating-field--main-bg .floating-field__select.has-value~.floating-field__label{background:var(--bg-main)}.floating-field--edit-bg .floating-field__input:focus~.floating-field__label,.floating-field--edit-bg .floating-field__input.has-value~.floating-field__label{background:var(--bg-edit)}.floating-field--error .floating-field__input,.floating-field__input--error{border-color:#f44}.floating-field--error .floating-field__input:focus{border-color:#f66}.floating-field--error .floating-field__input.has-value~.floating-field__label,.floating-field--error .floating-field__input:focus~.floating-field__label{color:#f88}.floating-field__input--currency{text-align:right;font-variant-numeric:tabular-nums}.form-row{gap:12px;display:flex}.form-row>.floating-field{flex:1}.total-bar{background:var(--total-bg);border-bottom:0 solid var(--total-border);box-sizing:border-box;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.total-bar--panel{border-radius:8px;margin:16px 0}.total-bar-main-wrap{padding:0 16px}.total-bar__label{font-size:var(--font-secondary);color:var(--text-secondary);font-weight:var(--weight-regular)}.total-bar__value{font-size:var(--font-display);color:var(--accent);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.item-form{padding:16px 16px 8px}.item-form--editing{border-left:4px solid var(--accent);background:var(--bg-edit)}.item-form__editing-badge{color:var(--text-accent-medium);align-items:center;gap:8px;margin-bottom:12px;font-size:11px;display:flex}.item-form__editing-badge-number{background:var(--accent);color:#fff;font-size:9px;font-weight:var(--weight-medium);border-radius:4px;padding:4px 8px}.btn-launch{background:var(--accent-dark);border:1px solid var(--accent);border-radius:var(--radius-md);width:100%;color:var(--text-accent-medium);font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:12px;transition:all .2s;display:flex}.btn-launch:hover{background:#251f4a}.btn-launch:active{transform:scale(.98)}.btn-save-main{background:var(--accent);border-radius:var(--radius-lg);color:#fff;width:calc(100% - 32px);font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;border:none;margin:12px 16px;padding:12px;transition:all .2s}.btn-save-main:hover:not(:disabled){background:#6b5ef0}.btn-save-main:active:not(:disabled){transform:scale(.98)}.btn-save-main:disabled{background:var(--border-subtle);color:var(--text-inactive);cursor:not-allowed}.btn-save-actions-row{align-items:stretch;gap:10px;padding:12px 16px 0;display:flex}.btn-save-actions-row .btn-save-main{flex:1;width:auto;margin:0}.btn-save-draft{border:1px solid var(--accent);border-radius:var(--radius-lg);color:var(--accent);font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;background:0 0;flex:1;padding:12px;transition:all .2s}.btn-save-draft:hover:not(:disabled){background:var(--accent-dark)}.btn-save-draft:disabled{border-color:var(--border-subtle);color:var(--text-inactive);cursor:not-allowed}.modal-overlay--datepicker-front{z-index:200}.compromissos-strip{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;max-width:480px;margin:0 auto;padding:8px 16px 4px}.compromissos-strip__inner{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:11px;display:flex}.compromissos-strip__chip{align-items:center;gap:4px;display:inline-flex}.compromissos-strip__dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.compromissos-strip__dot--danger{background:#f44}.compromissos-strip__dot--purple{background:#a855f7}.compromissos-strip__sep{color:var(--border-medium);opacity:.8}.compromissos-strip__link{color:var(--accent);margin-left:auto;font-weight:500}.compromisso-badge{text-transform:lowercase;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.compromisso-badge--pendente{color:#c084fc;background:#a855f726}.compromisso-badge--vencido{color:#f66;background:#ff44441f}.compromisso-meta{padding:0 16px;font-size:12px}.compromisso-meta--danger{color:#f66}.compromisso-detail-actions{flex-direction:column;gap:10px;margin-top:16px;display:flex}.compromisso-detail-actions .btn-compromisso-quitar{border-radius:10px;width:100%;max-width:none;margin:0}.btn-compromisso-quitar{background:var(--accent);color:#fff;width:100%;font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;border:none;border-radius:10px;padding:12px;transition:all .2s}.btn-compromisso-quitar:hover:not(:disabled){background:#6b5ef0}.btn-compromisso-quitar:active:not(:disabled){transform:scale(.98)}.btn-compromisso-secondary{color:#e0e0e066;width:100%;font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;background:0 0;border:1px solid #2a2a2a;border-radius:10px;padding:12px;transition:border-color .2s,color .2s}.btn-compromisso-secondary:hover:not(:disabled){color:#e0e0e0a6;border-color:#3a3a3a}.compromisso-cancel-confirm__body{color:var(--text-primary);padding:10px 20px 20px;font-size:13px;line-height:1.5}.compromisso-cancel-confirm__actions{flex-direction:column;gap:8px;padding:0 20px 20px;display:flex}.compromissos-section{padding:16px 16px 8px}.compromissos-section__header{margin-bottom:12px}.compromissos-section__title{color:var(--text-primary);margin-bottom:8px;font-size:14px;font-weight:600}.compromissos-section__subtotal{justify-content:space-between;align-items:center;font-size:12px;display:flex}.compromissos-section__subtotal-label{color:var(--text-secondary)}.compromissos-section__subtotal-value{font-variant-numeric:tabular-nums;color:#c084fc;font-weight:600}.compromisso-card{text-align:left;border:none;border-bottom:1px solid var(--separator);width:100%;color:inherit;cursor:pointer;background:0 0;margin-bottom:4px;padding:12px 0}.compromisso-card__top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.compromisso-card__title{font-size:var(--font-secondary);color:var(--text-primary);font-weight:500}.compromisso-card__total{font-size:var(--font-secondary);font-variant-numeric:tabular-nums;color:var(--accent);flex-shrink:0}.compromisso-card__bottom{justify-content:space-between;align-items:center;margin-top:6px;font-size:11px;display:flex}.compromisso-card__date{color:var(--text-secondary)}.compromisso-card__status--danger{color:#f66}.compromisso-card__status--purple{color:#c084fc}.meus-gastos-summary--stack{flex-direction:column;align-items:stretch;gap:6px}.meus-gastos-summary__paid-row{align-items:center;gap:8px;width:100%;display:flex}.meus-gastos-summary__paid-label{color:var(--text-secondary);flex-shrink:0;font-size:11px}.meus-gastos-summary__paid-center{flex:1;justify-content:center;align-items:center;min-width:0;display:flex}.meus-gastos-summary__toggle-all-btn{font-family:inherit;font-size:10px;font-weight:var(--weight-medium);letter-spacing:.2px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin:0;padding:2px 4px;transition:color .15s;display:inline-flex}.meus-gastos-summary__toggle-all-btn:hover{color:var(--text-primary)}.meus-gastos-summary__toggle-all-btn:active{transform:scale(.98)}.meus-gastos-summary__paid-row .meus-gastos-summary__total{flex-shrink:0;margin-left:auto}.meus-gastos-search-block{padding:0 0 16px}.meus-gastos-search-block__title{color:var(--text-primary);margin:12px 16px 8px;font-size:13px;font-weight:600}.meus-gastos-search-block--compromissos{border-top:1px solid var(--separator);margin-top:8px;padding-top:8px}.compromissos-money{color:#c084fc}.meus-gastos-empty--soft{color:var(--text-inactive);padding:8px 16px 16px;font-size:13px}.items-table{padding:0 16px}.items-table__empty{text-align:center;color:var(--text-inactive);font-size:var(--font-secondary);padding:24px 16px}.item-row{border-bottom:0px solid var(--separator);padding:12px 0;transition:background .2s;position:relative;overflow:hidden}.item-row--editing{background:var(--accent-dark);border-radius:4px;margin:0 -8px;padding:12px 8px}.item-row__top{align-items:flex-start;gap:8px;display:flex}.item-row__number{font-size:var(--font-auxiliary);color:var(--text-secondary);flex-shrink:0;min-width:16px;padding-top:4px}.item-row__desc{font-size:var(--font-secondary);color:var(--text-secondary);word-break:break-word;line-height:var(--line-height-single);flex:1}.item-row__desc--new{color:var(--text-accent-light)}.item-row__badge{background:var(--accent);color:#fff;font-size:var(--font-auxiliary);font-weight:var(--weight-medium);vertical-align:middle;text-transform:uppercase;letter-spacing:.5px;border-radius:3px;margin-left:8px;padding:4px;display:inline-block}.item-row__edit-btn{color:var(--text-inactive);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px;transition:color .2s}.item-row__edit-btn:hover{color:var(--accent)}.item-row__bottom{justify-content:space-between;align-items:center;margin-top:4px;padding-left:24px;display:flex}.item-row__qty{font-size:var(--font-auxiliary);color:var(--text-inactive)}.item-row__value{font-size:var(--font-secondary);color:var(--text-primary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.item-row__swipe-wrapper{position:relative;overflow:hidden}.item-row__delete-bg{color:#f44;width:80px;font-size:11px;font-weight:var(--weight-medium);background:#3a1111;border-radius:4px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:0}.item-row__content{background:var(--bg-main);transition:transform .2s;position:relative}.item-row__content--swiped{transform:translate(-80px)}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-sheet{background:var(--bg-surface);border-radius:16px 16px 0 0;width:100%;max-width:480px;max-height:90vh;padding:12px 16px 24px;animation:.3s slideUp;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-sheet__handle{background:#333;border-radius:2px;width:36px;height:4px;margin:0 auto 16px}.modal-sheet__title{font-size:var(--font-secondary);color:var(--text-secondary);text-align:center;font-weight:var(--weight-medium);margin-bottom:20px}.payment-separator{text-align:center;color:var(--text-secondary);letter-spacing:.5px;margin:16px 0;font-size:11px}.payment-tabs{margin-bottom:16px}.payment-tabs__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;font-size:9px;font-weight:var(--weight-medium);margin-bottom:8px}.payment-tabs__row{gap:8px;display:flex}.payment-tab{border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;text-align:center;background:0 0;flex:1;padding:12px;transition:all .2s}.payment-tab--inactive{border:1px solid var(--border-medium);color:var(--text-secondary)}.payment-tab--active{border:1px solid var(--accent);background:var(--accent-dark);color:var(--text-accent-medium)}.btn-attach{border:1px dashed var(--accent-border);border-radius:var(--radius-md);width:100%;color:var(--accent);font-family:Inter,sans-serif;font-size:var(--font-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;margin-bottom:4px;padding:8px 12px;transition:all .2s;display:flex}.btn-attach--has-file{border:1px solid var(--accent);background:var(--accent-dark);color:var(--text-accent-light)}.btn-attach__hint{font-size:var(--font-auxiliary);color:var(--text-inactive);text-align:center;margin-bottom:16px}.btn-save-modal{background:var(--accent);border-radius:var(--radius-lg);color:#fff;width:100%;font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;border:none;margin-top:8px;padding:12px;transition:all .2s}.btn-save-modal:hover{background:#6b5ef0}.btn-save-modal:active{transform:scale(.98)}.confirmation{padding:0 16px 24px}.confirmation__header{text-align:center;font-size:var(--font-primary);font-weight:var(--weight-medium);color:var(--text-primary);border-bottom:0px solid var(--separator);margin-bottom:20px;padding:16px}.confirmation__success{flex-direction:column;align-items:center;margin-bottom:24px;display:flex}.confirmation__icon{background:var(--accent-dark);border:1.5px solid var(--accent);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:12px;display:flex}.confirmation__icon svg{color:var(--accent)}.confirmation__title{font-size:var(--font-primary);color:var(--text-primary);font-weight:var(--weight-medium);margin-bottom:4px}.confirmation__subtitle{color:var(--text-inactive);font-size:11px}.confirmation__summary{margin-bottom:20px}.confirmation__summary-row{justify-content:space-between;padding:8px 0;display:flex}.confirmation__summary-label{color:var(--text-inactive);font-size:11px}.confirmation__summary-value{color:var(--text-accent-light);text-align:right;max-width:60%;font-size:11px}.confirmation__items-title{font-size:var(--font-auxiliary);color:var(--text-inactive);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--weight-medium);margin-bottom:8px}.confirmation__item{border-bottom:0 solid #181818;justify-content:space-between;align-items:flex-start;padding:8px 0;display:flex}.confirmation__item-left{flex:1}.confirmation__item-desc{font-size:var(--font-secondary);color:var(--text-primary)}.confirmation__item-meta{font-size:var(--font-auxiliary);color:var(--text-inactive);margin-top:4px}.confirmation__item-value{font-size:var(--font-secondary);color:var(--text-primary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.whatsapp-preview{background:var(--whatsapp-bg);border:.5px solid var(--whatsapp-border);border-radius:var(--radius-lg);margin:20px 0 12px;padding:16px}.whatsapp-preview__label{font-size:var(--font-auxiliary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--weight-medium);margin-bottom:8px}.whatsapp-preview__text{color:var(--whatsapp-text);white-space:pre-wrap;word-break:break-word;font-family:Courier New,monospace;font-size:11px;line-height:1.6}.btn-whatsapp{background:var(--whatsapp-green);border-radius:var(--radius-lg);color:#fff;width:100%;font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;margin-bottom:12px;padding:12px;transition:all .2s;display:flex}.btn-whatsapp:hover{background:#0f7a33}.btn-whatsapp:active{transform:scale(.98)}.btn-new-expense{border:1px solid var(--accent-border);border-radius:var(--radius-lg);width:100%;color:var(--text-accent-medium);font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px;transition:all .2s;display:flex}.btn-new-expense:hover{background:var(--accent-dark)}.btn-new-expense:active{transform:scale(.98)}.date-header{padding:16px 16px 0}.date-header__row{align-items:flex-start;gap:8px;display:flex}.date-header__row>.floating-field{flex:1}.date-header__calendar-btn{background:var(--accent-dark);border-radius:var(--radius-md);width:44px;height:44px;color:var(--accent);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.date-header__calendar-btn:hover{background:#251f4a}.delete-confirm{z-index:200;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.delete-confirm__box{background:var(--bg-surface);border:1px solid var(--border-medium);text-align:center;border-radius:12px;width:100%;max-width:300px;padding:20px}.delete-confirm__text{font-size:var(--font-secondary);color:var(--text-primary);margin-bottom:16px}.delete-confirm__actions{gap:12px;display:flex}.delete-confirm__btn{border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;flex:1;padding:8px;transition:all .2s}.delete-confirm__btn--cancel{border:1px solid var(--border-medium);color:var(--text-secondary);background:0 0}.delete-confirm__btn--delete{color:#f44;background:#3a1111;border:1px solid #622}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:3px}.custom-dropdown{background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-sm);z-index:50;max-height:210px;animation:.15s dropdownFade;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0006}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.custom-dropdown__item{font-size:var(--font-secondary);color:var(--text-primary);cursor:pointer;border-bottom:0px solid var(--separator);padding:12px 16px;transition:background .15s}.custom-dropdown__item:last-child{border-bottom:none}.custom-dropdown__item:hover{background:var(--accent-dark)}.custom-dropdown__item--selected{color:var(--accent);background:#7c6fff14}.custom-dropdown__empty{font-size:var(--font-secondary);color:var(--text-inactive);text-align:center;padding:16px}.custom-dropdown::-webkit-scrollbar{width:4px}.custom-dropdown::-webkit-scrollbar-track{background:0 0}.custom-dropdown::-webkit-scrollbar-thumb{background:var(--accent-border);border-radius:4px}.datepicker-sheet{padding-bottom:28px}.datepicker-shortcuts{gap:8px;margin-bottom:20px;display:flex}.datepicker-shortcut{border-radius:var(--radius-sm);border:1px solid var(--border-medium);cursor:pointer;background:0 0;flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px 8px;font-family:Inter,sans-serif;transition:all .2s;display:flex}.datepicker-shortcut__label{color:var(--text-secondary);font-size:11px}.datepicker-shortcut__date{font-size:var(--font-secondary);color:var(--text-primary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.datepicker-shortcut--active{background:var(--accent-dark);border-color:var(--accent)}.datepicker-shortcut--active .datepicker-shortcut__label,.datepicker-shortcut--active .datepicker-shortcut__date{color:var(--text-accent-medium)}.datepicker-shortcut--disabled,.datepicker-shortcut:disabled{opacity:.35;cursor:not-allowed}.datepicker-nav{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.datepicker-nav__title{font-size:var(--font-secondary);font-weight:var(--weight-medium);color:var(--text-primary)}.datepicker-nav__btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:8px;transition:all .2s;display:flex}.datepicker-nav__btn:hover:not(:disabled){background:var(--accent-dark);color:var(--accent)}.datepicker-nav__btn--disabled,.datepicker-nav__btn:disabled{color:var(--text-secondary);cursor:not-allowed}.datepicker-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.datepicker-weekday{text-align:center;font-size:var(--font-auxiliary);color:var(--text-inactive);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.5px;padding:4px 0 8px}.datepicker-day{aspect-ratio:1;font-size:var(--font-secondary);color:var(--text-primary);cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;font-family:Inter,sans-serif;transition:all .15s;display:flex}.datepicker-day:hover:not(:disabled):not(.datepicker-day--empty){background:#7c6fff1a}.datepicker-day--empty{cursor:default}.datepicker-day--today{border-color:var(--accent-border);color:var(--accent)}.datepicker-day--selected{border-color:var(--accent);font-weight:var(--weight-medium);background:var(--accent)!important;color:#fff!important}.datepicker-day--disabled{color:var(--text-secondary);cursor:not-allowed}.bottom-nav{background:var(--bg-surface);border-top:0px solid var(--border-subtle);z-index:90;width:100%;max-width:480px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav__item{color:var(--text-inactive);font-family:Inter,sans-serif;font-size:var(--font-auxiliary);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px 0 8px;transition:color .2s;display:flex}.bottom-nav__item--active{color:var(--accent)}.meus-gastos-screen{background:#0a0a0a}.meus-gastos-header{justify-content:space-between;align-items:center;padding:16px;display:flex}.meus-gastos-header__title{font-size:var(--font-primary);font-weight:var(--weight-medium);color:var(--text-primary)}.meus-gastos-header__new{background:var(--accent-dark);border-radius:var(--radius-md);width:44px;height:44px;color:var(--accent);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s;display:flex}.meus-gastos-header__new:hover{background:#251f4a}.meus-gastos-search{margin:0 16px 12px;position:relative}.meus-gastos-search__icon{color:var(--text-inactive);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.meus-gastos-search__input{background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-family:Inter,sans-serif;font-size:var(--font-secondary);outline:none;padding:12px 12px 12px 36px;transition:border-color .2s}.meus-gastos-search__input:focus{border-color:var(--accent)}.meus-gastos-search__input::placeholder{color:var(--text-inactive)}.meus-gastos-summary{color:var(--text-secondary);border-bottom:0px solid var(--separator);justify-content:space-between;align-items:center;margin-bottom:4px;padding:8px;font-size:11px;display:flex}.meus-gastos-summary__total{color:var(--accent);font-weight:var(--weight-medium);font-size:var(--font-secondary);font-variant-numeric:tabular-nums}.meus-gastos-year{color:var(--text-secondary);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.4px;border-top:none;justify-content:space-between;align-items:center;padding:16px 12px 8px;display:flex}.meus-gastos-year__total{font-size:var(--font-auxiliary);color:var(--text-secondary);font-weight:var(--weight-medium)}.meus-gastos-month-card{background:#151515;border-radius:14px;margin:0 8px 8px;overflow:hidden}.meus-gastos-month-header{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 16px;font-family:Inter,sans-serif;display:flex}.meus-gastos-month-header__left{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.meus-gastos-month-header__title{font-size:var(--font-secondary);color:var(--text-secondary);font-weight:var(--weight-medium);text-transform:none;letter-spacing:.3px;line-height:var(--line-height-single)}.meus-gastos-month-header__count{font-size:var(--font-auxiliary);color:var(--text-secondary);font-weight:var(--weight-regular);text-transform:none;letter-spacing:.25px;line-height:var(--line-height-single)}.meus-gastos-month-header__right{color:var(--text-secondary);align-items:center;gap:8px;display:flex}.meus-gastos-month-header__total{font-size:var(--font-primary);color:var(--text-secondary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.meus-gastos-perene-window-tabs{margin-bottom:0;padding:8px 16px 4px}.meus-gastos-perene-window-tabs .payment-tabs__row{gap:6px}.meus-gastos-perene-window-tabs .payment-tab{flex:1;padding:8px 4px;font-size:11px}.meus-gastos-futuros-toggle{margin-bottom:0;padding:8px 16px 4px}.meus-gastos-futuros-toggle .payment-tabs__row{gap:8px}.meus-gastos-month-header__icon{color:var(--text-secondary);align-items:center;transition:transform .2s;display:inline-flex}.meus-gastos-month-header__icon.is-expanded{transform:rotate(180deg)}.meus-gastos-month-header--expanded{background:0 0;padding:8px 16px;position:relative}.meus-gastos-month-header--expanded .meus-gastos-month-header__left{flex-direction:column;align-items:flex-start;gap:4px}.meus-gastos-month-header--expanded .meus-gastos-month-header__title,.meus-gastos-month-header--expanded .meus-gastos-month-header__count{font-size:var(--font-auxiliary);text-transform:none;letter-spacing:.45px;color:var(--text-secondary);font-weight:var(--weight-regular)}.meus-gastos-month-header--expanded:after{content:"";border-bottom:4px solid #1b1b1b;position:absolute;bottom:0;left:16px;right:16px}.meus-gastos-futuros-month{background:0 0;border-left:none;border-radius:0;margin:0 0 0 12px}.meus-gastos-futuros-month--expanded{border-left:none}.meus-gastos-futuros-month+.meus-gastos-futuros-month{border-top:.5px solid #ffffff0f}.meus-gastos-futuros-month--year-first{border-top:none}.meus-gastos-futuros-month .meus-gastos-month-header--expanded:after{border-bottom:.5px solid #ffffff0f}.meus-gastos-futuros-year{padding-top:12px;padding-bottom:4px}.meus-gastos-futuros-year+.meus-gastos-futuros-year{border-top:.5px solid #ffffff0f}.meus-gastos-futuros-year-header{padding:0 16px 8px 0}.meus-gastos-futuros-year-header .meus-gastos-month-header__right{margin-left:auto}.meus-gastos-futuros-year-header__title{letter-spacing:.8px;text-transform:uppercase;color:var(--text-secondary);font-size:10px;font-weight:var(--weight-regular)}.meus-gastos-futuros-month .meus-gastos-month-header{padding-top:10px;padding-bottom:10px}.meus-gastos-empty{text-align:center;color:var(--text-inactive);font-size:var(--font-secondary);padding:40px 16px}.gasto-card{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:12px 16px;font-family:Inter,sans-serif;transition:background .15s;display:block;position:relative}.gasto-card:hover{background:#ffffff05}.meus-gastos-month-card .gasto-card+.gasto-card:before{content:"";border-top:4px solid #1b1b1b;position:absolute;top:0;left:16px;right:16px}.meus-gastos-futuros-month .gasto-card+.gasto-card:before{border-top:.5px solid #ffffff0f}.meus-gastos-futuros-item{margin-left:10px}.gasto-card__top{align-items:center;gap:8px;display:flex}.gasto-card__fornecedor{font-size:var(--font-primary);color:var(--text-secondary);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;flex:1;line-height:1.25;overflow:hidden}.gasto-card__total{font-size:var(--font-primary);color:var(--text-secondary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;line-height:1.25}.gasto-card__bottom{justify-content:space-between;margin-top:4px;padding-left:0;display:flex}.gasto-card__date{color:var(--text-secondary);font-size:11px}.gasto-card__meio{color:#8f87df;font-size:11px;font-weight:var(--weight-medium);text-align:right}.gasto-card__badge{border-radius:var(--radius-sm);border:1px solid var(--border-medium);color:var(--text-secondary);font-size:10px;font-weight:var(--weight-medium);text-transform:lowercase;flex-shrink:0;padding:2px 8px}.gasto-card__badge--perene{color:#b6ade8;background:#6b639926;border-color:#6b6399}.gasto-card__badge--parcelado,.gasto-card__badge--rascunho,.gasto-card__badge--realizado{border-color:var(--border-medium);background:0 0}.gasto-card__perene-line{margin-top:6px}.gasto-card__perene-line-text{color:var(--text-secondary);font-size:11px;line-height:1.35}.gasto-card__perene-summary{color:var(--text-inactive);font-variant-numeric:tabular-nums;margin-top:4px;font-size:11px}.detail-header{border-bottom:0px solid var(--separator);align-items:center;padding:12px 16px;display:flex}.detail-header__back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;margin-right:8px;padding:4px;display:flex}.detail-header__back:hover{color:var(--accent)}.detail-header__title{font-size:var(--font-primary);font-weight:var(--weight-medium);color:var(--text-primary);flex:1}.detail-header__edit{background:var(--accent-dark);border:1px solid var(--accent);color:var(--text-accent-medium);font-family:Inter,sans-serif;font-size:11px;font-weight:var(--weight-medium);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:4px 12px;transition:all .2s;display:flex}.detail-header__edit:hover{background:#251f4a}.detail-content{padding:16px}.detail-info{margin-bottom:16px}.detail-info__fornecedor{font-size:var(--font-primary);font-weight:var(--weight-medium);color:var(--text-primary);margin-bottom:4px}.detail-info__date{font-size:var(--font-secondary);color:var(--text-inactive)}.detail-info__prevista-line{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.detail-info__date--inline{margin-bottom:0}.detail-chips{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.detail-chip{background:var(--accent-dark);border:1px solid var(--accent-border);font-size:var(--font-auxiliary);color:var(--text-accent-light);font-weight:var(--weight-medium);border-radius:16px;padding:4px 12px}.detail-items-title{font-size:var(--font-auxiliary);color:var(--text-inactive);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--weight-medium);margin-bottom:8px}.detail-item{border-bottom:0 solid #181818;padding:8px 0}.detail-item__top{gap:8px;display:flex}.detail-item__num{font-size:var(--font-auxiliary);color:var(--text-secondary);min-width:16px;padding-top:4px}.detail-item__desc{font-size:var(--font-secondary);color:var(--text-primary);word-break:break-word;flex:1}.detail-item__bottom{justify-content:space-between;margin-top:4px;padding-left:24px;display:flex}.detail-item__qty{font-size:var(--font-auxiliary);color:var(--text-inactive)}.detail-item__value{font-size:var(--font-secondary);color:var(--text-primary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.detail-obs{margin-bottom:12px}.detail-obs__label{font-size:var(--font-auxiliary);color:var(--text-inactive);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--weight-medium);margin-bottom:4px;display:block}.detail-obs__value{font-size:var(--font-secondary);color:var(--text-primary)}.edit-mode-header{background:var(--accent-dark);border-bottom:4px solid var(--accent-border);align-items:center;padding:12px 16px;display:flex}.edit-mode-header__back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;margin-right:8px;padding:4px;display:flex}.edit-mode-header__title{font-size:var(--font-secondary);font-weight:var(--weight-medium);color:var(--text-accent-light)}.price-hint-bar{border:.5px solid var(--border-subtle);border-radius:0 0 var(--radius-sm) var(--radius-sm);background:#16161680;border-top:none;align-items:center;gap:8px;margin-top:-8px;margin-bottom:12px;padding:4px 16px;display:flex}.price-hint-bar__item{align-items:center;gap:4px;display:flex}.price-hint-bar__label{color:var(--text-secondary);font-size:9px}.price-hint-bar__value{font-size:var(--font-auxiliary);color:var(--accent);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.price-hint-bar__sep{color:var(--text-secondary);font-size:var(--font-auxiliary)}.price-hint-bar__link{color:var(--text-accent-medium);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-family:Inter,sans-serif;font-size:9px;transition:color .2s}.price-hint-bar__link:hover{color:var(--accent)}.price-history-sheet{max-height:85vh}.ph-title{font-size:var(--font-primary);font-weight:var(--weight-medium);color:var(--text-primary);text-align:center;margin-bottom:4px}.ph-subtitle{font-size:var(--font-auxiliary);color:var(--text-inactive);text-align:center;margin-bottom:16px}.ph-stats{border:.5px solid var(--border-subtle);border-radius:var(--radius-sm);background:#1616164d;justify-content:center;align-items:center;gap:12px;margin-bottom:16px;padding:12px 0;display:flex}.ph-stat{flex-direction:column;align-items:center;gap:4px;display:flex}.ph-stat__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;font-size:9px}.ph-stat__value{font-size:var(--font-secondary);color:var(--accent);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.ph-stat__value--up{color:#c55}.ph-stat__value--down{color:var(--accent)}.ph-stat-sep{background:var(--border-subtle);width:1px;height:24px}.ph-chart-container{justify-content:center;margin-bottom:16px;display:flex;overflow-x:auto}.ph-chart-container svg{display:block}.ph-table-title{font-size:var(--font-auxiliary);color:var(--text-inactive);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--weight-medium);margin-bottom:8px}.ph-table{max-height:200px;overflow-y:auto}.ph-table-header{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:0px solid var(--border-subtle);grid-template-columns:90px 1fr 80px;gap:8px;padding:8px 0;font-size:9px;display:grid}.ph-table-row{border-bottom:0 solid #181818;grid-template-columns:90px 1fr 80px;align-items:center;gap:8px;padding:8px 0;display:grid}.ph-table-row__date{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:11px}.ph-table-row__fornecedor{color:#555;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ph-table-row__value{color:var(--accent);font-size:11px;font-weight:var(--weight-medium);text-align:right;font-variant-numeric:tabular-nums}.meus-gastos-perene-cta{padding:0 20px 12px}.meus-gastos-perene-cta__btn{border-radius:var(--radius-sm);border:1px solid var(--border-medium);width:100%;color:var(--accent);font-size:var(--font-secondary);font-weight:var(--weight-medium);cursor:pointer;background:0 0;padding:10px 14px}.meus-gastos-perene-cta__btn:hover{border-color:var(--accent)}.gasto-perene-detail__meta{color:var(--text-secondary);margin-top:6px;font-size:12px}.gasto-perene-detail__row{border-bottom:1px solid var(--border-subtle);font-size:var(--font-secondary);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.gasto-perene-detail__label{color:var(--text-secondary)}.gasto-perene-detail__value{font-variant-numeric:tabular-nums}.gasto-perene-detail__obs{font-size:var(--font-secondary);margin-top:12px}.gasto-perene-detail__obs p{color:var(--text-primary);white-space:pre-wrap;margin-top:6px}.gasto-perene-detail__actions{flex-direction:column;gap:10px;margin-top:20px;display:flex}.gasto-perene-detail__encerrar{border-radius:var(--radius-sm);color:#f66;width:100%;font-weight:var(--weight-medium);cursor:pointer;background:0 0;border:1px solid #c44;padding:12px}.gasto-perene-hist{margin-top:28px;padding-top:8px}.gasto-perene-hist__title{font-size:13px;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:12px}.gasto-perene-hist__empty{color:var(--text-inactive);font-size:12px}.gasto-perene-hist__item{border-radius:var(--radius-sm);border:1px solid var(--border-medium);background:var(--bg-surface);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;flex-direction:column;margin-bottom:8px;padding:12px 14px;display:flex}.gasto-perene-hist__top{justify-content:space-between;gap:10px;display:flex}.gasto-perene-hist__nome{font-size:var(--font-secondary);font-weight:var(--weight-medium)}.gasto-perene-hist__total{font-size:var(--font-secondary);font-variant-numeric:tabular-nums}.gasto-perene-hist__bottom{justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;display:flex}.gasto-perene-hist__pill--muted{color:var(--text-secondary)}.cotacao-header__new-btn{background:var(--accent-dark);border:1px solid var(--accent);border-radius:var(--radius-md);color:var(--text-accent-medium);font-family:Inter,sans-serif;font-size:12px;font-weight:var(--weight-medium);cursor:pointer;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.cotacao-header__new-btn:hover{background:#251f4a}.cotacao-card__meta{color:var(--text-secondary);margin-top:4px;font-size:11px}.cotacao-detail__product{padding:0 4px 12px}.cotacao-detail__product-title{font-size:var(--font-primary);font-weight:var(--weight-medium);color:var(--text-primary);line-height:1.3}.cotacao-detail__product-meta{font-size:var(--font-secondary);color:var(--text-secondary);margin-top:4px}.cotacao-stats{background:var(--bg-surface);border-radius:var(--radius-sm);border:1px solid var(--border-medium);align-items:stretch;margin:0 16px 12px;padding:12px 0;display:flex}.cotacao-stats__cell{flex-direction:column;flex:1;align-items:center;gap:4px;padding:0 8px;display:flex}.cotacao-stats__label{color:var(--text-inactive);text-transform:uppercase;letter-spacing:.02em;font-size:10px}.cotacao-stats__value{font-size:var(--font-secondary);font-weight:var(--weight-medium);color:var(--text-secondary);font-variant-numeric:tabular-nums}.cotacao-stats__sep{background:var(--border-medium);align-self:stretch;width:1px}.cotacao-filter-clear{border:1px solid var(--border-medium);border-radius:var(--radius-sm);background:var(--bg-surface);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;margin-top:10px;display:flex}.cotacao-chart-placeholder{justify-content:center;align-items:center;min-height:120px;display:flex}.cotacao-chart-placeholder__text{color:var(--text-inactive);font-size:12px}.cotacao-table-wrap{margin-top:16px}.cotacao-table__head{border-bottom:1px solid var(--border-medium);grid-template-columns:1fr 1.4fr 1fr;gap:8px;padding:0 4px 8px;display:grid}.cotacao-table__th{color:var(--text-inactive);text-align:left;cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:Inter,sans-serif;font-size:11px}.cotacao-table__th--right{text-align:right}.cotacao-table__swipe-outer{position:relative;overflow:hidden}.cotacao-table__swipe-delete{background:#3a1515;justify-content:center;align-items:stretch;width:72px;display:flex;position:absolute;top:0;bottom:0;right:0}.cotacao-table__delete-btn{color:#f66;width:100%;font-size:12px;font-weight:var(--weight-medium);cursor:pointer;background:0 0;border:none}.cotacao-table__row-wrap{background:var(--bg-main);transition:transform .18s}.cotacao-table__row{display:grid;grid-template-columns:1fr 1.4fr 1fr!important}.cotacao-card-btn{border-radius:var(--radius-sm);border:1px solid var(--border-medium);margin-bottom:10px}
