:root{--bg-base:#f5f5f4;--bg-surface:#fff;--bg-elevated:#fff;--border-subtle:#dce4df;--border-strong:#86a998;--text-primary:#202321;--text-secondary:#626560;--text-tertiary:#686b65;--text-inverse:#fff;--accent:#17664b;--accent-hover:#11543e;--accent-subtle:#e7f2eb;--success:#167046;--success-subtle:#e7f4ec;--warning:#906012;--warning-subtle:#fff3d9;--danger:#ae3b3b;--danger-subtle:#fceaea;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #162c2408;--shadow-md:0 8px 24px #162c2414;--shadow-lg:0 24px 64px #162c2433;--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.32s;--paper:var(--bg-base);--card:var(--bg-surface);--ink:var(--text-primary);--muted:var(--text-secondary);--line:var(--border-subtle);--green:var(--accent);--green-soft:var(--accent-subtle);--shadow:var(--shadow-sm)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#09090b;--bg-surface:#121215;--bg-elevated:#1a1a1e;--border-subtle:#303034;--border-strong:#73737d;--text-primary:#f4f4f5;--text-secondary:#b6b5b1;--text-tertiary:#a1a1aa;--text-inverse:#05271c;--accent:#34d399;--accent-hover:#6ee7b7;--accent-subtle:#153229;--success:#a0dfb8;--success-subtle:#234333;--warning:#fbbf24;--warning-subtle:#24211a;--danger:#f2a8a8;--danger-subtle:#41282a}}html{scroll-behavior:smooth}body{background:var(--bg-base);color:var(--text-primary);font-family:Plus Jakarta Sans Variable,sans-serif}.product-app{background:var(--bg-base);min-height:100svh;font-size:15px;line-height:1.5;display:block}.product-app h1,.product-app h2,.product-app h3{letter-spacing:-.02em;color:var(--text-primary);font-family:Plus Jakarta Sans Variable,sans-serif;font-weight:600}.product-app h1{margin:0;font-size:28px;line-height:1.15}.product-app h2{font-size:20px;line-height:1.3}.product-app h3{font-size:17px;line-height:1.4}.product-app a,.product-app button,.product-app summary{touch-action:manipulation}.product-app button,.product-app a,.product-app summary{transition:background var(--duration-fast),color var(--duration-fast),transform var(--duration-fast)}.product-app button:active,.app-fab:active{transform:scale(.98)}.product-app :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.product-app .app-rail{display:none}.app-workspace{min-width:0}.app-header{z-index:30;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);align-items:center;gap:12px;height:64px;padding:0 16px;display:flex;position:sticky;top:0}.header-brand,.product-brand>span{border-radius:var(--radius-md);background:var(--accent);width:32px;height:32px;color:var(--text-inverse);letter-spacing:-.05em;flex:0 0 32px;place-items:center;font-size:21px;font-weight:750;display:grid}.company-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);flex:1;font-size:14px;font-weight:650;overflow:hidden}.demo-info{position:relative}.demo-info>summary{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);text-transform:uppercase;padding:4px 8px;font-size:11px;font-weight:650;list-style:none}.demo-info p{z-index:50;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-elevated);width:260px;box-shadow:var(--shadow-md);color:var(--text-secondary);padding:16px;font-size:13px;line-height:1.5;position:absolute;top:32px;right:-36px}.account-menu{position:relative}.account-menu>summary{cursor:pointer;min-width:44px;min-height:44px;color:var(--text-secondary);place-items:center;list-style:none;display:grid}.account-menu>div{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-elevated);width:250px;box-shadow:var(--shadow-md);padding:8px;position:absolute;top:48px;right:0}.account-menu a,.account-menu button{border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--text-primary);background:0 0;border:0;align-items:center;gap:12px;padding:8px;font-size:14px;display:flex}.account-menu a:hover,.account-menu button:hover{background:var(--accent-subtle)}.account-menu small{color:var(--text-tertiary);padding:12px 8px 4px;font-size:11px;display:block}.app-content{width:100%;max-width:960px;margin:0 auto;padding:24px 16px 156px}.app-content>.page-heading{margin:0 0 24px}.page-heading p{color:var(--text-secondary);margin:8px 0 0;font-size:14px}.page-heading .back-link{min-height:44px;color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:12px;font-size:14px;display:inline-flex}.page-heading-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.app-bottom-nav{z-index:40;height:calc(64px + env(safe-area-inset-bottom));padding:4px 12px calc(4px + env(safe-area-inset-bottom));border-top:1px solid var(--border-subtle);background:var(--bg-surface);display:flex;position:fixed;bottom:0;left:0;right:0}.app-bottom-nav>a{border-radius:var(--radius-md);min-height:52px;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.app-bottom-nav>a[aria-current]{color:var(--accent);background:var(--accent-subtle)}.app-fab{right:16px;bottom:calc(80px + env(safe-area-inset-bottom));z-index:35;border-radius:var(--radius-lg);background:var(--accent);min-height:52px;color:var(--text-inverse);box-shadow:var(--shadow-md);align-items:center;gap:8px;padding:0 20px;font-size:14px;font-weight:650;display:inline-flex;position:fixed}.app-fab:hover{background:var(--accent-hover)}.product-app .section-block{margin-top:0;margin-bottom:24px}.product-app .section-heading{align-items:center;margin-bottom:16px}.product-app .section-heading .eyebrow{display:none}.product-app .section-heading h2{margin:0;font-size:22px}.product-app .agenda-toggle{border-radius:var(--radius-md);padding:4px}.product-app .agenda-toggle a{border-radius:var(--radius-sm);min-width:56px;min-height:36px;font-size:13px}.product-app .agenda-controls{gap:8px;margin:16px 0}.product-app .agenda-controls a{border-radius:var(--radius-md);min-width:44px;min-height:44px}.product-app .agenda-controls b{letter-spacing:-.04em;font-family:Geist Mono Variable,monospace;font-size:12px}.product-app .agenda-jump{max-width:340px;margin:12px 0}.product-app .agenda-jump label{font-size:12px}.product-app .agenda-totals{border-radius:var(--radius-md);background:var(--accent-subtle);color:var(--text-primary);margin:16px 0;padding:12px 16px;font-size:14px}.product-app .agenda-free{gap:8px;padding:20px 16px;font-size:13px}.product-app .agenda-free a{font-size:13px}.product-app .schedule-list{background:0 0;border:0;gap:12px;padding:0;display:grid;overflow:visible}.job-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);gap:12px;padding:16px;display:grid}.job-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.job-card time{color:var(--text-primary);font-family:Geist Mono Variable,monospace;font-size:15px;font-weight:600}.job-card time small{color:var(--text-secondary);font-size:12px}.job-card h3{margin:0;font-size:18px}.job-location{color:var(--text-secondary);align-items:start;gap:8px;margin-top:4px;font-size:13px;line-height:1.5;display:flex}.job-location svg{flex:0 0 16px;margin-top:2px}.job-service-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:12px;display:flex}.service-chip{border-radius:var(--radius-sm);background:var(--bg-base);color:var(--text-secondary);padding:4px 8px;font-size:12px}.job-card-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.job-card-price{gap:4px;display:grid}.job-card-price>span{color:var(--text-secondary);font-size:11px}.job-card-price>b{color:var(--text-primary);letter-spacing:-.05em;font-family:Geist Mono Variable,monospace;font-size:16px}.job-card-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.job-card-actions button{min-height:44px;padding:8px 12px;font-size:13px}.job-card-actions button svg{width:16px;height:16px}.overdue-note{color:var(--warning);font-size:12px}.visit-instructions{border-top:1px solid var(--border-subtle);margin-top:0;padding-top:8px}.visit-instructions summary{min-height:36px;color:var(--accent);align-items:center;font-size:13px;display:flex}.visit-instructions p{color:var(--text-secondary);margin-top:8px;font-size:13px;line-height:1.6}.status-chip{border-radius:var(--radius-sm);white-space:nowrap;justify-content:center;align-items:center;gap:4px;width:fit-content;padding:4px 8px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.status-chip svg{width:12px;height:12px}.status-chip.success{color:var(--success);background:var(--success-subtle)}.status-chip.warning{color:var(--warning);background:var(--warning-subtle)}.status-chip.neutral{color:var(--text-secondary);background:var(--bg-base)}.agenda-toggle button{border-radius:var(--radius-sm);min-height:44px;color:var(--text-secondary);font:inherit;cursor:pointer;border:0;padding:8px 12px;font-size:13px;font-weight:600}.agenda-toggle button.selected{background:var(--accent);color:var(--text-inverse)}.pricing-total{border-radius:var(--radius-md);background:var(--accent-subtle);color:var(--text-primary);justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.pricing-total span{font-size:13px}.pricing-total b{letter-spacing:-.04em;font-family:Geist Mono Variable,monospace;font-size:20px}.completed-visits{margin-top:24px}.completed-visits>summary{min-height:48px;color:var(--text-secondary);cursor:pointer;align-items:center;margin-bottom:12px;font-size:14px;display:flex}.suburb-input{display:block}.suburb-input>small{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px;font-size:13px;display:flex}.suburb-input>small>button{min-height:44px;color:var(--accent);padding:4px;font-weight:650;text-decoration:underline}@media (max-width:899px){.app-fab{border-radius:20px;justify-content:center;width:56px;height:56px;padding:0}.app-fab>span{display:none}}.receivable-link{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);min-height:56px;color:var(--text-primary);justify-content:space-between;align-items:center;gap:12px;margin:24px 0;padding:16px;font-size:14px;display:flex}.receivable-link b{font-family:Geist Mono Variable,monospace;font-size:14px}.scheduling-attention{border-radius:var(--radius-lg);background:var(--warning-subtle);border-color:var(--border-subtle);margin:24px 0;padding:16px}.scheduling-attention .eyebrow{color:var(--warning);font-size:11px}.scheduling-attention h2{margin:8px 0;font-size:18px}.scheduling-attention p,.scheduling-attention a{font-size:13px}.scheduling-attention a small{font-size:12px}.product-app .client-search{background:0 0;border:0;margin:0 0 16px;padding:0}.product-app .client-search label{font-size:13px}.product-app .client-search input{background:var(--bg-surface);min-height:48px;padding:12px 16px;font-size:15px}.product-app .client-search small{font-size:12px}.directory-list{gap:12px;display:grid}.directory-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);padding:16px}.directory-main{color:var(--text-primary);align-items:center;gap:12px;display:flex}.client-avatar{border-radius:var(--radius-md);background:var(--accent-subtle);width:44px;height:44px;color:var(--accent);flex:0 0 44px;place-items:center;font-size:14px;font-weight:650;display:grid}.client-avatar.large{flex-basis:56px;width:56px;height:56px;font-size:24px}.directory-main>span:nth-child(2){flex:1;min-width:0}.directory-main b{font-size:15px}.directory-main small{color:var(--text-secondary);margin-top:4px;font-size:12px;display:block}.directory-main>svg{color:var(--text-tertiary);flex:0 0 20px}.directory-address{color:var(--text-secondary);align-items:start;gap:8px;margin:16px 0 8px;font-size:13px;line-height:1.5;display:flex}.directory-address svg{flex:0 0 16px;margin-top:2px}.contact-actions{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.contact-actions a{border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-height:44px;color:var(--accent);align-items:center;gap:8px;padding:8px;font-size:12px;font-weight:600;display:flex}.directory-status{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.needs-booking{min-height:36px;color:var(--warning);align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.profile-overview{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);padding:20px}.profile-person{align-items:center;gap:16px;margin-bottom:16px;display:flex}.profile-person h1{font-size:24px}.profile-person p{color:var(--text-secondary);margin:4px 0 0;font-size:13px}.profile-email{min-height:40px;color:var(--accent);align-items:center;font-size:13px;display:inline-flex}.profile-visit-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;display:grid}.profile-visit-grid>div{align-content:start;gap:8px;display:grid}.profile-visit-grid span{color:var(--text-secondary);font-size:12px}.profile-visit-grid b{color:var(--text-primary);font-size:15px}.profile-visit-grid small{color:var(--text-secondary);font-size:12px;line-height:1.5}.profile-notes{color:var(--text-secondary);margin-top:24px;font-size:14px;line-height:1.6}.profile-section{margin-top:32px}.profile-history{gap:12px;margin-top:16px;display:grid}.profile-history article{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.profile-history article>div{flex:1;gap:4px;display:grid}.profile-history b{font-size:14px}.profile-history span{color:var(--text-secondary);font-size:12px}.product-app .form-card{border-radius:var(--radius-lg);background:var(--bg-surface);max-width:640px;box-shadow:var(--shadow-sm);padding:20px}.product-app .stack{gap:20px}.product-app label{font-size:14px;font-weight:550;line-height:1.5}.product-app label input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.product-app label textarea,.product-app label select{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-base);min-height:48px;color:var(--text-primary);margin-top:8px;padding:12px;font-family:inherit;font-size:16px;font-weight:400}.product-app .date-input input:not([type=hidden]){border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-base);min-height:48px;color:var(--text-primary);padding:12px;font-size:16px}.product-app .field-hint{color:var(--text-secondary);font-size:13px;line-height:1.6}.optional{color:var(--text-tertiary);font-size:12px;font-weight:400}.form-section{border:0;gap:16px;margin:0;padding:0;display:grid}.form-section>legend{float:left;width:100%;color:var(--text-primary);margin-bottom:16px;font-size:16px;font-weight:650}.form-section>legend+*{clear:both}.optional-fields{border-top:1px solid var(--border-subtle);padding-top:16px}.optional-fields>summary{min-height:44px;color:var(--accent);cursor:pointer;align-items:center;font-size:14px;font-weight:600;display:flex}.optional-fields[open]>.stack{margin-top:16px}.product-app .mode-options{border:0;gap:8px;padding:0;display:grid}.product-app .mode-options legend{margin-bottom:12px;font-size:14px;font-weight:600}.product-app .mode-options label{border:1px solid var(--border-subtle);border-radius:var(--radius-md);align-items:center;gap:8px;min-height:48px;padding:12px;display:flex}.product-app .mode-options label:has(input:checked){background:var(--accent-subtle);border-color:var(--accent)}.product-app .button{border-radius:var(--radius-md);min-height:44px;box-shadow:none;font-family:inherit;font-size:14px}.product-app .edit-details>summary,.product-app .property-edit>summary{min-height:44px;color:var(--accent);align-items:center;font-size:14px;display:flex}.product-app .property-card{border-radius:var(--radius-lg);background:var(--bg-surface);gap:12px;padding:16px}.product-app .property-card>p{font-size:13px;line-height:1.6}.product-app .property-card>div:first-child b{font-size:15px}.product-app .property-card>small{font-size:12px}.product-app .client-importer>summary{padding:16px;font-size:14px}.product-app .client-importer>summary span{font-size:12px}.product-app .importer-content>p{font-size:13px}.product-app .success-banner,.product-app .form-error{border-radius:var(--radius-md);margin-bottom:20px;padding:16px;font-size:14px;line-height:1.5}.product-app .success-banner{color:var(--success);background:var(--success-subtle);border:1px solid var(--border-subtle)}.product-app .form-error{color:var(--danger);background:var(--danger-subtle)}.dialog-overlay{z-index:80;animation:overlay-in var(--duration-normal) ease;background:#05160db3;position:fixed;inset:0}.dialog-sheet{left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:81;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-elevated);max-height:88svh;color:var(--text-primary);box-shadow:var(--shadow-lg);animation:sheet-in var(--duration-normal) ease;padding:24px;font-family:Plus Jakarta Sans Variable,sans-serif;position:fixed;overflow:auto}.sheet-header{justify-content:space-between;align-items:start;gap:12px;margin-bottom:24px;display:flex}.sheet-header h2{letter-spacing:-.03em;margin:0;font-size:20px;font-weight:650}.sheet-header p{color:var(--text-secondary);margin-top:8px;font-size:13px;line-height:1.5}.dialog-sheet .stack{gap:20px;display:grid}.dialog-sheet label{gap:8px;font-size:14px;display:grid}.dialog-sheet label input:not([type=checkbox]):not([type=hidden]){border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-base);width:100%;min-height:48px;color:var(--text-primary);padding:12px;font-size:16px}.cancel-visit{border-top:1px solid var(--border-subtle);margin-top:24px;padding-top:12px}.cancel-visit summary{min-height:44px;color:var(--danger);cursor:pointer;align-items:center;font-size:13px;display:flex}.cancel-visit p{color:var(--text-secondary);font-size:13px}.cancel-visit .check-label{align-items:start;gap:8px;font-size:13px;display:flex}.cancel-visit input[type=checkbox]{min-width:20px;min-height:20px;margin-top:4px}.product-app .portfolio-grid{gap:12px}.product-app .portfolio-metric{border-radius:var(--radius-lg);gap:12px;padding:16px}.product-app .portfolio-metric>span{font-size:13px}.product-app .portfolio-metric strong{letter-spacing:-.05em;font-family:Geist Mono Variable,monospace;font-size:22px}.product-app .portfolio-metric small{font-size:12px}.product-app .forecast-explanation{border-radius:var(--radius-lg);padding:16px}.product-app .forecast-explanation summary{align-items:center;min-height:44px;font-size:14px;display:flex}.product-app .forecast-explanation p,.product-app .forecast-rows>div{font-size:13px}.product-app .forecast-rows>div{gap:8px;padding:12px 0}.product-app .empty-state{border:1px dashed var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);padding:32px 20px}.product-app .empty-state b{font-size:17px}.product-app .empty-state p{font-size:14px;line-height:1.6}.skeleton{border-radius:var(--radius-lg);background:var(--accent-subtle);height:140px;animation:1.4s ease-in-out infinite skeleton-pulse}.skeleton-title{width:50%;height:32px;margin-bottom:24px}.skeleton-list{gap:12px;display:grid}.skip-link{z-index:100;background:var(--accent);color:var(--text-inverse);padding:12px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:12px}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes skeleton-pulse{50%{opacity:.5}}@media (min-width:900px){.product-app{grid-template-columns:216px minmax(0,1fr);display:grid}.product-app .app-rail{border-right:1px solid var(--border-subtle);background:var(--bg-surface);flex-direction:column;height:100svh;padding:32px 16px;display:flex;position:sticky;top:0}.product-brand{color:var(--text-primary);align-items:center;gap:12px;padding:0 8px;font-size:16px;font-weight:700;display:flex}.app-rail nav{gap:8px;margin-top:48px;display:grid}.app-rail nav a,.rail-dashboard{border-radius:var(--radius-md);min-height:48px;color:var(--text-secondary);align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:550;display:flex}.app-rail nav a[aria-current]{background:var(--accent-subtle);color:var(--accent)}.rail-dashboard{margin-top:24px}.rail-caption{color:var(--text-tertiary);margin-top:auto;padding:16px;font-size:14px;line-height:1.8}.app-bottom-nav{display:none}.app-header{padding:0 32px}.header-brand{display:none}.app-content{padding:32px 32px 112px}.app-fab{bottom:32px;right:32px}.directory-list{grid-template-columns:repeat(2,minmax(0,1fr))}.dialog-sheet{width:440px;animation:overlay-in var(--duration-normal) ease;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.scheduling-attention{grid-template-columns:1fr 1.5fr}}@media (max-width:359px){.job-card-actions{width:100%}.job-card-footer{flex-wrap:wrap}.job-card-actions>form{flex:1}.job-card-actions button{width:100%}.app-content{padding-left:12px;padding-right:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.agenda-presentation{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);gap:4px;width:fit-content;margin:12px 0;padding:4px;display:flex}.agenda-presentation a{border-radius:var(--radius-sm);min-height:40px;color:var(--text-secondary);justify-content:center;align-items:center;padding:8px 16px;font-size:13px;display:flex}.agenda-presentation a[aria-current]{background:var(--accent-subtle);color:var(--accent);font-weight:650}.agenda-date-picker>summary{cursor:pointer;min-height:44px;color:var(--text-secondary);align-items:center;font-size:13px;display:flex}.calendar-help{color:var(--text-secondary);margin:12px 0;font-size:12px;line-height:1.6}.calendar-scroll{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);overscroll-behavior-x:contain;max-width:100%;overflow:auto}.calendar-week .calendar-surface{min-width:760px}.calendar-surface .fc{--fc-border-color:var(--border-subtle);--fc-page-bg-color:var(--bg-surface);--fc-neutral-bg-color:var(--bg-base);--fc-today-bg-color:var(--accent-subtle);--fc-now-indicator-color:var(--danger);color:var(--text-primary);font-family:Plus Jakarta Sans Variable,sans-serif;font-size:12px}.calendar-surface .fc .fc-col-header-cell-cushion{color:var(--text-secondary);padding:14px 4px;font-weight:600}.calendar-surface .fc .fc-timegrid-slot{height:28px}.calendar-surface .fc .fc-timegrid-axis-cushion,.calendar-surface .fc .fc-timegrid-slot-label-cushion{color:var(--text-secondary);padding:4px 8px;font-family:Geist Mono Variable,monospace;font-size:10px}.calendar-surface .fc .fc-timegrid-axis-cushion{white-space:normal;max-width:66px;font-family:Plus Jakarta Sans Variable,sans-serif}.calendar-surface .fc-event{border:1px solid var(--accent);background:var(--accent-subtle);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-sm);border-left-width:3px;border-radius:6px}.calendar-surface .fc-event:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.calendar-surface .fc-event-main{color:var(--text-primary)}.calendar-surface .calendar-completed{border-color:var(--border-strong);background:var(--bg-base)}.calendar-event-content{gap:3px;padding:5px;line-height:1.3;display:grid;overflow:hidden}.calendar-event-content b{font-family:Geist Mono Variable,monospace;font-size:10px;font-weight:550}.calendar-event-content strong{font-size:12px;font-weight:650}.calendar-event-content span,.calendar-event-content small{color:var(--text-secondary);font-size:10px}.calendar-details .job-card{box-shadow:none}.calendar-details .job-card-actions{flex-wrap:wrap}.calendar-mobile-hint{margin-top:8px}html{scroll-padding-top:80px;scroll-padding-bottom:160px}.product-app button,.product-app input,.product-app select,.product-app summary,.product-app textarea{scroll-margin-top:80px;scroll-margin-bottom:160px}.completed-visits>summary{min-height:48px;color:var(--text-secondary);cursor:pointer;align-items:center;margin:16px 0 8px;font-size:13px;display:flex}@media (min-width:900px){.calendar-mobile-hint{display:none}.dialog-sheet.calendar-details{width:520px}}.finance-page{gap:24px;display:grid}.finance-month{justify-content:space-between;align-items:center;gap:8px;display:flex}.finance-month h2{text-transform:capitalize;margin:0;font-size:22px}.finance-month>a{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:10px;place-items:center;width:44px;height:44px;display:grid}.finance-month-picker{align-items:end;gap:12px;display:flex}.finance-month-picker label{color:var(--text-secondary);gap:4px;font-size:12px;display:grid}.finance-month-picker input{border:1px solid var(--border-subtle);background:var(--bg-surface);max-width:200px;color:var(--text-primary);border-radius:8px;padding:10px}.finance-cash{background:var(--accent);color:var(--text-inverse);border-radius:20px;padding:28px 24px}.finance-cash>span{letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:650;display:flex}.finance-cash strong{letter-spacing:-.05em;font-variant-numeric:tabular-nums;margin-top:12px;font-size:42px;line-height:1.1;display:block}.finance-cash p{opacity:.9;margin:8px 0 0;font-size:13px}.home-balance{margin-bottom:12px}.home-balance>a{border:1px solid color-mix(in srgb, var(--text-inverse) 35%, transparent);min-height:44px;color:inherit;border-radius:999px;align-items:center;margin-top:16px;padding:0 14px;font-size:13px;font-weight:650;display:inline-flex}.lang-switch{border:1px solid var(--border-subtle);background:var(--bg-base);border-radius:10px;flex:none;padding:3px;display:flex}.lang-switch button{min-width:40px;min-height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:12px;font-weight:700}.lang-switch button[aria-pressed=true]{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}.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}.finance-secondary{grid-template-columns:1fr 1fr;gap:12px;display:grid}.finance-secondary section{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:12px;gap:8px;padding:16px;display:grid}.finance-secondary span{color:var(--text-secondary);font-size:12px}.finance-secondary strong{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:23px}.finance-secondary small{color:var(--text-secondary);font-size:11px}.finance-explanation{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.7}.finance-section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;padding:20px}.finance-section h2{align-items:center;gap:8px;margin:0;font-size:17px;display:flex}.finance-entries>article{border-top:1px solid var(--border-subtle);padding:18px 0}.finance-entry-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.finance-entry-heading a{font-weight:600}.finance-entry-heading b{white-space:nowrap;font-variant-numeric:tabular-nums}.finance-entries p,.finance-review>p{color:var(--text-secondary);margin:4px 0 8px;font-size:12px}.finance-paid{color:var(--success);font-size:12px}.finance-empty{color:var(--text-secondary);padding:16px 0;font-size:13px}.finance-review{border-color:var(--warning)}.payment-entry{max-width:100%;font-size:13px}.payment-entry>summary{cursor:pointer;min-height:44px;color:var(--accent);align-items:center;font-weight:600;display:flex}.payment-entry form{min-width:0;padding:12px 0}.payment-entry label{gap:6px;display:grid}.payment-entry small{color:var(--text-secondary);font-size:11px;display:block}.job-card-footer:has(.payment-entry[open]){flex-wrap:wrap;align-items:start}.job-card-actions:has(.payment-entry[open]){width:100%;display:block}.profile-history article:has(.payment-entry[open]){flex-wrap:wrap}.payment-entry[open]{flex-basis:100%}@media (min-width:900px){.finance-page{max-width:780px}.finance-cash strong{font-size:52px}}.product-app .finance-cash strong,.product-app .finance-secondary strong{font-family:Plus Jakarta Sans Variable,sans-serif}.product-app .finance-section h2{letter-spacing:-.025em;font-size:17px}.finance-month h2{text-transform:none}.history-filter{align-items:end;gap:12px;margin:16px 0 24px;display:flex}.history-filter label{flex:1;gap:6px;min-width:0;font-size:12px;display:grid}.history-filter select{border:1px solid var(--border-subtle);background:var(--bg-surface);width:100%;min-height:44px;color:var(--text-primary);border-radius:8px;padding:8px}.history-pagination{justify-content:space-between;align-items:center;gap:12px;margin-top:24px;font-size:12px;display:flex}.history-pagination a{color:var(--accent);padding:12px 0}.job-edit-sheet{overscroll-behavior:contain;max-height:90svh;overflow-y:auto}.job-edit-sheet small{color:var(--text-secondary);margin-top:6px;font-size:12px;display:block}.finance-page .quiet-action{justify-content:center;align-items:center;min-height:44px;padding:10px 12px;font-size:12px;line-height:1.5;display:inline-flex}.finance-section>.quiet-action{margin-top:12px}.product-app .job-wizard{max-width:none;box-shadow:none;background:0 0;border:0;padding:0;overflow:visible}.wizard-progress{gap:8px;margin:0 0 24px;padding:0;list-style:none;display:flex}.wizard-progress li{color:var(--text-secondary);flex:1;align-items:center;gap:8px;font-size:12px;display:flex}.wizard-progress li>span{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:50%;flex:0 0 28px;place-items:center;width:28px;height:28px;display:grid}.wizard-progress li[aria-current]>span,.wizard-progress li[data-complete=true]>span{background:var(--accent);border-color:var(--accent);color:var(--text-inverse)}.wizard-progress li[aria-current] b{color:var(--text-primary)}.wizard-layout{gap:20px;display:grid}.wizard-fields{min-width:0}.wizard-pane{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:16px;gap:24px;padding:24px;display:grid}.wizard-pane[hidden]{display:none!important}.wizard-pane>h2{margin:0}.wizard-intro{color:var(--text-secondary);margin:-12px 0 0;font-size:14px}.wizard-pane .agenda-toggle{gap:4px;display:flex}.wizard-pane .agenda-toggle button{min-height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;flex:1;padding:8px}.wizard-pane .agenda-toggle button.selected{background:var(--accent-subtle);color:var(--accent);font-weight:650}.visit-review{border:1px solid var(--border-subtle);background:var(--bg-elevated);border-radius:16px;align-self:start;padding:24px}.review-heading{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.visit-review h3{margin:20px 0 4px}.visit-review>p{color:var(--text-secondary);margin:0;font-size:13px}.visit-review dl{gap:12px;margin:24px 0;display:grid}.visit-review dl>div{justify-content:space-between;gap:16px;font-size:12px;display:flex}.visit-review dt{color:var(--text-secondary)}.visit-review dd{text-align:right;margin:0;font-weight:550}.review-amount{border-top:1px solid var(--border-subtle);gap:6px;padding-top:20px;display:grid}.review-amount span,.review-amount small{color:var(--text-secondary);font-size:12px}.review-amount strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:30px}.wizard-footer{bottom:calc(64px + env(safe-area-inset-bottom));z-index:25;border:1px solid var(--border-subtle);background:var(--bg-elevated);box-shadow:var(--shadow-md);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding:16px;display:flex;position:sticky}.wizard-footer>div:last-child{gap:8px;display:flex}.wizard-footer-meta{gap:2px;font-size:12px;display:grid}.wizard-footer-meta span{color:var(--text-secondary)}.wizard-footer-meta b{font-weight:550}.job-card-price>b,.portfolio-metric strong{font-variant-numeric:tabular-nums;letter-spacing:-.025em!important;font-family:inherit!important}.product-app .scheduling-attention{border:1px solid var(--border-subtle);border-left:4px solid var(--warning);background:var(--bg-surface);box-shadow:var(--shadow-sm)}.scheduling-attention .eyebrow{color:var(--warning);align-items:center;gap:8px;display:flex}.product-app .client-importer{width:fit-content;max-width:100%;box-shadow:none;background:0 0;border:0;margin:0 0 20px}.product-app .client-importer>summary{border:1px solid var(--border-subtle);background:var(--bg-surface);min-height:44px;color:var(--text-secondary);border-radius:10px;align-items:center;gap:8px;padding:8px 12px;display:flex}.product-app .client-importer[open]{width:100%}.product-app .client-importer[open]>.importer-content{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:14px;margin-top:12px;padding:20px}.profile-actions{border-top:1px solid var(--border-subtle);flex-wrap:wrap;gap:8px;margin-top:16px;padding:16px 0 0;display:flex}.profile-actions .job-card-actions{justify-content:start}.history-timeline{position:relative;padding-left:18px!important}.history-timeline:before{content:"";background:var(--border-subtle);width:1px;position:absolute;top:20px;bottom:20px;left:4px}.history-timeline>.job-card{position:relative}.history-timeline>.job-card:before{content:"";border:2px solid var(--bg-base);background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;top:24px;left:-20px}.untimed-visits{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:12px;margin:16px 0}.untimed-visits summary{cursor:pointer;align-items:center;gap:8px;min-height:48px;padding:12px 16px;font-size:13px;display:flex}.untimed-visits button,.mobile-week-list button{border:0;border-top:1px solid var(--border-subtle);text-align:left;width:100%;min-height:56px;color:var(--text-primary);background:0 0;align-items:center;gap:16px;padding:12px 16px;display:flex}.untimed-visits button>span:first-child{flex:1}.untimed-visits button>span:last-child{color:var(--accent);font-size:12px}.untimed-visits small,.mobile-week-list small{color:var(--text-secondary);font-size:12px;display:block}.untimed-visits b,.mobile-week-list b{font-size:14px}.mobile-calendar-toggle,.mobile-week-list{display:none}.mobile-week-list section+section{border-top:1px solid var(--border-subtle)}.mobile-week-list h3{text-transform:capitalize;background:var(--bg-base);margin:0;padding:16px;font-size:14px}.mobile-week-list time{font-variant-numeric:tabular-nums;color:var(--accent);font-size:13px;font-weight:650}.mobile-week-list section>p{color:var(--text-secondary);margin:12px 16px;font-size:13px}.mobile-week-list section>a{min-height:44px;color:var(--accent);align-items:center;margin:0 16px 8px;font-size:13px;display:flex}.agenda-free>a{align-items:center;min-height:44px;display:inline-flex}.agenda-free>svg{color:var(--accent)}.menu-company{border-bottom:1px solid var(--border-subtle);padding:12px 8px;font-size:13px;display:block}.route-pending{z-index:100;background:var(--accent);transform-origin:0;height:3px;animation:1s ease-in-out infinite route-loading;position:fixed;top:0;left:0;right:0}.lang-switch button{min-height:44px}.demo-info>summary{align-items:center;min-height:44px;display:flex}.quick-filters{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.quick-filters>*{white-space:nowrap;flex-shrink:0}@keyframes route-loading{0%,to{transform:scaleX(.25)}50%{transform:scaleX(1)}}@media (min-width:900px){.wizard-layout{grid-template-columns:minmax(0,1fr) 280px}.visit-review{position:sticky;top:88px}.wizard-footer{bottom:20px}.wizard-progress{max-width:640px}}@media (max-width:899px){.mobile-calendar-toggle{align-items:center;gap:8px;min-height:44px;display:inline-flex}.calendar-week[data-mobile-grid=false] .calendar-surface{display:none}.calendar-week[data-mobile-grid=false] .mobile-week-list{display:block}.calendar-week[data-mobile-grid=false]+.calendar-mobile-hint{display:none}.wizard-pane{padding:20px}.wizard-progress li{flex-direction:column;align-items:start;font-size:11px}.wizard-progress li b{font-weight:550}.wizard-footer-meta b{display:none}.visit-review{padding:20px}.wizard-footer .button{padding:10px 12px}}@media (max-width:480px){.app-header{gap:8px}.app-header .company-name{display:none}.header-search{margin-right:auto}.app-header .lang-switch{margin-left:0}.app-header .demo-info>summary{padding:4px;font-size:10px}.wizard-footer-meta{font-size:11px}}.finance-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.finance-toolbar>span{color:var(--text-secondary);font-size:12px}.finance-toolbar>a{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:10px;gap:8px}.finance-trend{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:14px;padding:16px 20px}.finance-trend summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;font-size:13px;display:flex}.finance-trend summary span{color:var(--accent);font-size:11px}.finance-trend svg{width:100%;height:90px;margin-top:8px;display:block}.finance-trend dl{margin:16px 0 0}.finance-trend dl>div{border-top:1px solid var(--border-subtle);justify-content:space-between;padding:10px 0;font-size:12px;display:flex}.finance-trend dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.booking-drawer.product-app{z-index:85;background:var(--bg-base);border-left:1px solid var(--border-subtle);outline:none;flex-direction:column;width:min(860px,92vw);min-height:0;animation:.2s ease-out drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-24px 0 80px #0005}.booking-drawer-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-elevated);flex-shrink:0;justify-content:space-between;align-items:start;gap:16px;padding:24px;display:flex}.booking-drawer-header h2{margin:0;font-size:22px}.booking-drawer-header p{color:var(--text-secondary);margin:6px 0 0;font-size:12px}.drawer-close{border:1px solid var(--border-subtle);background:var(--bg-surface);width:44px;height:44px;color:var(--text-primary);cursor:pointer;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.booking-drawer-body{overscroll-behavior:contain;flex:1;min-height:0;padding:24px;overflow:auto}.booking-drawer .wizard-layout{grid-template-columns:minmax(0,1fr)}.booking-drawer .visit-review{position:static}.booking-drawer .wizard-footer{padding-bottom:calc(16px + env(safe-area-inset-bottom));background:var(--bg-elevated);border-radius:12px 12px 0 0;margin-left:-8px;margin-right:-8px;bottom:-24px}.booking-drawer .job-wizard{padding-bottom:0}.booking-drawer .wizard-progress{margin-bottom:20px}.booking-overlay{z-index:84;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#09090b99}.drawer-data-status{min-height:18px;color:var(--text-secondary);margin:0 0 8px;font-size:11px}.drawer-error{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:14px;padding:24px;font-size:14px}.booking-notice{z-index:70;border:1px solid var(--border-subtle);background:var(--bg-elevated);width:max-content;max-width:90vw;color:var(--text-primary);box-shadow:var(--shadow-md);border-radius:12px;padding:12px 20px;font-size:13px;position:fixed;top:76px;left:50%;transform:translate(-50%)}.visit-live-price{border:1px solid var(--border-subtle);background:var(--accent-subtle);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:16px;font-size:13px;display:flex}.visit-live-price strong{font-variant-numeric:tabular-nums;font-size:22px}.screen-loading .page-heading{margin-bottom:24px}.screen-loading .skeleton-balance{height:160px;margin-bottom:24px}.skeleton-row{border:1px solid var(--border-subtle);background:var(--bg-surface);gap:12px;padding:24px;display:grid}.skeleton-row span{background:var(--border-subtle);border-radius:4px;width:70%;height:12px}.skeleton-row span:first-child{width:35%}.skeleton-row span:last-child{width:50%}.product-app{font-variant-numeric:tabular-nums}.product-app .agenda-free{text-align:center;border:1px dashed var(--border-subtle);background:var(--bg-surface);min-height:180px;color:var(--text-secondary);border-radius:16px;align-content:center;justify-items:center;display:grid}.product-app .agenda-free>a{border:1px solid var(--border-subtle);background:var(--bg-base);color:var(--accent);border-radius:10px;padding:0 16px;font-weight:600}.product-app input:focus,.product-app textarea:focus,.product-app select:focus{outline:3px solid color-mix(in srgb,var(--accent) 20%,transparent);outline-offset:1px;border-color:var(--accent)!important}.product-app .button{transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.product-app .button:hover{box-shadow:var(--shadow-sm)}.calendar-surface .fc-event{border-radius:8px}.calendar-surface .fc-event:hover{filter:brightness(1.08)}@keyframes drawer-in{0%{opacity:.6;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@keyframes drawer-up{0%{opacity:.6;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@media (prefers-color-scheme:dark){:root{--shadow-sm:inset 0 1px 0 #ffffff08,0 4px 24px -4px #0006;--shadow-md:inset 0 1px 0 #ffffff0d,0 12px 32px #0006}.app-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121215e8}.product-app label input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.product-app label textarea,.product-app label select,.product-app .date-input input:not([type=hidden]){background:#1c1c20}.finance-cash{color:#f4f4f5;background:linear-gradient(130deg,#154536,#102b24);border:1px solid #2e5749}.finance-cash>span,.finance-cash>p{color:#b6d4c7}.app-rail nav a[aria-current]{color:var(--text-primary)}.app-rail nav a[aria-current]>svg{color:var(--accent)}}@media (max-width:699px){.booking-drawer.product-app{border-left:0;border-top:1px solid var(--border-subtle);border-radius:22px 22px 0 0;width:100%;height:95svh;animation:.2s ease-out drawer-up;inset:auto 0 0}.booking-drawer-header{border-radius:22px 22px 0 0;padding:20px 16px 16px}.booking-drawer-header h2{font-size:20px}.booking-drawer-body,.booking-drawer .wizard-pane{padding:16px}.booking-drawer .wizard-footer{border-radius:0;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;bottom:-16px}.booking-drawer .wizard-footer-meta b{display:none}}@media (prefers-reduced-motion:reduce){.booking-drawer.product-app,.dialog-overlay,.route-pending{animation:none!important}.calendar-surface .fc-event{transition:none}}.civil-date-input{display:block;position:relative}.civil-date-input .field-leading-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:24px;left:13px}.product-app .civil-date-input input:not([type=hidden]){padding-left:40px}.booking-drawer .visit-review{background:var(--bg-surface)}.discard-overlay{z-index:90;background:#09090bb3}.discard-dialog.product-app{z-index:91;border:1px solid var(--border-subtle);background:var(--bg-elevated);width:min(420px,100vw - 32px);min-height:0;box-shadow:var(--shadow-lg);border-radius:18px;padding:24px;display:block;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.discard-dialog h2{margin:0 0 12px;font-size:20px}.discard-dialog p{color:var(--text-secondary);font-size:14px}.discard-dialog>div{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px;display:flex}@media (min-width:1100px){.booking-drawer .wizard-layout{grid-template-columns:minmax(0,1fr) 250px}.booking-drawer .visit-review{padding:20px;position:sticky;top:0}.booking-drawer .visit-review dl>div{gap:4px;display:grid}.booking-drawer .visit-review dd{text-align:left}}.auth-page{background:var(--bg-base);color:var(--text-primary)}.auth-page .auth-card{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md)}.auth-page h1{letter-spacing:-.025em;font-family:inherit;font-size:30px;font-weight:600;line-height:1.25}.auth-page .lead,.auth-page .fine-print,.auth-page .auth-foot{color:var(--text-secondary)}.auth-page input{background:var(--bg-elevated);min-height:48px;color:var(--text-primary);border-color:var(--border-subtle);font-family:inherit;font-size:16px}.auth-page input:focus{outline:3px solid color-mix(in srgb,var(--accent) 20%,transparent);border-color:var(--accent)}.auth-page :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.auth-page .notice{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-subtle)}.auth-page .form-error{border:1px solid var(--danger);background:var(--danger-subtle);color:var(--danger);border-radius:10px;padding:16px;font-size:14px}.auth-page .text-button{justify-content:center;align-items:center;min-height:44px;display:flex}.auth-page .button{min-height:44px}.visit-quick-actions{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.visit-quick-actions a{border:1px solid var(--border-subtle);background:var(--bg-base);min-height:44px;color:var(--text-primary);border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.visit-quick-actions a:hover{border-color:var(--accent);background:var(--accent-subtle)}.visit-quick-actions a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.visit-quick-actions a:active{opacity:.75}.pricing-choice{border:0;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0;padding:0;display:grid}.pricing-choice legend{margin-bottom:8px;font-size:13px;font-weight:600}.pricing-choice label{border:1px solid var(--border-subtle);cursor:pointer;border-radius:10px;align-items:center;gap:9px;min-height:64px;padding:12px;display:flex}.pricing-choice label[data-selected=true]{border-color:var(--accent);background:var(--accent-subtle)}.pricing-choice input{width:18px;height:18px;accent-color:var(--accent)}.pricing-choice b,.pricing-choice small{display:block}.pricing-choice small{color:var(--text-secondary);margin-top:4px;font-size:12px}.calendar-event-content strong{color:var(--text-primary)}.untimed-visits summary{font-weight:650}.untimed-visits summary .count-pill{margin-left:auto}.calendar-details .visit-quick-actions a{flex:1}.pricing-total b,.visit-live-price strong,.review-amount strong{font-variant-numeric:tabular-nums}@media (max-width:600px){.calendar-details.dialog-sheet{width:100%;max-width:100%;max-height:90svh;padding-bottom:calc(20px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;inset:auto 0 0}.visit-quick-actions a{flex:1}.calendar-details .job-card{padding:14px}.pricing-choice label{padding:10px}.pricing-choice b{font-size:14px}.product-app .home-balance{border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;min-height:0;margin-bottom:12px;padding:16px 20px;display:grid}.product-app .home-balance>span{font-size:11px}.product-app .home-balance>strong{grid-column:1;margin:0;font-size:30px;line-height:1.3}.product-app .home-balance>p{margin:0;font-size:11px}.product-app .home-balance>a{grid-area:1/2/4;min-height:44px;margin:0;padding:10px 12px;font-size:12px}.product-app .finance-secondary{gap:8px;margin-bottom:16px}.product-app .finance-secondary>section{gap:3px;min-height:0;padding:12px 16px}.product-app .finance-secondary strong{font-size:22px}.product-app .finance-secondary small{font-size:12px}.visit-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.visit-quick-actions a{flex-direction:column;gap:5px;min-width:0;min-height:62px;padding:8px 4px;font-size:12px}.visit-quick-actions a:only-child{flex-direction:row;grid-column:1/-1}.visit-quick-actions a:first-child:nth-last-child(2),.visit-quick-actions a:last-child:nth-child(2){grid-column:auto}.job-card .visit-quick-actions{margin:4px 0}}.product-app .agenda-toggle{flex-wrap:nowrap;flex-shrink:0}.product-app .agenda-toggle a{justify-content:center;align-items:center;min-width:52px;min-height:44px;display:flex}.agenda-controls b{text-transform:capitalize}.agenda-record-edit{border-top:1px solid var(--border-subtle);padding-top:8px}.agenda-record-edit>summary,.agenda-record-edit .property-edit>summary,.agenda-record-edit .edit-details>summary{min-height:44px;color:var(--accent);cursor:pointer;align-items:center;font-size:13px;font-weight:600;display:flex}.agenda-record-edit .stack{margin:16px 0}.calendar-change h2{font-size:20px}.calendar-change p{color:var(--text-secondary);font-size:14px;line-height:1.6}.calendar-change dl{gap:8px;margin:24px 0;display:grid}.calendar-change dt{color:var(--text-secondary);font-size:12px}.calendar-change dd{font-variant-numeric:tabular-nums;margin:0 0 8px;font-size:15px}.calendar-change-actions{justify-content:flex-end;gap:12px;display:flex}.month-day-agenda{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:14px;margin:16px 0;padding:16px}.month-day-agenda>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.month-day-agenda h3{font-size:16px}.month-day-agenda>p{color:var(--text-secondary);font-size:13px;line-height:1.6}.month-visit-row{border:0;border-top:1px solid var(--border-subtle);text-align:left;width:100%;min-height:64px;color:var(--text-primary);background:0 0;align-items:center;gap:14px;padding:12px 0;display:flex}.month-visit-row time{font-variant-numeric:tabular-nums;font-size:12px}.month-visit-row small{color:var(--text-secondary);margin-top:4px;font-size:12px;display:block}.calendar-month .fc-daygrid-day-frame{min-height:108px}.calendar-month .fc-daygrid-day-number{min-width:36px;min-height:36px;color:var(--text-primary);justify-content:center;align-items:center;display:flex}.calendar-month .fc-daygrid-event{white-space:normal;overflow:hidden}.calendar-month .calendar-event-content{padding:3px;font-size:11px;line-height:1.4}.calendar-month .calendar-event-content span,.calendar-month .calendar-event-content small{display:none}.calendar-month .calendar-event-content b{margin-right:4px;display:inline}.calendar-month .fc-event-time{display:none}.calendar-month .fc-event-title{color:var(--text-primary)}.calendar-selected-day{box-shadow:inset 0 0 0 2px var(--accent)}.calendar-help{line-height:1.6}.calendar-details .property-form>.button,.calendar-details .edit-form>.button,.job-edit-sheet form>.button{z-index:1;min-height:48px;box-shadow:0 -8px 16px var(--bg-elevated);position:sticky;bottom:0}@media (max-width:600px){.product-app .section-heading:has(.agenda-toggle){grid-template-columns:1fr;gap:12px;display:grid}.product-app .section-heading>.agenda-toggle{grid-template-columns:repeat(3,1fr);justify-self:stretch;display:grid}.calendar-month .fc{font-size:11px}.calendar-month .fc-daygrid-day-frame{min-height:72px}.calendar-month .fc-daygrid-day-number{min-width:30px;min-height:30px;padding:4px;font-size:12px}.calendar-month .fc-col-header-cell-cushion{padding:8px 0;font-size:11px}.calendar-month .calendar-event-content{width:100%;height:7px;min-height:7px;padding:0}.calendar-month .calendar-event-content>*{display:none!important}.calendar-month .fc-daygrid-event{background:var(--accent);border:0;border-radius:4px;min-height:9px;margin:2px 3px}.calendar-month .fc-daygrid-event-dot{display:none}.calendar-month .fc-daygrid-more-link{min-height:24px;padding:4px;font-size:11px;display:block}.calendar-month .fc-daygrid-day-events{margin-bottom:4px}.calendar-month .fc-scroller{overflow:visible!important}.month-visit-row time{flex-shrink:0;width:64px}.agenda-record-edit .grid-three{grid-template-columns:1fr}.calendar-details .property-form{padding:0}}.agenda-inline-edit{flex-basis:100%;width:100%}.agenda-inline-edit>summary{cursor:pointer;min-height:44px;color:var(--accent);align-items:center;font-size:13px;font-weight:600;display:flex}.agenda-inline-edit .stack{gap:18px;margin-top:16px;display:grid}.agenda-inline-edit label{gap:8px;display:grid}.agenda-inline-edit .stack>.button{z-index:2;min-height:48px;box-shadow:0 -8px 16px var(--bg-elevated);position:sticky;bottom:0}.job-card-actions:has(.agenda-inline-edit[open]){width:100%}.job-card-footer:has(.agenda-inline-edit[open]){display:block}.job-card-footer:has(.agenda-inline-edit[open]) .job-card-price{margin-bottom:12px}.month-day-select{min-width:44px;min-height:44px;color:var(--text-primary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.month-day-select:hover{background:var(--accent-subtle)}.month-day-select:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (max-width:600px){.calendar-month .fc-daygrid-day-number{min-width:44px;min-height:44px;padding:0}.calendar-month .fc-daygrid-event{pointer-events:none}.month-day-select{font-size:12px}}.calendar-usage{margin:8px 0}.calendar-usage summary{min-height:44px;color:var(--text-secondary);cursor:pointer;align-items:center;font-size:12px;display:flex}.calendar-usage summary:after{content:"+";color:var(--accent);margin-left:8px}.calendar-usage[open] summary:after{content:"−"}@media (max-width:600px){.section-heading:has(.agenda-toggle)>div:first-child{display:none}.product-app .section-heading:has(.agenda-toggle){margin-bottom:4px}.product-app .agenda-controls,.product-app .agenda-totals{margin:8px 0}.product-app .agenda-date-picker{margin:0}.product-app .agenda-date-picker>summary{min-height:36px;font-size:12px}.calendar-usage{margin:0}.calendar-usage summary{min-height:36px}}.dialog-sheet label .civil-date-input input:not([type=hidden]){padding-left:40px}.calendar-details .sheet-header{z-index:3;background:var(--bg-elevated);margin-bottom:12px;padding:18px 0;position:sticky;top:-24px}.calendar-details .sheet-header .button{min-width:44px;min-height:44px}.calendar-month .fc-daygrid-day-events{min-height:12px}.operation-save-notice{right:20px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:65;width:max-content;max-width:calc(100vw - 40px);box-shadow:var(--shadow-md);pointer-events:none;animation:6s forwards operation-feedback;position:fixed;margin:0!important}@keyframes operation-feedback{0%,85%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@media (max-width:600px){.product-app .page-heading:has(+#agenda){margin-bottom:16px}.product-app .page-heading:has(+#agenda)>p{display:none}.product-app .agenda-presentation{margin-top:8px}.product-app .section-heading:has(.agenda-toggle){margin-top:0}}.agenda-inline-actions{flex-basis:100%;width:100%}.agenda-inline-actions>summary{min-height:44px;color:var(--accent);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.agenda-inline-actions>summary svg{width:18px;height:18px}.agenda-inline-actions .stack{gap:18px;margin-top:16px;display:grid}.agenda-inline-actions label{gap:8px;display:grid}.job-card-actions:has(.agenda-inline-actions[open]){width:100%}.job-card-footer:has(.agenda-inline-actions[open]){display:block}.job-card-footer:has(.agenda-inline-actions[open]) .job-card-price{margin-bottom:12px}.week-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:12px 0;display:grid}.week-strip a{min-height:76px;color:var(--text-secondary);border-radius:12px;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;padding:6px 2px 8px;font-size:11px;line-height:1.2;display:flex}.week-strip a[aria-current=date]{background:var(--accent-subtle);color:var(--text-primary)}.week-strip a[data-today=true] b,.week-strip a[data-today=true] .week-hours{color:var(--accent)}.week-strip a[data-over=true] .week-hours{color:var(--warning)}.week-bar{align-items:flex-end;width:100%;height:28px;display:flex}.week-bar i{background:var(--accent);border-radius:4px 4px 2px 2px;width:100%;display:block}.week-hours{font-variant-numeric:tabular-nums;align-items:center;gap:3px;font-family:Geist Mono Variable,monospace;font-size:10px;display:flex}.week-untimed{background:var(--warning);border-radius:99px;width:5px;height:5px}.week-day-panel{display:none}@media (max-width:899px){.week-organizer[data-mobile-grid=false] .week-day-panel{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:16px;display:block;overflow:hidden}}.week-day-panel button{border:0;border-top:1px solid var(--border-subtle);text-align:left;width:100%;min-height:56px;color:var(--text-primary);font:inherit;background:0 0;align-items:center;gap:12px;padding:12px 16px;display:flex}.week-day-panel time{font-variant-numeric:tabular-nums;color:var(--accent);font-family:Geist Mono Variable,monospace;font-weight:650}.week-day-panel small{color:var(--text-secondary);font-size:12px;display:block}.week-day-panel p,.week-day-panel>a{align-items:center;min-height:44px;margin:0;padding:12px 16px;font-size:13px;display:flex}.week-day-panel>a{color:var(--accent)}.today-hero{border:1px solid var(--border-subtle);background:var(--bg-surface);box-shadow:var(--shadow-sm);border-radius:20px;gap:8px;margin:0 0 16px;padding:20px;display:grid}.today-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0;font-size:11px;font-weight:700}.today-hero time{letter-spacing:-.04em;font-family:Geist Mono Variable,monospace;font-size:40px;font-weight:600;line-height:1}.today-hero.upcoming time{font-size:28px}.today-hero time small{color:var(--text-secondary);letter-spacing:0;font-family:Plus Jakarta Sans Variable,sans-serif;font-size:14px;font-weight:550}.today-hero h2{margin:0;font-size:22px}.today-place,.today-meta{color:var(--text-secondary);margin:0;font-size:13px}.today-hero-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.today-hero-actions form{display:contents}.today-hero-actions .button,.today-hero-actions .quiet-action{min-height:48px}.today-missing{color:var(--text-secondary);font-size:12px}.profile-sentence{margin:8px 0 0;font-size:15px;line-height:1.45}.profile-icon-row{flex-wrap:wrap;gap:8px;display:flex}.profile-icon-row a{min-height:44px}.profile-overview .profile-icon-row{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-overview .profile-icon-row a{justify-content:center;align-items:center;gap:6px;display:inline-flex}.week-day-panel button[data-status=completed] time{color:var(--text-secondary)}.product-app .empty-state b{font-family:inherit;font-weight:650}.auth-alt{max-width:440px;color:var(--text-secondary);text-align:center;margin:0;font-size:14px;line-height:1.5}.auth-alt a,.auth-page .field-hint a,.ca-workspace-setup .field-hint a{color:var(--accent);text-underline-offset:3px;font-weight:650;text-decoration:underline}.auth-back{border-radius:var(--radius-sm);width:fit-content;min-height:44px;color:var(--text-secondary);justify-self:start;align-items:center;gap:6px;margin:-10px 0 0 -8px;padding:0 8px;font-size:14px;font-weight:600;display:inline-flex}.auth-back:hover{background:var(--bg-base);color:var(--text-primary)}.auth-account{border-top:1px solid var(--border-subtle);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding-top:12px;font-size:13px;display:flex}.auth-account span{overflow-wrap:anywhere;min-width:0}.auth-account b{color:var(--text-primary);font-weight:600}.auth-account .text-button{flex:none;padding:0 8px}.ca-workspace-setup .text-button{color:var(--accent);background:0 0}.auth-sent{text-align:center;justify-items:center}.auth-sent h2{margin:0;font-size:20px}.auth-sent p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.auth-sent b{color:var(--text-primary)}.auth-sent-icon{background:var(--accent-subtle);width:48px;height:48px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.auth-sent form{width:100%}.start-choices{gap:12px;display:grid}.start-choices a,.start-pending{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);min-height:76px;color:var(--text-primary);transition:border-color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px;display:grid}.start-choices a:hover{border-color:var(--accent);background:var(--accent-subtle)}.start-choices a:active,.start-pending:active{transform:scale(.99)}.start-choices span,.start-pending span{gap:4px;display:grid}.start-choices b,.start-pending b{font-size:15px}.start-choices small,.start-pending small{color:var(--text-secondary);font-size:13px;line-height:1.45}.start-choices svg:first-child,.start-pending svg{color:var(--accent)}.start-choices svg:last-child{color:var(--text-tertiary)}.start-pending{border-color:var(--accent);background:var(--accent-subtle);grid-template-columns:auto 1fr}.start-pending small{color:var(--accent);font-weight:650}.invite-card,.invite-ready{border:1px solid var(--accent);border-radius:var(--radius-lg);background:var(--accent-subtle);gap:8px;padding:18px;display:grid}.invite-card .eyebrow{color:var(--accent);letter-spacing:.12em;margin:0;font-size:11px}.invite-card h2{color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-size:22px;line-height:1.25}.invite-card p,.invite-ready p{color:var(--text-primary);margin:0;font-size:14px;line-height:1.55}.invite-card small{color:var(--text-secondary);font-size:13px}.code-input{letter-spacing:.18em;text-transform:uppercase;font-family:Geist Mono Variable,ui-monospace,monospace!important;font-size:20px!important}.join-email{grid-template-columns:auto 1fr;align-items:start;gap:10px;display:grid}.join-email p{margin:0}.join-email form{grid-column:1/-1}.invite-code{border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);letter-spacing:.14em;text-align:center;-webkit-user-select:all;user-select:all;padding:14px 12px;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:clamp(26px,8vw,34px);font-weight:600}.invite-actions{flex-wrap:wrap;gap:8px;display:flex}.invite-actions>*{flex:160px}.auth-page .field-hint{color:var(--text-secondary);margin:-6px 0 0;font-size:13px;line-height:1.5}.auth-page .button-dark{background:var(--accent);color:var(--text-inverse)}.auth-page .button-dark:hover{background:var(--accent-hover)}.auth-page .button-light{background:var(--accent-subtle);color:var(--accent)}.ca-workspace-setup .text-button{min-height:44px;padding:0 8px}
