.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page{display:block;max-width:1200px;margin:0 auto;font-family:var(--app-font-body);color:#2b1b12}.page--narrow{max-width:860px}.page-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.page-title{margin:0;font-family:var(--app-font-heading);font-size:26px;font-weight:600}.page-sub{max-width:60ch;margin:4px 0 0;font-size:14px;color:#6f5f55}.state{display:flex;justify-content:center;padding:56px 16px}.card{border:1px solid #f3e2d6;border-radius:22px;background-color:#fff;overflow:hidden}.card--pad{padding:24px;overflow:visible}.card__foot{padding:12px 16px;border-top:1px solid #f3e2d6;font-size:14px;color:#6f5f55}.section-title{margin:0 0 16px;font-family:var(--app-font-heading);font-size:17px;font-weight:600}.notice{display:flex;align-items:center;gap:8px;margin:0 0 16px;padding:12px 16px;border-radius:16px;background-color:#e3f4ea;font-size:14px;font-weight:600;color:#1b7a43}.notice--error{background-color:#fde6e6;color:#b01f1f}.notice mat-icon{width:20px;height:20px;font-size:20px}.empty{display:flex;flex-direction:column;align-items:center;gap:14px;margin:0;padding:48px 16px;font-size:15px;color:#6f5f55;text-align:center}.empty p{margin:0}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 22px;border-radius:22px;font-family:var(--app-font-body);font-size:14px;font-weight:600;text-decoration:none;cursor:pointer}.btn-primary mat-icon,.btn-secondary mat-icon{width:20px;height:20px;font-size:20px}.btn-primary:focus-visible,.btn-secondary:focus-visible{outline:2px solid #2b1b12;outline-offset:2px}.btn-primary:disabled,.btn-secondary:disabled{opacity:.7;cursor:default}.btn-primary{border:none;background-color:#ff6b2c;color:#fff}.btn-primary:hover:not(:disabled){background-color:#ff7d45}.btn-primary mat-spinner circle{stroke:#fff}.btn-secondary{border:1px solid #2b1b12;background-color:#fff;color:#2b1b12}.btn-secondary:hover:not(:disabled){background-color:#ffe8db}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;border-radius:50%;background:none;color:#2b1b12;cursor:pointer}.icon-btn:hover{background-color:#ffe8db}.icon-btn:focus-visible{outline:2px solid #2b1b12;outline-offset:1px}.icon-btn--danger{color:#b01f1f}.icon-btn--danger:hover{background-color:#fde6e6}.actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:8px}.row-actions{display:flex;gap:2px}.filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.search{position:relative;flex:1 1 260px;max-width:420px}.search mat-icon{position:absolute;top:50%;left:14px;transform:translateY(-50%);color:#6f5f55;pointer-events:none}.search input{width:100%;height:44px;padding:0 16px 0 44px;border:1px solid #f3e2d6;border-radius:22px;background-color:#fff;font-family:var(--app-font-body);font-size:14px;color:#2b1b12}.search input::placeholder{color:#6f5f55}.search input:focus-visible{outline:2px solid #ff6b2c;outline-offset:1px}.choices{display:flex;flex-wrap:wrap;gap:8px}.choice{min-height:44px;padding:0 18px;border:1px solid #f3e2d6;border-radius:22px;background-color:#fff;font-family:var(--app-font-body);font-size:14px;font-weight:500;color:#2b1b12;cursor:pointer}.choice:hover{background-color:#fff9f5}.choice--active,.choice--active:hover{border-color:#ff6b2c;background-color:#ffe8db;font-weight:600}.choice:focus-visible{outline:2px solid #2b1b12;outline-offset:2px}.select{height:44px;padding:0 14px;border:1px solid #f3e2d6;border-radius:22px;background-color:#fff;font-family:var(--app-font-body);font-size:14px;color:#2b1b12}.wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{padding:14px 16px;border-bottom:1px solid #f3e2d6;font-size:13px;font-weight:600;color:#6f5f55;text-align:left;white-space:nowrap}.table td{padding:10px 16px;border-bottom:1px solid #f3e2d6;vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table .num{text-align:right;white-space:nowrap}.cell-name{display:block;font-size:15px;font-weight:600}.cell-sub{display:block;margin-top:2px;font-size:13px;color:#6f5f55}.thumb{width:44px;height:44px;border-radius:10px;object-fit:cover;background-color:#ffe8db}.thumb--empty{display:flex;align-items:center;justify-content:center;color:#ff6b2c}.badge{display:inline-block;padding:3px 10px;border-radius:12px;background-color:#eee6df;font-size:12px;font-weight:600;color:#6f5f55}.badge--on{background-color:#e3f4ea;color:#1b7a43}.badge--off{background-color:#fde6e6;color:#b01f1f}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid #f3e2d6;font-size:14px;color:#6f5f55}.field{margin-bottom:20px}.field__label{display:block;margin-bottom:6px;font-size:14px;font-weight:600}.field__input{width:100%;height:48px;padding:0 16px;border:1px solid #f3e2d6;border-radius:24px;background-color:#fffdfb;font-family:var(--app-font-body);font-size:15px;color:#2b1b12}.field__input--area{height:auto;padding:12px 16px;border-radius:18px;resize:vertical}.field__input--error{border:2px solid #d62828}.field__input:focus-visible{outline:2px solid #ff6b2c;outline-offset:1px}.field__hint{margin:8px 0 0;font-size:13px;line-height:1.45;color:#6f5f55}.field__error{margin:8px 0 0;font-size:14px;font-weight:500;color:#b01f1f}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}.tabs{display:flex;gap:4px;margin-bottom:16px;overflow-x:auto;border-bottom:1px solid #f3e2d6}.tab{min-height:44px;padding:0 18px;border:none;border-bottom:3px solid transparent;background:none;font-family:var(--app-font-body);font-size:14px;font-weight:500;color:#6f5f55;white-space:nowrap;cursor:pointer}.tab--active{border-bottom-color:#ff6b2c;font-weight:600;color:#2b1b12}.tab--error{color:#b01f1f}.switch{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0;border:none;background:none;font-family:var(--app-font-body);cursor:pointer}.switch:focus-visible{outline:2px solid #2b1b12;outline-offset:2px}.switch__track{position:relative;width:44px;height:26px;border-radius:13px;background-color:#6f5f55;transition:background-color .15s ease}.switch__thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background-color:#fff;transition:transform .15s ease}.switch--on .switch__track{background-color:#25a05a}.switch--on .switch__thumb{transform:translate(18px)}.switch__label{font-size:15px;font-weight:600}.badges{display:flex;flex-wrap:wrap;gap:4px}.date{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#6f5f55}.in{color:#1b7a43}.out{color:#b01f1f}.head-actions{display:flex;flex-wrap:wrap;gap:8px}.actions--left{justify-content:flex-start;margin:0 0 16px}.actions--center{justify-content:center}.block-gap{margin-bottom:16px}.line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #f3e2d6;font-size:14px}.line:last-of-type{border-bottom:none}.line small{margin-left:6px;color:#6f5f55}.totals{display:flex;flex-direction:column;gap:6px;padding:16px;font-size:14px}.totals>div{display:flex;justify-content:space-between;gap:12px}.totals__grand{padding-top:8px;border-top:1px solid #f3e2d6;font-family:var(--app-font-heading);font-size:20px;font-weight:700}.totals--inline{padding:0}.totals--tight{margin-top:8px;padding:12px 0 0}.bar{display:block;width:120px;height:5px;margin-top:6px;border-radius:3px;background:#f3e2d6;overflow:hidden}.bar__fill{display:block;height:100%;background:#25a05a}.receipt{padding:8px 0;border-bottom:1px solid #f3e2d6}.receipt:last-child{border-bottom:none}.receipt__item{padding-left:12px;font-size:13px;color:#6f5f55}.receipt .line{border-bottom:none}.head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.link-btn{min-height:32px;padding:0;border:0;background:none;color:#d62828;font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}html{height:100%;color-scheme:light;--mat-sys-background: #fff9f5;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #ffede7;--mat-sys-inverse-primary: #ffb59a;--mat-sys-inverse-surface: #3c2d27;--mat-sys-on-background: #2b1b12;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #802900;--mat-sys-on-primary-fixed: #380d00;--mat-sys-on-primary-fixed-variant: #802900;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #93000d;--mat-sys-on-secondary-fixed: #410002;--mat-sys-on-secondary-fixed-variant: #93000d;--mat-sys-on-surface: #2b1b12;--mat-sys-on-surface-variant: #594139;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #624000;--mat-sys-on-tertiary-fixed: #291800;--mat-sys-on-tertiary-fixed-variant: #624000;--mat-sys-outline: #8d7167;--mat-sys-outline-variant: #e2bfb3;--mat-sys-primary: #a83900;--mat-sys-primary-container: #ffdbcf;--mat-sys-primary-fixed: #ffdbcf;--mat-sys-primary-fixed-dim: #ffb59a;--mat-sys-scrim: #000000;--mat-sys-secondary: #bd1119;--mat-sys-secondary-container: #ffdad6;--mat-sys-secondary-fixed: #ffdad6;--mat-sys-secondary-fixed-dim: #ffb4ab;--mat-sys-shadow: #000000;--mat-sys-surface: #fff9f5;--mat-sys-surface-bright: #fff8f6;--mat-sys-surface-container: #ffece1;--mat-sys-surface-container-high: #ffe3d3;--mat-sys-surface-container-highest: #ffd8c2;--mat-sys-surface-container-low: #fff4ee;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #eed5cc;--mat-sys-surface-tint: #a83900;--mat-sys-surface-variant: #ffdbcf;--mat-sys-tertiary: #825500;--mat-sys-tertiary-container: #ffddb2;--mat-sys-tertiary-fixed: #ffddb2;--mat-sys-tertiary-fixed-dim: #ffb94e;--mat-sys-neutral-variant20: #412b23;--mat-sys-neutral10: #261813;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Inter, sans-serif;--mat-sys-body-large-font: Inter, sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Inter, sans-serif;--mat-sys-body-medium-font: Inter, sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Inter, sans-serif;--mat-sys-body-small-font: Inter, sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Poppins, sans-serif;--mat-sys-display-large-font: Poppins, sans-serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Poppins, sans-serif;--mat-sys-display-medium-font: Poppins, sans-serif;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Poppins, sans-serif;--mat-sys-display-small-font: Poppins, sans-serif;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Poppins, sans-serif;--mat-sys-headline-large-font: Poppins, sans-serif;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Poppins, sans-serif;--mat-sys-headline-medium-font: Poppins, sans-serif;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Poppins, sans-serif;--mat-sys-headline-small-font: Poppins, sans-serif;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Inter, sans-serif;--mat-sys-label-large-font: Inter, sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Inter, sans-serif;--mat-sys-label-medium-font: Inter, sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Inter, sans-serif;--mat-sys-label-small-font: Inter, sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Poppins, sans-serif;--mat-sys-title-large-font: Poppins, sans-serif;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Inter, sans-serif;--mat-sys-title-medium-font: Inter, sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Inter, sans-serif;--mat-sys-title-small-font: Inter, sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--app-color-primary: #ff6b2c;--app-color-secondary: #d62828;--app-color-success: #2e7d32;--app-color-warning: #f4a400;--app-color-background: #fff9f5;--app-color-text: #2b1b12;--app-font-heading: Poppins, sans-serif;--app-font-body: Inter, sans-serif;--app-spacing-xs: 4px;--app-spacing-sm: 8px;--app-spacing-md: 16px;--app-spacing-lg: 24px;--app-spacing-xl: 32px;--app-spacing-2xl: 48px}body{color-scheme:light;background-color:var(--mat-sys-surface);color:var(--mat-sys-on-surface);font:var(--mat-sys-body-medium);margin:0;height:100%}h1,h2,h3,h4,h5,h6{font-family:var(--app-font-heading);font-weight:600;margin:0}*{box-sizing:border-box}.mdc-floating-label,.mat-mdc-floating-label{pointer-events:none!important}
