:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--leading-tight:1.2;--leading-normal:1.5;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-tight:-.01em;--tracking-caps:.06em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--sidebar-width:15rem;--header-height:3.75rem;--tabbar-height:4rem;--content-max:56rem;--control-height:2.5rem;--border-width:1px;--focus-width:2px;--focus-offset:2px;--stroke-width:2px;--stripe-width:4px;--measure:34ch;--dialog-width:32rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.32s;--ease-out:cubic-bezier(.2, .8, .2, 1);--press-scale:.97;--lift:-1px;--color-bg:#f6f2ea;--color-header-bg:#fffdf8d9;--color-surface:#fffdf8;--color-surface-sunken:#efe9de;--color-border:#e2d9ca;--color-border-strong:#c9bca7;--color-text:#2b2620;--color-text-muted:#6b6257;--color-text-inverse:#fffdf8;--color-accent:#2f6b4f;--color-accent-hover:#255a41;--color-accent-soft:#dcebe1;--color-focus:#2f6b4f;--color-overlay:#2b262066;--color-neutral-bg:#ebe5da;--color-neutral-fg:#4f483f;--color-warning-bg:#fbecc9;--color-warning-fg:#7a4f00;--color-danger:#b23a2e;--color-danger-hover:#962f25;--color-danger-bg:#f8dcd7;--color-danger-fg:#8c2a20;--color-success-bg:#d9ecdc;--color-success-fg:#24603a;--cat-hvac:#2f72b8;--cat-hvac-soft:#dce8f5;--cat-plumbing:#138a8a;--cat-plumbing-soft:#d3eeec;--cat-electrical:#b98200;--cat-electrical-soft:#f7ebc8;--cat-exterior:#5d8a2f;--cat-exterior-soft:#e2eed2;--cat-safety:#c4422f;--cat-safety-soft:#f7dcd6;--cat-appliances:#7a58b5;--cat-appliances-soft:#e8e0f4;--cat-interior:#a8673b;--cat-interior-soft:#f1e2d6;--cat-hvac-fg:#1f4f82;--cat-plumbing-fg:#0b5e5e;--cat-electrical-fg:#6d4d00;--cat-exterior-fg:#3d5e1c;--cat-safety-fg:#8c2a1d;--cat-appliances-fg:#533888;--cat-interior-fg:#723f1e;--shadow-sm:0 1px 2px #3c2d190f;--shadow-md:0 1px 2px #3c2d190f, 0 4px 12px #3c2d1912;--shadow-lg:0 2px 6px #3c2d1914, 0 16px 40px #3c2d1929}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-bg:#1a1815;--color-header-bg:#24211dd9;--color-surface:#24211d;--color-surface-sunken:#1f1c19;--color-border:#3a352e;--color-border-strong:#544c42;--color-text:#eee8dd;--color-text-muted:#a89e90;--color-text-inverse:#14261c;--color-accent:#7fc29b;--color-accent-hover:#98d1af;--color-accent-soft:#23382b;--color-focus:#9ad3b1;--color-overlay:#0009;--color-neutral-bg:#34302a;--color-neutral-fg:#d6cdbf;--color-warning-bg:#3d3014;--color-warning-fg:#f2c66b;--color-danger:#e5776a;--color-danger-hover:#ec9186;--color-danger-bg:#42221e;--color-danger-fg:#f3a197;--color-success-bg:#1f3526;--color-success-fg:#8fd1a5;--cat-hvac:#6ea6e0;--cat-hvac-soft:#1d2c3d;--cat-plumbing:#4cc2bd;--cat-plumbing-soft:#173331;--cat-electrical:#e4b844;--cat-electrical-soft:#3a3016;--cat-exterior:#96c464;--cat-exterior-soft:#26331a;--cat-safety:#ec7a68;--cat-safety-soft:#40221d;--cat-appliances:#b394e6;--cat-appliances-soft:#2e2540;--cat-interior:#d8a17a;--cat-interior-soft:#3a2a1f;--cat-hvac-fg:#a9cbf0;--cat-plumbing-fg:#8fdcd8;--cat-electrical-fg:#f0d389;--cat-exterior-fg:#bedc9b;--cat-safety-fg:#f4ab9f;--cat-appliances-fg:#d2bff2;--cat-interior-fg:#e9c4a9;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 1px 2px #0000004d, 0 4px 12px #00000040;--shadow-lg:0 2px 6px #00000059, 0 16px 40px #00000073}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-normal:0s;--duration-slow:0s;--press-scale:1;--lift:0px}}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:100%;line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{min-height:100vh;margin:0}h1,h2,h3,h4,p{margin:0}h3,h4{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight)}::selection{background:var(--color-accent-soft);color:var(--color-text)}input[type=checkbox],input[type=radio]{width:1.1rem;height:1.1rem;accent-color:var(--color-accent);cursor:pointer;margin:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.tabular,time{font-variant-numeric:tabular-nums}.icon{flex:none}.app{grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--header-height) 1fr;grid-template-areas:"header header""nav main";min-height:100vh;display:grid}.app-header{z-index:10;justify-content:space-between;align-items:center;gap:var(--space-4);padding:0 var(--space-5);background:var(--color-header-bg);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);border-bottom:var(--border-width) solid var(--color-border);grid-area:header;display:flex;position:sticky;top:0}.app-title{align-items:center;gap:var(--space-3);min-width:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);display:flex}.app-mark{width:var(--space-5);height:var(--space-5);border-radius:var(--radius-sm);background:linear-gradient(var(--color-surface), var(--color-surface)) center / 40% var(--stroke-width) no-repeat, var(--color-accent);box-shadow:var(--shadow-sm);flex:none}.app-nav{top:var(--header-height);height:calc(100vh - var(--header-height));padding:var(--space-5) var(--space-3);border-right:var(--border-width) solid var(--color-border);grid-area:nav;align-self:start;position:sticky}.app-nav ul{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.nav-item{align-items:center;gap:var(--space-3);width:100%;min-height:var(--control-height);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-md);font-weight:var(--weight-medium);text-align:left;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);background:0 0;border:0;text-decoration:none;display:flex}.nav-item:hover{background:var(--color-surface-sunken);color:var(--color-text)}.nav-item:active{transform:scale(var(--press-scale))}.nav-item[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent);font-weight:var(--weight-semibold)}.app-main{width:100%;min-width:0;max-width:calc(var(--content-max) + 2 * var(--space-7));padding:var(--space-6) var(--space-7) var(--space-8);grid-area:main}.view{gap:var(--space-5);min-width:0;animation:view-in var(--duration-slow) var(--ease-out);flex-direction:column;display:flex}.view-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight)}@keyframes view-in{0%{opacity:0;transform:translateY(var(--space-1))}}.empty-state{align-items:center;gap:var(--space-4);padding:var(--space-7) var(--space-5);text-align:center;border-style:dashed;flex-direction:column;display:flex}.empty-state p{max-width:var(--measure);color:var(--color-text-muted)}.empty-state-icon{width:var(--space-8);height:var(--space-8);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent);place-items:center;display:grid}.empty-state-icon .icon{width:var(--space-6);height:var(--space-6)}@media (width<=719.98px){.app{grid-template-columns:1fr;grid-template-areas:"header""main"}.app-header{padding:0 var(--space-4)}.app-title{font-size:var(--text-lg)}.app-nav{z-index:10;height:auto;padding:var(--space-1) var(--space-2) calc(var(--space-1) + env(safe-area-inset-bottom));border-right:0;border-top:var(--border-width) solid var(--color-border);background:var(--color-header-bg);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);position:fixed;inset:auto 0 0}.app-nav ul{flex-direction:row;justify-content:space-around}.app-nav li{flex:1}.nav-item{gap:var(--space-1);min-height:calc(var(--tabbar-height) - var(--space-2));padding:var(--space-1);font-size:var(--text-xs);text-align:center;flex-direction:column;justify-content:center}.app-main{padding:var(--space-5) var(--space-4) calc(var(--tabbar-height) + var(--space-6))}.view-title{font-size:var(--text-2xl)}}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:var(--space-2) var(--space-4);border:var(--border-width) solid transparent;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-tight);cursor:pointer;white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(var(--press-scale))}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-sunken);border-color:var(--color-text-muted)}.btn-ghost{color:var(--color-text-muted);background:0 0}.btn-ghost:hover:not(:disabled),.btn-ghost[aria-current=page]{background:var(--color-surface-sunken);color:var(--color-text)}.btn-danger{background:var(--color-danger);color:var(--color-text-inverse)}.btn-danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn-icon{width:var(--control-height);padding:0}.card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}@media (width<=719.98px){.card{padding:var(--space-4)}}.badge{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-tight);font-variant-numeric:tabular-nums;white-space:nowrap;background:var(--color-neutral-bg);color:var(--color-neutral-fg);display:inline-flex}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning-fg)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger-fg)}.badge-success{background:var(--color-success-bg);color:var(--color-success-fg)}.badge-hvac{background:var(--cat-hvac-soft);color:var(--cat-hvac-fg)}.badge-plumbing{background:var(--cat-plumbing-soft);color:var(--cat-plumbing-fg)}.badge-electrical{background:var(--cat-electrical-soft);color:var(--cat-electrical-fg)}.badge-exterior{background:var(--cat-exterior-soft);color:var(--cat-exterior-fg)}.badge-safety{background:var(--cat-safety-soft);color:var(--cat-safety-fg)}.badge-appliances{background:var(--cat-appliances-soft);color:var(--cat-appliances-fg)}.badge-interior{background:var(--cat-interior-soft);color:var(--cat-interior-fg)}.field{gap:var(--space-1);flex-direction:column;display:flex}.field-label{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.field-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.field-error{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-danger-fg)}.field-input{width:100%;min-width:0;min-height:var(--control-height);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out)}textarea.field-input{min-height:calc(var(--control-height) * 2);resize:vertical}.field-input[type=file]{padding:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer}.field-input::file-selector-button{margin-right:var(--space-3);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text);font:inherit;font-weight:var(--weight-semibold);cursor:pointer}.field-input:hover{border-color:var(--color-text-muted)}.field-input:focus-visible{border-color:var(--color-focus);box-shadow:0 0 0 var(--focus-offset) var(--color-accent-soft);outline-offset:0}.field-input[aria-invalid=true]{border-color:var(--color-danger)}.dialog{width:min(var(--dialog-width), calc(100vw - var(--space-6)));max-height:calc(100vh - var(--space-7));padding:var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg)}.dialog[open]{animation:dialog-in var(--duration-normal) var(--ease-out)}.dialog::backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes dialog-in{0%{opacity:0;transform:translateY(var(--space-2)) scale(.98)}}.dialog-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);margin-bottom:var(--space-4)}.dialog-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}@media print{:root{--color-bg:#fff;--color-surface:#fff;--color-text:#000;--color-text-muted:#000;--color-border:#000;--shadow-sm:none;--shadow-md:none;--shadow-lg:none}.app{display:block}.app-header,.app-nav{display:none}.no-print{display:none!important}.app-main{max-width:none;padding:0}.view{animation:none}}.view-header{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.job-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.job-row{align-items:center;gap:var(--space-1) var(--space-4);padding:var(--space-4) var(--space-5);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"badge due actions""name due actions""meta due actions";display:grid}.job-row:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(var(--lift))}.job-row>.badge{margin-bottom:var(--space-1);grid-area:badge;justify-self:start}.job-name{font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:var(--leading-tight);text-align:left;grid-area:name;justify-self:start}.job-recurrence{color:var(--color-text-muted);font-size:var(--text-sm);grid-area:meta}.job-due{font-size:var(--text-sm);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;grid-area:due}.job-row-overdue{box-shadow:inset var(--stripe-width) 0 0 var(--color-danger), var(--shadow-sm)}.job-row-overdue:hover{box-shadow:inset var(--stripe-width) 0 0 var(--color-danger), var(--shadow-md)}.job-row-overdue .job-due{color:var(--color-danger-fg)}.job-row-due-soon{box-shadow:inset var(--stripe-width) 0 0 var(--color-warning-fg), var(--shadow-sm)}.job-row-due-soon:hover{box-shadow:inset var(--stripe-width) 0 0 var(--color-warning-fg), var(--shadow-md)}.job-row-due-soon .job-due{color:var(--color-warning-fg)}.job-row-upcoming .job-due{color:var(--color-text-muted)}.job-edit,.today-actions{grid-area:actions}.today-actions{gap:var(--space-2);display:flex}@media (width<=719.98px){.job-row{column-gap:var(--space-3);padding:var(--space-4);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"badge due""name actions""meta actions"}.job-row:has(.today-actions){grid-template-areas:"badge due""name name""meta meta""actions actions"}.today-actions{margin-top:var(--space-3)}.today-actions .btn{flex:1}}.form{gap:var(--space-4);display:grid}.form-fieldset{border:0;min-width:0;margin:0;padding:0}.form-fieldset>.field-label{margin-bottom:var(--space-2);padding:0}.radio-row,.interval-row{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.radio-row{gap:var(--space-2) var(--space-5)}.interval-row>.field{flex:8rem}.radio{align-items:center;gap:var(--space-2);min-height:var(--control-height);cursor:pointer;display:inline-flex}.month-grid{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));display:grid}.month-toggle{min-height:var(--control-height);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out)}.month-toggle:hover{background:var(--color-surface-sunken)}.month-toggle:active{transform:scale(var(--press-scale))}.month-toggle[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse);font-weight:var(--weight-semibold)}.today-summary{margin-top:calc(-1 * var(--space-3));color:var(--color-text-muted);font-size:var(--text-lg)}.today-section{gap:var(--space-3);display:grid}.today-section+.today-section{margin-top:var(--space-3)}.today-section h3{align-items:baseline;gap:var(--space-2);display:flex}.today-count{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.today-empty{padding:var(--space-4) var(--space-5);border:var(--border-width) dashed var(--color-border-strong);border-radius:var(--radius-lg);color:var(--color-text-muted)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.starter-picker{width:100%;margin-top:var(--space-4);padding-top:var(--space-5);border-top:var(--border-width) solid var(--color-border);text-align:left}.starter-title{margin:0 0 var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-muted)}.starter-list{gap:var(--space-1);margin:0 0 var(--space-4);display:grid}.starter-item{align-items:center;gap:var(--space-1) var(--space-3);min-height:var(--control-height);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);flex-wrap:wrap;display:flex}.starter-item:hover{background:var(--color-surface-sunken)}.starter-name{font-weight:var(--weight-medium);flex:10rem}.starter-item .job-recurrence{font-size:var(--text-xs)}.starter-actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.btn-link{border-radius:var(--radius-sm);color:inherit;font:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:.2em;cursor:pointer;transition:color var(--duration-fast) var(--ease-out), text-decoration-color var(--duration-fast) var(--ease-out);background:0 0;border:0;padding:0}.btn-link:hover{color:var(--color-accent);text-decoration-color:currentColor}.btn-link.job-name{font-size:var(--text-md);font-weight:var(--weight-semibold);text-decoration-color:#0000}.btn-link.job-name:hover{text-decoration-color:currentColor}.job-detail-meta{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.job-detail-due,.job-detail-appliance,.job-detail-notes{margin-bottom:var(--space-3)}.job-detail-due{font-variant-numeric:tabular-nums}.job-detail-status{color:var(--color-text-muted)}.job-detail-notes{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-sunken);white-space:pre-wrap}.job-detail-label{font-weight:var(--weight-semibold)}.job-detail-heading{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-muted)}.job-history{margin:0;padding:0;list-style:none;display:grid}.job-history li{padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--color-border);font-variant-numeric:tabular-nums}.job-history li:last-child{border-bottom:0}.job-detail-empty{color:var(--color-text-muted)}.settings .card{gap:var(--space-4);max-width:var(--dialog-width);display:grid}.settings .card>p:not([class]){color:var(--color-text-muted)}.settings .card>p:nth-of-type(2){color:var(--color-text);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.settings .dialog-actions{justify-content:flex-start;margin-top:0}.settings [role=group]{gap:var(--space-3);padding:var(--space-4);border:var(--border-width) solid var(--color-danger);border-radius:var(--radius-md);background:var(--color-danger-bg);display:grid}.settings .card>p[role=status]{color:var(--color-success-fg);font-weight:var(--weight-semibold)}.calendar-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.calendar-title,.calendar-subtitle{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;margin:0}.calendar-subtitle{margin-top:var(--space-3)}.calendar-nav{gap:var(--space-2);flex-wrap:wrap;display:flex}.calendar-note{color:var(--color-text-muted)}.calendar-grid{table-layout:fixed;border-collapse:separate;border-spacing:0;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}.calendar-grid th{padding:var(--space-3) var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-text-muted);background:var(--color-surface-sunken);border-bottom:var(--border-width) solid var(--color-border)}.calendar-cell{height:6.5rem;padding:var(--space-2);vertical-align:top;border-right:var(--border-width) solid var(--color-border);border-bottom:var(--border-width) solid var(--color-border);transition:background-color var(--duration-fast) var(--ease-out);overflow:hidden}.calendar-cell:last-child{border-right:0}.calendar-grid tbody tr:last-child .calendar-cell{border-bottom:0}.calendar-cell:hover{background:var(--color-surface-sunken)}.calendar-cell.is-outside{background:var(--color-surface-sunken);color:var(--color-text-muted)}.cell-day{min-width:1.75rem;height:1.75rem;margin-bottom:var(--space-1);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;place-items:center;display:inline-grid}.calendar-cell.is-today .cell-day{background:var(--color-accent);color:var(--color-text-inverse);font-weight:var(--weight-bold)}.chip-list,.month-list{margin:0;padding:0;list-style:none}.chip{padding:1px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-normal);background:var(--color-surface-sunken);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden}.chip-hvac{background:var(--cat-hvac-soft);color:var(--cat-hvac-fg)}.chip-plumbing{background:var(--cat-plumbing-soft);color:var(--cat-plumbing-fg)}.chip-electrical{background:var(--cat-electrical-soft);color:var(--cat-electrical-fg)}.chip-exterior{background:var(--cat-exterior-soft);color:var(--cat-exterior-fg)}.chip-safety{background:var(--cat-safety-soft);color:var(--cat-safety-fg)}.chip-appliances{background:var(--cat-appliances-soft);color:var(--cat-appliances-fg)}.chip-interior{background:var(--cat-interior-soft);color:var(--cat-interior-fg)}.chip-danger{background:var(--color-danger-bg);color:var(--color-danger-fg)}.chip-more{padding:0 var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-muted);margin-top:2px;display:block}.cell-dots{font-size:var(--text-xs);font-variant-numeric:tabular-nums;align-items:center;gap:2px;display:none}.dot{border-radius:var(--radius-pill);background:var(--color-accent);width:.5rem;height:.5rem}.dot.chip-hvac{background:var(--cat-hvac)}.dot.chip-plumbing{background:var(--cat-plumbing)}.dot.chip-electrical{background:var(--cat-electrical)}.dot.chip-exterior{background:var(--cat-exterior)}.dot.chip-safety{background:var(--cat-safety)}.dot.chip-appliances{background:var(--cat-appliances)}.dot.chip-interior{background:var(--cat-interior)}.dot.chip-danger{background:var(--color-danger)}.month-list{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.month-list li{gap:var(--space-1) var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:var(--border-width) solid var(--color-border);flex-wrap:wrap;display:flex}.month-list li:last-child{border-bottom:0}.month-date{min-width:7.5rem;color:var(--color-text-muted);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}@media (width<=40rem){.calendar-grid th{padding:var(--space-2) 0;letter-spacing:0}.calendar-cell{text-align:center;height:3.5rem;padding:2px}.cell-day{min-width:1.5rem;height:1.5rem;margin-bottom:0}.chip-list,.chip-more{display:none}.cell-dots{justify-content:center;display:flex}}.checklist-title{margin:var(--space-2) 0 0;font-family:var(--font-display);font-size:var(--text-xl)}.checklist-subtitle{margin:var(--space-2) 0 0;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-muted)}.checklist-list{padding:0 var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin:0;list-style:none}.checklist-row{align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--color-border);line-height:var(--leading-normal);break-inside:avoid;flex-wrap:wrap;display:flex}.checklist-row:last-child{border-bottom:0}.checklist-box{border:var(--stroke-width) solid var(--color-border-strong);border-radius:var(--radius-sm);flex:none;width:1.1em;height:1.1em}.checklist-date{min-width:3.5em;font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.checklist-name{flex:10rem}.checklist-meta{color:var(--color-text-muted);font-size:var(--text-sm)}@media print{.checklist-list{background:0 0;border:0;border-radius:0;padding:0}.checklist-row{break-inside:avoid;page-break-inside:avoid;color:#000;border-bottom:var(--border-width) solid #000;background:0 0;line-height:1.8}.checklist-row:last-child{border-bottom:var(--border-width) solid #000}.checklist-box{border-color:#000}.checklist-meta{color:#000}}.appliance-summary{margin-top:calc(-1 * var(--space-3));color:var(--color-warning-fg);font-weight:var(--weight-semibold)}.appliance-list{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));margin:0;padding:0;list-style:none;display:grid}.appliance-card{min-width:0;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);flex-direction:column;display:flex}.appliance-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.appliance-name{font-family:var(--font-display);font-size:var(--text-xl);margin:0}.appliance-location{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--text-sm)}.appliance-details{margin:var(--space-4) 0 0;gap:var(--space-2);font-size:var(--text-sm);display:grid}.appliance-details>div{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-height:1.75rem;display:flex}.appliance-details dt{min-width:5.5rem;color:var(--color-text-muted)}.appliance-details dd{align-items:center;gap:var(--space-2);min-width:0;margin:0;display:flex}.appliance-code{font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.appliance-copy{min-height:0;padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.appliance-copied{font-size:var(--text-xs);color:var(--color-success-fg)}.appliance-notes{margin:var(--space-3) 0 0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-size:var(--text-sm);white-space:pre-wrap}.appliance-maintenance-title{margin:var(--space-4) 0 var(--space-2);padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-border);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-muted)}.appliance-maintenance-empty{color:var(--color-text-muted);font-size:var(--text-sm)}.appliance-maintenance{gap:var(--space-1);font-size:var(--text-sm);margin:0;padding:0;list-style:none;display:grid}.appliance-maintenance li{justify-content:space-between;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.appliance-maintenance li>span:last-child{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.appliance-actions{gap:var(--space-2);padding-top:var(--space-4);margin-top:auto;display:flex}
