:root{--paper:#fbfaf6;--canvas:#e8ede6;--ink:#151814;--muted:#61665f;--green:#285a3b;--green-dark:#1f4c31;--green-soft:#edf0e8;--sage:#84947c;--terracotta:#cf6f3c;--line:#d7dccf;--card:#fffefa;--shadow:0 12px 32px #2635271a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--page-title-size:clamp(2rem, 8.6vw, 2.4rem);--welcome-title-size:clamp(2rem, 8.4vw, 2.35rem);--page-subtitle-size:1.04rem;--card-title-size:1.35rem;--dialog-title-size:1.5rem;--button-text-size:1.125rem;--control-text-size:1.125rem;--body-large-size:1.05rem;--body-size:1rem;--small-text-size:.875rem;--caption-text-size:.78rem;--font-regular:450;--font-medium:550;--font-semibold:650;--font-bold:700;--line-tight:1.1;--line-compact:1.3;--line-body:1.45;--line-subtitle:1.48;--tracking-title:-.045em;--tracking-dialog:-.035em;--heading-subtitle-gap:var(--space-2);--heading-content-gap:var(--space-6);--back-heading-gap:var(--space-4);--screen-inline-padding:var(--space-6);--screen-inline-total:calc(var(--screen-inline-padding) + var(--screen-inline-padding));--control-height:66px;--primary-button-height:64px;--segmented-control-height:52px;--field-label-gap:var(--space-2);--field-spacing:var(--space-6);--list-gap:var(--space-3);--section-gap:var(--space-5);--card-content-gap:var(--space-3);--control-inline-padding:var(--space-4);--photo-label-size:var(--body-size);--photo-caption-size:var(--caption-text-size);--floating-action-clearance:calc(var(--primary-button-height) + var(--space-7));--desktop-frame-padding:calc(var(--space-6) + var(--space-1));--desktop-frame-total:calc(var(--space-9) + var(--space-2));--optical-icon-offset:1px}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--body-size);font-weight:var(--font-regular);line-height:var(--line-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,label,select{-webkit-tap-highlight-color:transparent}button{color:inherit}input::placeholder{color:#92978f;font-size:var(--small-text-size);opacity:1}.page-shell{min-height:100svh}.app-shell{background:radial-gradient(circle at 50% 30%, #f6eed12e, transparent 36%), var(--paper);width:100%;min-height:100svh;position:relative;overflow:hidden}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.screen{min-height:100svh;padding:max(var(--space-7), env(safe-area-inset-top)) var(--screen-inline-padding) max(var(--space-6), env(safe-area-inset-bottom));flex-direction:column;animation:.24s ease-out screen-in;display:flex}@keyframes screen-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.location-enter-from-menu{animation:.19s cubic-bezier(.22,.8,.3,1) both location-screen-enter}.location-default{animation:none;transform:none}.location-exit-to-menu{pointer-events:none;animation:.15s ease-in both location-screen-exit}@keyframes location-screen-enter{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:none}}@keyframes location-screen-exit{0%{opacity:1;transform:none}to{opacity:0;transform:translate(22px)}}@keyframes walks-screen-in{0%{opacity:0}to{opacity:1}}h1,h2,p{margin:0}h1{font-size:var(--page-title-size);font-weight:var(--font-bold);line-height:var(--line-tight);letter-spacing:var(--tracking-title)}h2,strong{font-weight:var(--font-bold)}.welcome-copy{z-index:1;padding-top:clamp(0px, 1.2svh, var(--space-2));text-align:center;position:relative}.paw-mark{width:54px;height:54px;margin:0 auto var(--space-3);color:var(--sage);place-items:center;display:grid}.paw-mark svg{fill:currentColor;stroke-width:1.4px;width:52px;height:52px}.welcome-copy h1{font-size:var(--welcome-title-size);white-space:nowrap}.welcome-copy p,.screen-heading p,.walks-header p{color:var(--muted);font-size:var(--page-subtitle-size);line-height:var(--line-subtitle)}.welcome-copy p{max-width:350px;margin:var(--heading-subtitle-gap) auto 0}.hero-wrap{min-height:clamp(220px,40svh,320px);margin:0 calc(-1 * var(--screen-inline-padding)) var(--space-2);flex:1;position:relative}.hero-wrap:before,.hero-wrap:after{z-index:1;content:"";pointer-events:none;height:52px;position:absolute;left:0;right:0}.hero-wrap:before{background:linear-gradient(to bottom, var(--paper), transparent);top:0}.hero-wrap:after{background:linear-gradient(to bottom, transparent, var(--paper));bottom:0}.hero-wrap img{object-fit:cover;object-position:center}.welcome-screen{height:100svh;min-height:0;padding-top:max(var(--space-4), env(safe-area-inset-top));padding-bottom:max(var(--space-3), env(safe-area-inset-bottom));overflow:hidden}.welcome-screen .primary-button{min-height:var(--primary-button-height);flex:none}.primary-button{min-height:var(--primary-button-height);justify-content:center;align-items:center;gap:var(--space-2);background:var(--green);color:#fff;cursor:pointer;width:100%;font-size:var(--button-text-size);font-weight:var(--font-bold);line-height:var(--line-tight);border:0;border-radius:15px;transition:transform .14s,background .14s;display:inline-flex;box-shadow:0 8px 18px #285a3b26}.primary-button:not(:disabled):hover{background:var(--green-dark)}.primary-button:not(:disabled):active{transform:scale(.985)}.primary-button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none}.primary-button svg{width:21px}.icon-button,.menu-button{width:48px;height:48px;color:var(--green-dark);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.icon-button svg{width:28px;height:28px}.back-button{margin:calc(-1 * var(--space-1)) 0 var(--back-heading-gap) calc(-1 * var(--space-2))}.screen-heading h1{margin-bottom:var(--heading-subtitle-gap)}.screen-heading p{max-width:330px}.location-form,.pet-form,.announce-form{width:100%;margin-top:var(--heading-content-gap);flex-direction:column;flex:1;display:flex}.field{gap:var(--field-label-gap);width:100%;min-width:0;margin-bottom:var(--field-spacing);font-size:var(--body-size);font-weight:var(--font-semibold);line-height:var(--line-compact);display:grid}.select-wrap{display:block;position:relative}.select-wrap select,.custom-select-trigger,.text-field input{width:100%;height:var(--control-height);min-height:var(--control-height);color:var(--ink);font-size:var(--control-text-size);font-weight:var(--font-regular);line-height:var(--line-compact);background:#ffffff73;border:1.5px solid #8b9b85;border-radius:13px;outline:none;transition:border-color .14s,box-shadow .14s}.select-wrap select{-webkit-appearance:none;appearance:none;padding:0 52px 0 var(--control-inline-padding)}.custom-select{min-width:0;font-weight:var(--font-regular);position:relative}.custom-select-trigger{justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--control-inline-padding);cursor:pointer;text-align:left;display:flex}.custom-select-trigger span{overflow-wrap:anywhere;min-width:0}.custom-select-trigger svg{width:22px;height:22px;color:var(--green);flex:none}.custom-select-placeholder{color:#92978f;font-size:var(--small-text-size)}.custom-select-trigger:disabled{cursor:not-allowed;opacity:.72}.select-wrap svg{width:22px;color:var(--green);pointer-events:none;position:absolute;top:50%;right:17px;transform:translateY(-50%)}.select-wrap select:focus,.text-field input:focus{border-color:var(--green);box-shadow:0 0 0 4px #285a3b1a}.custom-select-trigger:focus-visible{border-color:var(--green);box-shadow:0 0 0 4px #285a3b1a}.custom-select-trigger[aria-invalid=true],.text-field input[aria-invalid=true]{border-color:#b94738}.validation-hint{width:100%;margin:calc(-1 * var(--space-1)) 0 0;color:#b13f31;font-size:var(--caption-text-size);font-weight:var(--font-medium);line-height:var(--line-compact);text-align:left;display:block}.field:has(.validation-hint){margin-bottom:max(var(--space-2), calc(var(--field-spacing) - var(--space-4)))}.form-submit{margin-top:auto}.walks-screen{height:100svh;min-height:0;padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));padding-top:max(var(--space-8), env(safe-area-inset-top));animation-name:walks-screen-in;position:relative;overflow:hidden}.walks-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex:none;display:flex}.walks-header h1{margin-bottom:var(--heading-subtitle-gap);font-size:var(--page-title-size)}.walks-heading-copy--covered{animation:.2s ease-out both walks-heading-hide}.walks-heading-copy--instant{opacity:.18}.walks-heading-copy--revealing{animation:.18s ease-in both walks-heading-show}@keyframes walks-heading-hide{0%{opacity:1}to{opacity:.18}}@keyframes walks-heading-show{0%{opacity:.18}to{opacity:1}}.menu-button{background:#ffffff80;border:1px solid #c6cdbd;border-radius:13px}.menu-button svg{width:27px;height:27px}.filters{gap:var(--space-2);margin:var(--heading-content-gap) 0 var(--field-spacing);flex:none;grid-template-columns:repeat(4,1fr);display:grid;position:relative}.filter-indicator{z-index:1;width:calc((100% - (var(--space-2) + var(--space-2) + var(--space-2))) / 4);background:var(--green);pointer-events:none;border-radius:13px;position:absolute;top:0;bottom:0;box-shadow:0 5px 12px #285a3b29;transition:left .24s cubic-bezier(.22,.8,.3,1)!important}.filters button{min-height:var(--segmented-control-height);background:var(--green-soft);cursor:pointer;font-size:var(--body-size);font-weight:var(--font-regular);line-height:var(--line-compact);border:0;border-radius:13px;position:relative;transition:color .24s cubic-bezier(.22,.8,.3,1)!important}.filters button>span{z-index:2;position:relative}.filters button.active{color:#fff;transition-delay:45ms!important}.walk-list{align-content:start;gap:var(--list-gap);overscroll-behavior:contain;min-height:0;padding:0 0 var(--floating-action-clearance);scrollbar-color:#285a3b59 transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch;flex:auto;display:grid;overflow-y:auto}.walk-list-content{align-content:start;gap:var(--list-gap);will-change:transform, opacity;display:grid}.walk-list-content.exit-left{animation:.12s ease-in both walk-list-exit-left!important}.walk-list-content.exit-right{animation:.12s ease-in both walk-list-exit-right!important}.walk-list-content.enter-left{animation:.17s cubic-bezier(.22,.8,.3,1) both walk-list-enter-left!important}.walk-list-content.enter-right{animation:.17s cubic-bezier(.22,.8,.3,1) both walk-list-enter-right!important}@keyframes walk-list-exit-left{to{opacity:0;transform:translate(-28px)}}@keyframes walk-list-exit-right{to{opacity:0;transform:translate(28px)}}@keyframes walk-list-enter-left{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:none}}@keyframes walk-list-enter-right{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}.empty-walks{min-height:180px;padding:var(--space-7);color:var(--muted);font-size:var(--body-large-size);line-height:var(--line-body);text-align:center;place-items:center;display:grid}.floating-walk-button{z-index:10;bottom:max(var(--space-4), env(safe-area-inset-bottom));left:var(--screen-inline-padding);width:calc(100% - var(--screen-inline-total));min-height:var(--primary-button-height);position:absolute;box-shadow:0 12px 28px #1f4c314d}.floating-walk-button:active{transform:scale(.985)}.walk-card{align-items:center;gap:var(--card-content-gap);min-height:148px;padding:var(--space-3);background:var(--card);border:1px solid #ece8df;border-radius:18px;grid-template-columns:94px minmax(0,1fr);display:grid;box-shadow:0 7px 20px #454a3d13}.dog-avatar{object-fit:cover;background:#e5e1cc;border-radius:50%;width:94px;height:94px}.walk-info{min-width:0}.walk-info h2{margin-bottom:var(--space-1);font-size:var(--card-title-size);line-height:var(--line-tight)}.walk-info p{gap:var(--space-2);color:#3f433e;min-width:0;line-height:var(--line-compact);display:flex}.walk-info .pet-meta{margin-top:var(--space-1);color:#4f534e;font-size:var(--caption-text-size);text-overflow:ellipsis;white-space:nowrap;align-items:center;overflow:hidden}.walk-info p:not(.pet-meta){margin-top:var(--space-2);font-size:var(--small-text-size);align-items:flex-start}.walk-info svg{width:18px;height:18px;color:var(--green);fill:none;flex:none}.walk-info .location-icon{fill:var(--green)}.walk-info .pet-meta svg{stroke-width:2px}.walk-info .time-icon{color:var(--terracotta);fill:none;stroke-width:2.5px}.menu-overlay{z-index:20;-webkit-backdrop-filter:blur(2px);will-change:opacity;background:#1c2a202e;animation:.2s ease-out both menu-overlay-in;position:absolute;inset:0;overflow:hidden}@keyframes menu-overlay-in{0%{opacity:0}to{opacity:1}}.drawer{width:100%;height:100%;min-height:100%;padding:max(var(--space-8), env(safe-area-inset-top)) var(--screen-inline-padding) var(--space-6);box-shadow:none;will-change:opacity, transform;background:#fbfaf6fb;flex-direction:column;animation:.22s cubic-bezier(.22,.8,.3,1) both menu-content-in;display:flex;overflow:hidden}@keyframes menu-content-in{0%{opacity:0;transform:translateY(10px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}.menu-overlay--instant,.menu-overlay--instant .drawer{animation:none!important}.menu-overlay--closing{pointer-events:none;animation:.18s ease-in both menu-overlay-out}.menu-overlay--closing .drawer{animation:.18s cubic-bezier(.4,0,.78,.2) both menu-content-out}@keyframes menu-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes menu-content-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(10px)scale(.992)}}.drawer-header{margin-bottom:var(--heading-subtitle-gap);flex:none;display:flex;position:relative}.drawer-header .icon-button{top:50%;right:calc(-1 * var(--space-2));position:absolute;transform:translateY(-50%)}.drawer-body{overscroll-behavior:contain;min-height:0;padding-bottom:var(--space-3);scrollbar-color:#285a3b59 transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;display:flex;overflow-y:auto}.developer-link{padding:var(--space-6) var(--space-3) var(--space-1);color:var(--muted);font-size:var(--caption-text-size);font-weight:var(--font-regular);line-height:var(--line-compact);align-self:center;margin-top:auto;text-decoration:none}:is(.developer-link:hover,.developer-link:focus-visible){color:var(--green);text-underline-offset:3px;text-decoration:underline}.drawer-header h1{letter-spacing:var(--tracking-title)}.drawer-label{margin-bottom:var(--heading-content-gap);color:var(--muted);font-size:var(--page-subtitle-size);line-height:var(--line-subtitle);flex:none}.location-card{gap:var(--section-gap);width:100%;padding:var(--space-5) var(--space-4) var(--space-4);text-align:left;cursor:pointer;background:#f2f3ebb8;border:1.5px solid #aeb8a7;border-radius:16px;flex:none;display:grid}.location-card>span:not(.change-location){gap:var(--space-1);display:grid}.location-card small{color:var(--muted);font-size:var(--caption-text-size)}.location-card strong{font-size:var(--body-large-size);font-weight:var(--font-medium)}.change-location{padding-top:var(--space-1);color:var(--green);font-size:var(--small-text-size);font-weight:var(--font-semibold);justify-content:space-between;align-items:center;display:flex}.change-location svg{width:19px}.menu-pets{margin-top:var(--section-gap);flex-direction:column;display:flex}.menu-pets-title{margin-bottom:var(--space-3)}.menu-pet-list{gap:var(--list-gap);padding-bottom:var(--space-1);display:grid}.menu-pet{align-items:center;gap:var(--card-content-gap);min-height:68px;padding:var(--space-2) var(--space-3);background:#ffffff7a;border:1px solid #e3e5dc;border-radius:14px;grid-template-columns:52px minmax(0,1fr);display:grid}.menu-pet img{object-fit:cover;border-radius:50%;width:52px;height:52px}.menu-pet>span{gap:var(--space-1);min-width:0;display:grid}.menu-pet strong{font-size:var(--body-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-pet small,.menu-pets-empty,.menu-section-empty{color:var(--muted);font-size:var(--small-text-size)}.menu-pets-empty,.menu-section-empty{padding:var(--space-4) var(--space-3);background:var(--green-soft);border-radius:12px}.menu-walks{margin-top:var(--section-gap)}.menu-section-title{margin-bottom:var(--space-3)}.menu-walk-list{gap:var(--list-gap);display:grid}.menu-walk{align-items:center;gap:var(--card-content-gap);min-height:82px;padding:var(--space-2);background:#ffffff7a;border:1px solid #e3e5dc;border-radius:14px;grid-template-columns:50px minmax(0,1fr) 40px;display:grid}.menu-walk>img{object-fit:cover;border-radius:50%;width:50px;height:50px}.menu-walk-info{gap:var(--space-1);min-width:0;display:grid}.menu-walk-info strong{font-size:var(--body-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-walk-info small{align-items:center;gap:var(--space-1);min-width:0;color:var(--muted);font-size:var(--caption-text-size);text-overflow:ellipsis;white-space:nowrap;display:flex;overflow:hidden}.menu-walk-info svg{width:14px;height:14px;color:var(--green);flex:none}.delete-walk-button{color:#737873;cursor:pointer;background:#eceeea;border:0;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.delete-walk-button svg{width:20px;height:20px}.delete-pet-button{color:#737873;cursor:pointer;background:#eceeea;border:0;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.delete-pet-button svg{width:20px;height:20px}.drawer-link{align-items:center;gap:var(--card-content-gap);width:100%;min-height:68px;margin-top:var(--section-gap);padding:var(--space-2) var(--space-3);text-align:left;cursor:pointer;font-size:var(--body-size);background:#ffffff7a;border:1px solid #e3e5dc;border-radius:14px;flex:none;grid-template-columns:48px 1fr 22px;display:grid}.drawer-link-icon{background:var(--green-soft);width:46px;height:46px;color:var(--green);border-radius:12px;place-items:center;display:grid}.drawer-link-icon svg{fill:none;stroke:currentColor;width:26px}.four-toe-paw{width:30px;height:30px;color:var(--green);display:block;position:relative}.paw-toe,.paw-pad{background:currentColor;display:block;position:absolute}.paw-toe{border-radius:50%;width:6px;height:9px}.paw-toe-one{top:5px;left:2px;transform:rotate(-27deg)}.paw-toe-two{top:1px;left:9px;transform:rotate(-9deg)}.paw-toe-three{top:1px;right:8px;transform:rotate(9deg)}.paw-toe-four{top:5px;right:1px;transform:rotate(27deg)}.paw-pad{border-radius:52% 52% 46% 46%/58% 58% 42% 42%;height:15px;bottom:2px;left:5px;right:5px}.pet-screen{height:100svh;overflow:hidden}.saving-overlay{z-index:15;align-content:center;justify-items:center;gap:var(--space-6);padding:var(--space-7);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);text-align:center;background:#fbfaf6f0;animation:.14s ease-out both saving-overlay-in;display:grid;position:absolute;inset:0}.saving-overlay p{max-width:290px;font-size:var(--body-large-size);font-weight:var(--font-semibold);line-height:var(--line-body)}.delete-confirm-overlay{z-index:40;padding:var(--space-6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181f1a6b;place-items:center;animation:.14s ease-out both menu-overlay-in;display:grid;position:absolute;inset:0}.delete-confirm{width:100%;max-width:350px;padding:var(--space-6);background:var(--paper);border:1px solid #27402d1f;border-radius:20px;box-shadow:0 22px 55px #141f173d}.delete-confirm h2{margin-bottom:var(--space-3);font-size:var(--dialog-title-size);line-height:var(--line-tight);letter-spacing:var(--tracking-dialog)}.delete-confirm>p{color:var(--muted);font-size:var(--body-size);line-height:var(--line-body)}.delete-confirm .delete-confirm-error{margin-top:var(--space-3);color:#a33b2d;font-size:var(--caption-text-size)}.delete-confirm-actions{gap:var(--space-3);margin-top:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.delete-confirm-actions button{min-height:var(--primary-button-height);cursor:pointer;font-size:var(--button-text-size);font-weight:var(--font-bold);border:0;border-radius:13px}.delete-confirm-button{color:#fff;background:#b84b3f}.keep-walk-button{color:#3e433e;background:#e8e9e4}.delete-confirm-actions button:disabled{cursor:wait;opacity:.68}.collection-screen{height:100svh;min-height:0;position:relative;overflow:hidden}.collection-screen .back-button{margin-bottom:var(--back-heading-gap)}.collection-screen .screen-heading h1{margin-bottom:var(--heading-subtitle-gap)}.collection-list{align-content:start;gap:var(--list-gap);min-height:0;margin-top:var(--heading-content-gap);overscroll-behavior:contain;padding-bottom:var(--space-2);scrollbar-color:#285a3b59 transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch;flex:auto;display:grid;overflow-y:auto}.collection-list-with-action{padding-bottom:var(--floating-action-clearance)}.floating-pet-button{z-index:10;bottom:max(var(--space-4), env(safe-area-inset-bottom));left:var(--screen-inline-padding);width:calc(100% - var(--screen-inline-total));min-height:var(--primary-button-height);position:absolute;box-shadow:0 12px 28px #1f4c314d}.collection-card{align-items:center;gap:var(--card-content-gap);min-height:88px;padding:var(--space-3);background:#ffffff94;border:1px solid #e3e5dc;border-radius:16px;grid-template-columns:62px minmax(0,1fr) 40px;display:grid;box-shadow:0 5px 16px #2f3d300e}.collection-pet{grid-template-columns:62px minmax(0,1fr) 40px}.collection-card>img{object-fit:cover;border-radius:50%;width:62px;height:62px}.collection-card-info{gap:var(--space-1);min-width:0;display:grid}.collection-card-info strong{font-size:var(--body-large-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collection-card-info small{align-items:center;gap:var(--space-1);min-width:0;color:var(--muted);font-size:var(--caption-text-size);text-overflow:ellipsis;white-space:nowrap;display:flex;overflow:hidden}.collection-walk .collection-place{line-height:var(--line-compact);overflow-wrap:anywhere;text-overflow:clip;white-space:normal;align-items:flex-start;overflow:visible}.collection-walk .collection-place svg{margin-top:var(--optical-icon-offset)}.collection-card-info svg{width:15px;height:15px;color:var(--green);flex:none}.collection-empty{min-height:180px;padding:var(--space-7);background:var(--green-soft);color:var(--muted);font-size:var(--body-size);line-height:var(--line-body);text-align:center;border-radius:16px;place-items:center;display:grid}.information-overlay{z-index:45;padding:var(--space-6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181f1a6b;place-items:center;display:grid;position:absolute;inset:0}.information-dialog{width:100%;max-width:350px;padding:var(--space-6);background:var(--paper);text-align:center;border:1px solid #27402d1f;border-radius:20px;box-shadow:0 22px 55px #141f173d}.information-dialog p{font-size:var(--body-large-size);font-weight:var(--font-semibold);line-height:var(--line-body)}.information-dialog .primary-button{min-height:var(--primary-button-height);margin-top:var(--space-6)}.delete-confirm-overlay,.information-overlay,.saving-overlay{animation:.18s ease-out both popup-backdrop-in!important}.delete-confirm,.information-dialog{transform-origin:50%;animation:.22s cubic-bezier(.22,.8,.3,1) both popup-card-in!important}@keyframes popup-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes popup-card-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.saving-spinner{border:5px solid #285a3b29;border-top-color:var(--green);border-radius:50%;width:58px;height:58px;animation:.72s linear infinite saving-spin}@keyframes saving-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes saving-spin{to{transform:rotate(360deg)}}.announce-screen .screen-heading h1{max-width:350px;font-size:var(--page-title-size)}.schedule-field{gap:var(--field-label-gap);margin:0 0 var(--field-spacing);border:0;padding:0;display:grid}.place-field{position:relative}.place-combobox{min-width:0;font-weight:var(--font-regular);position:relative}.place-combobox input{padding:0 54px 0 var(--control-inline-padding);font-size:var(--control-text-size)}.place-menu-toggle{width:54px;height:var(--control-height);color:var(--green);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:0;right:0}.place-menu-toggle svg{width:22px;height:22px}.place-options{z-index:30;top:calc(100% + var(--space-2));max-height:210px;padding:var(--space-2);background:var(--card);scrollbar-color:#285a3b59 transparent;scrollbar-width:thin;border:1px solid #cbd2c5;border-radius:13px;display:grid;position:absolute;left:0;right:0;overflow-y:auto;box-shadow:0 14px 32px #2033242e}.custom-select-options{z-index:40}.time-dropdown{position:relative}.time-options{z-index:45;gap:var(--space-2);max-height:238px;padding:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden}.time-options.opens-upward{top:auto;bottom:calc(100% + var(--space-2))}.time-option-column{gap:var(--space-1);min-width:0;display:grid}.time-options-label{padding:var(--space-1) var(--space-2) var(--space-2);color:var(--muted);font-size:var(--caption-text-size);font-weight:var(--font-semibold)}.time-option-list{overscroll-behavior:contain;scrollbar-color:#285a3b59 transparent;scrollbar-width:thin;max-height:184px;overflow-y:auto}.time-option{text-align:center;width:100%;min-height:42px}.place-option{min-height:48px;padding:var(--space-3);color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px}.place-option:hover,.place-option[aria-selected=true]{background:var(--green-soft)}.place-options-status{padding:var(--space-3);color:var(--muted);font-size:var(--small-text-size);font-weight:var(--font-regular);line-height:var(--line-compact)}.schedule-field legend{margin-bottom:var(--field-label-gap);font-size:var(--body-size);font-weight:var(--font-semibold);line-height:var(--line-compact);padding:0}.schedule-buttons{grid-template-columns:repeat(3,1fr);margin:0}.schedule-indicator{width:calc((100% - (var(--space-2) + var(--space-2))) / 3)}.schedule-buttons button{min-height:var(--segmented-control-height)}.photo-upload{width:224px;height:224px;margin:0 auto var(--space-7);place-content:center;justify-items:center;gap:var(--space-3);color:var(--green);cursor:pointer;text-align:center;background:#eff1e8b3;border:1.5px dashed #9ba893;border-radius:50%;display:grid;position:relative;overflow:hidden}.photo-upload input{opacity:0;width:1px;height:1px;position:absolute}.photo-upload svg{stroke-width:1.7px;width:52px;height:52px}.photo-upload span{font-size:var(--photo-label-size);font-weight:var(--font-medium)}.photo-upload small{color:var(--muted);font-size:var(--photo-caption-size)}.photo-upload img{object-fit:cover;width:100%;height:100%}.photo-upload.has-photo{border-style:solid;display:block}.photo-upload.has-photo img{object-fit:cover;object-position:center;min-width:100%;min-height:100%;display:block;position:absolute;inset:0}.pet-screen{padding-top:max(var(--space-5), env(safe-area-inset-top));padding-bottom:max(var(--space-4), env(safe-area-inset-bottom))}.pet-screen .back-button{margin-bottom:var(--back-heading-gap)}.pet-screen .screen-heading h1{margin-bottom:var(--heading-subtitle-gap);font-size:var(--page-title-size)}.pet-screen .screen-heading p{font-size:var(--page-subtitle-size);line-height:var(--line-subtitle)}.pet-screen .pet-form{min-height:0;margin-top:var(--heading-content-gap)}.pet-screen .photo-upload{aspect-ratio:1;width:clamp(150px,22svh,186px);height:clamp(150px,22svh,186px);margin-bottom:var(--space-5);gap:var(--space-2);flex:none}.pet-screen .photo-upload svg{width:42px;height:42px}.pet-screen .text-field{gap:var(--field-label-gap);margin-bottom:var(--field-spacing);flex:none}.pet-screen .text-field input{min-height:var(--control-height)}.pet-screen .form-submit{min-height:var(--primary-button-height);flex:none}.text-field{gap:var(--field-label-gap);margin-bottom:var(--field-spacing)}.text-field input{padding:0 var(--control-inline-padding)}.text-field input::placeholder{color:#898e88}.error-message{margin:calc(-1 * var(--space-4)) auto var(--space-5);color:#a33b2d;font-size:var(--small-text-size);text-align:center}button:focus-visible{outline-offset:3px;outline:3px solid #cf6f3c7a}input:focus-visible{outline-offset:3px;outline:3px solid #cf6f3c7a}select:focus-visible{outline-offset:3px;outline:3px solid #cf6f3c7a}.photo-upload:has(input:focus-visible){outline-offset:3px;outline:3px solid #cf6f3c7a}@media (max-width:380px){.app-shell{--screen-inline-padding:var(--space-5)}.drawer{padding-inline:var(--screen-inline-padding)}.hero-wrap{margin-inline:calc(-1 * var(--screen-inline-padding))}.welcome-copy h1{white-space:normal}.walk-card{gap:var(--card-content-gap);min-height:132px;padding:var(--space-2) var(--space-3);grid-template-columns:82px minmax(0,1fr)}.dog-avatar{width:82px;height:82px}.walk-info p:not(.owner){font-size:var(--small-text-size)}}@media (min-height:880px) and (max-width:599px){.pet-screen .pet-form{margin-top:var(--heading-content-gap);justify-content:flex-start}.pet-screen .photo-upload{width:clamp(200px,22svh,220px);height:clamp(200px,22svh,220px);margin-bottom:var(--space-6);gap:var(--space-3)}.pet-screen .photo-upload svg{width:48px;height:48px}.pet-screen .photo-upload span{font-size:var(--body-large-size)}.pet-screen .photo-upload small{font-size:var(--caption-text-size)}.pet-screen .text-field{gap:var(--field-label-gap);margin-bottom:var(--field-spacing)}.pet-screen .text-field input{min-height:var(--control-height)}.pet-screen .form-submit{min-height:var(--primary-button-height);margin-top:auto}}@media (min-width:600px){.app-shell{--heading-content-gap:var(--space-4);--back-heading-gap:var(--space-3);--control-height:56px;--primary-button-height:56px;--field-label-gap:var(--space-1);--field-spacing:var(--space-4)}.pet-screen .back-button{margin-bottom:var(--back-heading-gap)}.pet-screen .screen-heading h1{margin-bottom:var(--heading-subtitle-gap);font-size:var(--page-title-size)}.pet-screen .screen-heading p{font-size:var(--page-subtitle-size)}.pet-screen .pet-form{margin-top:var(--heading-content-gap)}.pet-screen .photo-upload{width:160px;height:160px;margin-bottom:var(--space-4);gap:var(--space-2)}.pet-screen .photo-upload svg{width:36px;height:36px}.pet-screen .photo-upload span{font-size:var(--photo-label-size)}.pet-screen .photo-upload small{font-size:var(--photo-caption-size)}.pet-screen .text-field{gap:var(--field-label-gap);margin-bottom:var(--field-spacing)}.pet-screen .text-field input{min-height:var(--control-height)}.pet-screen .form-submit{min-height:var(--primary-button-height)}}@media (max-height:760px){.app-shell{--page-title-size:2rem;--page-subtitle-size:var(--body-size);--heading-content-gap:var(--space-4);--back-heading-gap:var(--space-3);--control-height:52px;--primary-button-height:52px;--field-label-gap:var(--space-1);--field-spacing:var(--space-4)}.pet-screen{padding-top:max(var(--space-4), env(safe-area-inset-top));padding-bottom:max(var(--space-3), env(safe-area-inset-bottom))}.pet-screen .back-button{margin-bottom:var(--back-heading-gap)}.pet-screen .screen-heading h1{margin-bottom:var(--heading-subtitle-gap);font-size:var(--page-title-size)}.pet-screen .screen-heading p{font-size:var(--page-subtitle-size)}.pet-screen .pet-form{margin-top:var(--heading-content-gap)}.pet-screen .photo-upload{width:132px;height:132px;margin-bottom:var(--space-3);gap:var(--space-1)}.pet-screen .photo-upload svg{width:34px;height:34px}.pet-screen .photo-upload span{font-size:var(--small-text-size)}.pet-screen .photo-upload small{font-size:var(--caption-text-size)}.pet-screen .text-field{gap:var(--field-label-gap);margin-bottom:var(--field-spacing)}.pet-screen .text-field input{min-height:var(--control-height)}.pet-screen .form-submit{min-height:var(--primary-button-height)}}@media (max-height:620px){.app-shell{--page-title-size:1.75rem;--page-subtitle-size:var(--small-text-size);--heading-content-gap:var(--space-2);--back-heading-gap:var(--space-1);--control-height:48px;--primary-button-height:48px;--segmented-control-height:48px;--field-label-gap:var(--space-1);--field-spacing:var(--space-2)}.pet-screen{padding-top:max(var(--space-2), env(safe-area-inset-top));padding-bottom:max(var(--space-2), env(safe-area-inset-bottom))}.pet-screen .back-button{width:44px;height:44px;margin-bottom:var(--back-heading-gap)}.pet-screen .screen-heading h1{margin-bottom:var(--heading-subtitle-gap);font-size:var(--page-title-size)}.pet-screen .screen-heading p{font-size:var(--page-subtitle-size)}.pet-screen .pet-form{margin-top:var(--heading-content-gap)}.pet-screen .photo-upload{width:92px;height:92px;margin-bottom:var(--space-2);gap:var(--space-1)}.pet-screen .photo-upload svg{width:26px;height:26px}.pet-screen .photo-upload span,.pet-screen .photo-upload small{font-size:var(--caption-text-size)}.pet-screen .text-field{gap:var(--field-label-gap);margin-bottom:var(--field-spacing)}.pet-screen .text-field input{min-height:var(--control-height);font-size:var(--control-text-size)}.pet-screen .form-submit{min-height:var(--primary-button-height)}}@media (min-width:600px){.page-shell{padding:var(--desktop-frame-padding);place-items:center;display:grid}.app-shell{width:430px;min-height:min(882px, calc(100svh - var(--desktop-frame-total)));border:1px solid #2038261f;border-radius:38px;box-shadow:0 24px 70px #1d34222e}.screen{min-height:min(882px, calc(100svh - var(--desktop-frame-total)))}.walks-screen,.pet-screen{height:min(882px, calc(100svh - var(--desktop-frame-total)))}.collection-screen{height:min(882px,100svh - 56px)}}:not(.saving-spinner):not(.filter-indicator):not(.filter-button):not(.walk-list-content):not(.schedule-indicator):not(.schedule-button):not(.delete-confirm-overlay):not(.information-overlay):not(.saving-overlay):not(.delete-confirm):not(.information-dialog):not(.menu-overlay):not(.drawer):not(.walks-heading-copy),:before,:after{transition:none!important;animation:none!important}.saving-spinner{animation:.72s linear infinite saving-spin!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
