:root{--canvas:#f6f1e7;--surface:#fffcf7;--surface-raised:#fff;--barrel:#5a2f20;--primary:var(--barrel);--primary-hover:#482419;--primary-soft:#f0e2d5;--brass:#c58a45;--brass-soft:#f2dfc5;--accent:#2f5d50;--accent-soft:#dbe9e3;--ink:#201a17;--text-secondary:#6e625b;--outline:#d8cdc2;--outline-strong:#b9a99b;--error:#b3261e;--error-soft:#f9dedc;--success:#2f5d50;--focus:#136cbe;--shadow-sm:0 2px 8px #3b251b14;--shadow-md:0 12px 32px #3b251b24;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-control:12px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--font-sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif:Georgia, "Times New Roman", serif;--type-page-title:clamp(1.7rem, 7vw, 2rem);--type-section-title:1rem;--type-body:.82rem;--type-label:.68rem;--control-height:48px;--page-gutter:16px;--page-top:18px;color:var(--ink);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#d9d1c7}*{box-sizing:border-box}html{background:#d9d1c7;min-height:100%}body{background:#d9d1c7;min-height:100%;margin:0;overflow-x:hidden}button,input,select,textarea{color:inherit;font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.55}#root{min-height:100svh}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{background:radial-gradient(circle at 88% -5%, #c58a452e, transparent 27%), var(--canvas);width:100%;max-width:760px;min-height:100svh;color:var(--ink);margin:0 auto;box-shadow:0 0 50px #2c1e172e}.app-header{z-index:20;align-items:center;gap:var(--space-2);min-height:72px;padding:max(var(--space-3), env(safe-area-inset-top)) var(--space-4) var(--space-3);background:color-mix(in srgb, var(--canvas) 94%, transparent);border-bottom:1px solid color-mix(in srgb, var(--outline) 75%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:48px minmax(0,1fr) 48px;display:grid;position:sticky;top:0}.app-header__copy{text-align:center;min-width:0}.app-header__brand,.app-header__title{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.app-header__brand{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:900}.app-header__title{font-family:var(--font-serif);margin-top:2px;font-size:1.22rem;font-weight:700;line-height:1.15}.screen--flush{padding-inline:0}.screen>:first-child{margin-top:0}.screen-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.screen-heading h1,.screen-heading h2,.hero h1,.sheet-header h2,.detail-hero h2{color:var(--ink);font-family:var(--font-serif);margin:0;line-height:1.05}.screen-heading h1,.hero h1{letter-spacing:-.035em;font-size:clamp(2rem,9vw,3.3rem)}.screen-heading h2,.sheet-header h2,.detail-hero h2{font-size:1.55rem}.screen-subtitle{max-width:40rem;margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:.95rem;line-height:1.5}.eyebrow{margin:0 0 var(--space-2);color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.hero{padding:var(--space-6);border:1px solid var(--outline);border-radius:var(--radius-lg);background:linear-gradient(145deg, #fffcf7fa, #f0e2d5e6), var(--surface);box-shadow:var(--shadow-md);overflow:hidden}.hero__copy{z-index:1;position:relative}.hero__text{max-width:34rem;margin:var(--space-3) 0 0;color:var(--text-secondary);font-size:1rem;line-height:1.55}.hero__bottles{justify-content:center;align-items:flex-end;gap:var(--space-1);min-height:150px;margin:var(--space-5) -12px 0;padding:var(--space-3) var(--space-5) 0;border-radius:50% 50% var(--radius-lg) var(--radius-lg);background:radial-gradient(at bottom,#c58a4547,#0000 63%);display:flex}.hero__actions{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:minmax(0,1fr) auto;display:grid}.button{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:999px;min-height:48px;padding:12px 18px;font-weight:850;line-height:1.15;transition:background .16s,border-color .16s,transform .16s}.button:active{transform:scale(.985)}.button--primary{background:var(--primary);color:#fffaf3;box-shadow:0 8px 18px #5a2f202e}.button--primary:hover{background:var(--primary-hover)}.button--secondary{border-color:var(--outline-strong);background:var(--surface);color:var(--primary)}.button--tertiary{color:var(--accent);background:0 0;border-color:#0000}.button--danger{border-color:color-mix(in srgb, var(--error) 40%, var(--outline));background:var(--error-soft);color:var(--error)}.button--block{width:100%}.icon-button{cursor:pointer;background:var(--primary);color:#fffaf3;border:1px solid #0000;border-radius:50%;place-items:center;width:48px;min-width:48px;height:48px;padding:0;font-weight:900;display:inline-grid}.icon-button--quiet{border-color:var(--outline);background:var(--surface);color:var(--primary)}.app-icon{justify-content:center;align-items:center;min-width:1.25em;font-size:1.28rem;font-weight:900;line-height:1;display:inline-flex}.app-icon--more{letter-spacing:-.15em;transform:translate(-.07em)}.stat-row{gap:var(--space-2);margin:var(--space-4) 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stat-card{min-width:0;padding:var(--space-3);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);text-align:center}.stat-card strong,.stat-card span{display:block}.stat-card strong{color:var(--primary);font-family:var(--font-serif);font-size:1.4rem}.stat-card span{margin-top:var(--space-1);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:750;overflow:hidden}.section-block{margin-top:var(--space-6)}.section-title-row{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.section-title-row h2,.section-title-row h3{font-family:var(--font-serif);margin:0;font-size:1.25rem}.text-button{min-height:44px;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:8px;font-weight:850}.card-stack{gap:var(--space-3);display:grid}.surface-card{padding:var(--space-4);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm)}.surface-card--accent{border-color:color-mix(in srgb, var(--accent) 45%, var(--outline));background:var(--accent-soft)}.surface-card--brass{border-color:color-mix(in srgb, var(--brass) 55%, var(--outline));background:color-mix(in srgb, var(--brass-soft) 70%, var(--surface))}.surface-card h2,.surface-card h3,.surface-card h4{color:var(--ink);margin:0}.surface-card p{margin:var(--space-2) 0 0;color:var(--text-secondary);line-height:1.5}.choice-list{gap:var(--space-3);display:grid}.choice-card{align-items:center;gap:var(--space-3);width:100%;min-height:76px;padding:var(--space-3) var(--space-4);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;grid-template-columns:42px minmax(0,1fr) 24px;display:grid}.choice-card[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}.choice-card__mark{background:var(--brass-soft);width:42px;height:42px;color:var(--primary);font-family:var(--font-serif);border-radius:50%;place-items:center;font-weight:900;display:grid}.choice-card__copy strong,.choice-card__copy span{display:block}.choice-card__copy span{color:var(--text-secondary);margin-top:3px;font-size:.82rem;line-height:1.35}.choice-card__chevron{color:var(--brass);font-size:1.35rem}.progress-steps{gap:var(--space-2);margin-bottom:var(--space-5);grid-template-columns:repeat(2,1fr);display:grid}.flight-summary{margin-bottom:var(--space-4)}.flight-list{gap:var(--space-3);display:grid}.pour-card{align-items:center;gap:var(--space-3);width:100%;min-height:112px;padding:var(--space-3);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;box-shadow:var(--shadow-sm);grid-template-columns:76px minmax(0,1fr) 30px;display:grid}.pour-card__number{margin:0 0 var(--space-1);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:900}.pour-card h3{font-family:var(--font-serif);margin:0;font-size:1.05rem;line-height:1.2}.pour-card__meta,.bottle-row__meta{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:.78rem;font-weight:700}.pour-card__chevron,.bottle-row__chevron{color:var(--brass);text-align:center;font-size:1.4rem}.action-dock{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.action-dock .button--primary{grid-column:1/-1}.status-banner{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--accent) 45%, var(--outline));border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent);font-size:.88rem;font-weight:800;line-height:1.4}.search-row{gap:var(--space-2);margin-bottom:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.bottles-screen{padding-top:16px}.bottles-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.bottles-heading h1{font-family:var(--font-serif);letter-spacing:-.025em;margin:0;font-size:1.65rem;line-height:1}.bottles-heading p{color:#765f52;white-space:nowrap;margin:0;font-size:.68rem;font-weight:750}.search-field,.field-input,.field-select,.field-textarea{border:1px solid var(--outline-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:48px;color:var(--ink);padding:11px 13px}.search-field{border-radius:999px;padding-left:16px}.field-textarea{resize:vertical;min-height:112px;line-height:1.5}.field-group{gap:var(--space-2);display:grid}.field-group+.field-group{margin-top:var(--space-4)}.field-label{color:var(--ink);font-size:.82rem;font-weight:850}.horizontal-rail{gap:var(--space-2);max-width:100%;margin-inline:calc(var(--space-4) * -1);padding:0 var(--space-4) var(--space-2);overscroll-behavior-inline:contain;scroll-padding-inline:var(--space-4);scrollbar-width:thin;display:flex;overflow-x:auto}.horizontal-rail:after{content:"";flex:0 0 8px}.chip{border:1px solid var(--outline);background:var(--surface);min-height:48px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:999px;flex:none;padding:10px 16px;font-size:.84rem;font-weight:850}.results-meta{justify-content:space-between;align-items:center;gap:var(--space-3);margin:var(--space-4) 0 var(--space-3);color:var(--text-secondary);font-size:.82rem;font-weight:750;display:flex}.bottle-list{gap:var(--space-2);display:grid}.bottle-row{align-items:center;gap:var(--space-3);width:100%;min-height:88px;padding:var(--space-2) var(--space-3);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;grid-template-columns:64px minmax(0,1fr) 28px;display:grid}.bottle-row h3{font-family:var(--font-serif);margin:0;font-size:1rem;line-height:1.25}.tag-line{gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.mini-tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:850}.empty-state{padding:var(--space-8) var(--space-5);border:1px dashed var(--outline-strong);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 70%, transparent);text-align:center}.empty-state h2,.empty-state h3{font-family:var(--font-serif);margin:0}.empty-state p{margin:var(--space-2) auto var(--space-4);color:var(--text-secondary);line-height:1.5}.bottle-image{border-radius:var(--radius-sm);background:radial-gradient(circle at 50% 74%,#c58a4542,#0000 58%);flex:none;place-items:end center;display:grid;position:relative;overflow:hidden}.bottle-image--thumbnail{width:64px;height:78px}.bottle-image--detail{width:136px;height:192px}.bottle-image img{object-fit:contain;width:100%;height:100%}.bottle-fallback{width:100%;height:100%;position:relative}.bottle-fallback__photo{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.bottle-fallback__label{min-width:24px;min-height:20px;color:var(--primary);letter-spacing:.06em;box-shadow:var(--shadow-sm);background:#f6f1e7eb;border:1px solid #5a2f2047;border-radius:999px;place-items:center;padding:2px 5px;font-size:.54rem;font-weight:900;display:grid;position:absolute;bottom:11%;right:8%}.bottle-image--detail .bottle-fallback__label{min-width:38px;min-height:28px;font-size:.72rem;bottom:10%;right:10%}.detail-hero{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);padding:var(--space-4);border:1px solid var(--outline);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:136px minmax(0,1fr);display:grid}.detail-meta{margin:var(--space-2) 0 0;color:var(--brass);font-weight:850}.bottle-actions{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.bottle-actions .chip{white-space:normal;width:100%}.sheet-backdrop{z-index:60;background:#201a178f;place-items:end center;display:grid;position:fixed;inset:0}.bottom-sheet{width:min(760px,100%);max-height:min(88svh,780px);padding:8px var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--canvas);overflow-y:auto;box-shadow:0 -16px 50px #201a1738}.bottom-sheet--detail{padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom))}.sheet-handle{width:44px;height:5px;margin:0 auto var(--space-3);background:var(--outline-strong);border-radius:999px}.sheet-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);display:flex}.sheet-body{padding-bottom:var(--space-5)}.sheet-actions{bottom:calc(var(--space-4) * -1 - env(safe-area-inset-bottom));gap:var(--space-3);margin:0 calc(var(--space-4) * -1) calc((var(--space-4) + env(safe-area-inset-bottom)) * -1);padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));border-top:1px solid var(--outline);background:var(--canvas);grid-template-columns:1fr 1.4fr;display:grid;position:sticky}.segmented-control{gap:var(--space-1);margin-bottom:var(--space-4);padding:var(--space-1);border:1px solid var(--outline);background:var(--primary-soft);border-radius:999px;grid-template-columns:1fr 1fr;display:grid}.segmented-control button{min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 12px;font-weight:850}.segmented-control button[aria-pressed=true]{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm)}.journal-card{align-items:center;gap:var(--space-3);width:100%;min-height:92px;padding:var(--space-4);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;grid-template-columns:minmax(0,1fr) 28px;display:grid}.journal-card h3{font-family:var(--font-serif);margin:0;font-size:1.05rem}.journal-card p{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:.78rem;line-height:1.35}.inline-edit{gap:var(--space-2);margin-bottom:var(--space-4);grid-template-columns:minmax(0,1fr) auto;display:grid}.tasting-progress{margin-bottom:var(--space-4);color:var(--accent);letter-spacing:.05em;text-transform:uppercase;font-size:.8rem;font-weight:900}.rating-control{margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface)}.rating-control__topline{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.rating-control__value{color:var(--primary);font-family:var(--font-serif);font-size:1.15rem;font-weight:900}.rating-control__row{align-items:center;gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:48px minmax(0,1fr) 48px;display:grid}.rating-control__range{width:100%;height:44px;accent-color:var(--brass)}.rating-control__scale{color:var(--text-secondary);justify-content:space-between;padding:0 60px;font-size:.68rem;font-weight:800;display:flex}.sticky-task-actions{bottom:calc(78px + env(safe-area-inset-bottom));gap:var(--space-2);margin:var(--space-5) calc(var(--space-4) * -1) 0;padding:var(--space-3) var(--space-4);border-top:1px solid var(--outline);background:color-mix(in srgb, var(--canvas) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:1fr 1fr;display:grid;position:sticky}.settings-screen{padding-top:18px}.settings-screen .screen-heading{margin-bottom:16px}.settings-screen .screen-heading h1{font-size:clamp(2.2rem,11vw,2.75rem)}.settings-screen .screen-subtitle{max-width:22rem;font-size:.84rem;line-height:1.4}.settings-overview{border:1px solid var(--outline);background:linear-gradient(135deg,#fffaf2,#f6ead8);border-radius:12px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;padding:12px;display:grid}.settings-overview__icon{color:#6b4228;background:#ead8bf;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.settings-overview__icon--connected{color:#2f5d50;background:#dbe9e3}.settings-overview__icon .app-icon{width:21px;height:21px}.settings-overview__copy,.settings-overview__copy strong,.settings-overview__copy small{display:block}.settings-overview__copy strong{font-family:var(--font-serif);font-size:.9rem}.settings-overview__copy small{color:#6e625b;margin-top:2px;font-size:.69rem;line-height:1.35}.settings-overview__copy .settings-overview__meta{color:#7b4429;margin-top:5px;font-weight:700}.settings-group{margin-top:17px}.settings-group__label{color:#7b4429;letter-spacing:.11em;text-transform:uppercase;margin:0 0 6px;font-size:.66rem;font-weight:850}.settings-list{border:1px solid var(--outline);background:#fff;border-radius:12px;overflow:hidden}.settings-row{width:100%;min-height:64px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #e7ded4;grid-template-columns:38px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:8px 10px;display:grid}.settings-row:last-child{border-bottom:0}.settings-row:hover{background:#fffaf3}.settings-row__icon{color:#6b321c;background:#f1dfc6;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.settings-row__icon .app-icon,.settings-row>.app-icon{width:19px;height:19px}.settings-row>.app-icon{color:#8a7568}.settings-row__copy,.settings-row__copy strong,.settings-row__copy small{display:block}.settings-row__copy strong{font-family:var(--font-serif);font-size:.82rem}.settings-row__copy small{color:var(--text-secondary);margin-top:2px;font-size:.68rem;line-height:1.35}.disclosure{border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface)}.disclosure+.disclosure{margin-top:var(--space-3)}.disclosure summary{min-height:52px;padding:var(--space-4);cursor:pointer;font-weight:850}.disclosure__body{padding:0 var(--space-4) var(--space-4);color:var(--text-secondary);font-size:.9rem;line-height:1.55}.sponsor-card,.ad-card,.legal-notice{padding:var(--space-4);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:left;margin:0}.sponsor-card__label{margin-bottom:var(--space-2);color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem;font-weight:850;display:inline-block}.sponsor-card h3,.legal-notice h2{font-family:var(--font-serif);margin:0;font-size:1.05rem}.sponsor-card p,.legal-notice p{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:.86rem;line-height:1.5}.sponsor-card__link,.legal-notice a{min-height:44px;margin-top:var(--space-2);color:var(--accent);text-underline-offset:3px;padding-block:12px;font-weight:850;text-decoration:underline;display:inline-block}.ad-card{text-align:center;min-height:120px;overflow:hidden}.bottom-nav{z-index:40;width:min(760px,100%);padding:var(--space-2) var(--space-2) max(var(--space-2), env(safe-area-inset-bottom));border-top:1px solid var(--outline);background:color-mix(in srgb, var(--surface) 97%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;right:50%;transform:translate(50%);box-shadow:0 -10px 30px #3b251b14}.bottom-nav__item{border-radius:var(--radius-sm);min-width:0;min-height:58px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;grid-template-rows:26px 17px;place-items:center;padding:6px 2px;display:grid}.bottom-nav__item span:last-child{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:clamp(.62rem,2.7vw,.74rem);font-weight:850;overflow:hidden}.bottom-nav__item[aria-current=page]{background:var(--primary-soft);color:var(--primary)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width>=620px){.screen{padding-inline:var(--space-6)}.horizontal-rail{margin-inline:calc(var(--space-6) * -1);padding-inline:var(--space-6)}.hero{padding:var(--space-8)}.bottle-list,.flight-list,.card-stack{gap:var(--space-3)}.bottle-row{min-height:96px}}@media (width<=380px){.screen{padding-inline:var(--space-3)}.hero{padding:var(--space-5)}.hero__actions,.action-dock{grid-template-columns:1fr}.action-dock .button--primary{grid-column:auto}.detail-hero{grid-template-columns:104px minmax(0,1fr)}.bottle-image--detail{width:104px;height:160px}}.app-shell{background:#fffdf9;max-width:430px;box-shadow:0 0 28px #3723181f}.app-header{min-height:62px;padding:max(7px, env(safe-area-inset-top)) 10px 7px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf9f7;border-bottom-color:#dfd6cb;grid-template-columns:48px minmax(0,1fr) auto}.app-header .icon-button{width:48px;min-width:48px;height:48px;box-shadow:none;background:0 0;border-color:#0000}.app-header__brand{color:var(--ink);font-family:var(--font-serif);letter-spacing:0;text-transform:none;font-size:clamp(.96rem,4vw,1.08rem);font-weight:700;line-height:1.05}.app-header__status{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;margin:3px 0 0;font-size:.52rem;font-weight:800;line-height:1}.app-header__status--local{color:#8b4a2c}.app-header__status--signed-in{color:var(--accent)}.app-header__session-action{border:1px solid var(--accent);background:var(--accent);color:#fffdf9;cursor:pointer;min-width:68px;min-height:48px;font-family:var(--font-sans);border-radius:999px;padding:0 11px;font-size:.68rem;font-weight:800;line-height:1}.app-header__session-action--signed-in{background:var(--accent-soft);color:var(--accent)}.brand-mark{object-fit:contain;border-radius:8px;width:32px;height:32px}.app-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65px;width:21px;height:21px}.screen{min-height:calc(100svh - 62px);padding:22px 16px calc(86px + env(safe-area-inset-bottom))}.screen--story{color:#251913;flex-direction:column;display:flex}.screen--story .screen-heading{text-align:center;margin-bottom:13px;display:block}.screen--story .screen-heading h1{letter-spacing:-.02em;font-size:clamp(1.55rem,7.4vw,2rem);line-height:1.08}.screen--story .screen-subtitle{margin-top:4px;font-size:.72rem;line-height:1.25}.button{font-family:var(--font-serif);box-shadow:none;border-radius:5px;font-size:.9rem;font-weight:700}.button--primary{box-shadow:none;background:#682b15}.button--secondary{background:#fffdf9;border-color:#b98a6a}.button--tertiary{color:#4b2a1d}.screen--home{justify-content:flex-start;padding-top:30px}.home-intro{text-align:center}.home-intro .eyebrow{color:#8b4a2c;letter-spacing:.18em;margin-bottom:9px;font-size:.63rem}.home-intro h1{font-family:var(--font-serif);letter-spacing:-.04em;margin:0;font-size:clamp(2.1rem,10vw,2.7rem);font-weight:700;line-height:.92}.home-intro__text{color:#7a6b62;margin:4px 0 14px;font-size:.82rem;line-height:1.35}.home-intro .button{max-width:330px;margin:0 auto}.screen--home .stat-row{border-top:1px solid #e2d8cc;border-bottom:1px solid #e2d8cc;gap:0;margin:13px 0 15px}.screen--home .stat-card{background:0 0;border:0;border-right:1px solid #e2d8cc;border-radius:0;padding:9px 4px}.screen--home .stat-card:last-child{border-right:0}.screen--home .stat-card strong{font-size:1rem}.screen--home .stat-card span{margin-top:0;font-size:.64rem}.recent-panel__label{color:#7a6b62;margin:0 0 6px;font-size:.64rem;font-weight:700}.recent-row{width:100%;min-height:58px;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:1px solid #d9cec2;border-radius:5px;grid-template-columns:42px minmax(0,1fr) 30px;align-items:center;gap:9px;padding:7px 9px;display:grid}.recent-row__logo{object-fit:contain;border-radius:9px;width:38px;height:38px}.recent-row strong,.recent-row small{display:block}.recent-row strong{font-family:var(--font-serif);font-size:.82rem}.recent-row small{color:#7a6b62;margin-top:2px;font-size:.63rem}.story-choice-screen{min-height:calc(100svh - 62px);padding-top:27px}.progress-steps{grid-template-columns:1fr 1fr;gap:0;width:min(210px,70%);margin:0 auto 23px;position:relative}.progress-steps span{background:#dfd5ca;border-radius:0;height:3px}.progress-steps span[data-active=true]{background:#bf7b3d}.story-choice-screen .choice-list{gap:10px}.flight-source-picker{margin-bottom:12px}.flight-source-picker__label{color:var(--primary);font-family:var(--font-sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;margin:0 0 5px;font-weight:850}.flight-source-picker .segmented-control{margin-bottom:0}.flight-source-picker__help{color:var(--text-secondary);font-family:var(--font-sans);margin:5px 2px 0;font-size:.65rem;line-height:1.35}.story-choice-screen .choice-card{min-height:62px;box-shadow:none;border-color:#dec9ad;border-radius:5px;grid-template-columns:24px minmax(0,1fr);padding:8px 11px}.story-choice-screen .choice-card[aria-pressed=true]{background:#fffaf2;border-color:#b76d32;box-shadow:inset 0 0 0 1px #b76d32}.story-choice-screen .choice-card__mark{background:#fff;border:1px solid #b9a99a;width:18px;height:18px;position:relative}.story-choice-screen .choice-card[aria-pressed=true] .choice-card__mark{border-color:#b76d32}.story-choice-screen .choice-card[aria-pressed=true] .choice-card__mark i{background:#b75d24;border-radius:50%;width:8px;height:8px}.story-choice-screen .choice-card__copy strong{font-family:var(--font-serif);font-size:.89rem}.story-choice-screen .choice-card__copy span{margin-top:1px;font-size:.64rem}.story-actions{gap:10px;margin-top:auto;padding-top:20px;display:grid}.story-actions--single{grid-template-columns:minmax(0,1fr)}.story-actions--split{grid-template-columns:minmax(80px,.65fr) minmax(0,1.7fr)}.story-actions .button{min-width:0}.story-flight-screen{padding-top:28px}.story-flight-list{border-top:1px solid #e0d7cd;border-bottom:1px solid #e0d7cd;gap:0;margin-top:5px;display:grid}.story-flight-row{min-height:72px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #e8dfd5;grid-template-columns:30px 44px minmax(0,1fr) 24px;align-items:center;gap:8px;padding:5px 2px;display:grid}.story-flight-row:last-child{border-bottom:0}.story-flight-row__number{color:#8b4828;width:26px;height:26px;font-family:var(--font-serif);border:1px solid #b7784e;border-radius:50%;place-items:center;font-size:.78rem;display:grid}.story-flight-row .bottle-image{background:0 0;width:42px;height:58px}.story-flight-row__copy strong,.story-flight-row__copy small{display:block}.story-flight-row__copy strong{font-family:var(--font-serif);font-size:.86rem;line-height:1.15}.story-flight-row__copy small{color:#76665d;margin-top:3px;font-size:.61rem}.story-flight-row__role{background:color-mix(in srgb, var(--accent) 14%, var(--surface));color:var(--accent);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin-top:4px;padding:2px 6px;font-size:.58rem;font-weight:850;line-height:1.2;display:inline-block}.story-result-actions{gap:9px;margin-top:16px;display:grid}.story-result-actions>div{grid-template-columns:1fr 1fr;gap:9px;display:grid}.story-result-actions .button{justify-content:center;align-items:center;gap:7px;display:flex}.sheet-backdrop--center{align-items:center;padding:16px}.bottom-sheet--save{background:#fffdf9;border:1px solid #b9aa9b;border-radius:5px;gap:13px;width:min(340px,100%);max-height:none;padding:22px 18px;display:grid;overflow:visible;box-shadow:0 18px 48px #2f1b1247}.bottom-sheet--save h2{font-family:var(--font-serif);text-align:center;margin:0;font-size:1.35rem}.bottom-sheet--save .screen-subtitle{margin:-4px 0 0;font-size:.7rem}.story-name-edit{grid-template-columns:minmax(0,1fr) 48px;align-items:center;max-width:300px;margin:0 auto;display:grid}.story-name-input{width:100%;min-height:44px;color:var(--ink);font-family:var(--font-serif);text-align:center;background:0 0;border:0;border-bottom:1px solid #0000;padding:4px 0;font-size:1.2rem;font-weight:700}.story-name-input:focus{border-bottom-color:var(--brass);outline:0}.icon-button--bare{width:48px;min-width:48px;height:48px;color:var(--primary);background:0 0;border:0}.story-tasting-screen .tasting-progress{text-align:center;margin:5px 0 4px}.story-tasting-screen{padding-bottom:calc(142px + env(safe-area-inset-bottom))}.story-tasting-screen>.story-actions,.story-complete-screen>.story-actions{z-index:12;bottom:calc(64px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf9f7;border-top:1px solid #e0d6cb;margin:14px -16px -56px;padding:10px 16px;position:sticky}.story-progress-track{background:#e3d9cf;border-radius:999px;width:72%;height:3px;margin:0 auto 14px;overflow:hidden}.story-progress-track span{background:#bf7b3d;height:100%;display:block}.story-tasting-bottle{background:#fff;border:1px solid #dec9ad;border-radius:5px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;padding:9px 11px;display:grid}.story-tasting-bottle .bottle-image{width:50px;height:68px}.story-tasting-bottle small,.story-tasting-bottle strong,.story-tasting-bottle em{display:block}.story-tasting-bottle small{color:#8b4a2c;margin-bottom:2px;font-size:.62rem;font-style:normal}.story-tasting-bottle strong{font-family:var(--font-serif);font-size:.98rem}.story-tasting-bottle em{color:#74655d;margin-top:3px;font-size:.65rem;font-style:normal}.rating-control{background:0 0;border:0;margin-top:14px;padding:0}.rating-control__value{color:#7b5f4e;font-family:var(--font-sans);font-size:.7rem}.star-rating{width:220px;max-width:82%;height:48px;margin:0 auto;position:relative}.star-rating__visual{pointer-events:none;grid-template-columns:repeat(5,1fr);place-items:center;height:48px;display:grid}.star-rating__star{color:#ddd3c8;font-size:2rem;line-height:1;position:relative}.star-rating__star:before{width:var(--star-fill);color:#c78332;content:"★";position:absolute;overflow:hidden}.star-rating__interaction{cursor:pointer;touch-action:none;border-radius:6px;width:100%;height:48px;position:absolute;inset:0}.star-rating__interaction:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.rating-control__hint{color:var(--accent);font-family:var(--font-sans);text-align:center;margin:0 auto;font-size:.68rem;font-weight:700;line-height:1.35}.story-notes{margin-top:10px}.story-notes .field-textarea{min-height:70px;font-size:.78rem}.story-flavors{margin-top:10px}.story-flavors>div{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.story-flavors .chip{min-height:48px;padding:6px 11px;font-size:.68rem}.story-complete-screen{padding-top:26px;padding-bottom:calc(142px + env(safe-area-inset-bottom))}.story-name-edit--outlined{border:1px solid #dec9ad;border-radius:4px;max-width:none;margin:0 0 12px;padding:0 6px}.story-name-edit--outlined .story-name-input{text-align:left}.story-rating-summary{border-top:1px solid #e1d7cc;border-bottom:1px solid #e1d7cc}.story-rating-summary>div{border-bottom:1px solid #e8dfd6;grid-template-columns:28px 38px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:56px;display:grid}.story-rating-summary>div:last-child{border-bottom:0}.story-rating-summary .bottle-image{width:36px;height:48px}.story-rating-summary strong{font-family:var(--font-serif);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.read-only-stars{color:#ddd3c8;font-size:.86rem;display:flex}.read-only-stars span[data-filled=true]{color:#c78332}.story-journal-screen{padding-top:27px}.story-journal-screen .segmented-control{background:#fff;border-color:#d9cec2;margin-bottom:12px}.story-journal-screen .segmented-control button{min-height:48px;font-family:var(--font-serif);font-size:.72rem}.story-journal-screen .segmented-control button[aria-pressed=true]{color:#fff;background:#285748}.journal-search-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:12px;display:grid}.search-field-wrap{background:#fff;border:1px solid #d9cec2;border-radius:4px;grid-template-columns:28px minmax(0,1fr);align-items:center;min-height:48px;padding:0 9px;display:grid}.search-field-wrap input{background:0 0;border:0;outline:0;min-width:0;height:44px}.journal-filter-button{align-items:center;gap:5px;padding-inline:12px;display:flex}.story-journal-list{gap:8px;display:grid}.story-journal-row{width:100%;min-height:70px;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:1px solid #d9cec2;border-radius:5px;grid-template-columns:48px minmax(0,1fr) 28px;align-items:center;gap:9px;padding:7px 9px;display:grid}.story-journal-row .bottle-image{width:46px;height:56px}.story-journal-row strong,.story-journal-row small{display:block}.story-journal-row strong{font-family:var(--font-serif);font-size:.86rem}.story-journal-row small{color:#74655d;margin-top:2px;font-size:.62rem}.bottom-nav{width:min(430px,100%);padding:5px 5px max(5px, env(safe-area-inset-bottom));background:#fffdf9fa}.bottom-nav__item{border-radius:3px;grid-template-rows:24px 14px;min-height:55px;padding:5px 2px}.bottom-nav__item .app-icon{width:18px;height:18px}.bottom-nav__item span:last-child{font-size:.58rem;font-weight:700}.bottom-nav__item[aria-current=page]{color:#7b361c;background:0 0;border-top:2px solid #a55b31}@media (width<=350px){.screen{padding-inline:12px}.home-intro h1{font-size:2rem}.story-flight-row{grid-template-columns:28px 38px minmax(0,1fr) 20px;gap:6px}.story-rating-summary>div{grid-template-columns:26px 34px minmax(0,1fr)}.story-rating-summary .read-only-stars{grid-column:3}}.destination-screen{padding-top:var(--page-top);padding-inline:var(--page-gutter)}.destination-header{text-align:left;margin:0 0 16px}.destination-header__eyebrow{color:var(--primary);font-family:var(--font-sans);font-size:var(--type-label);letter-spacing:.11em;text-transform:uppercase;margin:0 0 5px;font-weight:850;line-height:1.2}.destination-header h1{color:var(--ink);font-family:var(--font-serif);font-size:var(--type-page-title);letter-spacing:-.025em;margin:0;font-weight:700;line-height:1.05}.destination-header__subtitle{max-width:24rem;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--type-body);margin:6px 0 0;line-height:1.4}.destination-screen .search-row,.destination-screen .journal-search-row{margin-bottom:12px}.destination-screen .horizontal-rail{width:100%;min-width:0;max-width:100%;margin-inline:0;padding-inline:0}.search-field,.search-field-wrap,.field-input,.field-select,.field-textarea{border-color:var(--outline);border-radius:var(--radius-control);background:var(--surface-raised);font-family:var(--font-sans);font-size:var(--type-body)}.search-field,.search-field-wrap,.field-input,.field-select{min-height:var(--control-height)}.search-field{border-radius:var(--radius-control)}.horizontal-rail{gap:8px}.chip{min-height:var(--control-height);border-color:var(--outline);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--text-secondary);font-family:var(--font-sans);font-size:.76rem;font-weight:800}.chip[aria-pressed=true],.chip--active{border-color:var(--primary);background:var(--primary);color:#fffaf3}.segmented-control,.story-journal-screen .segmented-control{border:1px solid var(--outline);border-radius:var(--radius-control);background:var(--surface-raised);gap:3px;padding:3px}.segmented-control button,.story-journal-screen .segmented-control button{min-height:var(--control-height);color:var(--text-secondary);font-family:var(--font-sans);background:0 0;border-radius:9px;font-size:.76rem;font-weight:800}.segmented-control button[aria-pressed=true],.story-journal-screen .segmented-control button[aria-pressed=true]{background:var(--primary);color:#fffaf3;box-shadow:none}.story-journal-screen,.settings-screen,.bottles-screen{padding-top:var(--page-top)}.journal-filter-button{min-height:var(--control-height);border-radius:var(--radius-control);font-family:var(--font-sans);font-size:.76rem;font-weight:800}.story-journal-row,.recent-row,.bottle-row,.settings-list,.settings-overview{border-color:var(--outline);border-radius:var(--radius-sm)}.story-journal-row strong,.settings-row__copy strong,.recent-row strong,.bottle-row h3{font-size:.84rem}.story-journal-row small,.settings-row__copy small,.recent-row small,.bottle-row__meta{color:var(--text-secondary);font-family:var(--font-sans);font-size:.66rem;line-height:1.35}.settings-group__label{color:var(--primary);font-size:var(--type-label)}.settings-detail-screen{min-height:calc(100svh - 63px);padding-top:var(--page-top);padding-inline:var(--page-gutter)}.settings-detail-screen .destination-header{margin-bottom:16px}.settings-detail-screen .section-block{margin-top:16px}.settings-detail-screen .surface-card,.settings-detail-screen .disclosure,.settings-detail-screen .legal-notice,.account-panel{border:1px solid var(--outline);border-radius:var(--radius-sm);background:var(--surface-raised);box-shadow:none;padding:14px}.settings-detail-screen .surface-card--brass{border-color:color-mix(in srgb, var(--brass) 58%, var(--outline));background:color-mix(in srgb, var(--brass-soft) 62%, var(--surface-raised))}.settings-detail-screen .surface-card h2,.settings-detail-screen .surface-card h3,.settings-detail-screen .section-title-row h2,.settings-detail-screen .legal-notice h2{font-family:var(--font-serif);font-size:var(--type-section-title);font-weight:700;line-height:1.2}.settings-detail-screen .surface-card p,.settings-detail-screen .empty-state p,.settings-detail-screen .legal-notice p,.settings-detail-screen .disclosure__body{color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--type-body);line-height:1.5}.settings-detail-screen .button{min-height:var(--control-height);border-radius:var(--radius-control);font-family:var(--font-sans);font-size:.78rem;font-weight:800}.settings-detail-screen .button:disabled,.account-panel .text-button:disabled{cursor:not-allowed;opacity:.58}.button--compact{min-height:40px;padding:8px 12px}.settings-detail-label{color:var(--primary);font-family:var(--font-sans);font-size:var(--type-label);letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px;font-weight:850;line-height:1.2}.settings-detail-stack{gap:12px;display:grid}.profile-confidence-card h2{margin:0}.profile-confidence-card .stat-row{gap:8px;margin:12px 0 0}.profile-confidence-card .stat-card{border-radius:var(--radius-sm);box-shadow:none;padding:10px 6px}.profile-confidence-card .stat-card strong{font-size:1.15rem}.profile-confidence-card .stat-card span{font-size:.65rem}.account-panel{margin:0}.account-panel__identity{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;display:grid}.account-panel__badge{border-radius:var(--radius-sm);background:var(--accent-soft);width:42px;height:42px;color:var(--accent);place-items:center;font-size:.7rem;font-weight:900;display:grid}.account-panel__badge--muted{background:var(--brass-soft);color:var(--primary)}.account-panel__badge--connected{background:var(--accent-soft);color:var(--accent)}.account-panel__title{overflow-wrap:anywhere;color:var(--ink);font-family:var(--font-serif);margin:0;font-size:.9rem;font-weight:700;line-height:1.25}.account-panel__status,.account-confirmation__help{overflow-wrap:anywhere;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--type-body);margin:3px 0 0;line-height:1.45}.account-panel>.button{margin-top:12px}.account-panel__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.account-confirmation{border-top:1px solid var(--outline);gap:8px;margin-top:14px;padding-top:14px;display:grid}.account-confirmation .account-panel__actions{margin-top:0}.account-panel__link{width:100%;color:var(--accent);margin-top:4px;font-size:.76rem}.account-notice,.sync-panel__message,.sync-panel__error{border:1px solid var(--outline);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-secondary);margin:10px 0 0;padding:10px;font-size:.76rem;font-weight:750;line-height:1.4}.account-notice--busy{border-color:color-mix(in srgb, var(--brass) 55%, var(--outline));background:var(--brass-soft);color:var(--primary)}.sync-panel__header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.sync-panel__message{border-color:color-mix(in srgb, var(--accent) 38%, var(--outline));background:var(--accent-soft);color:var(--accent)}.sync-panel__error{border-color:color-mix(in srgb, var(--error) 38%, var(--outline));background:var(--error-soft);color:var(--error)}.about-screen .legal-notice a{color:var(--accent)}.about-screen .company-story-card{border-color:color-mix(in srgb, var(--brass) 50%, var(--outline));background:color-mix(in srgb, var(--brass-soft) 42%, var(--surface-raised));margin-bottom:12px}.about-screen .company-story-card p{margin-top:6px;font-size:.76rem;line-height:1.4}.about-screen .company-story-card__closing{color:var(--primary);font-family:var(--font-serif);font-weight:700}.about-screen .legal-notice{padding-block:12px}.about-screen .legal-notice p{margin-top:6px;font-size:.76rem;line-height:1.4}.support-legal-links{border-top:1px solid var(--outline);margin-top:8px;display:grid}.support-legal-links a{border-bottom:1px solid var(--outline);min-height:48px;color:var(--accent);text-underline-offset:.2em;align-items:center;font-weight:700;text-decoration-thickness:2px;display:flex}.support-legal-links a:last-child{border-bottom:0}.support-legal-screen .surface-card>p{margin:8px 0 0}.support-legal-screen .button{box-sizing:border-box;justify-content:center;align-items:center;margin-top:12px;text-decoration:none;display:flex}@media (width<=350px){.destination-screen{padding-inline:12px}.destination-header h1{font-size:1.65rem}.account-panel__actions{grid-template-columns:minmax(0,1fr)}}
