/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--canvas:#f5f0e7;--canvas-deep:#ece2d4;--surface:#fffcf7;--surface-raised:#fff8ee;--surface-soft:#faf5ed;--ink:#2b2520;--ink-soft:#746c64;--ink-faint:#746c64;--line:#ded3c5;--line-strong:#cbb9a6;--line-control:#998572;--clay:#ad4933;--clay-dark:#923d2a;--clay-deep:#763122;--clay-soft:#f3ded5;--clay-alpha-10:#ad49331a;--clay-alpha-11:#ad49331c;--clay-alpha-20:#ad493333;--clay-alpha-28:#ad493347;--clay-alpha-45:#ad493373;--clay-alpha-50:#ad493380;--olive:#59644f;--olive-soft:#e7eadf;--ochre:#845417;--shadow:0 14px 34px #47311f1a;--shadow-soft:0 6px 18px #47311f12;--serif:"Noto Serif TC", "Songti TC", "PMingLiU", serif;--sans:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--control-radius:12px;--card-radius:16px;--page-gutter:20px;--safe-area-top:env(safe-area-inset-top);--safe-area-bottom:env(safe-area-inset-bottom);--screen-safe-area-top:var(--safe-area-top);--app-shell-block-size:100dvh;--bottom-nav-block-size:calc(72px + var(--safe-area-bottom));--bottom-nav-clearance:8px;--bottom-nav-reserved-space:calc(var(--bottom-nav-block-size) + var(--bottom-nav-clearance));--primary-sticky-top:calc(52px + var(--screen-safe-area-top));--subpage-sticky-top:max(82px, calc(66px + var(--screen-safe-area-top)))}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}*{box-sizing:border-box}html{background:#dcd4ca}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 20% 8%,#ffffffe0,#0000 30%),linear-gradient(140deg,#e7e0d6 0%,#cfc6bb 100%);margin:0}button,input,textarea,select{color:inherit;font:inherit}button{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}button[aria-busy=true],[role=button][aria-busy=true]{cursor:progress}button:focus-visible{outline:2px solid var(--clay);outline-offset:2px}a:focus-visible{outline:2px solid var(--clay);outline-offset:2px}summary:focus-visible{outline:2px solid var(--clay);outline-offset:2px}[tabindex="-1"]:focus-visible{outline:2px solid var(--clay);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}main.app-main h1[tabindex="-1"]:focus{outline:none}@media (display-mode:standalone){html,body{overscroll-behavior-y:none}}:is(input:focus-visible,textarea:focus-visible,select:focus-visible){border-color:var(--clay);outline:2px solid var(--clay);outline-offset:-2px;box-shadow:none}.app-stage{place-items:center;min-height:100svh;padding:0;display:grid}.phone-shell{background:var(--canvas);width:min(100%,430px);min-width:0;min-height:100svh;box-shadow:var(--shadow);position:relative;overflow:clip}@media (min-width:760px){.phone-shell.browse-workspace,.browse-workspace .paper-grain,.browse-workspace .bottom-nav,.browse-workspace .recipe-submit{width:min(100% - 48px,1120px)}}.paper-grain{contain:paint;pointer-events:none;z-index:20;opacity:.18;background-image:repeating-linear-gradient(0deg,#6c523905 0 1px,#0000 1px 4px),radial-gradient(circle at 80% 15%,#fff9,#0000 32%);width:min(100%,430px);height:100svh;margin-inline:auto;position:fixed;inset:0}.app-main{z-index:1;min-height:100svh;position:relative}.app-main.with-nav{padding-bottom:var(--bottom-nav-reserved-space)}.app-main.with-nav:not(.map-workspace){height:calc(var(--app-shell-block-size) - var(--bottom-nav-reserved-space));min-height:0;padding-bottom:var(--bottom-nav-clearance);overscroll-behavior-y:contain;scroll-padding-bottom:var(--bottom-nav-clearance);-webkit-overflow-scrolling:touch;overflow:hidden auto}.screen{min-height:100svh}.app-main button:not(:disabled){min-height:44px}.topbar,.simple-header,.modal-header,.form-header,.restaurant-header{min-height:70px;padding:calc(12px + var(--screen-safe-area-top)) 20px 10px;justify-content:space-between;align-items:center;display:flex}.brand-lockup{align-items:center;gap:10px;display:flex}.brand-seal,.empty-seal{border:1px solid var(--clay);width:38px;height:38px;color:var(--clay-dark);font-family:var(--serif);border-radius:50%;place-items:center;font-size:1.25rem;display:grid}.brand-seal{object-fit:contain;border:0;display:block}.empty-seal{width:1.9em;height:1.9em;line-height:1}.brand-lockup strong{font-family:var(--serif);letter-spacing:.08em;font-size:1.25rem;line-height:1;display:block}.brand-lockup small{color:var(--ink-soft);letter-spacing:.18em;margin-top:5px;font-size:.625rem;line-height:1;display:block}.avatar-button,.icon-button,.round-back{border:1px solid var(--line);background:var(--surface);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--ink);border-radius:50%;flex:0 0 44px;place-items:center;padding:0;display:grid}.account-avatar-image{aspect-ratio:1;border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.account-avatar-image>img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}@media (forced-colors:active){:is(button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible){outline:3px solid highlight}}.avatar-button{background:var(--ink);color:var(--surface);letter-spacing:.08em;font-size:.75rem}.page-heading,.add-intro{padding:26px 20px 20px}.eyebrow{color:var(--clay);letter-spacing:.16em;text-transform:uppercase;margin:0 0 7px;font-size:.75rem;font-weight:700}.page-heading h1,.simple-header h1,.add-intro h1,.form-header h1,.saved-screen h1,.restaurant-title h1{font-family:var(--serif);letter-spacing:.03em;margin:0;font-weight:600}.page-heading h1,.simple-header h1{font-size:2.125rem;line-height:1.15}.heading-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.heading-title-row>button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 12px;font-size:.75rem}.page-heading>p:last-child,.add-intro>p:last-child{color:var(--ink-soft);margin:9px 0 0;font-size:.875rem;line-height:1.55}.following-heading{padding-top:20px;padding-bottom:17px}.pull-refresh-indicator{height:0;color:var(--clay-dark);opacity:0;justify-content:center;align-items:center;gap:8px;font-size:.75rem;font-weight:700;transition:height .16s,opacity .12s;display:flex;overflow:hidden}.following-screen.is-pulling .pull-refresh-indicator,.pull-refresh-indicator.refreshing{opacity:1}.pull-refresh-indicator.refreshing svg{animation:.8s linear infinite savorbook-refresh-spin}@keyframes savorbook-refresh-spin{to{transform:rotate(360deg)}}.gentle-prompt,.footprint-card{border:1px solid var(--line-strong);background:var(--surface-raised);text-align:left;width:calc(100% - 40px);min-height:74px;box-shadow:var(--shadow-soft);border-radius:15px;align-items:center;gap:12px;margin:0 20px;padding:13px 14px;display:flex}.prompt-plus{background:var(--clay);color:#fff;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-size:1.5625rem;font-weight:300;display:grid}.gentle-prompt strong,.gentle-prompt small,.footprint-card strong,.footprint-card small{display:block}.gentle-prompt strong,.footprint-card strong{font-family:var(--serif);font-size:1rem}.gentle-prompt small,.footprint-card small{color:var(--ink-soft);margin-top:4px;font-size:.75rem}.chevron{color:var(--ink-soft);margin-left:auto;font-size:1.5625rem;font-weight:300}.section-heading{justify-content:space-between;align-items:end;display:flex}.section-heading.compact{padding:27px 20px 12px}.section-heading h2{font-family:var(--serif);margin:0;font-size:1.25rem;font-weight:600}.section-heading>span,.section-heading.compact span{color:var(--ink-soft);font-size:.75rem}.journey-card{border:1px solid var(--line);border-radius:var(--card-radius);background:var(--surface);box-shadow:var(--shadow-soft);margin:0 20px 14px;position:relative;overflow:hidden}.following-compact-header{min-height:74px;padding:calc(14px + var(--screen-safe-area-top)) 20px 10px;justify-content:space-between;align-items:center;display:flex}.following-compact-header h1{font-family:var(--serif);margin:0;font-size:1.875rem}.following-compact-header button{border:1px solid var(--line-control);background:var(--surface);color:var(--clay-dark);border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.following-content-tabs{top:var(--primary-sticky-top);z-index:9;border:1px solid var(--line);background:var(--surface-soft);box-shadow:0 0 0 5px var(--canvas);border-radius:16px;grid-template-columns:1fr 1fr;margin:4px 20px 0;padding:4px;display:grid;position:sticky}.following-content-tabs button{min-height:48px;color:var(--ink-soft);background:0 0;border:0;border-radius:12px;font-size:.875rem}.following-content-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft);font-weight:800}.following-content-tabs span{color:var(--clay-dark);margin-left:4px;font-size:.75rem}.following-section-heading{padding-top:22px!important}.card-author,.restaurant-line,.food-photo-button{text-align:left;background:0 0;border:0;width:100%}.card-author{align-items:center;gap:10px;min-height:64px;padding:12px 14px 8px;display:flex}.feed-author{text-align:left;background:0 0;border:0;align-items:center;gap:10px;min-width:0;min-height:44px;padding:0;display:flex}.feed-author>span{min-width:0}.feed-author strong,.feed-author small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.feed-author small{color:var(--ink-soft);margin-top:3px;font-size:.75rem}.card-author time{color:var(--ink-soft);margin-left:auto;font-size:.75rem}.avatar{color:#fff;width:36px;height:36px;font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:.9375rem;display:grid}.avatar.mina{background:#755446}.avatar.bevis{background:#596859}.avatar.jay{background:#536273}.card-author strong,.card-author small{display:block}.card-author strong{font-family:var(--serif);font-size:.9375rem}.card-author small{color:var(--ink-soft);margin-top:3px;font-size:.75rem}.more{color:var(--ink-soft);letter-spacing:.08em;margin-left:auto}.restaurant-line{min-height:44px;font-family:var(--serif);justify-content:space-between;align-items:center;padding:4px 14px 11px;font-size:1.0625rem;font-weight:600;display:flex}.feed-recipe-body{border:0;border-top:1px solid var(--line);width:100%;min-height:100px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:12px;padding:15px 14px 17px;display:grid}.feed-recipe-body.has-photo{grid-template-columns:88px minmax(0,1fr) 18px}.feed-recipe-body>img{object-fit:cover;border-radius:12px;width:88px;height:88px}.feed-dish-body{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:13px;width:100%;min-height:104px;padding:14px;display:grid}.feed-dish-body.has-photo{grid-template-columns:88px minmax(0,1fr) 18px}.feed-dish-body img{object-fit:cover;border-radius:12px;width:88px;height:88px}.feed-dish-body small,.feed-dish-body strong,.feed-dish-body em{display:block}.feed-dish-body small,.feed-dish-body em{color:var(--ink-soft);font-size:.75rem;font-style:normal}.feed-dish-body strong{font-family:var(--serif);margin:5px 0;font-size:1.125rem}.feed-dish-body em{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.following-trust-summary{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:6px 9px;margin-top:4px;font-size:.75rem;line-height:1.4;display:flex}.following-trust-counts{flex-wrap:wrap;gap:5px;display:inline-flex}.following-trust-counts i{color:#fff;border-radius:999px;align-items:center;min-height:24px;padding:2px 7px;font-style:normal;font-weight:800;display:inline-flex}.following-trust-counts .revisit{background:#4f6655}.following-trust-counts .want-to-go{background:#8a5a15}.following-trust-counts .one-time{background:#6f625b}.following-trust-counts .not-recommended{background:#923d2a}.following-tab-empty{min-height:180px;padding-top:54px}.following-empty{padding-bottom:calc(72px + var(--safe-area-bottom) + var(--page-gutter))}.following-load-more{min-height:52px;color:var(--ink-soft);justify-content:center;align-items:center;gap:9px;margin:0 20px 20px;font-size:.8125rem;display:flex}.following-load-more>span{border:2px solid var(--line-control);border-top-color:var(--clay);border-radius:50%;width:18px;height:18px;animation:.85s linear infinite savorbook-refresh-spin}.following-load-more p{margin:0}.following-load-more button{border:1px solid var(--line-control);background:var(--surface);min-height:44px;color:var(--clay-dark);font:inherit;border-radius:999px;padding:0 16px;font-weight:700}@supports (content-visibility:auto){#following-panel>.journey-card{content-visibility:auto;contain-intrinsic-size:auto 240px}}.feed-recipe-body small,.feed-recipe-body strong,.feed-recipe-body em{display:block}.feed-recipe-body small,.feed-recipe-body em{color:var(--ink-soft);font-size:.75rem;font-style:normal}.feed-recipe-body strong{font-family:var(--serif);margin:4px 0;font-size:1.1875rem}.feed-dish-body>span,.feed-recipe-body>span{align-content:center;gap:4px;min-width:0;display:grid}.feed-dish-body strong,.feed-recipe-body strong{margin:0;line-height:1.35}.feed-dish-body small,.feed-dish-body em,.feed-recipe-body small,.feed-recipe-body em{line-height:1.5}.journey-card .card-copy{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;padding:12px 14px 16px;display:block}.food-photo-button{aspect-ratio:4/3;padding:0;display:block;overflow:hidden}.food-photo-button img,.mini-photo img,.dish-thumb img,.saved-card img,.same-dish-card img{object-fit:cover;width:100%;height:100%;display:block}.card-copy{padding:16px 14px 17px}.dish-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.dish-title-row h3,.same-dish-card h3{font-family:var(--serif);margin:0;font-size:1.375rem;font-weight:600}.status-pill{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;min-height:28px;padding:4px 10px;font-size:.75rem;display:inline-flex}.status-pill.clay{color:var(--clay-dark);background:var(--clay-soft)}.status-pill.olive{color:#4f6145;background:var(--olive-soft)}.status-pill.ochre{color:#8a5b1d;background:#f7ead3}.card-copy>p{color:var(--ink-soft);margin:10px 0 13px;font-size:.875rem;line-height:1.65}.tag-row,.filter-row,.choice-chips,.selected-tags,.tag-suggestions{flex-wrap:wrap;gap:7px;display:flex}.tag-row>span{border:1px solid var(--line);color:var(--ink-soft);background:var(--surface-raised);border-radius:999px;padding:5px 9px;font-size:.75rem}.tag-row>.accent-tag{border-color:var(--clay-alpha-50);color:var(--clay-dark)}.footprint-card{box-shadow:none;background:0 0;margin-top:14px;margin-bottom:28px}.stacked-avatars{margin-left:auto;display:flex}.stacked-avatars i{border:2px solid var(--canvas);background:var(--olive);color:#fff;width:28px;height:28px;font-family:var(--serif);border-radius:50%;place-items:center;margin-left:-7px;font-size:.75rem;font-style:normal;display:grid}.stacked-avatars i:nth-child(2){background:var(--clay)}.stacked-avatars i:nth-child(3){background:#6e617a}.simple-header{border-bottom:1px solid #ded3c5a6;align-items:end;padding-bottom:17px}.primary-screen-header{z-index:10;min-height:calc(52px + var(--screen-safe-area-top));padding:var(--screen-safe-area-top) 20px 0;background:var(--canvas);border-bottom:1px solid #ded3c5a6;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.primary-screen-header h1{font-family:var(--serif);letter-spacing:.03em;margin:0;font-size:1.875rem;font-weight:600;line-height:1.1}.simple-header .eyebrow{margin-bottom:4px}.map-toggle,.tab-list{border:1px solid var(--line);background:#fffcf78c;border-radius:12px;grid-template-columns:repeat(2,1fr);gap:3px;margin:16px 20px;padding:3px;display:grid}.map-toggle button,.tab-list button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:9px;font-size:.8125rem}.map-toggle button.active,.tab-list button.active{background:var(--surface);color:var(--ink);font-weight:700;box-shadow:0 2px 10px #47311f17}.input-with-icon input:focus-visible{box-shadow:none;border-color:#0000;outline:0}.dish-list-card{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:14px 0;display:grid}.dish-list-open{min-width:0;min-height:112px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:13px;padding:0;display:grid}.grocery-list li>label strong,.grocery-list li>label small{display:block}.grocery-list li>label small{color:var(--ink-faint);margin-top:2px;font-size:.6875rem}.dish-list-card.no-photo .dish-list-open{grid-template-columns:minmax(0,1fr);min-height:88px}.record-edit-button{min-width:48px;min-height:44px;color:var(--clay-dark);background:0 0;border:0;border-radius:10px;align-self:start;padding:0 8px;font-size:.75rem}.dish-thumb{background:var(--clay-soft);object-fit:cover;border-radius:13px;width:96px;height:112px;display:block;overflow:hidden}.dish-list-copy{align-self:center;min-width:0}.dish-list-copy>small{color:var(--ink-faint);font-size:.75rem}.dish-list-copy>strong{text-overflow:ellipsis;font-family:var(--serif);white-space:nowrap;margin:7px 0 5px;font-size:1.125rem;font-weight:600;display:block;overflow:hidden}.dish-list-copy>em{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;padding-bottom:9px;font-size:.75rem;font-style:normal;display:block;overflow:hidden}.restaurant-library-card{border:1px solid var(--line);background:var(--surface);text-align:left;width:calc(100% - 40px);min-height:112px;box-shadow:var(--shadow-soft);border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:12px;margin:8px 20px;padding:16px;display:grid}.restaurant-library-card small,.restaurant-library-card strong,.restaurant-library-card em{display:block}.restaurant-library-card small{color:var(--ink-faint);font-size:.75rem}.restaurant-library-card strong{font-family:var(--serif);margin:6px 0;font-size:1.0625rem}.restaurant-library-card em{color:var(--ink-soft);font-size:.75rem;font-style:normal}.dish-detail-content{gap:18px;padding:22px 20px 40px;display:grid}.dish-detail-photo{object-fit:contain;background:var(--clay-soft);border-radius:16px;width:100%;max-height:460px}.dish-detail-meta{color:var(--ink-soft);justify-content:space-between;gap:12px;font-size:.75rem;display:flex}.dish-detail-content h2{font-family:var(--serif);margin:-4px 0 0;font-size:2rem;line-height:1.25}.dish-detail-restaurant{border:1px solid var(--line-control);background:var(--surface);min-height:64px;color:var(--ink);text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.dish-detail-restaurant strong,.dish-detail-restaurant small{display:block}.dish-detail-restaurant strong{font-family:var(--serif);font-size:1.0625rem}.dish-detail-restaurant small{color:var(--ink-soft);margin-top:4px;font-size:.75rem}.dish-detail-note{border-block:1px solid var(--line);color:var(--ink-soft);font-family:var(--serif);margin:0;padding:16px 0;font-size:1rem;line-height:1.65}.dish-detail-tags{margin:0}.recipe-library-list{gap:10px;padding:7px 20px 30px;display:grid}.recipe-draft-list{border:1px solid var(--line);background:var(--surface);border-radius:22px;margin:16px 20px 20px;padding:16px}@supports (color:color-mix(in lab, red, red)){.recipe-draft-list{background:color-mix(in srgb, var(--surface) 88%, var(--clay-soft))}}.recipe-draft-list>summary{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.recipe-draft-list>summary>span{align-items:baseline;gap:8px;min-width:0;display:flex}.recipe-draft-list>summary h2{margin:0;font-size:1.125rem}.recipe-draft-list>summary small{color:var(--ink-soft);font-size:.875rem}.recipe-draft-list>summary>button{border:1px solid var(--line-control);background:var(--surface);min-width:96px;min-height:44px;color:var(--clay);border-radius:999px;padding:0 12px;font-size:.875rem;font-weight:700}.recipe-draft-list>button{border:0;border-top:1px solid var(--line);width:100%;min-height:56px;color:var(--ink);text-align:left;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.recipe-draft-list>button span{gap:3px;min-width:0;display:grid}.recipe-draft-list>button strong,.recipe-draft-list>button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recipe-draft-list>button small{color:var(--ink-soft)}.recipe-draft-list>button em{color:var(--clay);flex:none;font-size:.875rem;font-style:normal}.recipe-kind-filters{overscroll-behavior-inline:contain;scrollbar-width:none;gap:8px;max-width:100%;padding:10px 20px 5px;display:flex;overflow-x:auto}.recipe-kind-filters::-webkit-scrollbar{display:none}.recipe-kind-filters button{border:1px solid var(--line-control);background:var(--surface);min-width:max-content;min-height:44px;color:var(--ink-soft);border-radius:999px;padding:0 16px;font-size:.875rem}.recipe-kind-filters button[aria-pressed=true]{border-color:var(--clay-dark);background:var(--clay-soft);color:var(--clay-dark);font-weight:700}.recipe-library-card{border:1px solid var(--line);background:var(--surface);text-align:left;width:100%;min-height:104px;box-shadow:var(--shadow-soft);border-radius:14px;grid-template-columns:minmax(0,1fr);align-items:center;gap:12px;padding:15px;display:grid}.recipe-library-card:has(.recipe-card-cover){grid-template-columns:64px minmax(0,1fr)}.recipe-card-cover{object-fit:cover;border-radius:11px;width:64px;height:64px}.recipe-library-row{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid;overflow:clip}.recipe-library-row>.recipe-library-card{min-width:0;box-shadow:none;background:0 0;border:0;border-radius:14px 0 0 14px;padding-right:8px}.recipe-library-row>.record-edit-button{z-index:2;position:absolute;top:8px;right:6px}.recipe-collection-shelf{border-bottom:1px solid var(--line);margin:8px 20px 12px;padding:0 0 8px}.recipe-collection-shelf>header,.recipe-collection-manage,.recipe-collection-form>div,.recipe-collection-confirm>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.recipe-collection-shelf>header>span{min-width:0}.recipe-collection-shelf h2{font-family:var(--serif);margin:0;font-size:1.0625rem}.recipe-collection-shelf header small{color:var(--ink-soft);margin-top:3px;font-size:.75rem;line-height:1.5;display:block}.recipe-collection-toolbar>button,.recipe-collection-manage button,.recipe-collection-form button,.recipe-collection-confirm button,.collection-retry{border:1px solid var(--line-control);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 13px;font-weight:700}.recipe-collection-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:4px;min-width:0;display:flex}.recipe-collection-toolbar>button{background:0 0;border-color:#0000;flex:none;align-items:center;gap:6px;padding-inline:8px;font-size:.75rem;display:inline-flex}.recipe-collection-chips{scrollbar-width:none;gap:8px;margin-top:6px;padding-bottom:2px;display:flex;overflow-x:auto}.recipe-collection-chips::-webkit-scrollbar{display:none}.recipe-collection-chips button{border:1px solid var(--line-control);background:var(--surface);min-width:max-content;min-height:44px;color:var(--ink-soft);border-radius:999px;padding:0 14px}.recipe-collection-chips button small{margin-left:7px;font-size:.6875rem}.recipe-collection-chips button[aria-pressed=true]{border-color:var(--clay-dark);background:var(--clay-soft);color:var(--clay-dark);font-weight:700}.recipe-collection-manage{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.recipe-collection-manage span{color:var(--ink-soft);margin-right:auto;font-size:.8125rem}.recipe-collection-form,.recipe-collection-confirm{border-top:1px solid var(--line);margin-top:12px;padding-top:14px}.recipe-collection-form label{color:var(--ink-soft);gap:7px;font-size:.8125rem;display:grid}.recipe-collection-form input{border:1px solid var(--line-control);background:var(--surface);width:100%;min-height:48px;color:var(--ink);border-radius:12px;padding:0 14px;font-size:1rem}.recipe-collection-form>div,.recipe-collection-confirm>div{justify-content:flex-end;margin-top:10px}.recipe-collection-confirm p,.recipe-collection-message,.recipe-collection-shelf>p{color:var(--ink-soft);margin:10px 0 0;font-size:.8125rem;line-height:1.55}.recipe-library-actions{flex-direction:column;gap:4px;padding:7px 7px 0 0;display:flex}.recipe-library-actions button{min-width:44px;min-height:44px;color:var(--clay-dark);background:0 0;border:0;border-radius:10px;padding:4px 8px;font-size:.75rem;font-weight:700}.recipe-collection-picker{border:1px solid var(--line);background:var(--surface);border-radius:13px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 8px 8px;padding:10px;display:grid}.recipe-collection-picker button{border:1px solid var(--line-control);min-height:44px;color:var(--ink-soft);background:0 0;border-radius:10px;padding:8px 10px;font-size:.8125rem}.recipe-collection-picker button[aria-pressed=true]{border-color:var(--olive);background:var(--olive-soft);color:var(--olive);font-weight:700}@media (max-width:340px){.recipe-collection-shelf{margin-inline:14px;padding-bottom:8px}.recipe-collection-shelf>header{align-items:flex-start}.recipe-collection-picker{grid-template-columns:minmax(0,1fr)}}@supports (content-visibility:auto){.library-list>.dish-list-card,.restaurant-library-list>.restaurant-library-card{content-visibility:auto;contain-intrinsic-size:auto 120px}}.recipe-library-card small,.recipe-library-card strong,.recipe-library-card em{display:block}.recipe-library-card small{color:var(--clay-dark);font-size:.75rem}.recipe-library-card strong{font-family:var(--serif);overflow-wrap:anywhere;margin:5px 0;font-size:1.0625rem}.recipe-library-card>span{min-width:0}.recipe-library-card small,.recipe-library-card em{overflow-wrap:anywhere}.recipe-library-card em{color:var(--ink-soft);font-size:.75rem;font-style:normal}.quiet-empty{text-align:center;margin:45px 30px}.empty-seal{margin:0 auto 16px}.quiet-empty h2{font-family:var(--serif);margin:0;font-size:1.4375rem}.quiet-empty p{max-width:280px;color:var(--ink-soft);margin:9px auto 18px;font-size:.8125rem;line-height:1.6}.quiet-empty button,.profile-card button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 13px;font-size:.75rem}.data-state{min-height:160px;color:var(--ink-soft);text-align:center;align-content:center;place-items:center;gap:12px;margin:28px 20px;display:grid}.data-state>span{border:2px solid var(--line-strong);border-top-color:var(--clay);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite data-state-spin}.data-state p{margin:0;font-size:.875rem;line-height:1.55}.data-state button{border:1px solid var(--line-strong);background:var(--surface);min-width:112px;min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 16px;font-weight:700}.data-state.error>span{display:none}@keyframes data-state-spin{to{transform:rotate(360deg)}}@media (max-width:260px){.recipe-draft-list{margin-left:8px;margin-right:8px}.recipe-kind-filters{flex-wrap:wrap;padding-left:8px;padding-right:8px;overflow-x:visible}.recipe-kind-filters button{flex:auto;min-width:44px;padding-left:8px;padding-right:8px}}.recipe-draft-list>summary{cursor:pointer;min-height:44px}.recipe-collection-shelf>summary{cursor:pointer;min-height:44px;padding:10px 0}.network-status-banner{min-height:44px;padding:11px var(--page-gutter);color:#714811;background:#f7ead3;border-bottom:1px solid #d6ba8f;font-size:.8125rem;font-weight:700;line-height:1.55}.app-main:not(:has(>.app-update-banner))>.network-status-banner{min-height:calc(44px + var(--safe-area-top));padding-top:calc(11px + var(--safe-area-top))}.data-isolation-banner{min-height:44px;padding:4px var(--page-gutter);color:var(--ink-soft);background:#f4ede4;border-bottom:1px solid #d9c8b4;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;font-size:.8125rem;font-weight:700;line-height:1.5;display:grid}.app-main:not(:has(>.app-update-banner,>.network-status-banner))>.data-isolation-banner{min-height:calc(44px + var(--safe-area-top));padding-top:calc(4px + var(--safe-area-top))}.data-isolation-banner button{min-width:64px;min-height:44px;color:var(--clay-dark);font:inherit;background:0 0;border:0}.draft-media-cleanup-status .data-isolation-banner{flex-wrap:wrap;display:flex}.draft-media-cleanup-status .data-isolation-banner>span{flex:15rem;min-width:0}.draft-media-cleanup-status .data-isolation-banner>button{white-space:normal;overflow-wrap:anywhere;flex:0 auto;max-width:100%}main h1[data-cleanup-focus=true]:focus,main.app-main h1[data-cleanup-focus=true][tabindex="-1"]:focus{outline:3px solid var(--clay-dark);outline-offset:4px}@media (forced-colors:active){main h1[data-cleanup-focus=true]:focus,main.app-main h1[data-cleanup-focus=true][tabindex="-1"]:focus{outline-color:highlight}}.app-update-banner{min-height:calc(60px + var(--safe-area-top));padding:calc(8px + var(--safe-area-top)) var(--page-gutter) 8px;color:var(--ink);background:#f6eee3;border-bottom:1px solid #c9b59c;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.app-main:has(>.app-update-banner,>.network-status-banner,>.data-isolation-banner)>.screen{--screen-safe-area-top:0px}.app-update-banner strong,.app-update-banner small{display:block}.app-update-banner strong{font-size:.8125rem}.app-update-banner small{color:var(--ink-soft);margin-top:2px;font-size:.6875rem;line-height:1.4}.app-update-banner button{border:1px solid var(--clay);background:var(--clay);color:#fff;min-width:68px;min-height:44px;font:inherit;border-radius:999px;font-size:.8125rem;font-weight:700}.app-main>:is(.app-update-banner,.network-status-banner,.data-isolation-banner){flex:none}.modal-header{border-bottom:1px solid #ded3c5b3}.text-button{min-width:54px;min-height:44px;color:var(--ink-soft);text-align:left;background:0 0;border:0;padding:0}.header-spacer{width:54px}.add-intro{text-align:center;padding-top:24px}.add-intro h1{font-size:1.9375rem}.add-options{gap:12px;padding:15px 20px 35px;display:grid}.add-option{border:1px solid var(--line);background:var(--surface);text-align:left;min-height:84px;box-shadow:var(--shadow-soft);border-radius:15px;grid-template-columns:43px 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.add-option.featured{border-color:var(--clay-alpha-50);background:linear-gradient(135deg, var(--surface) 0%, var(--clay-soft) 160%)}.option-icon{background:var(--clay-soft);width:43px;height:43px;color:var(--clay-dark);border-radius:50%;place-items:center;display:grid}.add-option strong,.add-option small{display:block}.add-option strong{font-family:var(--serif);font-size:1.125rem}.add-option small{color:var(--ink-soft);margin-top:5px;font-size:.75rem;line-height:1.45}.add-option>b{color:var(--ink-faint);font-size:1.5625rem;font-weight:300}.form-screen{padding-bottom:var(--submit-clearance,176px)}.remove-photo-button{min-height:44px;color:var(--clay-dark);background:0 0;border:0;margin:5px 0 0 auto;padding:0 8px;font-size:.75rem;display:block}.form-header{z-index:10;background:var(--canvas);border-bottom:1px solid #ded3c5e0;flex-wrap:wrap;min-height:82px;position:sticky;top:0}.form-header>div{flex:6rem;min-width:0;padding-left:10px}.form-header h1{font-size:1.3125rem}.form-header small{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px;font-size:.75rem;display:block;overflow:hidden}.form-header .draft-warning{color:var(--clay-dark);overflow-wrap:anywhere;text-overflow:clip;white-space:normal;margin:3px 0 0;overflow:visible}.round-back{background:0 0;border:0;font-size:2.1875rem;font-weight:200}.visibility-mini{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);white-space:nowrap;border-radius:999px;margin-left:auto;padding:6px 9px;font-size:.75rem}.form-content{padding:18px 20px 8px}.app-main button.photo-picker{border:1px dashed var(--line-strong);cursor:pointer;background:#fffcf794;border-radius:15px;place-items:center;width:100%;min-width:0;min-height:72px;padding:12px 16px;display:grid;position:relative;overflow:hidden}.app-main button.photo-picker>span{text-align:center;justify-content:center;align-items:center;gap:10px;min-width:0;display:inline-flex}.photo-picker b,.photo-picker strong,.photo-picker small{display:block}.photo-picker b{background:var(--clay-soft);width:42px;height:42px;color:var(--clay-dark);border-radius:50%;flex:0 0 42px;place-items:center;margin:0;font-size:1.4375rem;font-weight:400;display:grid}.photo-picker strong{font-family:var(--serif);font-size:1rem}.photo-picker small{color:var(--ink-faint);margin-top:5px;font-size:.75rem}.photo-picker input{opacity:0;width:1px;height:1px;position:absolute}.photo-picker.has-photo{aspect-ratio:4/3;border-style:solid}.photo-picker.has-photo img{object-fit:cover;width:100%;height:100%}.app-main input.visually-hidden-photo-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;min-width:1px;height:1px;min-height:1px;padding:0;position:absolute;overflow:hidden}.dish-photo-preview{aspect-ratio:4/3;border:1px solid var(--line);background:#26231f;border-radius:16px;place-items:center;display:grid;position:relative;overflow:hidden}.dish-photo-preview>img{object-fit:contain;width:100%;height:100%}.photo-preview-failed{color:#fff;text-align:center;place-items:center;gap:8px;margin:0;display:grid}.photo-preview-failed figcaption{font-size:.8125rem}.photo-preview-failed button{color:#fff;background:0 0;border:1px solid #ffffffb3;border-radius:999px;min-height:44px;padding:0 14px;font-size:.75rem;font-weight:700}.video-load-state{z-index:1;color:#fff;text-align:center;background:#28231f;place-items:center;margin:0;padding:20px;font-size:.875rem;display:grid;position:absolute;inset:0}.video-load-state.failed{color:#fff0eb}.dish-photo-preview>span{color:#fff;background:#201c19b8;border-radius:999px;padding:5px 9px;font-size:.75rem;position:absolute;top:10px;left:10px}.dish-photo-preview>div{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex;position:absolute;bottom:10px;right:10px}.form-warning{color:var(--ochre);font-weight:700}.dish-photo-preview button{color:#fff;background:#201c19c7;border:1px solid #ffffffa6;border-radius:999px;min-height:44px;padding:0 13px;font-size:.75rem;font-weight:700}.photo-crop-backdrop{z-index:110;padding:16px 16px calc(16px + var(--safe-area-bottom));background:#141210b8;place-items:end center;display:grid;position:fixed;inset:0}.photo-crop-sheet{inset:auto 16px calc(16px + var(--safe-area-bottom));width:auto;max-width:398px;max-height:calc(100dvh - max(32px, var(--safe-area-top)) - max(32px, var(--safe-area-bottom)));box-sizing:border-box;background:var(--surface);border-radius:20px;margin:0 auto;padding:16px;position:fixed;overflow:auto}.photo-crop-sheet>header{grid-template-columns:72px 1fr 86px;align-items:center;min-height:48px;display:grid}.photo-crop-sheet>header h2{font-family:var(--serif);text-align:center;margin:0;font-size:1.1875rem}.photo-crop-sheet>header button{width:68px;min-height:44px;color:var(--clay-dark);background:0 0;border:0;border-radius:9px;padding:0;font-size:.75rem;font-weight:700}.photo-crop-sheet>header button:first-child{justify-self:start}.photo-crop-sheet>header button:last-child{justify-self:end}.photo-crop-sheet>header button:focus-visible{background:var(--clay-soft);box-shadow:inset 0 0 0 2px var(--clay);outline:0}@media (forced-colors:active){.photo-crop-sheet>header button:focus-visible{outline-offset:2px;box-shadow:none;outline:3px solid highlight}}.photo-crop-status{color:var(--ink-soft);overflow-wrap:anywhere;margin:8px 0 12px;font-size:.8125rem;line-height:1.6}.photo-crop-status.is-error{color:var(--clay-dark)}.photo-crop-stage{aspect-ratio:4/3;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#26231f;border:2px solid #fff;border-radius:12px;width:100%;padding:0;overflow:hidden;box-shadow:0 0 0 999px #00000014}.photo-crop-stage:active{cursor:grabbing}.photo-crop-stage img{object-fit:cover;will-change:transform, object-position;width:100%;height:100%}.photo-crop-controls{gap:10px;margin-top:16px;display:grid}.photo-crop-controls label{min-height:44px;color:var(--ink-soft);grid-template-columns:38px 1fr;align-items:center;gap:10px;font-size:.75rem;display:grid}.photo-crop-controls input{width:100%}.photo-crop-controls>button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink-soft);border-radius:12px;font-size:.75rem}@media (max-width:260px){.photo-crop-sheet{padding:8px;left:4px;right:4px}.photo-crop-sheet>header{grid-template-columns:44px minmax(0,1fr) 44px}.photo-crop-sheet>header h2{overflow-wrap:anywhere;font-size:1rem}}.save-fields{border:0;min-width:0;margin:0}main.app-main .form-screen h1[data-dish-heading=true]:focus-visible{outline:2px solid var(--clay);outline-offset:3px}@media (forced-colors:active){main.app-main .form-screen h1[data-dish-heading=true]:focus-visible{outline-color:highlight}}.recipe-cover-field{margin-top:20px}.recipe-cover-field .field-label-row{align-items:end;margin-bottom:9px}.recipe-cover-field .field-label-row label{color:var(--ink-soft);font-size:.75rem;font-weight:700}.recipe-cover-field .field-label-row small{color:var(--ink-faint);text-align:right;font-size:.6875rem}.recipe-cover-picker,.recipe-cover-retry{border:1px dashed var(--line-strong);background:var(--canvas);width:100%;min-height:92px;color:var(--clay-dark);border-radius:14px;justify-content:center;align-items:center;gap:8px;font-size:.8125rem;font-weight:700;display:flex}.recipe-cover-preview{aspect-ratio:4/3;border:1px solid var(--line);background:var(--canvas);border-radius:14px;position:relative;overflow:hidden}.recipe-cover-preview>img,.recipe-cover-retry{object-fit:cover;width:100%;height:100%}.recipe-cover-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid;position:absolute;bottom:8px;left:8px;right:8px}.recipe-cover-actions button{color:#fff;background:#201c19d1;border:1px solid #ffffffa6;border-radius:10px;min-width:0;min-height:44px;padding:0 7px;font-size:.6875rem;font-weight:700}.field-block,.visibility-fieldset,.verdict-fieldset{border:0;margin:23px 0 0;padding:0;position:relative}.field-block>label,.visibility-fieldset legend,.verdict-fieldset legend{font-family:var(--serif);margin-bottom:8px;font-size:.9375rem;font-weight:600;display:block}.field-block input,.field-block textarea,.input-with-icon{border:1px solid var(--line-control);background:var(--surface);border-radius:12px;width:100%}.field-block input,.field-block textarea{min-height:50px;padding:12px 13px}.recipe-import-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.recipe-import-row button{border:1px solid var(--line-control);background:var(--surface);min-width:88px;min-height:50px;color:var(--clay-dark);border-radius:12px;padding:0 12px;font-size:.75rem;font-weight:700}.recipe-import-row button:disabled{color:var(--ink-faint);opacity:.7}.field-hint,.recipe-import-message{color:var(--ink-soft);margin:7px 3px 0;font-size:.75rem;line-height:1.5;display:block}.recipe-import-message.success{color:var(--olive)}.recipe-import-message.error{color:#7f2d20}.recipe-import-undo{border:1px solid var(--line);min-height:44px;color:var(--clay);background:var(--surface);border-radius:12px;margin-top:8px;padding:8px 12px;font-size:.875rem}@media (max-width:350px){.recipe-import-row{grid-template-columns:minmax(0,1fr)}.recipe-import-row button{width:100%}}.field-block textarea{resize:vertical;line-height:1.55}.input-with-icon{grid-template-columns:44px minmax(0,1fr);align-items:center;min-height:50px;display:grid;overflow:hidden}.input-with-icon>svg,.input-with-icon>span{color:var(--ink-faint);pointer-events:none;justify-self:center}.input-with-icon input{background:0 0;border:0;min-width:0;min-height:48px;padding:12px 13px 12px 0}.input-with-icon:focus-within{border-color:var(--clay);outline:2px solid var(--clay);outline-offset:-2px}.field-helper{color:var(--ink-soft);margin:7px 0 0;font-size:.75rem;line-height:1.45}.selected-address{padding-left:4px}.suggestion-menu{z-index:12;border:1px solid var(--line-strong);background:var(--surface);width:100%;max-height:230px;box-shadow:var(--shadow);border-radius:13px;position:absolute;top:calc(100% + 6px);overflow-y:auto}.suggestion-menu>p{color:var(--ink-faint);letter-spacing:.08em;margin:0;padding:10px 13px 7px;font-size:.75rem}.suggestion-menu button{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;width:100%;min-height:60px;padding:10px 13px}.suggestion-menu button:first-child{border-top:0}.suggestion-menu strong,.suggestion-menu small{display:block}.suggestion-menu strong{font-size:.8125rem}.suggestion-menu small{color:var(--ink-soft);margin-top:4px;font-size:.75rem}.visibility-options{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.visibility-options button,.choice-chips button{border:1px solid var(--line-control);background:var(--surface);min-height:44px;color:var(--ink-soft);border-radius:10px;padding:0 8px;font-size:.75rem}.visibility-options button.active,.choice-chips button.active{border-color:var(--clay);background:var(--clay-soft);color:var(--clay-dark);font-weight:700}.details-toggle{border:1px solid var(--line);text-align:left;background:0 0;border-radius:12px;align-items:center;width:100%;min-height:70px;margin-top:24px;padding:13px;display:flex}.details-toggle strong,.details-toggle small{display:block}.details-toggle strong{font-family:var(--serif);font-size:.9375rem}.details-toggle small{color:var(--ink-soft);margin-top:4px;font-size:.75rem}.details-toggle .toggle-chevron{color:var(--clay);margin-left:auto;transition:transform .15s}.details-toggle .toggle-chevron.open{transform:rotate(180deg)}.optional-fields{padding:3px 0 20px}.choice-chips button{border-radius:999px;padding:0 13px}.tag-field>.field-helper{margin:-3px 0 10px}.selected-tags{margin-bottom:8px}.selected-tags button,.tag-suggestions button{border:1px solid var(--line-control);background:var(--surface-raised);min-width:44px;min-height:44px;color:var(--ink-soft);border-radius:999px;padding:0 10px;font-size:.75rem}.selected-tags button{border-color:var(--clay);color:var(--clay-dark);justify-content:center;align-items:center;display:inline-flex}.selected-tags svg{flex:none;margin-left:6px}.tag-suggestions{margin-top:9px}.tag-suggestions button{text-align:left;border-radius:10px;min-height:44px}.tag-suggestions small{color:var(--ink-faint);margin-top:2px;font-size:.75rem;display:block}.tag-suggestions .create-tag{border-color:var(--clay);color:var(--clay-dark)}.character-count{color:var(--ink-faint);text-align:right;margin:5px 3px 0;font-size:.75rem}.date-field input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.sticky-submit{z-index:15;width:min(100%,430px);padding:12px 20px calc(12px + var(--safe-area-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffcf7f5;position:fixed;bottom:0;left:50%;transform:translate(-50%)}form.screen[data-submit-flow=fixed] :is(input,textarea,select,button,[tabindex="-1"]):not(.sticky-submit *){scroll-margin-bottom:var(--submit-clearance,176px)}form.screen[data-submit-flow=normal]>.sticky-submit{width:100%;margin-top:24px;position:static;inset:auto;transform:none}.primary-button,.secondary-button{border-radius:12px;width:100%;min-height:50px;font-weight:700}.primary-button{border:1px solid var(--clay);background:var(--clay);color:#fff;box-shadow:0 6px 14px var(--clay-alpha-20)}.primary-button:disabled{box-shadow:none;background:#c8bdb2;border-color:#c8bdb2}.secondary-button{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}.sticky-submit>small{color:var(--ink-faint);text-align:center;margin-top:6px;font-size:.75rem;display:block}.delete-link{color:#8b3f32;background:0 0;border:0;width:100%;min-height:44px;margin-top:4px;font-size:.75rem}.delete-confirm{background:#fff5f1;border:1px solid #8b3f3247;border-radius:11px;margin-top:8px;padding:10px}.delete-confirm p{color:#71352b;margin:0 0 8px;font-size:.75rem;line-height:1.45}.delete-confirm>div{grid-template-columns:1fr 1.35fr;gap:8px;display:grid}.delete-confirm button{border:1px solid var(--line-strong);background:var(--surface);border-radius:9px;min-height:44px}.delete-confirm .danger-button{color:#fff;background:#8b3f32;border-color:#8b3f32}.confirm-action-dialog{width:min(100% - 32px,390px);max-width:390px;max-height:calc(100dvh - max(32px, var(--safe-area-top)) - max(32px, var(--safe-area-bottom)));margin:max(16px, var(--safe-area-top)) auto max(16px, var(--safe-area-bottom));border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);border-radius:22px;padding:22px;overflow:auto;box-shadow:0 22px 70px #2c262247}.confirm-action-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2c262280}.confirm-action-dialog h2{font-family:var(--serif);margin:0 0 10px;font-size:1.5rem;line-height:1.25}.confirm-action-dialog p{color:var(--ink-soft);margin:0;font-size:1rem;line-height:1.65}.confirm-action-dialog>div{grid-template-columns:1fr 1.35fr;gap:10px;margin-top:20px;display:grid}.confirm-action-dialog button{border:1px solid var(--line-strong);background:var(--surface);border-radius:14px;min-width:0;min-height:48px;padding:0 12px;font-weight:750}.confirm-action-dialog .danger-button{color:#fff;background:#8b3f32;border-color:#8b3f32}@media (max-width:350px){.confirm-action-dialog{width:calc(100% - 24px);padding:18px}.confirm-action-dialog>div{grid-template-columns:1fr}}.saved-screen{padding:calc(70px + var(--screen-safe-area-top)) 20px 35px;text-align:center}.saved-mark{background:var(--olive);color:#fff;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 20px;font-size:1.5625rem;display:grid}.saved-screen h1{overflow-wrap:anywhere;margin-top:8px;font-size:1.9375rem}.saved-restaurant{overflow-wrap:anywhere;color:var(--ink-soft);margin:8px 0 20px;font-size:.875rem}.saved-card{border:1px solid var(--line);background:var(--surface);text-align:left;box-shadow:var(--shadow-soft);border-radius:15px;overflow:hidden}.saved-card>img{aspect-ratio:4/3;width:100%}.saved-card.no-photo>div:last-child{padding:20px}.saved-card>div:last-child{padding:14px}.saved-card small{color:var(--ink-faint);margin-right:9px;font-size:.75rem}.saved-card p{color:var(--ink-soft);margin:12px 0;font-size:.875rem;line-height:1.6}.saved-actions{gap:9px;margin-top:17px;display:grid}.saved-helper{max-width:310px;color:var(--ink-faint);margin:12px auto 0;font-size:.75rem;line-height:1.5}.saved-notice{border:1px solid var(--clay-alpha-28);background:var(--clay-soft);color:var(--clay-dark);text-align:left;border-radius:12px;margin:13px auto 0;padding:11px 13px;font-size:.75rem;line-height:1.55}@media (max-width:260px){.suggestion-menu{max-height:180px;margin-top:6px;position:relative;top:auto}}.recipe-preview-screen{padding-bottom:var(--submit-clearance,176px)}.recipe-input-screen{padding-bottom:0}.recipe-input-screen .sticky-submit{width:100%;margin-top:16px;position:static;left:auto;transform:none}.recipe-input-content,.organized-recipe{padding:18px 20px 30px}.organized-recipe{padding-top:24px}.recipe-input-content{flex-direction:column;display:flex}.recipe-input-content>.field-block{margin-top:16px}.recipe-input-content>.recipe-source-field{margin-top:0}.field-label-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.field-label-row>label{font-family:var(--serif);font-size:.9375rem;font-weight:600}.field-label-row>button{border:1px solid var(--line-control);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 10px;font-size:.75rem}.raw-recipe-field textarea{min-height:clamp(160px,26svh,240px);font-size:1rem;line-height:1.8}.raw-save-state{color:var(--olive);margin:7px 3px 0;font-size:.75rem}.detected-source{min-height:32px;color:var(--olive);align-items:center;gap:7px;margin:8px 0 0;font-size:.75rem;font-weight:700;display:inline-flex}.recipe-tag-field{padding-bottom:12px}.recipe-preview-header,.cook-header{z-index:10;min-height:82px;padding:calc(12px + var(--screen-safe-area-top)) 18px 10px;border-bottom:1px solid var(--line);background:var(--canvas);grid-template-columns:44px 1fr auto;align-items:center;display:grid;position:sticky;top:0}.recipe-preview-header>div,.cook-header>div{min-width:0;padding-left:7px}.recipe-preview-header h1,.cook-header h1{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.25rem;font-weight:600;overflow:hidden}.recipe-preview-header small,.cook-header small{color:var(--ink-faint);letter-spacing:.08em;font-size:.75rem}.review-badge{border:1px solid var(--olive);background:var(--olive-soft);color:#4f6145;white-space:nowrap;border-radius:999px;min-height:30px;padding:6px 9px;font-size:.75rem}.review-badge.warning{border-color:var(--ochre);color:#80521b;background:#f7ead3}.recipe-preview-tabs{top:var(--subpage-sticky-top);z-index:9;border-bottom:1px solid var(--line);background:var(--canvas);box-shadow:0 0 0 5px var(--canvas);grid-template-columns:1fr 1fr;margin:14px 20px 0;display:grid;position:sticky}.recipe-preview-tabs button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-bottom:2px solid #0000;font-size:.75rem}.recipe-preview-tabs button.active{border-bottom-color:var(--clay);color:var(--clay-dark);font-weight:700}.raw-text-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:14px;margin:20px;padding:17px}.raw-text-heading{border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:11px;display:flex}.raw-text-heading span{font-family:var(--serif);font-weight:600}.raw-text-heading small{color:var(--ink-faint);font-size:.75rem}.raw-text-panel>p{color:var(--ink-soft);white-space:pre-wrap;margin:16px 0;font-size:.875rem;line-height:1.85}.raw-text-panel>textarea{border:1px solid var(--line-control);background:var(--surface);width:100%;min-height:320px;color:var(--ink);font:inherit;resize:vertical;border-radius:10px;margin:14px 0;padding:12px;font-size:1rem;line-height:1.75}.recipe-edit-source,.recipe-edit-tags{margin-top:18px}.raw-text-panel>button{border:1px solid var(--line-control);background:var(--surface-raised);min-height:44px;color:var(--clay-dark);border-radius:10px;padding:0 12px;font-size:.75rem}.recipe-title-editor label{color:var(--ink-soft);letter-spacing:.08em;margin-bottom:7px;font-size:.75rem;display:block}.recipe-title-editor input{border:0;border-bottom:1px solid var(--line-control);width:100%;min-height:44px;font-family:var(--serif);background:0 0;padding:6px 0 12px;font-size:1.75rem;font-weight:600}.recipe-kind-field{border:0;min-width:0;margin:0 0 12px;padding:0}.recipe-kind-field legend,.recipe-meta-editor>label{color:var(--ink-soft);letter-spacing:.04em;margin-bottom:8px;font-size:.75rem;font-weight:700}.recipe-kind-field>div{border:1px solid var(--line-control);background:var(--surface);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.recipe-kind-field button{min-width:0;min-height:44px;color:var(--ink-soft);font:inherit;background:0 0;border:2px solid #0000;border-radius:10px;padding:0 12px;font-size:.875rem;font-weight:700}.recipe-kind-field button.active{text-underline-offset:.22em;background:var(--clay-soft);color:var(--clay-dark);text-decoration:underline;text-decoration-thickness:2px;box-shadow:0 2px 9px #553d2d1a}.recipe-kind-field>small{color:var(--ink-faint);margin-top:8px;font-size:.75rem;line-height:1.5;display:block}.recipe-meta-editor{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:end;gap:12px;margin-top:16px;display:grid}.recipe-meta-editor .recipe-kind-field,.recipe-meta-editor>label{min-width:0;margin:0}.recipe-meta-editor>label{gap:8px;display:grid}.recipe-meta-editor input{border:1px solid var(--line-control);background:var(--surface);width:100%;min-height:52px;color:var(--ink);font:inherit;border-radius:14px;padding:0 12px;font-size:1rem}.organized-recipe>.context-hint{margin-top:16px;margin-bottom:10px}.drink-details-editor{border:1px solid var(--line-control);background:var(--surface);border-radius:14px;margin-top:12px}.drink-details-editor summary{min-height:48px;color:var(--clay-dark);cursor:pointer;align-items:center;padding:0 14px;font-size:.875rem;font-weight:800;display:flex}.drink-details-editor summary:focus-visible{background:var(--clay-soft);box-shadow:inset 0 0 0 2px var(--clay);border-radius:13px 13px 0 0;outline:0}.drink-details-editor>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 14px 14px;display:grid}.drink-details-editor label{min-width:0;color:var(--ink-soft);gap:7px;font-size:.75rem;font-weight:700;display:grid}.drink-details-editor input,.drink-details-editor select{border:1px solid var(--line-control);background:var(--surface-raised);width:100%;min-width:0;min-height:48px;color:var(--ink);font:inherit;border-radius:11px;padding:0 12px;font-size:1rem}.drink-details-editor select{-webkit-appearance:auto;appearance:auto}.drink-units-hint{color:var(--ink-faint);grid-column:1/-1;font-size:.75rem;line-height:1.55}.recipe-kind-summary{flex-wrap:wrap;gap:8px;margin:12px 20px 0;display:flex}.recipe-kind-summary span{border:1px solid var(--line-control);background:var(--surface-raised);min-height:32px;color:var(--ink-soft);border-radius:999px;align-items:center;padding:0 11px;font-size:.75rem;display:inline-flex}.recipe-source-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:12px;justify-content:space-between;align-items:center;min-height:64px;margin-top:18px;padding:12px;display:flex}.recipe-source-card small,.recipe-source-card strong{display:block}.recipe-source-card small{color:var(--ink-faint);font-size:.75rem}.recipe-source-card strong{font-family:var(--serif);margin-top:3px;font-size:.875rem}.recipe-source-card a{color:var(--clay-dark);font-size:.75rem;text-decoration:none}.youtube-embed{aspect-ratio:16/9;background:#211d1a;border-radius:13px;position:relative;overflow:hidden}.youtube-embed.compact-embed{margin-top:12px}.recipe-organization-summary{color:var(--olive);margin:10px 0 18px;font-size:.8125rem;font-weight:700;line-height:1.5}.recipe-organization-summary.warning{color:var(--ochre)}.recipe-quality-review{border:1px solid var(--line-strong);border-radius:var(--control-radius);background:var(--surface-raised);margin:0 0 18px}.recipe-quality-review>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:50px;padding:0 14px;font-size:.8125rem;font-weight:800;list-style:none;display:grid}.recipe-quality-review>summary::-webkit-details-marker{display:none}.recipe-quality-review>summary span{color:var(--ochre);font-size:.6875rem}.recipe-quality-review[open] .summary-chevron{transform:rotate(180deg)}.recipe-quality-review>div{border-top:1px solid var(--line);padding:0 14px 14px}.recipe-quality-review ul{margin:10px 0 0;padding-left:20px}.recipe-quality-review li{color:var(--ink-soft);margin-top:5px;font-size:.75rem;line-height:1.55}.recipe-quality-review section{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.recipe-quality-review section strong{font-size:.75rem}.recipe-quality-review section button{border:1px solid var(--line-strong);min-height:44px;color:var(--clay-dark);background:0 0;border-radius:10px;margin-top:8px;padding:0 12px;font-weight:750}.recipe-quality-review>div>small{color:var(--ink-faint);margin-top:10px;font-size:.625rem;display:block}.compact-video-source{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface-raised);min-height:52px;color:var(--ink);grid-template-columns:1fr auto;align-items:center;gap:8px;margin-top:10px;padding:0 13px;text-decoration:none;display:grid}.compact-video-source>a{min-width:0;min-height:50px;color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.compact-video-source>a>span{color:var(--clay);flex:0 0 20px;place-items:center;display:grid}.compact-video-source>a strong{min-width:0;font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.compact-video-source>button,.source-edit-done{min-width:44px;min-height:44px;color:var(--clay-dark);background:0 0;border:0;font-size:.75rem}.source-edit-done{margin-top:5px}.field-error{color:#8b3f32;margin:6px 0 0;font-size:.75rem;line-height:1.5}.add-recipe-source{min-height:48px;color:var(--clay-dark);font-family:var(--serif);background:0 0;border:0;margin-top:4px;font-size:.9375rem}.youtube-embed iframe{border:0;width:100%;height:100%}@media (max-width:260px){.recipe-input-screen,.recipe-preview-screen{--page-gutter:8px}.recipe-preview-tabs,.raw-text-panel{margin-left:8px;margin-right:8px}.recipe-preview-header{grid-template-columns:44px minmax(0,1fr) 92px;padding-left:6px;padding-right:6px}.recipe-preview-header h1{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.25;overflow:visible}.recipe-preview-header>:last-child{grid-area:1/3;justify-self:end;margin:0}}.recipe-input-options{border-block:1px solid var(--line);margin-top:16px}.recipe-input-options>summary{cursor:pointer;align-content:center;min-height:44px;font-size:.875rem}.recipe-input-options>.field-block{margin-top:16px}@media (forced-colors:active){.recipe-kind-field button[aria-pressed=true]{border-color:highlight;text-decoration:underline}}.recipe-editor-section,.recipe-verdict-fieldset,.recipe-rights-fieldset{border:1px solid var(--line);background:#fffcf7bf;border-radius:14px;margin-top:18px;padding:17px}.recipe-editor-section.warning{background:#fbf2e2;border-color:#a96f258c}.recipe-editor-section:not(.warning){border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:0 0 16px}.recipe-empty-section{border-bottom:1px solid var(--line);margin-top:4px}.recipe-empty-section button{min-height:48px;color:var(--clay-dark);font-family:var(--serif);background:0 0;border:0;padding:0;font-size:.9375rem}.recipe-section-title{justify-content:space-between;align-items:start;gap:10px;margin-bottom:6px;display:flex}.recipe-section-title h2,.recipe-verdict-fieldset legend,.recipe-rights-fieldset legend,.cook-section-heading h2,.cook-tools h2{font-family:var(--serif);margin:0;font-size:1.1875rem;font-weight:600}.recipe-section-title span{max-width:125px;color:var(--ochre);text-align:right;font-size:.75rem;line-height:1.35}.recipe-empty-note{color:var(--ink-faint);margin:-2px 0 11px;font-size:.75rem;line-height:1.45}.recipe-editor-items{gap:2px;display:grid}.recipe-ingredient-group{border-bottom:1px solid var(--clay);grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:44px;margin:9px 0 2px;display:grid}.recipe-group-heading{min-width:0}.recipe-ingredient-group input{min-width:0;color:var(--clay-dark);font-family:var(--serif);background:0 0;border:0;padding:8px 0;font-size:1rem;font-weight:600}.recipe-group-actions,.recipe-item-actions{grid-template-columns:repeat(4,44px);justify-content:end;align-items:center;gap:0;display:grid}.recipe-group-actions button,.recipe-item-actions button{width:44px;height:44px;color:var(--ink-faint);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}:is(.recipe-group-actions button:focus-visible,.recipe-item-actions button:focus-visible){background:var(--surface-soft);box-shadow:inset 0 0 0 2px var(--clay);outline:0}.recipe-group-actions .recipe-group-add{width:44px;min-width:44px;color:var(--clay-dark);padding:0;font-size:.75rem;font-weight:700;display:grid}.group-delete-confirm{width:min(100% - 32px,390px);max-height:calc(100dvh - 32px - var(--safe-area-top) - var(--safe-area-bottom));background:#f3e2da;border:1px solid #d9b8a8;border-radius:13px;margin:auto;padding:18px;overflow:auto}.group-delete-confirm::backdrop{background:#2b26218f}.group-delete-confirm strong{font-family:var(--serif);font-size:.9375rem}.group-delete-confirm p{color:#6f4a3e;margin:6px 0 12px;font-size:.75rem;line-height:1.55}.group-delete-confirm>div{gap:7px;display:grid}.group-delete-confirm button{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:44px;color:var(--ink-soft);border-radius:10px;font-size:.75rem;font-weight:700}.group-delete-confirm .danger-button{color:#fff;background:#8b3f32;border-color:#8b3f32}.recipe-group-actions button:disabled,.recipe-item-actions button:disabled{opacity:.32}.ingredient-group-name{min-height:44px;color:var(--clay-dark);font-family:var(--serif);text-align:left;background:0 0;border:0;padding:8px 0;font-size:1rem;font-weight:600}.recipe-editor-item{grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:4px;display:grid}.recipe-editor-item.compact-row{grid-template-columns:20px minmax(0,1fr) auto;align-items:center}.recipe-editor-item>span{min-height:42px;color:var(--clay);font-family:var(--serif);place-items:center;font-size:.8125rem;display:grid}.recipe-editor-item textarea{resize:none;border:1px solid var(--line-control);background:var(--surface);border-radius:9px;width:100%;min-height:44px;padding:10px;font-size:1rem;line-height:1.55;overflow:hidden}.recipe-item-actions{grid-area:1/3;margin-top:0}.recipe-editor-item.compact-row .recipe-item-actions{grid-area:1/3}.recipe-item-content{border:0;border-bottom:1px solid var(--line);min-height:44px;color:var(--ink);text-align:left;background:0 0;padding:6px 4px;font-size:.875rem;line-height:1.5}.unclassified-item{background:var(--surface);border:1px solid #a96f2559;border-radius:11px;padding:12px}.unclassified-content{width:100%;min-height:44px;color:var(--ink);text-align:left;background:0 0;border:0;padding:2px 0 10px;font-size:.875rem;line-height:1.6}.unclassified-item textarea{resize:none;border:1px solid var(--line-control);background:var(--surface);border-radius:9px;width:100%;padding:10px;font-size:1rem;line-height:1.55;overflow:hidden}.classification-actions{flex-wrap:wrap;gap:6px;display:flex}.classification-actions button,.undo-classification{border:1px solid var(--line-strong);background:var(--surface-raised);min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 11px;font-size:.75rem}.classification-actions .remove-classification{color:#8f3f32}.undo-classification{margin-top:8px}.recipe-add-actions{flex-wrap:wrap;gap:8px;display:flex}.add-recipe-item{min-height:44px;color:var(--clay-dark);background:0 0;border:0;border-radius:0;margin-top:10px;padding:0 10px;font-size:.75rem}.reorganize-confirm{background:#fbf2e2;border:1px solid #a96f2573;border-radius:11px;padding:12px}.reorganize-confirm p{color:var(--ink-soft);margin:0 0 10px;font-size:.875rem;line-height:1.55}.reorganize-confirm>div{gap:8px;display:flex}.reorganize-confirm button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:9px;padding:0 12px;font-size:.75rem}.tag-review-callout{background:#fbf2e2;border:1px solid #a96f256b;border-radius:11px;margin:8px 0 12px;padding:12px}.tag-review-callout p{color:var(--ink-soft);margin:0 0 9px;font-size:.875rem;line-height:1.5}.tag-review-callout>div{gap:8px;display:flex}.tag-review-callout button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:9px;padding:0 12px;font-size:.75rem}.recipe-options{border-top:1px solid var(--line);margin-top:25px}.recipe-options>summary{min-height:54px;color:var(--ink);cursor:pointer;font-family:var(--serif);justify-content:space-between;align-items:center;gap:12px;font-size:1rem;list-style:none;display:flex}.recipe-options>summary::-webkit-details-marker{display:none}.recipe-options>summary span{color:var(--ink-soft);font-family:var(--sans);margin-left:auto;font-size:.75rem}.recipe-options .summary-chevron{color:var(--clay);transition:transform .15s}.recipe-options[open] .summary-chevron{transform:rotate(180deg)}.recipe-visibility-fieldset{margin:0 0 10px;padding:10px 0 2px}.recipe-saved-screen{padding-top:calc(62px + var(--safe-area-top))}.recipe-saved-summary{border:1px solid var(--line);background:var(--surface);text-align:left;box-shadow:var(--shadow-soft);border-radius:14px;gap:0;display:grid;overflow:hidden}.recipe-saved-cover,.recipe-detail-cover,.public-recipe-cover{aspect-ratio:4/3;object-fit:cover;width:calc(100% - 40px);max-height:420px;box-shadow:var(--shadow-soft);border-radius:16px;margin:16px 20px;display:block}.recipe-saved-cover{width:min(100%,390px);margin:14px auto 18px}.recipe-saved-summary>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;min-height:63px;padding:12px 14px;display:flex}.recipe-saved-summary>div:first-child{border-top:0}.recipe-saved-summary small{color:var(--ink-soft);font-size:.75rem}.recipe-saved-summary strong{font-family:var(--serif);font-size:.8125rem}.recipe-saved-next-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.recipe-saved-next-actions>summary{grid-column:1/-1}.recipe-saved-next-actions>button{min-width:0;min-height:48px}@media (max-width:340px){.recipe-saved-next-actions{grid-template-columns:1fr}}@media (max-width:359px){.drink-details-editor>div,.drink-detail-summary{grid-template-columns:1fr}}@media (max-width:260px){.recipe-editor-section{margin-left:8px;margin-right:8px}.recipe-editor-item,.recipe-editor-item.compact-row{grid-template-columns:20px minmax(0,1fr)}.recipe-item-actions,.recipe-editor-item.compact-row .recipe-item-actions{grid-area:2/2;grid-template-columns:repeat(4,minmax(44px,1fr));width:100%}.recipe-group-actions{grid-template-columns:repeat(4,minmax(44px,1fr));width:100%}}.recipe-preview-tabs[hidden],.recipe-review-layout>[hidden]{display:none}.recipe-review-layout>*{min-width:0}.recipe-preview-screen .organized-recipe{padding-top:16px}.recipe-cover-field.without-cover{margin-top:8px}.without-cover .recipe-cover-picker{background:0 0;border:0;width:auto;min-height:44px;padding:0 10px;font-size:.875rem}.recipe-review-summary{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.recipe-review-summary button,.classification-bulk button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink);border-radius:9px;padding:7px 10px;font-size:.875rem}.recipe-review-summary .needs-review{color:var(--ochre);border-color:currentColor}[id^=recipe-section-],#organized-title{scroll-margin-top:9rem}.recipe-item-content{overflow-wrap:anywhere;font-size:1rem}.recipe-row-menu{grid-area:1/3;position:relative}.recipe-ingredient-group>.recipe-row-menu{grid-column:2}.recipe-row-menu>summary{cursor:pointer;width:44px;height:44px;color:var(--ink-soft);border-radius:8px;place-items:center;font-size:1.5rem;list-style:none;display:grid}.recipe-row-menu>summary::-webkit-details-marker{display:none}.recipe-row-menu[open]>summary{background:var(--surface-soft)}.recipe-row-menu .recipe-item-actions,.recipe-row-menu .recipe-group-actions{z-index:12;border:1px solid var(--line-strong);background:var(--surface);width:184px;box-shadow:var(--shadow-soft);border-radius:9px;padding:4px;position:absolute;top:44px;right:0}.classification-bulk{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.classification-bulk label,.classification-select{align-items:center;gap:8px;min-height:44px;font-size:.875rem;display:flex}.classification-bulk input,.classification-select input{width:20px;height:20px;accent-color:var(--clay)}.classification-bulk span{color:var(--ink-soft);font-size:.875rem}.classification-bulk button:disabled{opacity:.5}.recipe-quality-review button{min-height:44px}.recipe-extra-options{margin-top:12px}.recipe-preview-screen .recipe-submit{flex-wrap:wrap;gap:8px;display:flex}.recipe-preview-screen .recipe-submit>button{flex:140px;font-size:.875rem}.recipe-preview-screen .recipe-submit>.form-error{flex-basis:100%;margin:0}.recipe-preview-screen .recipe-submit>.recipe-save-visibility{text-align:center;flex-basis:100%;margin:0}.recipe-next-saved{color:var(--olive);background:var(--surface);padding:10px;font-size:.875rem}@media (min-width:1000px){.phone-shell:is(.recipe-workspace,:has(.batch-review)),:is(.recipe-workspace,.phone-shell:has(.batch-review)) .paper-grain{width:min(100% - 64px,1120px)}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .recipe-review-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;display:grid}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .raw-text-panel{max-height:calc(100dvh - 260px);margin:16px 20px;position:sticky;top:90px;overflow-y:auto}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .raw-text-panel p{font-size:1rem}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .raw-text-panel textarea{min-height:320px}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .organized-recipe{border-left:1px solid var(--line)}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .recipe-submit{width:min(100% - 64px,1120px);padding-inline:24px}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .recipe-submit>button{flex:0 240px}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .recipe-submit{justify-content:flex-end;align-items:center}:is(.recipe-workspace,.phone-shell:has(.batch-review)) .recipe-submit>.recipe-save-visibility{flex:none;padding:0 12px}}.recipe-draft-actions{justify-content:flex-end;padding:0 20px;display:flex}.recipe-discard-button{min-height:44px;color:var(--ink-soft);text-underline-offset:4px;background:0 0;border:0;padding:0 8px;font-size:.875rem;text-decoration:underline}.recipe-review-layout.save-fields{padding:0}@media (forced-colors:active){:is(.recipe-group-actions button:focus-visible,.recipe-item-actions button:focus-visible){outline-offset:-3px;box-shadow:none;outline:3px solid highlight}}.cook-header{background:#fffcf7f5}.cook-header-actions{align-items:center;gap:4px;display:flex}.cook-edit-button,.cook-share-button{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--ink);border-radius:50%;place-items:center;padding:0;display:grid}.cook-edit-button{color:var(--ink-soft);background:0 0;border-color:#0000}.cook-header .status-pill{text-overflow:ellipsis;max-width:90px;font-size:.75rem;overflow:hidden}.cook-video{border:1px solid var(--line);background:var(--canvas);border-radius:13px;margin:16px 20px 0}.cook-video .youtube-embed{border-radius:0 0 12px 12px}.cook-video-actions{justify-content:space-between;align-items:center;gap:8px;min-height:52px;padding:4px 8px 4px 14px;display:flex}.cook-video-actions button,.cook-video-actions a{min-height:44px;color:var(--clay-dark);background:0 0;border:0;align-items:center;font-size:.75rem;text-decoration:none;display:inline-flex}.cook-mode-tabs{top:calc(var(--recipe-title-block-size,calc(66px + var(--screen-safe-area-top))) + 8px);z-index:8;border:1px solid var(--line);background:var(--surface);box-shadow:0 0 0 8px var(--canvas), 0 4px 16px #2e251e14;border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;margin:16px 20px 0;padding:4px;display:grid;position:sticky}.cook-quick-tools{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:8px;margin:12px 20px 0;display:grid}.cook-quick-tools.timer-only{grid-template-columns:minmax(0,1fr)}.cook-quick-tools>button{border:1px solid var(--line-control);border-radius:var(--control-radius);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--clay-dark);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:.75rem;line-height:1;display:inline-flex}.cook-quick-tools>button[aria-pressed=true]{border-color:var(--olive);background:var(--olive);color:#fff}.cook-planning-actions{grid-template-columns:1fr 1fr;gap:8px;margin:12px 20px 0;display:grid}.cook-planning-actions button{border:1px solid var(--line-control);background:var(--surface);min-width:0;min-height:46px;color:var(--clay-dark);border-radius:11px;padding:0 9px;font-size:.75rem;font-weight:700}.grocery-select-dialog{border:1px solid var(--line-strong);background:var(--surface);width:min(100% - 28px,390px);max-height:min(78dvh,620px);color:var(--ink);border-radius:18px;margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 70px #2b252047}.grocery-select-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2b252075}.grocery-select-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:58px;padding:6px 8px 6px 16px;display:flex}.grocery-select-dialog>header strong{font-family:var(--serif);font-size:1.1875rem}.grocery-select-dialog>header button{width:44px;height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.grocery-select-dialog>p{color:var(--ink-soft);margin:0;padding:12px 16px 8px;font-size:.8125rem}.grocery-scale-control,.cook-serving-scale{border:0;margin:0;padding:0}.grocery-scale-control{padding:0 16px 10px}.grocery-scale-control legend,.cook-serving-scale legend{color:var(--ink-soft);margin-bottom:7px;font-size:.75rem;font-weight:700}.grocery-scale-control>div,.cook-serving-scale>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.grocery-scale-control button,.cook-serving-scale button{border:1px solid var(--line-control);background:var(--surface);min-width:0;min-height:44px;color:var(--ink-soft);border-radius:10px;font-size:.8125rem;font-weight:700}.grocery-scale-control button.active,.cook-serving-scale button.active{border-color:var(--clay);background:var(--clay-soft);color:var(--clay-dark)}.grocery-dialog-error{margin:0;padding:8px 16px}.grocery-select-list{overscroll-behavior:contain;max-height:min(48dvh,380px);padding:0 16px;overflow-y:auto}.grocery-select-list label{border-bottom:1px solid var(--line);grid-template-columns:36px minmax(0,1fr);align-items:center;min-height:52px;font-size:.875rem;line-height:1.45;display:grid}.grocery-select-list input{width:22px;height:22px;accent-color:var(--clay);margin:0}.grocery-select-dialog>footer{min-height:68px;padding:10px 12px calc(10px + var(--safe-area-bottom));border-top:1px solid var(--line);background:var(--surface);grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:8px;display:grid}.grocery-select-dialog>footer button{border:1px solid var(--line-control);background:var(--surface);border-radius:11px;min-width:0;min-height:48px;margin:0;font-weight:800}.grocery-select-dialog>footer .primary-button{border-color:var(--clay);background:var(--clay);color:#fff}.cook-sync-status,.cook-completion-status{color:var(--olive);margin:8px 20px 0;font-size:.75rem;line-height:1.5}.cook-progress-conflict{border:1px solid var(--line);background:var(--surface-raised);color:var(--ink-soft);border-radius:12px;margin:8px 20px 0;padding:10px 12px;font-size:.75rem;line-height:1.5}.cook-progress-conflict p,.cook-progress-conflict small{margin:0}.cook-progress-conflict strong{color:var(--ink);font-family:var(--serif);margin-bottom:4px;font-size:.875rem;display:block}.cook-progress-conflict>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.cook-progress-conflict button{border:1px solid var(--line-strong);background:var(--surface);min-width:0;min-height:44px;color:var(--ink);border-radius:10px;padding:0 12px;font-weight:700}.cook-progress-conflict small{color:var(--clay-dark);margin-top:8px;display:block}.cook-timers{gap:7px;margin:10px 20px 0;display:grid}.cook-timers-heading{color:var(--ink-soft);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.cook-timers-heading span{align-items:center;gap:5px;display:inline-flex}.cook-timer{border:1px solid var(--olive);background:var(--olive-soft);min-height:58px;color:var(--olive);border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 7px 6px 14px;display:grid}.cook-timer.done{border-color:var(--clay);background:var(--clay-soft);color:var(--clay-dark)}.cook-timer>span,.cook-timer small,.cook-timer strong{display:block}.cook-timer small{font-size:.6875rem}.cook-timer strong{font-variant-numeric:tabular-nums;margin-top:1px;font-size:1.25rem}.cook-timer-actions{align-items:center;gap:4px;display:flex}.cook-timer button{background:var(--surface);color:currentColor;border:0;border-radius:10px;min-width:44px;min-height:44px;padding:0 8px;font-size:.75rem;font-weight:800}.manual-timer-panel{border:1px solid var(--line);background:var(--surface-raised);border-radius:13px;min-width:0;margin:0}.manual-timer-panel[open]{grid-column:1/-1}.manual-timer-panel summary{min-height:44px;color:var(--clay-dark);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:.8125rem;font-weight:800;list-style:none;display:flex}.manual-timer-panel summary::-webkit-details-marker{display:none}.manual-timer-panel>div{grid-template-columns:minmax(0,1fr) 96px auto;align-items:end;gap:8px;padding:0 12px 12px;display:grid}.timer-background-setting{border-bottom:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:4px 0 8px;display:flex}.timer-background-setting span,.timer-background-setting strong,.timer-background-setting small{min-width:0;display:block}.timer-background-setting strong{color:var(--ink);font-size:.8125rem}.timer-background-setting small{color:var(--ink-soft);margin-top:2px;font-size:.6875rem}.timer-background-setting>div{flex:none;align-items:center;gap:6px;display:flex}.timer-background-setting>div button{white-space:nowrap;min-width:44px;padding-inline:10px}.timer-background-setting>div button:first-child{border-color:var(--line-control);background:var(--surface);color:var(--clay-dark)}.timer-background-setting button[aria-pressed=true]{border-color:var(--olive);background:var(--olive-soft);color:var(--olive)}.manual-timer-panel label{min-width:0;color:var(--ink-soft);gap:6px;font-size:.75rem;font-weight:700;display:grid}.manual-timer-panel input{border:1px solid var(--line-control);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);border-radius:10px;padding:0 10px;font-size:1rem}.manual-timer-panel button{border:1px solid var(--clay);background:var(--clay);color:#fff;white-space:nowrap;border-radius:10px;min-width:44px;min-height:44px;padding:0 12px;font-weight:800}@media (max-width:360px){.recipe-meta-editor,.manual-timer-panel>div{grid-template-columns:1fr}.timer-background-setting{flex-direction:column;align-items:stretch;gap:8px}.timer-background-setting>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}.cook-completion-status{margin-inline:0}.cook-rating{text-align:left;border:0;margin:0 0 16px;padding:0}.cook-rating legend,.cook-completion-note{color:var(--ink-soft);margin-bottom:8px;font-size:.75rem;font-weight:700}.cook-rating>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.cook-rating button{border:1px solid var(--line-control);background:var(--surface);min-width:0;min-height:44px;color:var(--ink-soft);border-radius:10px;padding:0 5px;font-size:.75rem}.cook-rating button.active{border-color:var(--clay);background:var(--clay-soft);color:var(--clay-dark);font-weight:700}.cook-completion-note{text-align:left;display:block}.cook-completion-note textarea{resize:vertical;border:1px solid var(--line-control);background:var(--surface);width:100%;min-height:96px;color:var(--ink);border-radius:11px;margin-top:8px;padding:12px;font-size:1rem;line-height:1.5}@media (max-width:350px){.meal-plan-list article{grid-template-columns:minmax(0,1fr) 88px}.meal-plan-list article>img{display:none}.cook-timer{grid-template-columns:1fr}.cook-timer-actions{justify-content:stretch}.cook-timer-actions button{flex:1 1 0}.step-cues .duration-cue{grid-template-columns:1fr}}.source-video-control{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface-raised);min-height:44px;color:var(--clay-dark);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:.8125rem;font-weight:700;display:inline-flex}.recipe-reference-video{margin:12px 20px 16px}.recipe-reference-video .source-video-control{width:100%}.cook-reset-backdrop{z-index:70;padding:20px 20px calc(20px + var(--safe-area-bottom));background:#2b252047;place-items:end center;display:grid;position:fixed;inset:0}.cook-reset-confirm{z-index:1;inset:auto 20px calc(20px + var(--safe-area-bottom));box-sizing:border-box;border:1px solid var(--line-strong);background:var(--surface);border-radius:20px;width:auto;max-width:390px;margin:0 auto;padding:20px;position:fixed;box-shadow:0 18px 48px #19141040}.cook-reset-confirm strong{font-family:var(--serif);font-size:1.25rem}.cook-reset-confirm p{color:var(--ink-soft);margin:8px 0 16px;font-size:.875rem;line-height:1.55}.cook-reset-confirm>div{grid-template-columns:1fr 1.35fr;gap:8px;display:grid}.cook-reset-confirm button{border:1px solid var(--line-strong);background:var(--surface);border-radius:12px;min-height:48px}.cook-reset-confirm .danger-button{color:#fff;background:#8b3f32;border-color:#8b3f32}.cook-video-backdrop{z-index:60;background:#2b252052;place-items:end center;display:grid;position:fixed;inset:0}.cook-video-sheet{z-index:1;inset:auto 8px max(8px, var(--safe-area-bottom));border:1px solid var(--line-strong);background:var(--surface);border-radius:20px;width:min(100% - 16px,430px);max-height:88dvh;margin:auto;padding:12px;position:fixed;box-shadow:0 18px 55px #19141052}.video-fallback-note{color:var(--ink-soft);margin:10px 0 0;font-size:.75rem;line-height:1.55}.cook-video-sheet>header{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-height:48px;display:grid}.cook-video-sheet>header strong{font-family:var(--serif);text-align:center;grid-column:2;font-size:1.125rem}.cook-video-sheet>header button{width:44px;height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:50%;grid-column:3;place-items:center;padding:0;font-size:1.4375rem;display:grid}.cook-video-sheet>header button:focus-visible{background:var(--clay-soft);box-shadow:inset 0 0 0 2px var(--clay);outline:0}.cook-video-sheet>a{border:1px solid var(--line);min-height:48px;color:var(--clay-dark);border-radius:10px;justify-content:center;align-items:center;margin-top:8px;font-size:.8125rem;text-decoration:none;display:flex}@media (max-height:620px){.cook-mode-tabs{z-index:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;position:relative;top:auto}}@media (max-width:260px){.recipe-cook-screen{--page-gutter:8px}.cook-header{grid-template-columns:44px minmax(0,1fr) 92px;padding-left:6px;padding-right:6px}.cook-header h1{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.25;overflow:visible}.cook-header>:last-child{grid-area:1/3;justify-self:end;margin:0}}.recipe-cook-screen .cook-planning-actions.task-disclosure{margin-block:8px;display:block}.cook-planning-actions.task-disclosure>summary,.easy-read-toggle-row.task-disclosure>summary{padding-inline:0}.incomplete-recipe-note{border:1px solid var(--ochre);color:#6f4a1b;text-align:left;background:#fbf2e2;border-radius:12px;margin:0;padding:14px 16px;font-size:.875rem;line-height:1.6}.drink-detail-summary{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 20px 0;padding:14px;display:grid}.drink-detail-summary div{gap:3px;min-width:0;display:grid}.drink-detail-summary small{color:var(--ink-faint);font-size:.6875rem}.drink-detail-summary strong{overflow-wrap:anywhere;color:var(--ink);font-size:.875rem}.drink-alcohol-note{border-top:1px solid var(--line);color:var(--clay-dark);grid-column:1/-1;margin:2px 0 0;padding-top:10px;font-size:.75rem;line-height:1.55}.subpage-header{z-index:10;min-height:82px;padding:calc(12px + var(--screen-safe-area-top)) 18px 10px;border-bottom:1px solid var(--line);background:var(--canvas);grid-template-columns:44px 1fr 44px;align-items:center;display:grid;position:sticky;top:0}.subpage-header>div{min-width:0;padding-left:7px}.subpage-header small{color:var(--ink-faint);font-size:.75rem;display:block}.subpage-header h1{font-family:var(--serif);overflow-wrap:anywhere;margin:0;font-size:1.25rem;font-weight:600;line-height:1.25}.account-search-content,.follow-content,.share-content{padding:18px 20px 35px}.account-search-input{border:1px solid var(--line-control);background:var(--surface);border-radius:13px;align-items:center;min-height:50px;display:flex}.account-search-input>svg{box-sizing:border-box;width:46px;height:19px;color:var(--ink-faint);flex:none;padding-left:16px;display:grid}.account-search-input input{background:0 0;border:0;flex:1;min-width:0;min-height:48px;padding:0 15px 0 2px}.account-search-input:focus-within{border-color:var(--clay);outline:2px solid var(--clay);outline-offset:-2px}.account-search-input input:focus-visible{outline:0}.share-cache-note{color:var(--ink-soft);margin:11px 2px 19px;font-size:.75rem;line-height:1.55}.account-results{display:grid}.account-results article{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px;min-height:76px;padding:10px 0;display:grid}.account-identity-button{min-width:0;min-height:48px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:0;display:grid}.account-identity-button.without-chevron{grid-template-columns:44px minmax(0,1fr)}.account-identity-button>.account-avatar-image{background:var(--olive);color:#fff;width:44px;height:44px}.account-identity-button>span:nth-child(2){min-width:0}.account-identity-button strong,.account-identity-button small,.account-identity-button em,.account-identity-button .account-context{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-identity-button strong{font-family:var(--serif);font-size:.9375rem}.account-identity-button small{color:var(--ink-soft);margin-top:3px;font-size:.75rem}.account-identity-button em{color:var(--ink-soft);white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:.75rem;font-style:normal;line-height:1.4;display:-webkit-box;overflow:hidden}.account-identity-button .account-context{color:var(--olive);margin-top:4px;font-size:.6875rem;font-weight:700}.account-identity-button>svg{color:var(--ink-faint)}.account-suggestions-heading{justify-content:flex-start;align-items:baseline;gap:12px;margin-top:4px;display:flex}.account-suggestions-heading strong{font-family:var(--serif);font-size:1.125rem}.account-suggestions-heading span{color:var(--ink-soft);font-size:.75rem}.account-avatar{background:var(--olive);color:#fff;width:44px;height:44px;font-family:var(--serif);border-radius:50%;place-items:center;display:grid}.avatar-mina{background:#755446}.avatar-yun{background:#6c5e77}.avatar-alan{background:#4f6670}.account-results h2{font-family:var(--serif);margin:1px 0 3px;font-size:1rem}.account-results p{color:var(--ink-soft);margin:0;font-size:.75rem}.account-results small{color:var(--ink-soft);margin-top:7px;font-size:.75rem;line-height:1.45;display:block}.account-results .account-identity-button small{margin-top:3px}.account-public-link{min-height:44px;color:var(--clay-dark);text-align:left;background:0 0;border:0;margin:7px 0 0;padding:0;font-size:.75rem;font-weight:700}.account-results article>.account-follow-action{border:1px solid var(--clay);background:var(--clay);color:#fff;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 10px;font-size:.75rem;display:inline-flex}.account-results article>.account-follow-action.active{border-color:var(--line-control);background:var(--surface);color:var(--ink-soft)}.account-results article>.account-follow-action.pending{border-color:var(--ochre);color:#7e5019;background:#f7ead3}.follow-content{gap:16px;display:grid}.follow-panel-stack{gap:14px;display:grid}.follow-find-button{width:44px;height:44px;color:var(--clay-dark);background:0 0;border:0;place-items:center;padding:0;font-size:.75rem;font-weight:700;display:grid}.follow-tabs{top:var(--subpage-sticky-top);z-index:9;border:1px solid var(--line);background:var(--surface-soft);box-shadow:0 0 0 6px var(--canvas);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;display:grid;position:sticky}.follow-tabs button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:10px;padding:0 5px;font-size:.75rem}.follow-tabs button.active{background:var(--surface);color:var(--ink);font-weight:800;box-shadow:0 2px 8px #47311f0f}.follow-tabs span{color:var(--clay-dark)}.follow-tabs button.has-notification span{background:var(--clay);color:#fff;border-radius:999px;place-items:center;min-width:19px;min-height:19px;margin-left:3px;padding:1px 5px;line-height:1.0625rem;display:inline-grid}.account-mode-card,.invite-section,.request-section,.follower-section{border:1px solid var(--line);border-radius:var(--card-radius);background:var(--surface);box-shadow:var(--shadow-soft);overflow:hidden}.account-mode-card .section-heading.compact,.invite-section .section-heading.compact,.request-section .section-heading.compact,.follower-section .section-heading.compact{padding:15px 15px 10px}.account-mode-card .section-heading h2,.invite-section .section-heading h2,.request-section .section-heading h2,.follower-section .section-heading h2{font-size:1.0625rem}.account-mode-toggle{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--canvas);grid-template-columns:1fr 1fr;gap:3px;margin:2px 15px 0;padding:3px;display:grid}.account-mode-toggle button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:9px;font-size:.75rem}.account-mode-toggle button.active{background:var(--surface);color:var(--clay-dark);font-weight:700;box-shadow:0 2px 8px #47311f14}.account-mode-card>p{color:var(--ink-soft);margin:12px 15px 15px;font-size:.75rem;line-height:1.55}.compact-mode-card{padding-bottom:12px}.account-mode-help{border-top:1px solid var(--line);margin:8px 15px 0}.account-mode-help summary{min-height:44px;color:var(--ink-soft);cursor:pointer;align-items:center;gap:7px;font-size:.75rem;list-style:none;display:flex}.account-mode-help summary::-webkit-details-marker{display:none}.account-mode-help p{color:var(--ink-soft);margin:-2px 0 5px;font-size:.75rem;line-height:1.55}.invite-section form{padding:0 15px 15px}.invite-section form>label,.invite-result label{color:var(--ink-soft);margin-bottom:6px;font-size:.75rem;display:block}.invite-email-row{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.invite-email-row input,.invite-result input{border:1px solid var(--line-control);background:var(--canvas);width:100%;min-height:44px;color:var(--ink);border-radius:10px;padding:0 11px;font-size:.75rem}.invite-email-row button,.invite-result button{border:1px solid var(--clay);background:var(--clay);color:#fff;border-radius:10px;min-height:44px;padding:0 12px;font-size:.75rem;font-weight:700}.invite-email-row button:disabled{opacity:.48}.invite-section form>p{color:var(--ink-soft);margin:8px 0 0;font-size:.75rem;line-height:1.5}.invite-result{background:var(--olive-soft);border:1px solid #69765247;border-radius:11px;margin:0 15px 15px;padding:12px}.invite-result input{background:var(--surface);color:var(--ink-soft)}.invite-result button{border-color:var(--olive);background:var(--olive);width:100%;margin-top:7px}.account-mode-confirm-backdrop{z-index:70;padding:18px 16px calc(18px + var(--safe-area-bottom));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2f29246b;place-items:end center;display:grid;position:fixed;inset:0}.account-mode-confirm{inset:auto 20px calc(20px + var(--safe-area-bottom));box-sizing:border-box;border:1px solid var(--clay-alpha-28);background:var(--surface);width:auto;max-width:390px;color:var(--ink);border-radius:20px;margin:0 auto;padding:20px;position:fixed;box-shadow:0 14px 42px #2f292433}.account-mode-confirm::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2f29246b}.block-account-confirm{z-index:71}.account-mode-confirm>p{color:var(--clay-dark);margin:5px 0 10px;font-size:.75rem;line-height:1.55}.account-mode-confirm>div{justify-content:flex-end;gap:6px;display:flex}.account-mode-confirm button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink-soft);border-radius:999px;padding:0 14px;font-size:.75rem}.account-mode-confirm button:last-child{border-color:var(--clay);background:var(--clay);color:#fff}.request-section article,.follower-section article{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:9px;min-width:0;min-height:70px;margin:0 14px;padding:10px 0;display:flex}.follow-account-identity{flex:14rem;grid-template-columns:40px minmax(0,1fr) 16px;min-width:0;max-width:100%}.follow-account-identity strong,.follow-account-identity small{text-overflow:clip;overflow-wrap:anywhere;white-space:normal;line-height:1.4;overflow:visible}.follow-account-identity .account-avatar-image{width:38px;height:38px}.request-section article.resolved{opacity:.58}.request-section .account-avatar-image,.follower-section .account-avatar-image{width:38px;height:38px;font-size:.75rem}.request-section strong,.request-section small,.follower-section strong,.follower-section small{display:block}.request-section strong,.follower-section strong{font-family:var(--serif);font-size:.8125rem}.request-section small,.follower-section small{color:var(--ink-soft);margin-top:3px;font-size:.75rem}.request-actions,.follower-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;min-width:0;max-width:100%;margin-inline-start:auto;display:flex}.request-actions button,.follower-actions button{overflow-wrap:anywhere;white-space:normal;min-width:44px;max-width:100%}.request-actions button,.follower-actions button,.block-confirm-actions button{border:1px solid var(--line-control);background:var(--surface);min-height:44px;color:var(--ink-soft);border-radius:999px;padding:0 9px;font-size:.75rem}.request-actions button:first-child{border-color:var(--clay);background:var(--clay);color:#fff}.follow-load-more{border:1px solid var(--line-control);background:var(--surface);min-width:132px;min-height:44px;color:var(--clay-dark);font:inherit;border-radius:999px;margin:12px auto 15px;padding:0 18px;font-weight:700;display:block}.follow-load-sentinel{min-height:24px;color:var(--ink-soft);place-items:center;font-size:.8125rem;display:grid}.block-confirm-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:7px;padding:0 0 12px;display:flex}.block-confirm-actions>span{color:var(--clay-dark);flex:1 0 100%;font-size:.75rem;line-height:1.5}.block-confirm-actions button:last-child{border-color:var(--clay);background:var(--clay);color:#fff}.resolved-label{color:var(--ink-soft);font-size:.75rem}main.app-main .follow-management-screen h1[data-follow-return-focus=true]:focus-visible{outline:3px solid var(--clay-dark);outline-offset:-3px}@media (forced-colors:active){main.app-main .follow-management-screen h1[data-follow-return-focus=true]:focus-visible{outline-color:highlight}}.share-preview-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:15px;overflow:hidden}.share-preview-card>img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.share-preview-card>div{padding:15px}.share-preview-card.no-photo>div{padding:20px}.share-preview-card h2{font-family:var(--serif);margin:5px 0 6px;font-size:1.3125rem}.share-preview-card>div>p:last-child{color:var(--ink-soft);margin:0;font-size:.75rem}.share-visibility-note{border-left:3px solid var(--olive);background:var(--olive-soft);margin-top:14px;padding:14px}.share-visibility-note strong{font-family:var(--serif);font-size:.8125rem}.share-visibility-note p{color:#536049;margin:5px 0 0;font-size:.75rem;line-height:1.5}.share-access-line{background:var(--olive-soft);color:#536049;border-radius:999px;width:fit-content;margin:14px 0 0;padding:7px 11px;font-size:.75rem;font-weight:700}.share-url-field{gap:6px;margin-top:14px;display:grid}.share-url-field span{color:var(--ink-soft);font-size:.75rem}.share-url-field input{border:1px solid var(--line-control);background:var(--surface);width:100%;min-height:44px;color:var(--ink-soft);border-radius:10px;padding:0 12px;font-size:.75rem}.share-status{min-height:20px;color:var(--olive);margin-top:8px;font-size:.75rem;line-height:1.5}.share-rights-confirmation,.public-recipe-summary-only{background:#f3e2da;border:1px solid #d9b8a8;border-radius:14px;margin-top:14px;padding:15px}.share-rights-confirmation strong,.public-recipe-summary-only strong{font-family:var(--serif);font-size:.875rem}.share-rights-confirmation p,.public-recipe-summary-only p{color:#6f4a3e;margin:6px 0 0;font-size:.75rem;line-height:1.55}.share-rights-confirmation button{border:1px solid var(--clay);background:var(--clay);color:#fff;border-radius:12px;min-height:44px;margin-top:12px;padding:0 13px;font-size:.75rem;font-weight:700}.share-rights-reset{min-height:44px;color:var(--clay-deep);text-underline-offset:3px;background:0 0;border:0;margin-top:8px;padding:0;font-size:.75rem;font-weight:700;text-decoration:underline}.public-recipe-summary-only{margin:0 20px 24px}.public-restaurant-screen,.public-recipe-screen{min-height:100%;padding-bottom:36px}.public-recipe-title{padding:22px 20px 15px}.public-recipe-screen.app-shell .public-recipe-title{z-index:8;top:calc(70px + var(--safe-area-top))}.public-recipe-screen.shared-shell .public-recipe-title{top:var(--safe-area-top)}.public-recipe-title h1{margin:5px 0 10px;font-size:1.9375rem}.public-recipe-source{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin:0 20px 14px;padding:13px;display:flex}.public-recipe-source small,.public-recipe-source strong{display:block}.public-recipe-source small{color:var(--ink-faint);font-size:.75rem}.public-recipe-source a{min-height:44px;color:var(--clay-dark);font-size:.75rem}.public-recipe-video{margin:0 20px 16px}.shared-source-boundary{border-left:3px solid var(--olive);background:var(--olive-soft);margin:0 20px;padding:16px}.shared-source-boundary p{color:#536049;margin:6px 0 0;font-size:.75rem;line-height:1.6}.public-recipe-body{gap:14px;padding:0 20px;display:grid}.public-recipe-body section{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:16px}.public-recipe-body>.drink-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.public-recipe-body h2{margin:0 0 10px;font-size:1.125rem}.public-recipe-body ul,.public-recipe-body ol{color:var(--ink-soft);gap:8px;margin:0;padding-left:20px;font-size:.875rem;line-height:1.65;display:grid}.public-recipe-body ul{list-style:outside}.public-recipe-body ol{list-style:decimal}.public-recipe-body li::marker{color:var(--clay-dark);font-weight:800}.public-ingredient-list{gap:0;display:grid}.public-ingredient-group{border-bottom:1px solid var(--clay);color:var(--clay-dark);margin:16px 0 4px;padding-bottom:7px;font-size:.9375rem}.public-ingredient-group:first-child{margin-top:0}.public-ingredient-item{border-bottom:1px solid var(--line);min-height:44px;color:var(--ink-soft);grid-template-columns:14px minmax(0,1fr);align-items:start;gap:5px;padding:8px 0;font-size:.875rem;line-height:1.65;display:grid}.public-ingredient-item:last-child{border-bottom:0}.public-ingredient-item>span{color:var(--clay-dark);font-weight:800}.public-ingredient-item p{margin:0}.public-recipe-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:14px 20px;display:grid}.public-recipe-actions[data-single=true]{grid-template-columns:minmax(0,1fr)}.public-recipe-actions>button,.public-recipe-actions .source-video-control{border:1px solid var(--clay);background:var(--clay);color:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;font-size:.875rem;font-weight:800;display:inline-flex}.public-recipe-actions .source-video-control{border-color:var(--line-control);background:var(--surface);color:var(--clay-dark);font-size:.8125rem}.public-recipe-actions>button:disabled{border-color:var(--line-control);background:var(--surface);color:var(--ink-soft);opacity:1}.public-recipe-action-message{color:var(--ink-soft);grid-column:1/-1;margin:0 20px 18px;font-size:.75rem;line-height:1.5}.recipe-share-preview{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:15px;padding:18px}.recipe-share-preview h2{margin:6px 0 8px;font-size:1.5625rem}.recipe-share-preview>p:last-child{color:var(--ink-soft);margin:0;font-size:.75rem}.recipe-print-sheet{display:none}@media print{body *{visibility:hidden!important}.recipe-print-sheet,.recipe-print-sheet *{visibility:visible!important}.recipe-print-sheet{color:#241f1b;background:#fff;width:100%;padding:14mm;font:11pt/1.55 system-ui,sans-serif;display:block;position:absolute;inset:0}.recipe-print-sheet header{border-bottom:1px solid #a74b35;margin-bottom:8mm}.recipe-print-sheet header p{color:#746c64;margin:0 0 3mm}.recipe-print-sheet h1{margin:0 0 3mm;font:700 25pt/1.25 Georgia,Noto Serif TC,serif}.recipe-print-sheet h2{break-after:avoid;margin:7mm 0 2mm;font:700 16pt/1.3 Georgia,Noto Serif TC,serif}.recipe-print-sheet>img{object-fit:cover;border-radius:4mm;width:100%;max-height:95mm;margin-bottom:4mm}.recipe-print-sheet ul,.recipe-print-sheet ol{margin:0;padding-left:7mm}.recipe-print-sheet li{break-inside:avoid;margin:1.5mm 0}.recipe-print-sheet .print-group{color:#923d2a;margin-top:4mm;font-weight:800;list-style:none}}.cook-verdict-label{color:var(--clay-dark);margin:-10px 24px 16px;font-size:.75rem;font-weight:700}@media (max-width:359px){.public-recipe-body>.drink-detail-summary{grid-template-columns:1fr}}.public-share-header{min-height:68px;padding:calc(12px + var(--safe-area-top)) 20px 10px;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.public-profile-content{gap:18px;padding:20px 20px 32px;display:grid}.public-profile-identity{grid-template-columns:52px minmax(0,1fr);align-items:start;gap:12px;display:grid}.public-profile-identity>span{background:var(--olive);color:#fff;width:52px;height:52px;font-family:var(--serif);border-radius:50%;flex:0 0 52px;place-items:center;font-size:1.3125rem;display:grid}.public-profile-identity>div{min-width:0}.public-profile-identity h2,.public-profile-identity p,.public-profile-identity small{overflow-wrap:anywhere;margin:0}.public-profile-follow{border:1px solid var(--clay);background:var(--clay);color:#fff;border-radius:999px;min-width:82px;min-height:44px;padding:0 12px;font-size:.75rem;font-weight:700}.public-profile-follow.active,.public-profile-follow.pending{border-color:var(--line-control);background:var(--surface);color:var(--ink-soft)}.public-profile-follow-error{color:var(--clay-dark);margin:-10px 0 0;font-size:.75rem}.public-profile-identity h2{font-size:1.5rem}.public-profile-identity p{color:var(--ink-soft);margin-top:3px;font-size:.75rem}.public-preview-badge{background:var(--olive-soft);min-height:24px;color:var(--olive);border-radius:999px;align-items:center;margin-left:8px;padding:0 8px;font-size:.6875rem;font-weight:800;display:inline-flex}.public-profile-identity small{color:var(--ink-soft);margin-top:7px;font-size:.75rem;line-height:1.5;display:block}.public-profile-section,.public-profile-list{gap:12px;display:grid}.public-profile-load-more{min-height:20px;color:var(--ink-soft);justify-items:center;gap:8px;font-size:.75rem;display:grid}.public-profile-load-more p{margin:0}.public-profile-load-more button{border:1px solid var(--line-control);background:var(--surface);min-width:120px;min-height:44px;color:var(--clay-dark);font:inherit;border-radius:999px;padding:0 16px;font-weight:800}.public-profile-card-shell{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:16px;overflow:hidden}.public-profile-card-shell .public-profile-card{box-shadow:none;border:0;border-radius:0}.public-profile-own-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:4px;padding:7px 8px;display:flex}.public-profile-own-actions button,.public-own-edit{background:var(--clay-soft);min-height:44px;color:var(--clay-dark);border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.75rem;font-weight:800;display:inline-flex}.public-profile-own-actions button{flex:132px;min-width:0}.public-profile-toolbar{z-index:7;top:var(--subpage-sticky-top);background:var(--surface);box-shadow:0 0 0 7px var(--canvas);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:3px;display:grid;position:sticky}.public-profile-toolbar.without-tabs{box-shadow:none;background:0 0;grid-template-columns:auto;justify-content:end}.public-profile-tabs{border:1px solid var(--line-control);background:var(--surface);border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-width:0;display:grid}.public-profile-tabs button{min-height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:9px;font-size:.8125rem;font-weight:700}.public-profile-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft);font-weight:800}.public-profile-card{border:1px solid var(--line);background:var(--surface);width:100%;min-height:84px;color:var(--ink);text-align:left;box-shadow:var(--shadow-soft);border-radius:16px;grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:10px;padding:12px 13px;display:grid}.public-profile-card.has-media{grid-template-columns:minmax(0,1fr) 56px 20px}.public-profile-card img{object-fit:cover;border-radius:10px;width:56px;height:56px}.public-profile-card-copy{min-width:0}.public-profile-card-meta{align-items:center;gap:6px;display:flex}.public-profile-card-meta time{color:var(--ink-faint);margin-left:auto;font-size:.75rem}.public-profile-card strong,.public-profile-card small,.public-profile-card p,.public-profile-card em{margin:0;display:block}.public-profile-card strong{font-family:var(--serif);margin-top:5px;font-size:1.125rem;line-height:1.35}.public-profile-card small{color:var(--clay-dark);font-size:.75rem;font-weight:700}.public-profile-card .type-label.restaurant{color:var(--clay-dark)}.public-profile-card .type-label.recipe{color:var(--olive)}.public-profile-card .status-label{color:var(--ochre)}.public-profile-card p,.public-profile-card em{color:var(--ink-soft);text-overflow:ellipsis;margin-top:3px;font-size:.8125rem;font-style:normal;line-height:1.45;overflow:hidden}.public-profile-card p{white-space:nowrap}.public-profile-card em{white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.public-profile-card b{color:var(--ink-faint);text-align:center;font-size:1.125rem}.public-profile-recipe{min-height:74px;padding-top:10px;padding-bottom:10px}.public-profile-recipe .public-profile-card-meta+strong{margin-top:3px}.public-profile-card-footer{align-items:baseline;gap:8px;min-width:0;display:flex}.public-profile-card-footer p{flex:1;min-width:0}.public-profile-card-footer time{color:var(--ink-faint);flex:none;font-size:.75rem}.public-profile-empty{margin-top:2px}.public-share-header>span{color:var(--ink-faint);letter-spacing:.12em;font-size:.75rem}.public-share-owner{align-items:center;gap:10px;padding:18px 20px 0;display:flex}.public-share-owner .account-identity-button{width:100%}.public-share-owner .account-identity-button>svg{margin-left:auto}.public-share-owner.static>span{flex:none}.public-share-owner>span{background:var(--olive);color:#fff;width:38px;height:38px;font-family:var(--serif);border-radius:50%;place-items:center;display:grid}.public-share-owner strong,.public-share-owner small{display:block}.public-share-owner small{color:var(--ink-faint);margin-top:2px;font-size:.75rem}.public-share-title{padding:18px 20px 14px}.public-share-title h1{margin:3px 0 8px;font-size:1.8125rem;line-height:1.3}.public-restaurant-address{align-items:center;gap:10px;display:flex}.public-restaurant-address p{min-width:0;color:var(--ink-soft);flex:1;margin:0;font-size:.9375rem;line-height:1.55}.public-restaurant-map-link{border:1px solid var(--line-control);width:44px;height:44px;color:var(--clay-dark);border-radius:50%;flex:0 0 44px;place-items:center;text-decoration:none;display:grid}.public-map-save-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:14px;padding:12px 0 0;display:grid}.public-map-save-row strong,.public-map-save-row small{display:block}.public-save-status{background:var(--olive-soft);color:#4f5c46;border-radius:11px;margin:10px 20px 0;padding:10px 12px;font-size:.75rem;line-height:1.5}.public-restaurant-empty{margin:18px 20px 32px}.public-map-save-row strong{font-size:.9375rem}.public-map-save-row small{color:var(--ink-soft);margin-top:3px;font-size:.8125rem;line-height:1.45}.public-map-save-row button{border:1px solid var(--clay-dark);background:var(--surface);min-width:72px;min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 14px;font-weight:700}.public-map-save-row button:disabled{opacity:.55}.public-share-records{gap:12px;padding:0 20px;display:grid}.public-restaurant-load-more{min-height:44px;color:var(--ink-soft);text-align:center;justify-items:center;gap:8px;padding:12px 0 4px;display:grid}.public-restaurant-load-more p{margin:0}.public-restaurant-load-more button{min-width:120px;min-height:44px}.public-share-records article{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:15px;overflow:hidden}.public-share-records article>img{aspect-ratio:4/3;object-fit:cover;background:var(--clay-soft);width:100%;color:var(--clay-dark);font-family:var(--serif);place-items:center;font-size:2.875rem;display:grid}.public-share-records article>div{padding:14px}.public-share-records h2{margin:5px 0 7px;font-size:1.375rem}.public-share-records p{color:var(--ink-soft);margin:0 0 10px;font-size:.75rem;line-height:1.6}.public-share-records small{color:var(--ink-faint);font-size:.75rem}.public-dish-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.public-dish-heading h2,.public-dish-heading time{margin:0}.public-dish-heading time{color:var(--ink-faint);flex:none;font-size:.75rem}.public-share-footer{padding:22px 20px 0}.public-share-footer p{color:var(--ink-soft);font-size:.75rem;line-height:1.65}.share-actions-list{border-top:1px solid var(--line);margin-top:20px}.share-actions-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:46px 1fr auto;align-items:center;gap:10px;width:100%;min-height:72px;padding:11px 3px;display:grid}.share-action-icon{background:var(--clay-soft);width:42px;height:42px;color:var(--clay-dark);border-radius:11px;place-items:center;font-size:.8125rem;display:grid}.share-action-icon.line{color:#2f7e31;font-family:var(--sans);background:#e4f4df;font-size:.75rem;font-weight:800}.share-actions-list strong,.share-actions-list small{display:block}.share-actions-list strong{font-family:var(--serif);font-size:.875rem}.share-actions-list small{color:var(--ink-soft);margin-top:4px;font-size:.75rem}.share-actions-list b{color:var(--ink-faint);font-size:1.25rem;font-weight:300}.share-cache-note{margin-top:17px}.restaurant-header{z-index:10;border-bottom:1px solid var(--line);background:var(--canvas);grid-template-columns:44px minmax(0,1fr) 44px;display:grid;position:sticky;top:0}.restaurant-header>span{letter-spacing:.12em;font-size:.75rem;font-weight:700}.restaurant-header>span:nth-child(2){text-align:center;text-overflow:ellipsis;white-space:nowrap;justify-self:center;min-width:0;max-width:100%;overflow:hidden}.restaurant-header>:last-child{justify-self:end}.restaurant-title{padding:36px 20px 25px}.restaurant-title h1{font-size:2rem;line-height:1.35}.restaurant-title-address{align-items:center;gap:10px;margin:11px 0 0;display:flex}.restaurant-title-address p{min-width:0;color:var(--ink-soft);flex:1;margin:0;font-size:.9375rem;line-height:1.55}.restaurant-title-actions{gap:10px;margin-top:18px;display:grid}.restaurant-record-cta{border:1px solid var(--clay);background:var(--clay);color:#fff;border-radius:12px;width:100%;height:48px;margin:0;padding:0 17px;font-size:.875rem;font-weight:800}.restaurant-google-link{border:1px solid var(--line-control);background:var(--surface);width:44px;height:44px;color:var(--clay-dark);border-radius:50%;flex:0 0 44px;place-items:center;margin:0;padding:0;text-decoration:none;display:grid}.inline-icon-action{justify-content:center;align-items:center;gap:6px;display:inline-flex}.my-restaurant-view{border-left:3px solid var(--clay);background:var(--surface-raised);margin:0 20px;padding:16px}.my-restaurant-view>div{justify-content:space-between;display:flex}.my-restaurant-view small{color:var(--ink-soft);letter-spacing:.08em;font-size:.75rem}.my-restaurant-view strong{color:var(--clay-dark);font-size:.75rem}.my-restaurant-view p{font-family:var(--serif);margin:10px 0 0;font-size:.9375rem}.footprint-detail,.same-dish-section{padding:32px 20px 0}.footprint-detail .section-heading{align-items:start}.footprint-detail .section-heading h2{font-size:1.3125rem}.status-counts{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:repeat(3,1fr);margin-top:15px;display:grid}.status-counts span{border-left:1px solid var(--line);color:var(--ink-soft);text-align:center;padding:12px 6px;font-size:.75rem}.status-counts span:first-child{border-left:0}.status-counts b{color:var(--ink);font-family:var(--serif);margin-bottom:3px;font-size:1.125rem;display:block}.people-list{margin-top:12px}.people-list article{border-bottom:1px solid var(--line);grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:72px;display:grid}.people-list .following-account-summary{grid-template-columns:minmax(0,1fr) auto;padding:10px 0}.footprint-load-more{min-height:52px;color:var(--ink-soft);justify-content:center;align-items:center;gap:9px;font-size:.8125rem;display:flex}.footprint-load-more>span{border:2px solid var(--line-control);border-top-color:var(--clay);border-radius:50%;width:18px;height:18px;animation:.85s linear infinite savorbook-refresh-spin}.footprint-load-more p{margin:0}.footprint-load-more button{border:1px solid var(--line-control);background:var(--surface);min-height:44px;color:var(--clay-dark);font:inherit;border-radius:999px;padding:0 16px;font-weight:700}.following-account-summary>.account-identity-button{min-height:48px}.following-account-notes{grid-column:1/-1;gap:8px;padding:4px 0 8px 54px;display:grid}.following-account-notes p{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;margin:0;line-height:1.55;display:grid}.following-account-notes p+p{border-top:1px solid var(--line);padding-top:8px}.following-note-kind{background:var(--olive-soft);color:var(--olive);white-space:nowrap;border-radius:999px;padding:1px 5px;font-size:.625rem;font-weight:800}.following-dish-note .following-note-kind{background:var(--clay-soft);color:var(--clay-dark)}.following-note-copy{overflow-wrap:anywhere;min-width:0}.following-account-notes strong{font-family:inherit;font-size:inherit;margin-right:4px}.people-list strong{font-family:var(--serif);font-size:.8125rem}.people-list p{color:var(--ink-soft);margin:4px 0 0;font-size:.75rem}.people-list .following-account-notes p{margin:0}.people-list .following-account-notes strong{font-family:inherit;font-size:inherit;margin-right:4px}.same-dish-section{padding-bottom:34px}.same-dish-section>.section-heading.compact{padding:0 0 12px}.same-dish-card{border:1px solid var(--line);background:var(--surface);min-height:145px;box-shadow:var(--shadow-soft);border-radius:14px;grid-template-columns:115px 1fr;display:grid;overflow:hidden}.same-dish-card>div{padding:13px}.same-dish-card h3{font-size:1.0625rem}.same-dish-card p{color:var(--ink-soft);margin:6px 0 10px;font-size:.75rem}.same-dish-card span{color:var(--olive);margin-top:6px;font-size:.75rem;display:block}.same-dish-card .account-inline-link{min-height:44px;color:var(--olive);text-align:left;background:0 0;border:0;margin:0;padding:0;font-size:.75rem;display:block}.bottom-nav{z-index:18;width:min(100%,430px);height:calc(72px + var(--safe-area-bottom));padding:7px 10px var(--safe-area-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffcf7f7;grid-template-columns:repeat(5,1fr);align-items:center;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 25px #47311f0d}.bottom-nav>button{position:relative;top:-3px}.bottom-nav>button:not(.add-button){min-width:0;min-height:52px;color:var(--ink-soft);background:0 0;border:0;padding:3px}.bottom-nav>button:not(.add-button) svg,.bottom-nav>button:not(.add-button) small{display:block}.bottom-nav .nav-notification-badge{background:var(--clay);color:#fff;border:2px solid #fffcf7f7;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.625rem;font-weight:800;line-height:.875rem;display:grid;position:absolute;top:0;left:calc(50% + 5px)}.bottom-nav>button:not(.add-button) svg{margin-inline:auto;margin-bottom:3px}.bottom-nav>button:not(.add-button) small{font-size:.75rem;line-height:.875rem}.bottom-nav>button.active{color:var(--clay-dark);font-weight:700}.bottom-nav .add-button{background:var(--clay);color:#fff;width:52px;height:52px;box-shadow:0 7px 17px var(--clay-alpha-28);border:0;border-radius:50%;justify-self:center}.bottom-nav .add-button svg{margin:auto;display:block}@media (min-width:700px){.app-stage{padding:28px 0}.phone-shell{--app-shell-block-size:min(860px, calc(100dvh - 56px));border:1px solid #75625033;border-radius:28px;min-height:min(860px,100svh - 56px)}.app-main,.screen{min-height:min(860px,100svh - 56px)}.bottom-nav,.sticky-submit{border-radius:0 0 28px 28px;bottom:28px}}@media (max-width:350px){.page-heading,.add-intro,.form-content,.restaurant-title,.footprint-detail,.same-dish-section{padding-left:14px;padding-right:14px}.journey-card,.gentle-prompt,.footprint-card,.profile-card,.content-management,.settings-list,.library-search,.map-toggle,.tab-list{width:calc(100% - 28px);margin-left:14px;margin-right:14px}.visibility-options button{padding:0 3px;font-size:.75rem}}@media (prefers-reduced-motion:no-preference){button{transition:transform .12s,background-color .12s,border-color .12s}button:active{transform:scale(.985)}}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.data-state>span,.pull-refresh-indicator.refreshing svg{animation:none!important}}@media (max-width:260px){.bottom-nav{height:calc(72px + var(--safe-area-bottom));padding:4px 6px var(--safe-area-bottom);grid-template-columns:repeat(5,minmax(0,1fr))}.bottom-nav>button{top:0}.bottom-nav>button:not(.add-button){min-height:48px;padding-inline:0}.bottom-nav>button:not(.add-button) small{font-size:.625rem}.bottom-nav .add-button{width:min(46px,100%);height:min(46px,100%)}}@media (max-width:231px){:root{--bottom-nav-block-size:calc(112px + var(--safe-area-bottom))}.bottom-nav{height:calc(112px + var(--safe-area-bottom));grid-template-columns:repeat(3,minmax(44px,1fr));gap:4px}.bottom-nav .add-button{grid-area:1/3/3;width:46px;height:46px}}.auth-phone-shell{background:radial-gradient(circle at 88% 8%, var(--clay-alpha-11), transparent 28%), linear-gradient(180deg, var(--surface) 0%, var(--canvas) 66%)}.auth-screen{z-index:1;min-height:100svh;padding:calc(26px + var(--safe-area-top)) 24px calc(30px + var(--safe-area-bottom));position:relative}.auth-screen>.brand-lockup{margin-bottom:clamp(42px,9vh,82px)}.auth-intro h1{max-width:330px;font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:2.1875rem;font-weight:600;line-height:1.16}.auth-intro>p:last-child{max-width:310px;color:var(--ink-soft);margin:15px 0 0;font-size:.875rem;line-height:1.7}.auth-form{gap:15px;margin-top:34px;display:grid}.restored-draft-banner{background:var(--clay-soft);border:1px solid #923d2a47;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:6px 8px 6px 14px;display:flex}.draft-sync-banner{background:var(--clay-soft);min-height:52px;color:var(--clay-dark);border:1px solid #923d2a52;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:5px 6px 5px 12px;font-size:.75rem;font-weight:700;display:flex}.draft-sync-banner.recipe-preview-sync{margin:12px 20px 0}.draft-sync-banner button{border:1px solid var(--clay);background:var(--surface);min-width:88px;min-height:44px;color:var(--clay-dark);border-radius:10px;padding:0 10px;font-weight:800}.restored-draft-banner span{gap:2px;display:grid}.restored-draft-banner strong{font-size:.875rem}.restored-draft-banner button{border:1px solid var(--clay);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:12px;flex:none;padding:0 10px;font-size:.8125rem;font-weight:700}.restored-draft-banner>div{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:6px;display:flex}@media (max-width:350px){.restored-draft-banner{gap:6px;padding-left:10px}.restored-draft-banner strong,.restored-draft-banner button{font-size:.75rem}}.map-result-summary>small{max-width:190px;color:var(--ink-soft);text-align:right;font-size:.75rem;line-height:1.35}.auth-form label{gap:7px;display:grid}.auth-form label>span,.manual-restaurant-card label{color:var(--ink-soft);letter-spacing:.03em;font-size:.75rem;font-weight:700}.auth-form input,.manual-restaurant-card input{border:1px solid var(--line-control);background:#fffcf7db;border-radius:14px;width:100%;min-height:50px;padding:0 15px;font-size:1rem}.auth-form input[readonly]{color:var(--ink-soft);background:#ece2d48c}.password-control{width:100%;position:relative}.password-control>input{width:100%;padding-right:54px!important}.password-control>button{width:44px;height:44px;color:var(--ink-soft);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.auth-form label small,.manual-restaurant-card small{color:var(--ink-faint);font-size:.75rem;line-height:1.45}.handle-input{border:1px solid var(--line-control);background:#fffcf7db;border-radius:14px;align-items:center;min-height:50px;padding-left:15px;display:flex}.handle-input b{color:var(--ink-faint);font-weight:500}.handle-input input{background:0 0;border:0;outline:0;min-width:0}.handle-input:focus-within{border-color:var(--clay);outline:2px solid var(--clay);outline-offset:-2px}.auth-submit{margin-top:8px}.auth-form .auth-remember-account{cursor:pointer;grid-template-columns:22px auto 1fr;align-items:center;gap:9px;min-height:44px;display:grid}.auth-form .auth-remember-account input{width:20px;min-height:20px;accent-color:var(--clay);border-radius:5px;margin:0;padding:0}.auth-form .auth-remember-account>span{color:var(--ink);letter-spacing:0;font-size:.875rem;font-weight:700}.auth-form .auth-remember-account>small{color:var(--ink-soft);justify-self:end;font-size:.75rem}.auth-resend-verification{min-height:48px}.auth-cat-preview{border:1px solid var(--line);background:var(--surface-raised);border-radius:14px;align-items:center;gap:12px;min-height:58px;padding:8px 12px;display:flex}.auth-cat-preview>span{padding-left:3px;display:flex}.auth-cat-preview img{border:2px solid var(--surface);object-fit:cover;border-radius:50%;width:34px;height:34px;margin-left:-5px}.auth-cat-preview p{color:var(--ink-soft);margin:0;font-size:.75rem;line-height:1.5}.auth-invite-note{background:var(--olive-soft);color:#4e5b47;border:1px solid #66725c3d;border-radius:12px;margin:0;padding:11px 13px;font-size:.75rem;line-height:1.55}.auth-feedback,.form-error{border-radius:12px;margin:0;padding:11px 13px;font-size:.75rem;line-height:1.55}.auth-feedback.error,.form-error{border:1px solid var(--clay-alpha-28);background:var(--clay-soft);color:var(--clay-dark)}.auth-feedback.success{background:var(--olive-soft);color:#4e5b47;border:1px solid #66725c3d}.auth-secondary-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.auth-secondary-actions button,.auth-back,.auth-verifying button{min-height:44px;color:var(--clay-dark);text-underline-offset:4px;background:0 0;border:0;padding:0;font-size:.75rem;text-decoration:underline}.auth-secondary-actions .auth-create-account{border:1px solid var(--line-control);background:var(--surface);border-radius:12px;padding:0 14px;font-size:.8125rem;font-weight:800;text-decoration:none}.auth-secondary-actions button:disabled{color:var(--ink-faint);cursor:not-allowed;text-decoration:none}.auth-back{margin:16px auto 0;display:block}.auth-loading{z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100svh;display:flex;position:relative}.auth-loading>.brand-lockup{top:calc(24px + var(--safe-area-top));position:absolute;left:24px}.auth-loading-mark,.auth-verifying>span{border:1px solid var(--clay);width:72px;height:72px;color:var(--clay-dark);font-family:var(--serif);border-radius:50%;place-items:center;font-size:2rem;display:grid}.auth-loading p,.auth-verifying p{color:var(--ink-soft);font-size:.8125rem}.auth-verifying{text-align:center;justify-items:center;gap:12px;padding:64px 0;display:grid}.add-option:disabled{cursor:not-allowed;opacity:.55}.manual-restaurant-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:14px;gap:8px;margin-top:10px;padding:14px;display:grid}.manual-restaurant-card p,.manual-restaurant-card strong{margin:0}.manual-restaurant-card p{color:var(--clay-dark);letter-spacing:.08em;font-size:.75rem;font-weight:700}.manual-restaurant-card input{background:var(--surface);min-height:46px}.sticky-submit .form-error{text-align:left;margin-bottom:8px}.following-empty,.account-empty{margin-top:28px}.account-loading,.follow-empty-note,.map-empty-note{color:var(--ink-soft);margin:12px 0;font-size:.75rem;line-height:1.55}.follower-section>.follow-empty-note,.request-section>.follow-empty-note{border-top:1px solid var(--line);margin:0;padding:15px 15px 18px}.restaurant-library-list{gap:10px;display:grid}.same-dish-placeholder{background:var(--clay-soft);color:var(--clay-dark);font-family:var(--serif);border-radius:12px;place-items:center;width:104px;min-height:104px;font-size:1.875rem;display:grid}@media (min-width:700px){.auth-screen,.auth-loading{min-height:min(860px,100svh - 56px)}}.welcome-screen{min-height:100svh;padding:calc(28px + var(--screen-safe-area-top)) 24px calc(28px + var(--safe-area-bottom));flex-direction:column;display:flex}.welcome-heading{margin:clamp(70px,17svh,150px) 0 34px}.welcome-heading h1{max-width:330px;font-family:var(--serif);letter-spacing:.03em;margin:0;font-size:2.375rem;font-weight:600;line-height:1.18}.welcome-actions{gap:12px;display:grid}.welcome-action{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:18px;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;min-height:78px;padding:12px 18px;display:grid}.welcome-action.featured{border-color:var(--clay);background:var(--clay-soft)}.welcome-action>span{border:1px solid var(--line-strong);width:42px;height:42px;color:var(--clay-dark);font-family:var(--serif);border-radius:50%;place-items:center;font-size:1.25rem;display:grid}.welcome-action strong{font-family:var(--serif);font-size:1.1875rem}.welcome-action b{color:var(--ink-faint);font-size:1.5rem;font-weight:400}.welcome-skip{color:var(--ink-soft);background:0 0;border:0;align-self:center;margin-top:auto;padding:0 18px}@media (max-width:350px){.welcome-screen{padding-left:16px;padding-right:16px}}.map-search-button{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--clay-dark);border-radius:999px;padding:0 16px;font-size:.75rem;font-weight:700}.google-map-canvas{border:1px solid var(--line);background:#e7e4d5;border-radius:18px;height:390px;margin:0 12px;overflow:hidden}.restaurant-search-screen{min-height:100%}.restaurant-search-content{padding:0 20px 36px}.restaurant-search-box{border:1px solid var(--line-control);min-height:46px;color:var(--ink-faint);background:#fffcf7b3;border-radius:12px;align-items:center;gap:10px;margin:16px 0 0;padding:0 14px;font-size:.8125rem;display:flex}.restaurant-search-box input{width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;font-size:1rem}.restaurant-search-box:focus-within{border-color:var(--clay);outline:2px solid var(--clay);outline-offset:-2px;box-shadow:none}.restaurant-search-box input:focus-visible{box-shadow:none;border-color:#0000;outline:0}.restaurant-search-status{border:0;margin:14px 0 0;padding:0}.restaurant-search-status legend{color:var(--ink-soft);margin-bottom:8px;font-size:.75rem;font-weight:700}.restaurant-search-status>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.restaurant-search-status button{border:1px solid var(--line-strong);background:var(--surface);min-height:48px;color:var(--ink-soft);border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:.75rem;display:flex}.restaurant-search-status button.active{border-color:var(--clay);background:var(--clay-soft);color:var(--clay-dark);font-weight:700}.restaurant-search-status button span{color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.6875rem;font-weight:800;display:grid}.restaurant-search-status .want-to-go{background:#8a5a15}.restaurant-search-status .revisit{background:#4f6655}.restaurant-search-status .one-time{background:#6f625b}.restaurant-search-status .not-recommended{background:#923d2a}.restaurant-search-results{border:1px solid var(--line);background:var(--surface);border-radius:14px;margin-top:18px;display:grid;overflow:hidden}.restaurant-search-results>small{color:var(--ink-faint);letter-spacing:.08em;padding:10px 13px 8px;font-size:.75rem;font-weight:700}.restaurant-search-results>button{border:0;border-top:1px solid var(--line);min-height:62px;color:var(--ink);text-align:left;background:0 0;padding:10px 13px}.restaurant-search-results strong,.restaurant-search-results span{display:block}.restaurant-search-results strong{font-size:.8125rem}.restaurant-search-results span{color:var(--ink-soft);margin-top:4px;font-size:.75rem;line-height:1.4}.restaurant-search-loading{color:var(--ink-faint);margin:12px 2px 0;font-size:.75rem}.restaurant-selection-card{border:1px solid var(--line-strong);background:var(--surface-raised);border-radius:16px;gap:12px;margin-top:14px;padding:16px;display:grid;box-shadow:0 6px 18px #47311f12}.restaurant-selection-card>div{gap:4px;display:grid}.restaurant-selection-card small,.restaurant-selection-card span{color:var(--ink-soft);font-size:.75rem;line-height:1.55}.restaurant-selection-card strong{color:var(--ink);font-size:1rem;line-height:1.45}.restaurant-selection-card button{min-height:48px}.manual-restaurant-trigger{border:1px dashed var(--line-strong);width:100%;min-height:48px;color:var(--clay-dark);background:0 0;border-radius:12px;margin-top:14px;font-size:.75rem}.restaurant-search-manual{margin-top:12px}.restaurant-search-manual .primary-button{margin-top:4px}.suggestion-section-label{border-top:1px solid var(--line)}.google-maps-attribution,.restaurant-search-results>small.google-maps-attribution{color:#5e5e5e;font-family:Roboto, var(--sans);letter-spacing:normal;white-space:nowrap;font-size:.75rem;font-style:normal;font-weight:400}.restaurant-state-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:16px;gap:12px;margin:0 20px;padding:16px;display:grid}.restaurant-state-heading,.restaurant-state-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.restaurant-state-heading small{color:var(--ink-soft);letter-spacing:.08em;font-size:.75rem;font-weight:700}.restaurant-state-heading strong{color:var(--clay-dark);font-size:.75rem}.restaurant-state-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.restaurant-state-options button{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;color:var(--ink-soft);border-radius:999px;padding:0 12px;font-size:.75rem}.restaurant-state-options button.active,.compact-visibility button.active{border-color:var(--clay);background:var(--clay-soft);color:var(--clay-dark);font-weight:700}.restaurant-state-card textarea{resize:none;border:1px solid var(--line-control);background:var(--surface);width:100%;min-height:70px;color:var(--ink);font:inherit;border-radius:12px;padding:11px 12px;font-size:.75rem;line-height:1.5}.compact-visibility{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;min-width:0;display:grid}.compact-visibility button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink-faint);white-space:nowrap;border-radius:999px;padding:0 8px;font-size:.75rem}.save-restaurant-note{background:var(--clay);color:#fff;border:0;border-radius:999px;min-width:64px;min-height:44px;padding:0 12px;font-size:.75rem;font-weight:700}.restaurant-state-actions{flex-wrap:wrap;gap:10px}.restaurant-state-actions .compact-visibility{flex-wrap:wrap;flex:1 0 auto;gap:6px;max-width:100%;display:flex}.restaurant-state-actions .compact-visibility button{white-space:normal;overflow-wrap:anywhere;flex:none;width:auto;max-width:100%;padding:8px 10px}.restaurant-state-actions .save-restaurant-note{overflow-wrap:anywhere;flex:none;max-width:100%;padding:8px 12px}.restaurant-save-status{color:var(--olive);margin:8px 0 0;font-size:.75rem;font-weight:700}.restaurant-state-remove{color:#8b3528;background:0 0;border:0;min-height:44px;padding:0 12px;font-size:.75rem;font-weight:700}.follow-data-state,.shared-unavailable-state{border:1px solid var(--line);background:var(--surface-raised);text-align:center;border-radius:16px;justify-items:center;gap:12px;margin:24px 20px;padding:28px 20px;display:grid}.follow-data-state h2,.shared-unavailable-state h2{font-family:var(--serif);margin:0;font-size:1.375rem}.follow-data-state p,.shared-unavailable-state p{color:var(--ink-soft);margin:0;font-size:.875rem;line-height:1.6}.follow-data-state button,.shared-unavailable-state button{min-width:132px;min-height:44px}.startup-error{align-content:center;gap:36px;min-height:100%;padding:32px 24px;display:grid}.startup-error>div{gap:16px;display:grid}.startup-error h1,.startup-error p{margin:0}.startup-error h1{font-family:var(--serif);font-size:1.875rem}.startup-error p{color:var(--ink-soft);font-size:.9375rem;line-height:1.65}.diagnostic-code{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:6px 6px 6px 12px;font-size:.75rem;display:flex!important}.diagnostic-code button{background:var(--clay-soft);min-width:60px;min-height:44px;color:var(--clay-dark);font:inherit;border:0;border-radius:9px;font-weight:700}.following-state-counts{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.following-state-counts span{background:var(--olive-soft);color:#536049;border-radius:999px;padding:7px 10px;font-size:.75rem;font-weight:700}.public-restaurant-state{align-items:flex-start;gap:10px;margin:0 20px 14px;padding:0;display:flex}.public-restaurant-state span{background:var(--clay-soft);min-height:32px;color:var(--clay-dark);border-radius:999px;flex:none;align-items:center;padding:0 11px;font-size:.75rem;font-weight:800;display:inline-flex}.public-restaurant-state p{color:var(--ink-soft);font-family:var(--serif);margin:4px 0 0;font-size:.875rem;line-height:1.5}.public-share-title>.public-own-edit{margin-top:12px}.public-own-edit.dish{margin-top:10px}@media (max-width:350px){.restaurant-search-content{padding-left:14px;padding-right:14px}.restaurant-state-card{margin-left:14px;margin-right:14px;padding:13px}.restaurant-state-actions{flex-direction:column;align-items:stretch}.compact-visibility,.save-restaurant-note,.compact-visibility button{width:100%}}.task-disclosure>summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:10px 12px;font-size:.875rem;line-height:1.5;display:flex}.task-disclosure>summary::-webkit-details-marker{display:none}.task-disclosure>summary:after{content:"";border-bottom:2px solid;border-right:2px solid;flex:0 0 .45rem;width:.45rem;height:.45rem;margin-left:auto;margin-right:.2rem;transform:rotate(-45deg)}.task-disclosure[open]>summary:after{transform:rotate(45deg)}.task-disclosure>summary:focus-visible{outline:2px solid var(--clay);outline-offset:-2px}.bottom-nav .add-button{flex-direction:column;justify-content:center;align-items:center;gap:0;display:flex}.bottom-nav .add-button small{color:inherit;font-size:.75rem;line-height:1.3}@media (max-width:699px){.app-main.with-nav>.screen:not(.map-screen){min-height:calc(100svh - 80px - var(--safe-area-bottom) - var(--status-banner-height,0px))}.phone-shell input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]),.phone-shell textarea,.phone-shell select{font-size:1rem}.phone-shell:has(input:focus,textarea:focus,select:focus) .sticky-submit{padding-bottom:8px}}@media (max-width:260px){.primary-screen-header{flex-wrap:wrap;gap:4px;height:auto;padding-bottom:4px;padding-left:8px;padding-right:8px}.primary-screen-header h1{overflow-wrap:anywhere;min-width:0;font-size:1.5625rem}.subpage-header{min-height:calc(70px + var(--screen-safe-area-top));grid-template-columns:44px minmax(0,1fr) 44px;padding-left:6px;padding-right:6px}.subpage-header>div{padding-left:2px}.form-header{min-height:calc(82px + var(--screen-safe-area-top));grid-template-columns:44px minmax(0,1fr);align-content:center;padding-left:8px;padding-right:8px;display:grid}.form-header>div{padding-left:4px}.form-header h1,.form-header small{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}.form-header>.visibility-mini{grid-column:2;justify-self:start;margin-left:4px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
