@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--ink:#1a2e4a;--paper:#fff;--accent:#2a5fa8;--accent-light:#4ea8e8;--muted:#4a5f7a;--muted-dark:#3a4f6a;--muted-light:#5a6f8a;--border:#d0daea;--bg:#f4f6f9;--error:#991b1b;--warning:#b45309;--success:#065f46;--font-main:"Inter",system-ui,sans-serif;--radius:6px}body,html{color:var(--ink);font-family:var(--font-main);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}.login-shell,body,html{min-height:100vh;background:var(--bg)}.login-shell{display:flex;flex-direction:column}.login-nav{background:#1a2e4a;color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.18);padding:0 1.5rem;height:56px;display:flex;align-items:center}.login-nav .nav-logo{color:#fff}.login-nav .nav-logo:hover{opacity:.8;color:#fff}.login-body{flex:1 1;padding:2rem 1rem}.auth-shell,.login-body{display:flex;align-items:center;justify-content:center}.auth-shell{min-height:100vh;background:var(--bg)}.auth-card{background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);padding:2rem 1.5rem 1.5rem;min-width:320px;max-width:360px;box-shadow:0 2px 12px rgba(26,46,74,.08)}.auth-card-header h2{font-size:1.3rem;margin-bottom:.6rem;font-weight:600;color:var(--ink)}.auth-card-header p{color:var(--muted-light);font-size:.95rem}.field{margin-bottom:1.1rem}.field label{display:block;font-size:.85rem;color:var(--ink);font-weight:500;margin-bottom:.2rem}.field input:not([type=checkbox]),.field select{width:100%;padding:.6rem .8rem;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-main);font-size:1rem;color:var(--ink);outline:none;transition:border-color .15s}.field input[type=checkbox]{margin:0 .4rem 0 0}.field textarea{width:100%;padding:.6rem .8rem;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-main);font-size:1rem;color:var(--ink);outline:none;transition:border-color .15s;resize:vertical;min-height:3em}.field input:not([type=checkbox]):focus,.field select:focus,.field textarea:focus{border-color:var(--accent-light)}.field input.error{border-color:var(--error)}.field input.warning{border-color:var(--warning)}.field-error{color:var(--error)}.field-error,.field-warning{font-size:.85rem;margin-top:.2rem}.field-warning{color:var(--warning)}.field-hint{color:var(--muted-light);font-size:.78rem;margin-top:.25rem;line-height:1.4}.field-row{display:flex;gap:.8rem}.field-row .field-wide{flex:2 1}.selector-inline{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.8rem}.selector-inline .field{margin-bottom:0;min-width:8rem;max-width:10rem;flex:0 0 auto}.selector-preview-row{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;align-items:flex-start;padding-top:.1rem;flex:1 1;min-width:0}.selector-preview-row .field{margin-bottom:0;min-width:0;flex:0 1 auto}.field-static{display:block;font-size:.93rem;color:var(--ink);padding:.15rem 0}.btn{width:100%;display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.1rem;background:#1a2e4a;color:#fff;border:none;border-radius:var(--radius);font-family:var(--font-main);font-size:.93rem;font-weight:500;cursor:pointer;transition:background .15s;margin-top:.3rem}.btn:hover:not(:disabled){background:#2a5fa8}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--muted-dark);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:#edf1f7;color:var(--ink)}.btn-secondary{background:transparent;color:var(--ink);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:#edf1f7}.btn-primary{background:var(--accent)}.btn-primary:hover:not(:disabled){background:#1a4f90}.alert{padding:.7rem 1rem;border-radius:var(--radius);font-size:.92rem;margin-bottom:1.15rem;border-left:3px solid}.alert-error{background:#fee2e2;border-color:#991b1b;color:#991b1b}.alert-success{background:#d1fae5;border-color:#065f46;color:#065f46}.auth-links{margin-top:1.2rem;text-align:center;font-size:.95rem;color:var(--muted-light)}.auth-links a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;transition:color .15s}.auth-links a:hover{color:var(--ink)}.auth-links .divider{margin:0 .5rem;opacity:.3}.spinner{width:14px;height:14px;border:2px solid #d0daea;border-top-color:#1a2e4a;border-radius:50%;animation:spin .7s linear infinite;margin-right:.5rem}@keyframes spin{to{transform:rotate(1turn)}}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-container{background:var(--paper);border-radius:var(--radius);box-shadow:0 8px 32px rgba(0,0,0,.18);padding:2rem;width:100%;max-width:480px;position:relative}.modal-container-sm{max-width:420px}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--muted-light);line-height:1;padding:0}.modal-close-btn:hover{color:var(--ink)}.modal-title{margin-top:0;margin-bottom:1.25rem;font-size:1.1rem;font-weight:600}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem}.modal-header .modal-title{margin-bottom:0}.modal-body{display:flex;flex-direction:column;gap:1rem}.modal-footer{display:flex;gap:.75rem;margin-top:1.5rem}.modal-footer .btn{flex:1 1;margin-top:0}.modal-form-grid{display:grid;grid-template-columns:1fr 1fr;align-items:baseline;grid-gap:.5rem 1rem;gap:.5rem 1rem}.modal-form-grid .form-label{text-align:right;margin-bottom:0}.modal-tax-charges{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.modal-tax-charge-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;cursor:pointer;border-top:1px solid var(--border)}.modal-tax-charge-item:first-child{border-top:none}.modal-tax-charge-item:hover{background:var(--bg)}.modal-tax-charge-item.is-selected{background:#f0f4ff}.modal-tax-charge-desc{flex:1 1}.modal-tax-charge-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.modal-total-row{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--border);font-weight:600}.modal-total-row span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.modal-section-label{font-weight:600;font-size:.9rem;margin-bottom:.5rem;color:var(--ink)}.modal-muted{color:var(--muted-light);font-size:.875rem}.form-label,.form-note{display:block;font-size:.85rem;font-weight:500;color:var(--ink);margin-bottom:.25rem}.form-input{width:100%;padding:.6rem .8rem;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-main);font-size:1rem;color:var(--ink);outline:none;transition:border-color .15s}.form-input:focus{border-color:var(--accent-light)}.form-input.input-error{border-color:var(--error)}input[type=checkbox]{margin:0 .4rem 0 0}.form-error{color:var(--error);font-size:.82rem;margin-top:.2rem;display:block}.dashboard{min-height:100vh;background:var(--paper)}@media print{.dashboard{min-height:0!important}}.dashboard-nav{border-bottom:1px solid var(--border);padding:0 1.5rem;height:56px;display:flex;align-items:center;justify-content:space-between}.has-bypass-validations .dashboard-nav{background:#dc2626;border-bottom-color:#991b1b}.has-bypass-validations .dashboard-nav .nav-logo{color:#fff}.has-bypass-validations .dashboard-nav .nav-logo:hover{color:#fff;opacity:.9}.has-bypass-validations .login-nav{background:#dc2626}.nav-logo{font-size:1.08rem;font-weight:600;display:flex;align-items:center;gap:.6rem;letter-spacing:.01em;white-space:nowrap;color:var(--ink);text-decoration:none}.nav-logo:hover{color:var(--ink);opacity:.75}.nav-actions{display:flex;align-items:center;gap:.6rem}.nav-actions .btn{margin-top:0;padding:.45rem .9rem;font-size:.88rem}.dashboard-body{width:100%;margin:1.5rem auto;padding:0 2rem}.dashboard-body h2{font-size:1.5rem;font-weight:500;margin-bottom:.5rem}.dashboard-body p{color:var(--muted-light)}.user-card{margin-top:2rem;background:#f4f6f9;border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.user-card-row{display:flex;justify-content:space-between;padding:.45rem 0;border-bottom:1px solid var(--border);font-size:.98rem}.user-card-row:last-child{border-bottom:none}.user-card-row span:first-child{color:var(--muted)}.badge{display:inline-block;padding:.08rem .5rem;border-radius:99px;font-size:.81rem;text-transform:uppercase;letter-spacing:.05em}.badge-verified{background:#d1fae5;color:#065f46}.badge-unverified{background:#fee2e2;color:#991b1b}.dashboard-form{margin-top:1.5rem}.dashboard-form-chunks{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:1.2rem}@media (min-width:700px){.dashboard-form-chunks{display:grid;grid-template-columns:1fr 1fr;align-items:start}.dashboard-form-chunks .col-span-2{grid-column:1/-1}}.dashboard-form-footer{margin-top:1rem;display:flex;align-items:center;gap:1rem}.dashboard-form-footer .alert{margin-bottom:0;flex:0 1 auto}.form-section{border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1rem .2rem}.form-section legend{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);padding:0 .4rem}.form-mode-edit{--form-section-bg:#fffdf7;--form-accent-bar:#f59e0b}.form-mode-edit .form-section{background:var(--form-section-bg);border-color:#e8dfc8}.form-mode-edit .form-section legend{color:#92670a}.form-mode-edit .dashboard-form-footer:before{content:"";display:block;height:3px;background:var(--form-accent-bar);border-radius:var(--radius);margin-bottom:.75rem;opacity:.5}.form-mode-search{--form-section-bg:#f5f8ff;--form-accent-bar:#2a5fa8}.form-mode-search .form-section{background:var(--form-section-bg);border-color:#c8d8f0}.form-mode-search .form-section legend{color:#1a5bb5}.form-mode-search .dashboard-form-footer:before{content:"";display:block;height:3px;background:var(--form-accent-bar);border-radius:var(--radius);margin-bottom:.75rem;opacity:.4}.search-results-table{width:100%;border-collapse:collapse;font-size:.92rem}.search-results-table th{text-align:left;padding:.5rem 1.25rem .5rem .75rem;background:#f4f6f9;border-bottom:2px solid var(--border);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink);white-space:nowrap}.search-results-table td{padding:.5rem 1.25rem .5rem .75rem;border-bottom:1px solid var(--border);vertical-align:middle;white-space:normal;word-break:break-word}.search-results-table tbody tr:last-child td{border-bottom:none}.search-results-table tbody tr:hover td{background:#f4f6f9}.payments-page-tables{display:flex;flex-direction:column;gap:2rem}@media (min-width:900px){.payments-page-tables{flex-direction:row;align-items:flex-start;gap:2.5rem}.payments-page-section{flex:1 1;min-width:0}}.payments-section-title{font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink);margin-bottom:.6rem}.payments-table-wrap{overflow-x:auto}.payments-table{border-collapse:collapse;font-size:.9rem;white-space:nowrap;width:100%}.payments-table td,.payments-table th{padding:.2rem .9rem;border-bottom:1px solid var(--border)}.payments-table thead th{text-align:left;background:#f4f6f9;border-bottom:2px solid var(--border);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink)}.payments-table tbody td.col-right,.payments-table tfoot td.col-right,.payments-table thead th.col-right{text-align:right}.payments-table tbody tr:last-child td{border-bottom:none}.payments-table tbody tr:hover td{background:#f4f6f9}.payments-table tfoot tr{font-weight:700;border-top:2px solid var(--border)}.payments-table tfoot td{border-bottom:none}.quick-search-input{width:8.5rem;padding:.15rem .5rem;font-size:.95rem;font-weight:600;text-align:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--paper)}@media (min-width:768px){.quick-search-input{width:12rem}}@media (min-width:1024px){.quick-search-input{width:15rem}}@media (max-width:600px){.auth-card{min-width:0;max-width:98vw;padding:1.2rem .8rem 1rem}.dashboard-body{margin:1rem 0;padding:0 .8rem}.dashboard-nav{padding:0 .7rem}.nav-logo{font-size:1rem;gap:.3rem}.nav-actions{gap:.3rem}.selector-inline{flex-direction:column}.selector-inline .field{max-width:100%}}.centered-content{display:flex;align-items:center;justify-content:center}.vertical-stack{display:flex;flex-direction:column}.spacing-compact{gap:.5rem}.spacing-normal{gap:.75rem}.spacing-relaxed{gap:1rem}.secondary-text{color:var(--muted)}.error-text{color:var(--error)}.success-text{color:var(--success)}.warning-text{color:var(--warning)}.monospace-font{font-family:monospace}.small-text{font-size:.85rem}.tiny-text{font-size:.8rem}.large-text{font-size:1.05rem}.medium-weight{font-weight:600}.heavy-weight{font-weight:700}.full-width{width:100%}.auto-width{width:auto}.viewport-height{min-height:100vh}.tall-section{min-height:60vh}.medium-section{min-height:40vh}.no-padding{padding:0}.compact-padding{padding:.5rem}.normal-padding{padding:1rem}.relaxed-padding{padding:1.5rem}.no-top-margin{margin-top:0}.compact-top-margin{margin-top:.5rem}.normal-top-margin{margin-top:1rem}.relaxed-top-margin{margin-top:1.5rem}.spacious-top-margin{margin-top:2rem}.no-bottom-margin{margin-bottom:0}.compact-bottom-margin{margin-bottom:.5rem}.normal-bottom-margin{margin-bottom:1rem}.relaxed-bottom-margin{margin-bottom:1.5rem}.spacious-bottom-margin{margin-bottom:2rem}.rounded-corners{border-radius:var(--radius)}.outlined{border:1px solid var(--border)}.surface-background{background:var(--surface,#fff)}.muted-background{background:var(--border)}.clickable{cursor:pointer}.default-cursor{cursor:default}.loading-cursor{cursor:wait}.half-opacity{opacity:.5}.reduced-opacity{opacity:.6}.faded{opacity:.7}.centered-text{text-align:center}.right-aligned-text{text-align:right}.no-wrap{white-space:nowrap}.clip-overflow{overflow:hidden}.scroll-overflow{overflow:auto}.relative-position{position:relative}.absolute-position{position:absolute}.fixed-position{position:fixed}.top-layer{z-index:1000}.no-pointer-events{pointer-events:none}.no-text-selection{-webkit-user-select:none;-moz-user-select:none;user-select:none}.two-column-grid{display:grid;grid-template-columns:1fr 1fr}.compact-grid-spacing{gap:.5rem}.normal-grid-spacing{gap:.75rem}.relaxed-grid-spacing{gap:1rem}.no-shrink{flex-shrink:0}.flexible{flex:1 1}.inline-flex-container{display:inline-flex}.text-link-button{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.88rem;text-decoration:underline;padding:0}.text-link-button:hover{opacity:.8}.loading-spinner{border:2px solid var(--border);border-top-color:var(--ink);border-radius:50%;animation:spin .7s linear infinite}.loading-spinner-sm{width:12px;height:12px}.loading-spinner-md{width:16px;height:16px}.loading-spinner-default{width:20px;height:20px}.loading-spinner-lg{width:24px;height:24px}.loading-container{display:flex;align-items:center;justify-content:center}.loading-container-inline{display:inline-flex;align-items:center;gap:.5rem}.action-buttons{display:flex;gap:1rem;margin-top:1.5rem}.side-by-side{display:flex;flex-direction:column;gap:1.2rem}@media (min-width:700px){.side-by-side{flex-direction:row;align-items:flex-start}.side-by-side>*{flex:1 1}}.readonly-field{background:var(--border);color:var(--muted);cursor:default}.readonly-id-field{cursor:default;max-width:8rem}.field-max-width-sm{max-width:8rem}.field-max-width-md{max-width:12rem}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.875rem;font-weight:500}.status-success{background:var(--success-bg,#d1fae5);color:var(--success)}.status-error{background:var(--error-bg,#fee2e2);color:var(--error)}.status-warning{background:var(--warning-bg,#fef3c7);color:var(--warning)}.empty-state,.muted-value{color:var(--muted)}.empty-state{font-style:italic}.gap-sm{gap:.5rem}.gap-md{gap:.75rem}.gap-lg{gap:1rem}.gap-xl{gap:1.5rem}.audit-table{width:100%;border-collapse:collapse}.audit-table thead tr{border-bottom:2px solid var(--border)}.audit-table thead th{padding:.75rem;text-align:left}.audit-table tbody tr{border-bottom:1px solid var(--border);vertical-align:top}.audit-table tbody td{padding:.75rem}.audit-action-badge{padding:.25rem .5rem;border-radius:4px;font-size:.875rem;font-weight:500}.audit-action-create{background:var(--success-bg,#d1fae5);color:var(--success)}.audit-action-update{background:var(--warning-bg,#fef3c7);color:var(--warning)}.audit-action-delete{background:var(--error-bg,#fee2e2);color:var(--error)}.audit-fields-table{width:100%;border-collapse:collapse;font-size:.875rem;margin-top:.5rem}.audit-fields-table tbody tr{border-bottom:1px solid var(--border)}.audit-fields-table td{padding:.375rem .5rem}.audit-fields-table td:first-child{font-weight:500;width:40%}.audit-fields-table td:last-child{color:var(--muted)}@media print{@page{margin:.5in}*,.readonly-id-field{color:#000!important}.readonly-id-field{background:#fff!important}.dashboard,body,html{margin:0!important;padding:0!important}.dashboard,.dashboard-body,body,html{height:auto!important;min-height:0!important}.print-hide{display:none!important}.print-title{font-size:1.1rem!important;margin:0 0 .35rem!important}.dashboard-body{margin:0!important;padding:0!important}.property-form{margin-top:0!important}.property-form-grid{gap:.5rem!important}.property-form-grid .form-section{margin-bottom:.5rem!important}.form-section{padding:.5rem .5rem .1rem!important}.field{margin-bottom:.45rem!important}.field-row{gap:.4rem!important}.field label{font-size:.75rem!important;margin-bottom:.1rem!important}.field input:not([type=checkbox]),.field select,.field textarea{font-size:.8rem!important;padding:.35rem .5rem!important}.property-form-footer{display:none!important}.dashboard-form-chunks{display:grid!important;grid-template-columns:1fr 1fr!important;align-items:start!important}.dashboard-form-chunks .col-span-2{grid-column:1/-1!important}}