:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--canvas:#f3f5f8;--surface:#fff;--surface-secondary:#f7f8fa;--surface-tertiary:#eceff3;--surface-elevated:#fff;--text:#0f1720;--text-secondary:#56606c;--text-tertiary:#87909b;--border:#0f17201a;--border-subtle:#0f17200f;--accent:#134a7c;--accent-hover:#0f3d67;--accent-soft:#134a7c17;--accent-foreground:#fff;--focus-ring:#134a7c73;--paid:#157f4a;--paid-soft:#157f4a1a;--due:#9a5b00;--due-soft:#c4780021;--overdue:#c0362c;--overdue-soft:#c0362c1a;--vacant:#6b7480;--vacant-soft:#6b74801f;--water:#dbe9f5;--water-line:#c3d8eb;--land:#e4e8dc;--dock:#8a7a66;--overlay:#08121e52;--shadow-panel:0 1px 2px #0f17200a, 0 0 0 1px var(--border-subtle);--shadow-popover:0 10px 30px #0f17201a, 0 0 0 1px var(--border);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--leading-tight:1.25;--leading:1.5;--topbar-height:60px;--sidebar-width:248px;--sidebar-width-collapsed:64px;--rail-width:320px;--tabbar-height:64px;--content-max:1440px;--ease:cubic-bezier(.2, 0, 0, 1);--duration:.16s}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0b1016;--surface:#121820;--surface-secondary:#161d26;--surface-tertiary:#212a35;--surface-elevated:#1a222c;--text:#eef1f4;--text-secondary:#aab3bd;--text-tertiary:#78818c;--border:#ffffff1a;--border-subtle:#ffffff0f;--accent:#6ea8de;--accent-hover:#8bbbe6;--accent-soft:#6ea8de26;--accent-foreground:#061a2e;--focus-ring:#6ea8de8c;--paid:#4fd18b;--paid-soft:#4fd18b24;--due:#f5be4f;--due-soft:#f5be4f24;--overdue:#f6837a;--overdue-soft:#f6837a24;--vacant:#9aa3ae;--vacant-soft:#9aa3ae24;--water:#0f2133;--water-line:#18304a;--land:#1a1f18;--dock:#7d6e5c;--overlay:#0009;--shadow-panel:0 0 0 1px var(--border-subtle);--shadow-popover:0 10px 30px #00000073, 0 0 0 1px var(--border)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0b1016;--surface:#121820;--surface-secondary:#161d26;--surface-tertiary:#212a35;--surface-elevated:#1a222c;--text:#eef1f4;--text-secondary:#aab3bd;--text-tertiary:#78818c;--border:#ffffff1a;--border-subtle:#ffffff0f;--accent:#6ea8de;--accent-hover:#8bbbe6;--accent-soft:#6ea8de26;--accent-foreground:#061a2e;--focus-ring:#6ea8de8c;--paid:#4fd18b;--paid-soft:#4fd18b24;--due:#f5be4f;--due-soft:#f5be4f24;--overdue:#f6837a;--overdue-soft:#f6837a24;--vacant:#9aa3ae;--vacant-soft:#9aa3ae24;--water:#0f2133;--water-line:#18304a;--land:#1a1f18;--dock:#7d6e5c;--overlay:#0009;--shadow-panel:0 0 0 1px var(--border-subtle);--shadow-popover:0 10px 30px #00000073, 0 0 0 1px var(--border)}}@media (prefers-reduced-motion:reduce){:root{--duration:0s}}:root{--hero-ink:#fff;--hero-muted:#ffffffdb;--hero-scrim:#05162c59;--hero-cta:#123f6e;--hero-cta-hover:#174d85;--hero-line:#ffffff2e;--font-display:"Bodoni Moda", ui-serif, Georgia, serif}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);font-feature-settings:"cv11", "ss01";font-size:var(--text-sm);line-height:var(--leading);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}html,body{background:var(--canvas);color:var(--text);margin:0}[data-theme]{color:var(--text)}h1,h2,h3,h4,p,ul,ol,figure,dl,dd{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}[hidden]{display:none!important}.icon{flex-shrink:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.muted{color:var(--text-secondary)}.subtle{color:var(--text-tertiary)}.stack{gap:var(--space-6);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius);font-size:var(--text-sm);white-space:nowrap;transition:background-color var(--duration) var(--ease), border-color var(--duration) var(--ease), color var(--duration) var(--ease);border:1px solid #0000;font-weight:500;display:inline-flex}.btn[data-size=sm]{height:30px;padding:0 var(--space-3);font-size:var(--text-xs)}.btn[data-size=lg]{height:44px;padding:0 var(--space-6);font-size:var(--text-base)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.btn-primary{background:var(--accent);color:var(--accent-foreground)}.btn-primary:hover{background:var(--accent-hover)}.btn-outline{border-color:var(--border);background:var(--surface)}.btn-outline:hover{background:var(--surface-secondary)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover{background:var(--surface-tertiary);color:var(--text)}.btn-danger{border-color:var(--border);background:var(--surface);color:var(--overdue)}.btn-danger:hover{background:var(--overdue-soft)}.icon-btn{border-radius:var(--radius);width:36px;height:36px;color:var(--text-secondary);transition:background-color var(--duration) var(--ease);place-items:center;display:inline-grid}.icon-btn:not(:disabled):hover{background:var(--surface-tertiary);color:var(--text)}.icon-btn:disabled{opacity:.4}.link{color:var(--accent);font-weight:500}.link:hover{text-underline-offset:2px;text-decoration:underline}kbd,.kbd{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-secondary);height:20px;color:var(--text-tertiary);font-family:var(--font-sans);align-items:center;padding:0 6px;font-size:11px;font-weight:500;display:inline-flex}.input,.select,.textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;height:36px;padding:0 var(--space-3);font-size:var(--text-sm);transition:border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease)}.textarea{height:auto;min-height:96px;padding:var(--space-2) var(--space-3);resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--overdue)}.input:disabled,.select:disabled,.input:read-only{background:var(--surface-secondary);color:var(--text-secondary)}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-tertiary) 50%), linear-gradient(135deg, var(--text-tertiary) 50%, transparent 50%);text-overflow:ellipsis;background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:32px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{font-weight:500}.field-hint{color:var(--text-tertiary);font-size:var(--text-xs)}.field-error{color:var(--overdue);font-size:var(--text-xs)}.input-wrap{align-items:center;display:flex;position:relative}.input-wrap>.icon{left:var(--space-3);color:var(--text-tertiary);pointer-events:none;position:absolute}.input-wrap>.input{padding-left:36px}.card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.badge{height:22px;padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--vacant-soft);color:var(--text-secondary);font-size:var(--text-xs);white-space:nowrap;align-items:center;gap:6px;font-weight:500;display:inline-flex}.badge[data-tone=accent]{background:var(--accent-soft);color:var(--accent)}.badge[data-tone=paid]{background:var(--paid-soft);color:var(--paid)}.badge[data-tone=due]{background:var(--due-soft);color:var(--due)}.badge[data-tone=overdue]{background:var(--overdue-soft);color:var(--overdue)}.badge[data-tone=vacant]{background:var(--vacant-soft);color:var(--vacant)}.dot{background:var(--vacant);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.badge .dot{background:currentColor;width:6px;height:6px}.dot[data-tone=accent]{background:var(--accent)}.dot[data-tone=paid]{background:var(--paid)}.dot[data-tone=due]{background:var(--due)}.dot[data-tone=overdue]{background:var(--overdue)}.dot[data-tone=vacant]{background:var(--vacant)}.count{border-radius:var(--radius-full);background:var(--surface-tertiary);min-width:22px;height:22px;color:var(--text-secondary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;place-items:center;padding:0 6px;font-weight:500;display:inline-grid}.menu{min-width:200px;padding:var(--space-1);border-radius:var(--radius-lg);background:var(--surface-elevated);color:var(--text);box-shadow:var(--shadow-popover);border:0;margin:0;inset:auto}.menu:not([data-placed]){visibility:hidden}.menu-item{align-items:center;gap:var(--space-2);width:100%;min-height:34px;padding:6px var(--space-2);border-radius:var(--radius);text-align:left;font-size:var(--text-sm);display:flex}.menu-item:not(:disabled):hover,.menu-item:focus-visible{background:var(--surface-tertiary);outline:none}.menu-item:disabled{color:var(--text-tertiary)}.menu-item[data-tone=danger]{color:var(--overdue)}.menu-item>.icon{color:var(--text-secondary)}.menu-item[data-tone=danger]>.icon{color:currentColor}.menu-item-text{flex-direction:column;flex:1;min-width:0;display:flex}.menu-item-hint{color:var(--text-secondary);font-size:var(--text-xs)}.menu-item .menu-check{color:var(--accent);visibility:hidden;margin-left:auto}.menu-item[aria-checked=true] .menu-check{visibility:visible}.menu-separator{height:1px;margin:var(--space-1) 0;background:var(--border)}.menu-label{padding:6px var(--space-2) 2px;color:var(--text-tertiary);font-size:var(--text-xs);font-weight:500}.menu form{display:contents}.avatar{border-radius:var(--radius-full);background:var(--accent-soft);width:32px;height:32px;color:var(--accent);font-size:var(--text-xs);letter-spacing:.02em;flex-shrink:0;place-items:center;font-weight:600;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar[data-size=sm]{width:24px;height:24px;font-size:10px}.avatar[data-size=lg]{width:44px;height:44px;font-size:var(--text-sm)}dialog.dialog{border-radius:var(--radius-xl);background:var(--surface-elevated);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text);box-shadow:var(--shadow-popover);opacity:0;transition:opacity var(--duration) var(--ease), transform var(--duration) var(--ease), overlay var(--duration) allow-discrete, display var(--duration) allow-discrete;border:0;padding:0}dialog.dialog[open]{opacity:1}@starting-style{dialog.dialog[open]{opacity:0}}dialog.dialog::backdrop{background:var(--overlay);opacity:0;transition:opacity var(--duration) var(--ease), overlay var(--duration) allow-discrete, display var(--duration) allow-discrete}dialog.dialog[open]::backdrop{opacity:1}@starting-style{dialog.dialog[open]::backdrop{opacity:0}}.notice{gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-secondary);padding:var(--space-3) var(--space-4);color:var(--text-secondary);align-items:flex-start;display:flex}.notice[data-tone=overdue]{background:var(--overdue-soft);color:var(--overdue);border-color:#0000}.notice[data-tone=due]{background:var(--due-soft);color:var(--due);border-color:#0000}html[data-navigating] .panel-body{opacity:.6;transition:opacity .15s .15s}.form-stack{gap:var(--space-4);flex-direction:column;display:flex}.two-col{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.check{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);display:flex}.check input{accent-color:var(--accent);margin-top:3px}.strong{font-weight:500}.small{font-size:var(--text-sm)}.row-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.cards-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}@media (width<=480px){.two-col{grid-template-columns:1fr}}
