.mode-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3);margin:var(--space-1) 0 var(--space-2)}.mode-btn{border-radius:var(--r-2);padding:var(--space-4);min-height:var(--persona-tile-minh);background:var(--card);border:1px solid var(--line);color:var(--text);text-align:left;display:flex;flex-direction:column;gap:var(--space-1);box-shadow:var(--shadow-card);min-width:0}.mode-btn .mi{font-size:1.5rem;line-height:1;margin-bottom:var(--space-5);color:var(--hue-teal-ink);width:40px;height:40px;border-radius:50%;background:var(--hue-teal-wash);display:flex;align-items:center;justify-content:center}.mode-btn[data-coach=fix-something] .mi{background:var(--hue-blue-wash);color:var(--hue-blue-ink)}.mode-btn[data-coach=my-home] .mi{background:var(--hue-teal-wash);color:var(--hue-teal-ink)}.mode-btn .mt{font-size:var(--t-heading);font-weight:700;letter-spacing:-.01em;line-height:1.2}.mode-btn .ms{font-size:var(--t-label);color:var(--dim);font-weight:500;line-height:1.35}.tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;grid-gap:var(--space-3);gap:var(--space-3)}.tile{position:relative;overflow:hidden;border-radius:var(--r-2);padding:var(--space-4);min-height:var(--persona-tile-minh);background:var(--card);border:1px solid var(--line);color:var(--text);text-align:left;display:flex;flex-direction:column;gap:var(--space-1);box-shadow:var(--shadow-card);min-width:0}.tile .ti{font-size:1.5rem;line-height:1;margin-bottom:var(--space-5);color:var(--hue-teal-ink);width:40px;height:40px;border-radius:50%;background:var(--hue-teal-wash);display:flex;align-items:center;justify-content:center}.tile .ti svg{display:block}.tile.hue-green .ti{background:var(--hue-green-wash);color:var(--hue-green-ink)}.tile.hue-blue .ti{background:var(--hue-blue-wash);color:var(--hue-blue-ink)}.tile.hue-amber .ti{background:var(--hue-amber-wash);color:var(--hue-amber-ink)}.tile.hue-violet .ti{background:var(--hue-violet-wash);color:var(--hue-violet-ink)}.tile.hue-rose .ti{background:var(--hue-rose-wash);color:var(--hue-rose-ink)}.settings-index-grid .tile .ti{background:var(--hs-navy);color:var(--hs-mint)}.tile .tt{font-size:var(--t-heading);font-weight:700;letter-spacing:-.01em;line-height:1.2;min-height:2.4em;display:flex;align-items:flex-start}.tile .ts,.tile .tt{overflow-wrap:anywhere;hyphens:auto;-webkit-hyphens:auto}.tile .ts{font-size:var(--t-label);color:var(--dim);font-weight:500;line-height:1.35}.tile:not(.add-tile):not(.incident-photo-tile):after{content:"›";position:absolute;right:14px;bottom:10px;color:var(--dim);font-size:28px;line-height:1;pointer-events:none}.tile-decor{position:absolute;right:-10px;bottom:-10px;width:68px;height:68px;color:var(--vib-action);opacity:.2;pointer-events:none}.tile-decor svg{width:100%;height:100%}.tile .tb{position:absolute;top:12px;right:12px;min-width:22px;height:22px;padding:0 5px;border-radius:var(--r-pill);background:var(--hs-slate-100);color:var(--hs-navy);font-size:var(--t-label);font-weight:700;line-height:22px;text-align:center}.tile.pri-red{border-color:var(--danger)}.tile.pri-amber{border-color:var(--gold-soft)}.tile.pri-green{border-color:var(--win-ink)}.tile .tb.pri-red{background:var(--danger);color:#fff}.tile .tb.pri-amber{background:var(--amber-wash);color:var(--gold-ink)}.tile .tb.pri-green{background:var(--hs-teal-soft);color:var(--win-ink)}.add-tile{border:1px dashed var(--line-strong);background:transparent;box-shadow:none;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--dim);font-size:var(--t-label);font-weight:600}.add-tile:disabled,.tile:disabled{opacity:.55}.add-tile,.tile{transition:transform var(--t-enter) var(--motion-enter),filter var(--t-enter) var(--motion-enter)}.add-tile:active:not(:disabled),.tile:active:not(:disabled){transition-duration:80ms;transition-timing-function:var(--motion-move);transform:scale(.97);filter:brightness(.94)}@media (prefers-reduced-motion:reduce){.add-tile:active:not(:disabled),.tile:active:not(:disabled){transform:none!important}}.emergency-btn{width:100%;margin:10px 0 4px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r-2);padding:12px 14px;box-shadow:var(--shadow-card)}.stat .v{font-size:var(--t-title);font-weight:var(--t-weight-heading);letter-spacing:-.02em}.stat .k{font-size:var(--t-label);font-weight:600;color:var(--dim);margin-top:3px}.stat.gold .v{color:var(--gold-ink)}.stat.mint .v{color:var(--win-ink)}.row{width:100%;text-align:left;display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-2);padding:13px 14px;margin-bottom:8px}.row .grow{flex:1 1;min-width:0}.row .t{font-size:var(--t-heading);font-weight:700;line-height:1.35}.row .s{font-size:var(--t-meta);color:var(--dim);margin-top:3px;line-height:1.4}.row .amt{font-size:var(--t-heading);font-weight:800;white-space:nowrap}.row.row-title-controls{align-items:flex-start}.row.row-title-controls>:last-child{flex:0 0 auto;margin-top:1px}.row.row-title-controls .grow{min-width:0}.row-controls{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;flex:0 0 auto}.row-title-tap{flex:1 1;min-width:0;display:flex;align-items:center;gap:12px;background:none;border:none;padding:0;margin:0;text-align:left;color:inherit;font:inherit;cursor:pointer}.row-chevron{display:block;width:8px;height:8px;flex:0 0 8px;margin-left:auto;border-right:2px solid;border-top:2px solid;color:var(--dim);transform:rotate(45deg)}.row-bin-btn{flex:0 0 var(--tap-min);width:var(--tap-min);height:var(--tap-min);border-radius:50%;background:var(--card);color:var(--dim);border:1px solid var(--line);box-shadow:var(--shadow-card);display:flex;align-items:center;justify-content:center;transition:transform var(--t-enter) var(--motion-enter),background-color var(--t-enter) var(--motion-enter),color var(--t-enter) var(--motion-enter)}.row-bin-btn:active:not(:disabled){transform:scale(.9);color:var(--text);background:var(--vib-press-wash)}.row-bin-btn:disabled{opacity:.5}@media (prefers-reduced-motion:reduce){.row-bin-btn:active{transform:none!important}}.swipe-row-section{margin:var(--space-section-before) calc(-1 * var(--space-page)) var(--space-card-gap)}.swipe-row-head{display:flex;align-items:baseline;justify-content:space-between;padding:0 var(--space-page)}.swipe-row-head .section-label{margin:0 0 var(--space-section-after)}.swipe-row-count{color:var(--dim);font-size:var(--t-meta)}.swipe-row{display:flex;gap:var(--space-card-gap);overflow-x:auto;padding:0 var(--space-page) 4px;scroll-snap-type:x mandatory;scrollbar-width:none}.swipe-row::-webkit-scrollbar{display:none}.swipe-row-card{flex:0 0 var(--swipe-card-width);scroll-snap-align:start}.swipe-summary-card{min-height:176px;height:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-2);padding:var(--persona-card-pad);box-shadow:var(--shadow-card)}.swipe-summary-card .btn{min-height:44px;margin-top:auto}.swipe-row-dots{display:flex;justify-content:center;gap:5px;margin-top:8px}.swipe-row-dots span{width:6px;height:6px;border-radius:var(--r-pill);background:var(--line-strong);transition:width .16s ease}.swipe-row-dots span.active{width:18px;background:var(--win-ink)}.incident-card .section-label{margin-top:0}.room-empty .btn{min-height:44px;margin-top:10px}.home-polish-card{overflow:hidden}.home-polish-heading{display:flex;align-items:center;gap:10px}.home-polish-heading .section-label{margin:0}.home-polish-icon{width:40px;height:40px;border-radius:50%;flex:0 0 40px;display:grid;place-items:center;background:var(--hue-teal-wash);color:var(--hue-teal-ink)}.home-polish-room{box-shadow:var(--shadow-card),inset 4px 0 0 var(--hue-teal-ink)}.home-polish-incident{box-shadow:var(--shadow-card),inset 4px 0 0 var(--hue-amber-ink)}.home-polish-incident .home-polish-icon{background:var(--hue-amber-wash);color:var(--hue-amber-ink)}.home-polish-timeline{box-shadow:var(--shadow-card),inset 4px 0 0 var(--win-ink)}.home-polish-timeline .home-polish-icon{background:var(--hue-green-wash);color:var(--hue-green-ink)}.home-polish-camera{background:var(--hs-slate-100);color:var(--hs-navy)}.room-suggestion{display:flex;align-items:center;justify-content:space-between;gap:12px}.room-suggestion .btn{flex:0 0 auto}@media (prefers-reduced-motion:reduce){.swipe-row-dots span{transition:none}}@media (min-width:768px) and (max-width:819px){.swipe-row-section{margin-left:-24px;margin-right:-24px}.swipe-row,.swipe-row-head{padding-left:24px;padding-right:24px}}@media (min-width:820px){.swipe-row-section{margin-left:0;margin-right:0}.swipe-row-head{padding:0}.swipe-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));overflow:visible;padding:0;scroll-snap-type:none}.swipe-row-card{min-width:0}.swipe-row-dots{display:none}}.today-first-task{border-color:var(--win-ink)}.today-task-row{align-items:flex-start}.today-task-row .chip{flex-shrink:0}.source-line{font-size:var(--t-meta);color:var(--dim);margin-top:3px;line-height:1.4}.row-highlight{animation:land-highlight 1.8s ease-out}@keyframes land-highlight{0%{background:var(--hs-teal-soft);box-shadow:0 0 0 2px var(--hs-teal-dark)}to{background:var(--card);box-shadow:0 0 0 0 rgba(13,148,136,0)}}.coach-target{border-radius:var(--r-2);animation:coach-pulse 1.6s ease-in-out infinite}@keyframes coach-pulse{0%,to{box-shadow:0 0 0 3px var(--hs-teal-dark)}50%{box-shadow:0 0 0 6px var(--hs-teal)}}@media (prefers-reduced-motion:reduce){.coach-target{animation:none;box-shadow:0 0 0 4px var(--hs-teal-dark)}}.chip{font-size:var(--t-label);font-weight:700;letter-spacing:.01em;border-radius:var(--r-pill);padding:5px 11px;white-space:nowrap;text-transform:lowercase}button.chip{min-width:44px;min-height:44px}.chip:first-letter{text-transform:uppercase}.card.action .chip{white-space:normal}.chip.mint,.chip.teal{background:var(--hs-teal-soft);color:var(--win-ink)}.chip.gold{background:var(--amber-wash);color:var(--gold-ink)}.chip.slate{background:var(--hs-slate-100);color:var(--dim)}.chip.tag,.chip.tag:first-letter{text-transform:none}.chip.ember{background:var(--amber-wash);color:var(--gold-ink)}.status-pill{display:inline-block;border-radius:var(--persona-pill-radius);padding:2px 10px;font-size:var(--t-label);font-weight:600;letter-spacing:.02em;color:#fff;white-space:nowrap}.status-pill.st-urgent{background:var(--status-urgent)}.status-pill.st-waiting{background:var(--status-waiting)}.status-pill.st-booked{background:var(--status-booked)}.status-pill.st-progress{background:var(--status-progress)}.status-pill.st-done{background:var(--status-done)}.status-pill.st-neutral{background:var(--hs-slate-100);color:var(--dim)}.card.action.stripe-urgent{box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-urgent)}.card.action.stripe-waiting{box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-waiting)}.card.action.stripe-booked{box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-booked)}.card.action.stripe-progress{box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-progress)}.card.action.stripe-done{box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-done)}.card-icon-chip{width:44px;height:44px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.card-icon-chip.hue-rose{background:var(--hue-rose-wash);color:var(--hue-rose-ink)}.card-icon-chip.hue-violet{background:var(--hue-violet-wash);color:var(--hue-violet-ink)}.card.emergency-pulse,.stagger-mount .card.emergency-pulse{animation:emergency-glow 1.8s ease-in-out infinite}@keyframes emergency-glow{0%,to{box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-urgent),0 0 0 0 var(--status-urgent-glow)}50%{box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-urgent),0 0 0 6px transparent}}@media (prefers-reduced-motion:reduce){.card.action.emergency-pulse{animation:none;box-shadow:var(--shadow-card),inset 4px 0 0 var(--status-urgent),0 0 0 4px var(--status-urgent-glow)}}.today-tag{font-size:var(--t-meta);font-weight:700;color:var(--dim);white-space:nowrap}a.row:after,button.row:not(.tap-flat):after{content:"";width:8px;height:8px;flex:0 0 8px;margin-left:auto;border-right:2px solid;border-top:2px solid;color:var(--dim);transform:rotate(45deg)}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);padding:9px 16px;font-size:calc(var(--t-heading) * var(--glove-scale));font-weight:700;min-height:var(--tap-min)}a.btn{text-decoration:none}.btn.primary{background:var(--emma-primary);color:#fff;border-radius:var(--persona-btn-radius);padding:12px 20px;min-height:var(--persona-btn-minh)}.btn.ghost,.btn.secondary,.btn.soft{background:var(--hs-slate-200);border:1px solid var(--line);color:var(--text)}.btn.small{padding:9px 16px;min-height:var(--tap-min);font-size:calc(var(--t-body) * var(--glove-scale));border-radius:var(--r-pill)}.btn.danger{background:var(--danger);color:#fff}.btn:disabled{opacity:1;background:var(--hs-slate-200);border-color:var(--line);color:var(--hs-slate-600);cursor:not-allowed}.btn.primary:disabled{background:var(--hs-navy-disabled);border-color:var(--hs-navy-disabled);color:#fff}.btn-row{display:flex;gap:var(--space-card-gap);margin-top:var(--space-card-gap);flex-wrap:wrap}.home-status-row-copy{min-width:0}.home-status-row-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-status-row-title .t{flex:1 1 160px;min-width:0}.home-status-row{align-items:flex-start}.home-status-row>.rag{margin-top:8px}.home-status-actions{display:grid;grid-gap:var(--space-2);gap:var(--space-2);margin-top:var(--space-3)}.home-status-actions .btn{width:100%;min-height:var(--tap-min)}.link-btn{display:inline-flex;align-items:center;min-height:var(--tap-min);padding:4px 2px;background:none;border:none;color:var(--vib-action);font-size:calc(var(--t-body) * var(--glove-scale));font-weight:700}.link-btn:active:not(:disabled){color:var(--vib-action-press);text-decoration:underline}.card a:not(.btn){color:var(--vib-action);text-decoration:none}.link-btn{min-width:44px}@media (max-width:430px){.btn-row{flex-direction:column}.btn-row>.btn{width:100%}}.bottomnav{display:flex;align-items:flex-end;justify-content:space-around;border-radius:var(--persona-nav-radius) var(--persona-nav-radius) 0 0;border-top:1px solid var(--persona-nav-bg);padding:0 4px var(--sab);background:var(--persona-nav-bg)}.nav-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 5px 0;justify-content:center;box-sizing:border-box;color:var(--dim);min-width:44px;min-height:49px;border-radius:var(--r-2);-webkit-touch-callout:none}.nav-item.active{color:var(--vib-action);background:none}.nav-item.active:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:28px;height:3px;background:var(--vib-action)}.nav-item.active .lbl{font-weight:800}.nav-item .ico{font-size:1.5rem;line-height:1;position:relative}.nav-item .lbl{font-size:calc(12px * var(--glove-scale));line-height:1.15;font-weight:600;letter-spacing:.1px;min-width:0;max-width:100%;overflow-wrap:anywhere;hyphens:auto;-webkit-hyphens:auto;text-align:center}.badge{position:absolute;top:-6px;right:-12px;background:var(--danger);color:#fff;font-size:var(--t-label);font-weight:800;line-height:1;border-radius:var(--r-pill);padding:3px 6px;min-width:18px;text-align:center;border:2px solid var(--card)}.company-job-object{background:var(--paper);border:0;border-radius:var(--r-2);padding:16px;margin:10px 0 14px}.company-paper-record{margin:14px 0 18px}.company-paper-record h4{margin:0 0 12px;font-size:var(--t-heading)}.company-timeline{list-style:none;margin:0;padding:0}.company-step{display:flex;gap:12px;padding:0 0 14px;position:relative}.company-step:not(:last-child):after{content:"";position:absolute;left:12px;top:25px;bottom:0;border-left:1px solid var(--line-strong)}.company-step-mark{width:25px;height:25px;flex:0 0 25px;border-radius:50%;display:grid;place-items:center;background:var(--hs-navy);color:#fff;font-size:var(--t-meta);font-weight:800;position:relative;z-index:1}.company-step b{font-size:var(--t-body)}.company-step p{margin:3px 0;font-size:var(--t-label);color:var(--dim)}.company-money-summary{background:var(--paper);border:0;border-radius:var(--r-2)}.contract-savings-hero{margin-bottom:16px}.contract-savings-hero .btn.primary{background:var(--hs-teal);color:var(--on-teal)}.contract-row-arrow{color:var(--dim);font-size:1.5rem;line-height:1}.company-money>.btn-row,.company-money>.tile-grid{margin-bottom:16px}.company-nav .nav-item{min-width:44px;padding-inline:4px}.mic-btn{-webkit-touch-callout:none;width:calc(52px * var(--glove-scale));height:calc(52px * var(--glove-scale));border-radius:50%;background:var(--vib-bright);color:#fff;font-size:1.6rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(107,170,34,.4);border:3px solid var(--card);touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;flex-shrink:0;margin-top:-20px;margin-bottom:4px}.mic-btn.recording{background:#d14836;animation:pulse 1.1s ease-in-out infinite}.mic-btn.busy{background:var(--hs-slate-400);color:var(--hs-navy);box-shadow:none}.mic-btn.speaking{background:var(--hs-teal);color:var(--hs-navy);animation:pulse-teal 1.3s ease-in-out infinite}.mic-btn[aria-current=page]{outline:3px solid var(--win-ink);outline-offset:3px}.mic-btn[aria-current=page]:focus-visible{outline-width:5px}@keyframes pulse{0%,to{box-shadow:0 0 0 0 rgba(209,72,54,.5)}50%{box-shadow:0 0 0 16px rgba(209,72,54,0)}}@keyframes pulse-teal{0%,to{box-shadow:0 0 0 0 rgba(13,148,136,.45)}50%{box-shadow:0 0 0 14px rgba(13,148,136,0)}}@keyframes hint-breathe{0%,to{opacity:1}50%{opacity:.55}}.mic-hint{text-align:center;font-size:var(--t-label);color:var(--dim);padding:4px 0;background:var(--card);border-top:1px solid var(--line);animation:hint-breathe 4.5s ease-in-out infinite;min-height:calc(var(--t-label) * 1.5 + 9px)}.mic-hint:empty{animation:none;min-height:0;padding:0;border-top:0}.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--nav-h, calc(105px + env(safe-area-inset-bottom))) + 13px);background:var(--hs-navy);color:#fff;font-size:var(--t-body);font-weight:600;line-height:1.4;padding:13px 18px;border-radius:var(--r-2);box-shadow:0 6px 22px rgba(15,23,42,.35);max-width:min(92vw,560px);text-align:center;z-index:60;animation:toast-up .22s ease-out}@keyframes toast-up{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.toast-undo{background:none;border:none;color:#fff;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer;margin-left:var(--space-3);padding:var(--space-1) 0;min-height:var(--tap-min,44px)}.milestone-toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--nav-h, calc(105px + env(safe-area-inset-bottom))) + 75px);background:var(--card);color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:var(--r-2);padding:14px 8px 14px 16px;display:flex;align-items:flex-start;gap:6px;max-width:min(92vw,420px);width:92vw;z-index:61;animation:milestone-in .26s cubic-bezier(.32,.72,.33,1)}.mt-body{flex:1 1;min-width:0}.mt-title{font-size:var(--t-heading);font-weight:700;line-height:1.3}.mt-line{font-size:var(--t-body);color:var(--dim);line-height:1.4;margin-top:3px}@keyframes milestone-in{0%{opacity:0;transform:translateX(-50%) translateY(14px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.install-card{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--nav-h, calc(105px + env(safe-area-inset-bottom))) + 13px);background:var(--card);color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:var(--r-2);padding:14px 16px;max-width:min(92vw,420px);width:92vw;z-index:58;animation:milestone-in .26s cubic-bezier(.32,.72,.33,1)}.install-card .ic-title{font-size:var(--t-heading);font-weight:700;line-height:1.3;margin-bottom:3px}.install-card .ic-line{font-size:var(--t-body);color:var(--dim);line-height:1.45}.install-card .ic-step{display:flex;align-items:center;gap:9px;font-size:var(--t-body);margin-top:8px}.install-card .ic-step svg{flex-shrink:0;color:var(--hs-teal-dark)}.digest-badge{display:inline-flex;align-items:center;gap:7px;background:var(--hs-teal-soft);color:var(--win-ink);border:none;border-radius:var(--r-pill);padding:9px 14px;margin:0 0 14px;font-size:var(--t-label);font-weight:700;min-height:48px}.digest-dot{width:8px;height:8px;border-radius:50%;background:var(--hs-teal-dark);flex-shrink:0}