:root{color:#34342e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink:#34342e;--muted:#777166;--line:#e9e2d7;--tomato:#bc5946;--berry:#914352;--olive:#748052;--display:Georgia, "Times New Roman", serif;background:#fbf8f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #c47772}::selection{color:#fffaf7;background:#914352}.app-shell{min-height:100vh;overflow:hidden}.page-width{width:min(1120px,100% - 64px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:82px;display:flex}.brand{color:var(--ink);font-family:var(--display);letter-spacing:-.8px;align-items:center;gap:11px;font-size:21px;font-weight:700;text-decoration:none;display:inline-flex}.brand i{color:var(--tomato);font-style:normal}.brand-mark{width:35px;height:35px;color:var(--berry);background:#f3e5da;border-radius:12px;place-items:center;display:grid;transform:rotate(-6deg)}.header-note{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.header-spark{color:var(--tomato);font-size:19px}.hero{box-sizing:border-box;justify-content:space-between;align-items:center;min-height:306px;padding:45px 8.5% 48px 6.5%;display:flex;position:relative}.hero-copy{z-index:1;position:relative}.eyebrow{color:var(--olive);letter-spacing:1.65px;margin:0;font-size:10px;font-weight:800}.eyebrow>span{background:var(--olive);width:19px;height:2px;margin:0 7px 3px 0;display:inline-block}.hero h1{color:var(--ink);font-family:var(--display);letter-spacing:-2.35px;margin:17px 0 11px;font-size:clamp(36px,4.1vw,53px);font-weight:500;line-height:1.08}.hero h1 span{color:var(--berry);font-style:italic;font-weight:500}.hero-tagline{color:var(--tomato);font-family:var(--display);letter-spacing:-.2px;margin:0;font-size:17px;font-weight:700}.hero-description{color:var(--muted);margin:7px 0 0;font-size:13px}.hero-art{flex:0 0 265px;width:265px;height:228px;margin-left:32px;position:relative}.art-sun{background:#f2e3bf;border-radius:50%;width:184px;height:184px;position:absolute;top:21px;left:34px}.art-plate{z-index:1;background:#fbf8f2;border:7px solid #fffaf0;border-radius:50%;place-items:center;width:155px;height:155px;display:grid;position:absolute;top:30px;left:45px;transform:rotate(-13deg);box-shadow:0 13px 25px #5b33241c,inset 0 0 0 1px #e9dcc8}.art-pasta{background:#e7ae68;border:2px solid #d88a55;border-radius:50%;width:103px;height:103px;position:relative;box-shadow:inset 0 0 0 8px #f0c47e,inset 0 0 0 10px #d98b4d}.art-pasta span{border:3px solid #f8e0a3;border-radius:50%;width:35px;height:17px;position:absolute;transform:rotate(-34deg)}.art-pasta span:first-child{top:25px;left:23px}.art-pasta span:nth-child(2){top:42px;left:39px;transform:rotate(38deg)}.art-pasta span:nth-child(3){top:56px;left:17px;transform:rotate(17deg)}.art-pasta i,.art-pasta b{background:#718349;border-radius:50%;width:8px;height:8px;position:absolute}.art-pasta i{top:30px;left:58px}.art-pasta b{background:#b94937;width:6px;height:6px;top:54px;left:55px}.art-leaf{z-index:2;background:#79834e;border-radius:100% 0;width:26px;height:12px;position:absolute;transform:rotate(-23deg)}.leaf-one{top:41px;right:24px}.leaf-two{top:61px;right:14px;transform:rotate(29deg)scale(.75)}.art-note{z-index:3;background:#fffdf8;border:1px solid #e9dfd0;border-radius:11px;flex-direction:column;gap:1px;padding:11px 15px;display:flex;position:absolute;bottom:23px;right:0;transform:rotate(4deg);box-shadow:0 7px 18px #4c36200f}.art-note span{color:var(--olive);letter-spacing:1.2px;font-size:8px;font-weight:800}.art-note strong{color:var(--berry);font-family:var(--display);font-size:15px;font-style:italic}.art-dot{background:#cf684d;border-radius:50%;width:7px;height:7px;position:absolute}.dot-one{top:26px;left:16px}.dot-two{background:#79834e;width:5px;height:5px;bottom:39px;right:34px}.planner{gap:16px;display:grid}.planner-controls,.results-panel{border:1px solid var(--line);background:#fffefa;box-shadow:0 12px 35px #4937260a}.planner-controls{border-radius:18px;padding:27px 28px 18px}.results-panel{border-radius:18px;min-width:0;padding:20px 28px 28px}.planner-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:19px;display:flex}.section-eyebrow{color:#a17a56;letter-spacing:1.4px;margin-bottom:7px;font-size:12px}.planner-heading h2{color:var(--ink);font-family:var(--display);letter-spacing:-1px;margin:0;font-size:35px;font-weight:600;line-height:1.2}.mobile-title-break{display:none}.home-base{color:#61704b;background:#f2f3e9;border-radius:9px;align-items:center;gap:6px;padding:8px 11px;font-size:11px;display:flex}.home-base strong{font-weight:800}.filter-panel{background:#f8f4ec;border-radius:13px;grid-template-columns:2fr 1.3fr 1.35fr 1.7fr;align-items:end;gap:15px;padding:16px;display:grid}.distance-filter,.select-filter,.search-filter{flex-direction:column;gap:7px;min-width:0;display:flex}.filter-label{color:#777166;letter-spacing:.2px;font-size:10px;font-weight:700}.distance-options{align-items:center;gap:3px;display:flex}.distance-options .filter-label{display:none}.distance-button{color:#71695e;cursor:pointer;background:#fffefa;border:1px solid #e6dfd3;border-radius:8px;min-width:45px;height:34px;padding:0 8px;font-size:10px;font-weight:700;transition:background .15s,color .15s,border-color .15s}.distance-button:hover{border-color:#bd9881}.distance-button.is-selected{border-color:var(--berry);color:#fffaf7;background:var(--berry)}.select-filter select{color:#38372f;width:100%;height:36px;font:inherit;text-overflow:ellipsis;background:#fffefa;border:1px solid #e6dfd3;border-radius:8px;padding:0 27px 0 10px;font-size:11px}.search-field{color:#90887b;background:#fffefa;border:1px solid #e6dfd3;border-radius:8px;align-items:center;gap:7px;height:36px;padding:0 9px;display:flex}.search-field:focus-within{border-color:#b9878b;box-shadow:0 0 0 3px #8f425115}.search-field input{width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:11px}.search-field input::placeholder{color:#a59c8f}.clear-search{color:#777166;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;padding:2px;display:grid}.results-toolbar{justify-content:space-between;align-items:center;gap:16px;padding:22px 1px 15px;display:flex}.results-copy{flex-wrap:wrap;align-items:baseline;gap:7px;display:flex}.results-count{color:var(--ink);font-size:14px;font-weight:800}.results-context{color:#8a847a;font-size:11px}.results-actions{align-items:center;gap:10px;display:flex}.sort-control{color:#777166;white-space:nowrap;align-items:center;gap:6px;font-size:10px;font-weight:700;display:inline-flex}.sort-control select{color:#38372f;min-width:108px;height:34px;font:inherit;background:#fffefa;border:1px solid #e6dfd3;border-radius:8px;padding:0 25px 0 9px;font-size:10px}.text-button,.visited-button,.save-later-button{color:#777166;cursor:pointer;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;padding:6px 0;font-size:11px;display:inline-flex}.text-button:hover,.visited-button:hover,.save-later-button:hover{color:var(--berry)}.shortlist-button{color:#746b60;cursor:pointer;min-height:34px;font:inherit;white-space:nowrap;background:#fffefa;border:1px solid #e6dfd3;border-radius:8px;align-items:center;gap:6px;padding:0 9px;font-size:10px;font-weight:700;display:inline-flex}.shortlist-button:hover,.shortlist-button.is-active{color:var(--berry);background:#fbf1f0;border-color:#c99ca1}.shortlist-button>span{color:#766b5b;background:#f0ebe2;border-radius:6px;place-items:center;min-width:18px;height:18px;padding-inline:4px;font-size:9px;display:inline-grid}.shortlist-button.is-active>span{color:#fffaf7;background:var(--berry)}.pick-button{border:1px solid var(--berry);color:#fffaf7;background:var(--berry);cursor:pointer;min-height:38px;font:inherit;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:11px;font-weight:800;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.pick-button:hover:not(:disabled){background:#793441;transform:translateY(-1px);box-shadow:0 4px 12px #84394b29}.pick-button:disabled{color:#9c9488;cursor:not-allowed;background:#e9e3da;border-color:#d6cec4}.storage-warning{color:#89532c;margin:0 0 12px;font-size:11px}.pick-announcement{color:#596141;align-items:center;gap:8px;margin:0 0 13px;font-size:12px;display:flex}.pick-announcement strong{color:var(--berry)}.pick-confetti{color:#bc7d36;font-size:18px}.place-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.place-card{background:radial-gradient(at 100% 0,#f9f0e2 0,#f9f0e200 28%),#fffefa;border:1px solid #ece6dc;border-radius:13px;flex-direction:column;min-height:230px;padding:15px;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;position:relative;overflow:hidden}.place-card:before{content:"";background:#bd5946;height:3px;position:absolute;top:0;left:0;right:0}.place-card[data-kind=cafe]:before{background:#d29a3d}.place-grid.is-entering .place-card{animation:.38s cubic-bezier(.2,.75,.3,1) both card-arrive}.place-grid.is-entering .place-card:nth-child(2){animation-delay:45ms}.place-grid.is-entering .place-card:nth-child(3){animation-delay:90ms}.place-grid.is-entering .place-card:nth-child(4){animation-delay:.135s}.place-grid.is-entering .place-card:nth-child(5){animation-delay:.18s}.place-grid.is-entering .place-card:nth-child(n+6){animation-delay:.225s}.place-grid .place-card.is-picked{animation:.72s cubic-bezier(.2,.75,.3,1) pick-reveal}@media (hover:hover) and (pointer:fine){.place-card:hover{z-index:1;border-color:#ded0c0;transform:translate(3px,-4px)rotate(.35deg);box-shadow:5px 9px 18px #49372617}}.place-card.is-picked{background:radial-gradient(at 100% 0,#f4e3df 0,#f4e3df00 37%),#fffefa;border-color:#c98e91;box-shadow:0 0 0 2px #a9555e17}.card-topline{justify-content:space-between;align-items:center;gap:8px;display:flex}.category-chip,.picked-label{color:#a64e40;align-items:center;gap:7px;max-width:85%;font-size:9px;font-weight:700;display:inline-flex}.category-chip>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.place-card[data-kind=cafe] .category-chip{color:#95651e}.category-mark{border-radius:8px;flex:0 0 25px;place-items:center;width:25px;height:25px;display:grid}.category-mark svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:16px;height:16px}.category-mark.is-restaurant{color:#a64e40;background:#f7e9e3}.category-mark.is-cafe{color:#95651e;background:#f7efda}.picked-label{color:var(--berry)}.card-number{color:#c1b6a7;font-family:var(--display);font-size:11px;font-style:italic}.place-card h3{color:var(--ink);font-family:var(--display);letter-spacing:-.35px;margin:12px 0 7px;font-size:19px;font-weight:600;line-height:1.2}.place-card h3 a{color:inherit;text-underline-offset:3px;-webkit-text-decoration:none;text-decoration:none}.place-card h3 a:hover{color:var(--berry);text-decoration:underline}.place-meta{color:#797367;align-items:center;gap:6px;font-size:10px;display:flex}.place-meta>span:first-child{align-items:center;gap:3px;display:inline-flex}.place-meta .icon{color:#ae7962}.meta-divider{color:#c8bdae}.distance-meta{color:#6b754d;font-weight:800}.place-address{color:#8d867b;margin:8px 0 0;font-size:10px;line-height:1.45}.place-note{color:#795b4e;font-family:var(--display);margin:7px 0 0;font-size:12px;font-style:italic}.list-chips{flex-wrap:wrap;gap:5px;margin-top:9px;display:flex}.list-chip{color:#7a7467;text-overflow:ellipsis;white-space:nowrap;background:#f3efe6;border-radius:5px;max-width:100%;padding:3px 7px;font-size:9px;overflow:hidden}.more-chip{color:#8b5848;background:#f5e9dd}.card-actions{justify-content:space-between;align-items:center;gap:6px;margin-top:auto;padding-top:12px;display:flex}.card-primary-actions,.card-secondary-actions{align-items:center;gap:4px;display:flex}.card-secondary-actions{justify-content:flex-end}.maps-link{color:var(--berry);align-items:center;gap:6px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.maps-link:hover{color:#702d3a;text-underline-offset:3px;text-decoration:underline}.maps-unavailable{color:#948c80;font-size:10px}.visited-button,.save-later-button{white-space:nowrap;border:1px solid #0000;border-radius:7px;min-height:30px;padding:4px 7px}.save-later-button.is-saved{color:var(--berry);background:#fbf0ef;border-color:#e5c4c6}.save-later-button.did-pop .icon{animation:.42s cubic-bezier(.2,.8,.3,1) bookmark-pop}.visited-button.is-visited{color:#596b3c;background:#f1f4e9;border-color:#d6dfc4}.show-more-wrap{justify-content:center;padding-top:22px;display:flex}.show-more-button{color:#574e43;cursor:pointer;font:inherit;background:#fffefa;border:1px solid #e2d9cb;border-radius:9px;align-items:center;gap:6px;padding:10px 15px;font-size:11px;font-weight:800;display:inline-flex}.show-more-button:hover{color:var(--berry);border-color:#b99583}.show-more-button span{color:#969083;font-size:10px;font-weight:500}.message-panel{color:#766e62;text-align:center;border:1px dashed #dfd6c9;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;min-height:230px;padding:25px;display:flex}.message-panel h3{color:var(--ink);font-family:var(--display);margin:11px 0 6px;font-size:21px;font-weight:600}.message-panel p{max-width:450px;margin:0 0 5px;font-size:12px;line-height:1.6}.message-panel code{background:#f1ede5;border-radius:4px;padding:2px 5px;font-size:11px}.empty-panel{min-height:260px}.empty-panel .eyebrow{color:#a17a56;margin-top:6px}.empty-plate{color:#b76761;width:48px;height:48px;font-family:var(--display);border:3px solid #e6d7c4;border-radius:50%;place-items:center;font-size:22px;display:grid}.empty-clear{margin-top:11px}.error-panel{background:#fffaf6;border-color:#e4c5bb}.message-icon{color:var(--tomato)}.loading-mark{gap:5px;display:flex}.loading-mark span{background:#b75a4c;border-radius:50%;width:7px;height:7px;animation:.95s ease-in-out infinite alternate loading-bounce}.loading-mark span:nth-child(2){animation-delay:.15s}.loading-mark span:nth-child(3){animation-delay:.3s}@keyframes loading-bounce{to{opacity:.5;transform:translateY(-5px)}}@keyframes card-arrive{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes pick-reveal{0%{transform:scale(.985);box-shadow:0 0 #a9555e00}45%{transform:scale(1.012);box-shadow:0 0 0 5px #a9555e18,0 10px 24px #49372612}to{transform:scale(1);box-shadow:0 0 0 2px #a9555e17}}@keyframes bookmark-pop{0%{transform:scale(1)}45%{transform:scale(1.35)rotate(-8deg)}to{transform:scale(1)rotate(0)}}.site-footer{color:#8c8478;justify-content:space-between;align-items:center;gap:16px;min-height:76px;font-size:10px;display:flex}.site-footer>span:first-child{align-items:center;gap:6px;display:inline-flex}.site-footer .icon{color:#b7655f}@media (width<=1000px){.page-width{width:min(900px,100% - 48px)}.hero{padding-inline:5%}.hero-art{transform-origin:100%;transform:scale(.9)}.planner-controls,.results-panel{padding-inline:22px}.filter-panel{grid-template-columns:1.25fr 1fr 1.2fr}.distance-filter{grid-column:span 2}.search-filter{grid-column:span 3}.place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.page-width{width:calc(100% - 32px)}.site-header{min-height:67px}.brand{gap:8px;font-size:18px}.brand-mark{width:31px;height:31px}.header-note{text-align:right;gap:5px;max-width:122px;font-size:10px;line-height:1.3}.hero{min-height:273px;padding:32px 5% 27px}.hero h1{letter-spacing:-1.7px;margin-top:14px;font-size:clamp(34px,7.7vw,45px)}.hero-description{max-width:300px;font-size:12px}.hero-art{opacity:.32;transform-origin:100% 100%;width:208px;height:180px;margin:0;position:absolute;bottom:-7px;right:-72px;transform:scale(.78)}.hero-copy{max-width:100%}.planner{gap:12px}.planner-controls{border-radius:15px;padding:21px 15px 15px}.results-panel{border-radius:15px;padding:17px 15px 22px}.planner-heading{flex-direction:column;align-items:start;gap:9px;margin-bottom:15px}.planner-heading>div:first-child{width:100%}.planner-heading h2{font-size:30px}.mobile-title-break{display:initial}.section-eyebrow{letter-spacing:1.1px;max-width:240px;font-size:10px}.home-base{white-space:nowrap;align-self:flex-start;gap:4px;padding:7px;font-size:9px}.filter-panel{grid-template-columns:1fr 1fr;gap:12px;padding:13px}.distance-filter{grid-column:span 2}.distance-options{flex-wrap:wrap;gap:4px}.distance-button{min-width:43px;padding-inline:5px;font-size:9px}.list-filter,.search-filter{grid-column:span 2}.results-toolbar{align-items:flex-start;padding-top:18px}.results-copy{gap:3px}.results-count{font-size:12px}.results-context{width:100%;font-size:10px}.results-actions{flex-direction:column-reverse;align-items:end;gap:2px}.sort-control{gap:5px;font-size:9px}.sort-control select{min-width:104px;height:30px;font-size:9px}.pick-button{white-space:nowrap;gap:6px;min-height:35px;padding-inline:10px;font-size:10px}.text-button{font-size:10px}.place-grid{grid-template-columns:1fr;gap:10px}.place-card{min-height:203px;padding:14px}.place-card h3{font-size:18px}.site-footer{min-height:68px;font-size:9px}}@media (width<=390px){.hero h1{font-size:32px}.hero-art{opacity:.2}.home-base{font-size:8px}.results-toolbar{gap:6px}.results-actions{max-width:126px}.card-actions{gap:2px}.visited-button{font-size:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.place-grid.is-entering .place-card,.place-card.is-picked,.save-later-button.did-pop .icon{animation:none}}
