.portal-app{--portal-ground:#FAFDF6;--portal-surface:#fff;--portal-inset:#f0f3ee;--portal-ink:#1B4332;--portal-muted:#59665e;--portal-line:#dde4dd;--portal-green:#2D6A4F;--portal-soft:#D8F3DC;background:var(--portal-ground);color:var(--portal-ink);font-size:15px}.dark .portal-app{--portal-ground:#111413;--portal-surface:#1b1f1d;--portal-inset:#242a26;--portal-ink:#f2f5f2;--portal-muted:#a8b3ab;--portal-line:#333c36;--portal-green:#52B788;--portal-soft:#24392e}.portal-app .app-card{background:var(--portal-surface);border-color:var(--portal-line);border-radius:16px;box-shadow:none}.portal-app .app-label{font-size:1rem;line-height:1.4;letter-spacing:-.015em}.portal-app .app-input{background:var(--portal-inset);border-color:var(--portal-line);color:var(--portal-ink);font-size:16px;border-radius:8px}.portal-app .btn-primary{background:var(--portal-green);color:#fff;border-radius:999px;box-shadow:none;font-size:.875rem}.dark .portal-app .btn-primary{color:#102619}.portal-app .btn-secondary{border:1px solid var(--portal-line);background:transparent;color:var(--portal-ink);border-radius:999px;font-size:.875rem}.portal-app button:disabled{cursor:not-allowed}.portal-app .portal-header{background:var(--portal-ground);color:var(--portal-ink);border:0;box-shadow:none}.portal-header>div{max-width:1240px;margin-inline:auto}.portal-header button{color:var(--portal-ink)}.portal-header button[aria-label="Account menu"]{min-width:44px;min-height:44px;background:var(--portal-inset)}.portal-brand{height:62px;width:124px;max-width:none;object-fit:contain;top:50%;transform:translate(-50%,-55.7%)}.portal-page{width:100%;max-width:760px;margin:0 auto;padding:12px 20px 24px}.portal-property-selector{position:relative;z-index:10;margin-bottom:12px}.portal-property-selector>div{margin:0}.portal-app .portal-property-selector #property-switcher{background:transparent;color:var(--portal-muted);border:0;padding:0;border-radius:0;min-height:44px;box-shadow:none}.portal-property-address,.portal-property-selector #property-switcher>span{font-size:13px;color:var(--portal-muted)}.portal-property-address{margin:0 0 16px;overflow-wrap:anywhere}.portal-page-heading{margin:0 0 20px}.portal-page-heading h1{color:var(--portal-ink);font-size:26px;line-height:1.2;letter-spacing:-.035em;font-weight:600;margin:0}.portal-page-heading>span{display:block;margin-top:6px;color:var(--portal-muted);font-size:14px}.portal-eyebrow{color:var(--portal-muted);font-size:12px;line-height:1.5;font-weight:500}.portal-content>*+*{margin-top:16px}.portal-home-stage{display:grid;gap:16px}.portal-home-stage>div:empty{display:none}.portal-app .portal-mower-home{padding:0;border:1px solid var(--portal-line);border-radius:16px}.portal-mower-overview{padding:16px 16px 0}.portal-mower-identity{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;color:var(--portal-muted)}.portal-mower-identity>span{min-width:0;overflow-wrap:anywhere}.portal-text-action{color:var(--portal-green);font-size:13px;font-weight:600;min-height:44px;display:inline-flex;align-items:center;flex-shrink:0}.portal-today{margin-top:4px}.portal-today>p:first-child{display:none}.portal-today h2{color:var(--portal-ink);font-size:24px;line-height:1.2;letter-spacing:-.035em;font-weight:600;margin:0 0 8px;max-width:26ch}.portal-today>p{color:var(--portal-muted);font-size:13px;line-height:1.5}.portal-today>p+p{margin-top:2px}.portal-today>button{margin-top:12px}.portal-today-attention h2{color:#B45309}.dark .portal-today-attention h2{color:#f3bd8e}.portal-property-visual{margin-top:16px;overflow:hidden;border-radius:8px;background:var(--portal-inset)}.portal-property-visual img{width:100%;height:148px}.portal-property-visual .portal-lawn-map{object-fit:contain}.portal-property-visual .portal-lawn-photo{object-fit:cover}.portal-property-visual figcaption{font-size:12px;color:var(--portal-muted);padding:6px 10px}.portal-lawn-overview{margin-top:16px;padding:12px 0 0;border-top:1px solid var(--portal-line)}.portal-lawn-overview-label{display:none}.portal-zone-summary{display:flex;flex-wrap:wrap;gap:10px 20px}.portal-zone-summary>span{font-size:13px;font-weight:600;overflow-wrap:anywhere}.portal-zone-summary small{display:block;font-size:12px;font-weight:400;color:var(--portal-muted);margin-top:2px}.portal-mower-reading{display:flex;flex-wrap:wrap;gap:8px 24px;color:var(--portal-muted);padding:16px 0 0}.portal-mower-reading strong{margin-top:3px;font-size:18px;font-weight:500}.portal-command-feedback{border-left:2px solid var(--portal-green);padding-left:10px;margin-top:12px;font-size:13px}.portal-app .portal-mower-home>div:last-of-type{padding:0 16px 16px;margin-top:14px}.portal-mower-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.portal-mower-actions button{min-height:44px;padding:10px 12px;white-space:nowrap}.portal-zone-toggle{width:100%;display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;border-bottom:1px solid var(--portal-line)}.portal-zone-toggle>span:last-child{margin-left:auto}.portal-latest-activity,.portal-next-up{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--portal-line)}.portal-content-home :is(.portal-next-up,.portal-latest-activity,.portal-receipt-compact,.portal-help-row){margin-top:0}.portal-next-up h2{font-size:14px;font-weight:600;margin:0}.portal-next-up div>p:last-child{color:var(--portal-muted);font-size:12px;margin-top:4px}.portal-latest-activity dd{margin-top:4px;font-size:14px;font-weight:500}.portal-receipt-compact{border-bottom:1px solid var(--portal-line);padding:10px 0}.portal-receipt-compact summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;cursor:pointer;font-size:13px;color:var(--portal-muted)}.portal-receipt-compact summary strong{color:var(--portal-ink);display:block;font-size:14px;font-weight:500}.portal-receipt-compact summary>span:last-child{color:var(--portal-green);font-weight:600}.portal-receipt-compact p{font-size:13px;color:var(--portal-muted);margin:6px 0}.portal-receipt-compact[open] summary>span:last-child{color:var(--portal-muted)}.portal-receipt{border-left:2px solid var(--portal-line);padding-left:14px}.portal-app .portal-receipt>div{border:0;background:transparent;padding:0}.portal-receipt>p{font-size:12px;text-transform:none;letter-spacing:0}.portal-activity-stats{padding:0 0 20px;border-bottom:1px solid var(--portal-line)}.portal-activity-stats dl{display:grid;grid-template-columns:1fr 1fr;gap:16px}.portal-app .portal-activity-stats dl>div{background:transparent;padding:0}.portal-activity-stats dt{font-size:12px}.portal-activity-stats dd{font-size:22px;margin-top:6px;font-weight:500}.portal-activity-stats svg{display:none}.portal-app .portal-mower-settings-card{background:transparent;border:0;padding:0;overflow:visible}.portal-lawn-device{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 8px;border-bottom:1px solid var(--portal-line)}.portal-lawn-device>div{display:flex;align-items:center;gap:8px;min-width:0}.portal-lawn-device h2{font-size:16px;font-weight:600;overflow-wrap:anywhere}.portal-lawn-device svg{flex-shrink:0;color:var(--portal-green)}.portal-app .portal-mower-settings-card>div:last-of-type{padding:0;margin-top:0}.portal-app .portal-mower-settings{border:0;padding-top:0}.portal-mower-settings>p:first-child{display:none}.portal-app .portal-mower-settings>details{border:0;border-bottom:1px solid var(--portal-line);border-radius:0;background:transparent;margin-top:0}.portal-mower-settings>details>summary{padding:12px 0;min-height:64px;gap:10px;display:grid;grid-template-columns:20px minmax(0,1fr) auto 16px}.portal-mower-settings>details>summary>span:first-child{width:20px;height:24px;background:transparent}.portal-mower-settings>details>summary>span:nth-child(2){font-size:14px}.portal-mower-settings>details>summary>span:nth-child(2)>span+span{display:none}.portal-mower-settings>details>summary>span:nth-child(3){max-width:105px;font-size:12px;font-weight:400;color:var(--portal-muted)}.portal-mower-settings>details[open]>div{padding:16px 0}.portal-app .portal-notes-editor{background:transparent;padding:0;border:0;border-bottom:1px solid var(--portal-line);border-radius:0}.portal-location-details summary,.portal-notes-editor summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;cursor:pointer;font-size:14px;font-weight:500}.portal-location-details{border-bottom:1px solid var(--portal-line)}.portal-location-details summary>span{font-size:13px;color:var(--portal-green)}.portal-location-details[open]{padding-bottom:12px}.portal-app .portal-location-details .app-card{padding:14px}.portal-help-row{display:flex;flex-wrap:wrap;gap:4px 20px;padding-top:10px}.portal-help-row button{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:13px;color:var(--portal-muted)}.portal-help-row button:last-child{color:var(--portal-green)}.portal-navigation{position:relative;z-index:50;flex-shrink:0;display:flex;align-items:stretch;border-top:1px solid var(--portal-line);background:var(--portal-ground);padding:6px max(12px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.portal-navigation button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:50px;font-size:11px;font-weight:500;color:var(--portal-muted);border-radius:8px}.portal-navigation button>span{display:flex;align-items:center;justify-content:center;height:26px;width:44px;border-radius:999px;transition:background-color .15s ease}.portal-navigation button svg{width:22px;height:22px}.portal-navigation button[aria-current=page]{color:var(--portal-green)}.portal-navigation button[aria-current=page]>span{background:var(--portal-soft)}.portal-account-links{border-block:1px solid var(--portal-line)}.portal-account-links>button,.portal-service-link{display:flex;align-items:center;gap:12px;width:100%;padding:16px 0;text-align:left;border-bottom:1px solid var(--portal-line);color:var(--portal-ink)}.portal-account-links>button:last-child{border-bottom:0}.portal-account-links>button>span,.portal-service-link>span{flex:1}.portal-account-links strong,.portal-service-link strong{display:block;font-size:14px;font-weight:600}.portal-account-links small,.portal-service-link small{display:block;color:var(--portal-muted);font-size:12px;margin-top:4px}.portal-account-links svg,.portal-service-link svg{color:var(--portal-green);flex-shrink:0}.portal-back{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--portal-muted);font-size:13px;margin-block:8px 16px}.portal-service-link{margin-top:8px}.portal-visits h3{font-size:14px}.portal-empty-inline{display:flex;align-items:center;gap:10px;color:var(--portal-muted);font-size:13px;min-height:44px}.portal-empty-inline svg{flex-shrink:0}.portal-app .portal-visit-row{background:transparent;box-shadow:none;border:0;border-radius:0;padding:14px 0;border-bottom:1px solid var(--portal-line)}.portal-visit-row p{font-size:14px}.portal-visit-row p+p{font-size:12px;margin-top:4px}.portal-visit-row span.rounded-full{font-size:11px;padding:3px 7px}.portal-visit-change{padding:0}.portal-visit-change input,.portal-visit-change textarea{border-radius:8px;font-size:16px}.portal-visit-change .btn-primary{min-height:44px}.portal-app summary::-webkit-details-marker{display:none}@media (max-width:359px){.portal-page{padding-inline:14px}.portal-mower-identity{gap:4px}.portal-text-action{font-size:12px}}@media (min-width:640px){.portal-page{padding:24px 32px}.portal-property-visual img{height:220px}}@media (min-width:1024px){.portal-navigation{display:none}.portal-page{padding-top:32px}}@media (prefers-reduced-motion:reduce){.portal-app *,.portal-app :after,.portal-app :before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.dark .portal-app :is([class~="dark:bg-gray-800"],[class~="dark:bg-gray-900"]){background-color:var(--portal-surface)}.dark .portal-app [class~="dark:bg-gray-950"]{background-color:var(--portal-ground)}.dark .portal-app :is([class~="dark:border-gray-700"],[class~="dark:border-gray-800"]){border-color:var(--portal-line)}.dark .portal-app :is([class~="dark:text-gray-300"],[class~="dark:text-gray-400"]){color:var(--portal-muted)}.portal-app .portal-mower-actions button:disabled{background:var(--portal-inset);color:var(--portal-muted);opacity:1;border:1px solid var(--portal-line)}.portal-page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-page-heading h1{min-width:0;overflow-wrap:anywhere}.portal-control-reason,.portal-section-note{color:var(--portal-muted);font-size:.875rem;line-height:1.5}.portal-control-reason{padding:10px 0}.portal-next-up small{display:block;color:var(--portal-muted);font-size:.8125rem;margin-top:4px}.portal-app .portal-referral{padding:20px;background:var(--portal-soft);color:var(--portal-ink);border:1px solid var(--portal-line)}.portal-referral-heading{display:flex;align-items:flex-start;gap:12px}.portal-referral-heading>svg{flex-shrink:0;color:var(--portal-green);margin-top:3px}.portal-referral-heading p,.portal-referral-terms{font-size:.875rem;line-height:1.5;margin-top:6px;color:var(--portal-muted)}.portal-referral-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-block:16px}.portal-referral-actions>*{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;font-size:.875rem}.portal-referral-rewards{border-top:1px solid var(--portal-line)}.portal-referral-rewards summary{min-height:44px;padding-block:12px;cursor:pointer;font-size:.875rem;font-weight:600}.portal-referral-rewards summary span{display:block;color:var(--portal-muted);font-size:.8125rem;font-weight:400;margin-top:4px}.portal-referral-rewards p{color:var(--portal-muted);margin-block:8px}.portal-referral-rewards li{display:flex;gap:12px;justify-content:space-between;padding-block:10px;font-size:.875rem;border-bottom:1px solid var(--portal-line)}.portal-report-context{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--portal-line);border-radius:8px;font-size:.875rem}.portal-report-context input{flex-shrink:0;width:20px;height:20px;margin-top:2px}.portal-report-context small{display:block;color:var(--portal-muted);overflow-wrap:anywhere;margin-top:4px}.portal-app :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:1rem}.portal-app :is(button,a,summary):focus-visible{outline:2px solid var(--portal-green);outline-offset:3px}.portal-app :is(.portal-next-up,.portal-latest-activity,.portal-lawn-device,.portal-visit-row>div){flex-wrap:wrap}.portal-app .portal-mower-settings>details>summary>span:nth-child(3){max-width:none;white-space:normal;overflow-wrap:anywhere}.portal-app .portal-navigation button{font-size:.75rem}.portal-photo-dialog{max-width:min(92vw,900px);max-height:90dvh;border:0;border-radius:16px;padding:12px;background:#111413;color:#f2f5f2}.portal-photo-dialog::backdrop{background:rgb(0 0 0/.8)}.portal-photo-dialog>button{display:block;margin:0 0 12px auto;min-height:44px}.portal-photo-dialog img{display:block;max-height:75dvh;max-width:100%;object-fit:contain}@media (max-width:360px){.portal-referral-actions>:is(a,button){flex:1 1 100%}.portal-app .portal-mower-actions{grid-template-columns:1fr}.portal-app .portal-mower-settings>details>summary{grid-template-columns:20px minmax(0,1fr) 16px}.portal-app .portal-mower-settings>details>summary>span:nth-child(3){grid-column:2;grid-row:2;text-align:left}.portal-app .portal-mower-settings>details>summary>svg{grid-column:3;grid-row:1}}@media (prefers-reduced-motion:reduce){.portal-app .animate-portal-tab-in{animation:none}.portal-app{scroll-behavior:auto}}.portal-referral-url{overflow-wrap:anywhere}.portal-page-heading-copy{min-width:0}.portal-page-heading-copy>p{max-width:44ch;margin-top:6px;color:var(--portal-muted);font-size:13px;line-height:1.5}.portal-content-lawn .portal-page-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}.portal-content-lawn .portal-page-heading-copy{display:contents}.portal-content-lawn .portal-page-heading-copy>p{grid-column:1/-1}.portal-content-lawn .portal-page-heading>.portal-text-action{grid-column:2;grid-row:1}.portal-home-photo-card-existing{padding:0;overflow:hidden}.portal-home-photo-summary{display:flex;min-height:84px;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;list-style:none}.portal-home-photo-summary img{width:64px;height:64px;flex-shrink:0;border-radius:10px;object-fit:cover}.portal-home-photo-summary h2{color:var(--portal-ink);font-size:15px;font-weight:600;line-height:1.35}.portal-home-photo-summary h2+span{display:block;margin-top:3px;color:var(--portal-muted);font-size:12px;line-height:1.4}.portal-home-photo-editor{padding:16px;border-top:1px solid var(--portal-line)}.portal-home-photo-card-empty{border-color:#bdd5c3}.dark .portal-home-photo-card-empty{border-color:#3f6650}.portal-content-lawn .portal-home-stage{gap:24px}.portal-lawn-section{display:grid;gap:12px;padding-top:20px;border-top:1px solid var(--portal-line)}.portal-lawn-areas{padding-top:0;border-top:0}.portal-lawn-section-header h2{margin:0;color:var(--portal-ink);font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.02em}.portal-lawn-section-header p{margin-top:4px;color:var(--portal-muted);font-size:13px;line-height:1.5}.portal-app .portal-content-lawn .portal-mower-settings-card{padding-top:20px;border-top:1px solid var(--portal-line);border-radius:0}.portal-lawn-device>div>div{min-width:0}.portal-lawn-device h2{font-size:18px;line-height:1.3;letter-spacing:-.02em}.portal-lawn-device h2+span{display:block;margin-top:2px;overflow-wrap:anywhere;color:var(--portal-muted);font-size:12px;line-height:1.4}@media (max-width:380px){.portal-home-photo-summary{align-items:flex-start}.portal-home-photo-summary .portal-text-action{min-height:32px}}.portal-app{--portal-gutter:20px;--portal-header-h:calc(3.5rem + env(safe-area-inset-top, 0px));--portal-amber:#F59E0B}@media (max-width:359px){.portal-app{--portal-gutter:14px}}@media (min-width:640px){.portal-app{--portal-gutter:32px}}.portal-page{padding-inline:var(--portal-gutter)}@media (max-width:359px){.portal-page{padding-inline:var(--portal-gutter)}}@media (min-width:640px){.portal-page{padding-inline:var(--portal-gutter)}}.portal-app .portal-header{transition:background-color .2s ease}.portal-app .portal-header-float{background:transparent}.portal-app .portal-header-float:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgb(17 20 19/.78),rgb(17 20 19/0))}.portal-home-stage>*{min-width:0}.portal-content-home .portal-page-heading,.portal-page[data-portal-tab=home] .portal-property-address{display:none}.portal-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(300px,45dvh,420px);margin-inline:calc(-1 * var(--portal-gutter));padding:0 var(--portal-gutter)}.portal-hero[data-has-photo=false]{min-height:0;padding-bottom:4px}.portal-page[data-portal-bleed=true]{padding-top:0}.portal-page[data-portal-bleed=true] .portal-hero[data-hero-leads=true]{margin-top:calc(-1 * var(--portal-header-h));padding-top:var(--portal-header-h)}.portal-app .portal-hero .portal-property-visual{position:absolute;inset:0;z-index:0;margin:0;border-radius:0;background:none}.portal-hero .portal-property-visual img{width:100%;height:100%}.portal-hero .portal-property-visual figcaption{display:none}.portal-hero[data-has-photo=true]:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgb(17 20 19/.55) 0,rgb(17 20 19/0) 22%,rgb(17 20 19/0) 30%,rgb(17 20 19/.58) 52%,rgb(17 20 19/.94) 78%,var(--portal-ground) 100%)}.portal-hero-copy{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;padding-bottom:2px}.portal-hero .portal-mower-identity{gap:12px}.portal-hero[data-has-photo=true] .portal-mower-identity{text-shadow:0 1px 12px rgb(17 20 19/.85)}.portal-hero[data-has-photo=true] .portal-mower-identity svg{filter:drop-shadow(0 1px 8px rgb(17 20 19/.85))}.portal-today{margin-top:0;display:flex;flex-direction:column;gap:8px}.portal-today>p:first-child{display:flex}.portal-today-state{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--portal-muted);margin:0}.portal-state-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 9px;border-radius:999px;border:1px solid var(--portal-line);background:rgb(17 20 19/.72);color:var(--portal-ink);font-size:12px;font-weight:500;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.portal-state-dot{width:8px;height:8px;border-radius:999px;background:var(--portal-green);flex-shrink:0}.portal-state-chip[data-tone=attention] .portal-state-dot{background:var(--portal-amber)}.portal-state-chip[data-tone=stale] .portal-state-dot{background:var(--portal-muted)}.portal-state-chip[data-live=true] .portal-state-dot{animation:portal-pulse 1.8s ease-out infinite}@keyframes portal-pulse{0%,to{box-shadow:0 0 0 0 rgb(82 183 136/.6)}70%{box-shadow:0 0 0 7px rgb(82 183 136/0)}}.portal-today-who{min-width:0;overflow-wrap:anywhere}.portal-app .portal-today h2{font-size:clamp(27px,8.4vw,34px);line-height:1.05;letter-spacing:-.025em;font-weight:600;margin:0;max-width:18ch;text-wrap:pretty}.portal-app .portal-today>p{margin:0;font-size:14px;line-height:1.5;color:#c3ccc5;max-width:34ch}.portal-app .portal-today .portal-today-age{font-size:12px;color:var(--portal-muted)}.portal-today-attention h2{color:#f3bd8e}.portal-today-thumb{display:none}.portal-today-note{font-size:13px;font-weight:500;color:var(--portal-ink);margin:0}.portal-today-action{align-self:flex-start;min-height:44px;padding:0 18px;border-radius:999px;background:var(--portal-green);color:#102619;font-size:15px;font-weight:600}.portal-today-action:disabled{opacity:.5}.portal-today-loading{gap:10px}.portal-skeleton-line{display:block;height:14px;border-radius:6px;background:var(--portal-inset);animation:portal-skeleton 1.4s ease-in-out infinite}.portal-skeleton-line-lg{height:26px;width:70%}.portal-skeleton-line-sm{width:45%}@keyframes portal-skeleton{0%,to{opacity:1}50%{opacity:.55}}.portal-app .portal-content-home .portal-mower-home{border:0;border-radius:0;background:transparent;overflow:visible}.portal-app .portal-content-home .portal-mower-overview{padding:0}.portal-app .portal-content-home .portal-mower-home>div:last-of-type{padding:0;margin-top:16px}.portal-app .portal-content-home .portal-mower-actions{display:flex;gap:10px;align-items:stretch}.portal-app .portal-content-home .portal-mower-actions button{min-height:52px;border-radius:999px;font-size:16px;font-weight:600;padding-inline:18px}.portal-app .portal-content-home .portal-mower-actions button:first-child{flex:1.6}.portal-app .portal-content-home .portal-mower-actions button:last-child{flex:0 1 auto;font-size:14px;font-weight:500}.portal-mower-reading{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;padding:10px 0 0;font-size:12px}.portal-mower-reading>span{min-width:0}.portal-mower-reading strong{display:block;margin-top:4px;font-family:var(--font-heading),sans-serif;font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.15;color:var(--portal-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.portal-plan{display:flex;flex-direction:column;gap:12px}.portal-plan-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.portal-plan-head h2{margin:0;font-size:19px;font-weight:600;letter-spacing:-.02em;color:var(--portal-ink)}.portal-plan-head>span{font-size:13px;font-weight:500;color:var(--portal-green)}.portal-plan-list{list-style:none;margin:0;padding:0;border-radius:16px;background:var(--portal-surface);border:1px solid var(--portal-line);overflow:hidden}.portal-plan-list>li{display:flex;flex-direction:column;gap:9px;padding:14px 16px}.portal-plan-list>li+li{border-top:1px solid var(--portal-line)}.portal-plan-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-plan-name{font-size:15px;font-weight:500;min-width:0;overflow-wrap:anywhere}.portal-plan-detail{font-size:13px;color:var(--portal-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.portal-plan-track{display:block;height:5px;border-radius:999px;background:var(--portal-inset);overflow:hidden}.portal-plan-fill{display:block;height:100%;border-radius:999px;background:var(--portal-green);transition:width .5s cubic-bezier(.16,1,.3,1)}.portal-plan-list>li[data-state=done] .portal-plan-detail{color:var(--portal-ink)}.portal-plan-list>li[data-state=mowing] .portal-plan-detail{color:var(--portal-green)}.portal-plan-list>li[data-state=not_reached] .portal-plan-fill{background:var(--portal-muted)}.portal-plan>small{color:var(--portal-muted);font-size:12px;line-height:1.5}.portal-lawn-controls{display:flex;flex-direction:column;gap:14px}.portal-control-card{display:flex;flex-direction:column;gap:16px;padding:18px;border:1px solid var(--portal-line);border-radius:20px;background:var(--portal-surface)}.portal-control-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-control-head h3{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;color:var(--portal-ink)}.portal-control-head h3 svg{color:var(--portal-green);flex-shrink:0}.portal-control-head>span{font-size:12px;color:var(--portal-muted);text-align:right}.portal-control-note{margin:0;font-size:12px;line-height:1.5;color:var(--portal-muted)}.portal-chips{display:flex;flex-wrap:wrap;gap:6px}.portal-app .portal-chips button{min-height:36px;padding:7px 12px;border:1px solid var(--portal-line);border-radius:999px;background:transparent;color:var(--portal-ink);font-size:13px;font-weight:500}.portal-app .portal-chips button[data-active=true]{border-color:var(--portal-green);background:var(--portal-soft);color:var(--portal-green)}.portal-stepper{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-app .portal-stepper>button{width:56px;height:56px;flex-shrink:0;border:1px solid var(--portal-line);border-radius:999px;background:var(--portal-inset);color:var(--portal-ink);font-size:26px;line-height:1}.portal-app .portal-stepper>button:disabled{opacity:.4}.portal-stepper>div{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.portal-stepper strong{font-family:var(--font-heading),sans-serif;font-size:clamp(40px,13vw,56px);font-weight:600;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.portal-stepper span{font-size:12px;color:var(--portal-muted);text-align:center;text-wrap:pretty}.portal-range{height:6px;background:var(--portal-inset)}.portal-range,.portal-range>span{display:block;border-radius:999px}.portal-range>span{height:100%;background:var(--portal-green);transition:width .3s cubic-bezier(.16,1,.3,1)}.portal-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.portal-app .portal-days button{height:44px;border:1px solid var(--portal-line);border-radius:12px;background:var(--portal-inset);color:var(--portal-muted);font-size:13px;font-weight:600}.portal-app .portal-days button[data-on=true]{border-color:var(--portal-green);background:var(--portal-green);color:#102619}.portal-app .portal-days button:disabled{opacity:.5}.portal-control-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--portal-line)}.portal-control-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.portal-control-row span{font-size:12px;color:var(--portal-muted)}.portal-control-row strong{font-family:var(--font-heading),sans-serif;font-size:22px;font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}.portal-app .portal-control-send{display:flex;align-items:center;justify-content:center;min-height:48px;border:0;border-radius:999px;background:var(--portal-green);color:#102619;font-size:15px;font-weight:600}.portal-app .portal-control-send-quiet{background:var(--portal-inset);color:var(--portal-ink);border:1px solid var(--portal-line)}.portal-app .portal-control-send:disabled{opacity:.5}.portal-control-detail>details{border-radius:20px;overflow:hidden}.portal-app .portal-control-detail [class*=rounded-lg][class*=bg-pale-green],.portal-app .portal-control-detail [class*=rounded-xl][class*=bg-pale-green]{background:var(--portal-soft);color:var(--portal-green)}.portal-rows{border-radius:16px;background:var(--portal-surface);border:1px solid var(--portal-line);overflow:hidden}.portal-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px}.portal-row+.portal-row{border-top:1px solid var(--portal-line)}.portal-row-copy{min-width:0}.portal-row-title{font-size:15px;font-weight:500;color:var(--portal-ink);margin:0;overflow-wrap:anywhere}.portal-row-meta{font-size:12px;color:var(--portal-muted);margin:3px 0 0;line-height:1.45}.portal-row-value{flex-shrink:0;margin:0;font-size:13px;color:var(--portal-muted);font-variant-numeric:tabular-nums}.portal-row[data-zone-complete=true] .portal-row-value{color:var(--portal-ink)}.portal-today-card{display:flex;flex-direction:column;gap:8px;padding:18px;border-radius:16px;border:1px solid var(--portal-line);background:var(--portal-surface)}.portal-today-card h2{font-size:20px;font-weight:600;letter-spacing:-.02em;margin:0}.portal-today-card p{margin:0;font-size:14px;line-height:1.5;color:var(--portal-muted)}@media (prefers-reduced-motion:reduce){.portal-skeleton-line,.portal-state-chip[data-live=true] .portal-state-dot{animation:none}}.portal-app .portal-lawn-controls .btn-primary:disabled{background:var(--portal-inset);color:var(--portal-muted);border:1px solid var(--portal-line);opacity:1}.portal-content-lawn .portal-page-heading{margin-bottom:12px}.portal-content-lawn .portal-home-stage{gap:18px}.portal-app .portal-content-lawn .portal-mower-settings-card{padding-top:16px}.portal-app .portal-content-lawn .portal-mower-settings{padding-top:12px;border-top:0}.outdoor .portal-app :is(.text-gray-400,.text-gray-500,.text-slate){color:var(--portal-muted)}.outdoor .portal-app :is(.text-forest,h1,h2,h3,h4,h5,h6),.outdoor .portal-app :is(.text-gray-600,.text-gray-700,.text-gray-800,.text-gray-900){color:var(--portal-ink)}.outdoor .portal-app :is(.text-emerald,.text-mint,.text-sage){color:var(--portal-green)}.outdoor .portal-app .portal-today-attention h2{color:#f3bd8e}.portal-plan-track[data-unknown=true]{background-image:repeating-linear-gradient(-45deg,var(--portal-line) 0 4px,transparent 4px 9px)}.portal-hero-meta{margin:0;font-size:12px;color:var(--portal-muted);overflow-wrap:anywhere}.portal-hero[data-has-photo=true] .portal-hero-meta{text-shadow:0 1px 12px rgb(17 20 19/.85)}.portal-reading{display:flex;flex-direction:column;align-items:center;gap:2px}.portal-reading strong{font-family:var(--font-heading),sans-serif;font-size:clamp(40px,13vw,56px);font-weight:600;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.portal-reading span{font-size:12px;color:var(--portal-muted);text-align:center;text-wrap:pretty}