:root{--background:#f7f2ea;--foreground:#2f241c;--muted:#776b5e;--line:#e0d5c5;--panel:#fcfaf7;--accent:#5b1f2a;--accent-2:#7a8362;--plum:#6e2e3b;--walnut:#5b4636;--gold:#b9985b;--danger:#9b2f2f;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--shadow-soft:0 18px 44px #432f1f14}*{box-sizing:border-box}body{background:linear-gradient(180deg, #fcfaf7 0%, var(--background) 42%);color:var(--foreground);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;color:var(--foreground);background:#fffdf9;padding:10px 12px}textarea{resize:vertical}label{color:var(--walnut);gap:6px;font-size:13px;font-weight:700;display:grid}.app-frame{min-height:100vh}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fcfaf7e6}.topbar-inner,.page{width:min(1120px,100% - 32px);margin:0 auto}.topbar-inner{justify-content:space-between;align-items:center;gap:20px;min-height:64px;display:flex}.brand{flex-direction:column;gap:2px;display:flex}.brand strong{color:var(--accent);font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:24px;font-weight:700;line-height:1}.brand span,.subtle{color:var(--muted);font-size:13px}.nav{align-items:center;gap:8px;display:flex}.nav a,.button{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-weight:700;display:inline-flex}.nav a{color:var(--walnut)}.nav a:hover{background:#efe6d8}.button-primary{background:var(--accent);color:#fff;box-shadow:0 10px 22px #5b1f2a24}.button-secondary{border-color:var(--line);background:var(--panel);color:var(--foreground)}.button-ghost{color:var(--foreground);background:0 0}.button-sm{min-height:32px;padding:0 10px;font-size:13px}.page{padding:28px 0 48px}.landing-hero{background:#1f1713;min-height:min(760px,100vh - 64px);display:grid;position:relative;overflow:hidden}.landing-hero-image{object-fit:cover;opacity:.58;width:100%;height:100%;position:absolute;inset:0}.landing-hero:after{content:"";background:linear-gradient(90deg, #1f1713eb, #1f17138f 48%, #1f171333), linear-gradient(180deg, transparent 70%, var(--background));position:absolute;inset:0}.landing-hero-content{z-index:1;color:#fffdf9;align-content:center;gap:22px;width:min(1120px,100% - 32px);margin:0 auto;padding:72px 0 96px;display:grid;position:relative}.landing-hero-content h1{color:#fffdf9;max-width:820px;font-size:clamp(48px,7vw,84px)}.landing-hero-content p{color:#f3eadc;max-width:620px;font-size:19px;line-height:1.55}.landing-actions{flex-wrap:wrap;gap:12px;display:flex}.landing-section,.pricing-section{width:min(1120px,100% - 32px);margin:0 auto;padding:76px 0}.landing-copy{gap:12px;max-width:720px;display:grid}.landing-copy h2,.showcase-panel h2,.pricing-card h2{font-size:clamp(34px,5vw,54px)}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px;display:grid}.feature-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);gap:12px;padding:20px;display:grid}.feature-card svg,.feature-list svg{color:var(--gold)}.feature-card p,.showcase-panel p{color:var(--muted);line-height:1.5}.landing-showcase{min-height:560px;position:relative;overflow:hidden}.landing-showcase>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.landing-showcase:after{content:"";background:linear-gradient(90deg,#2f241cc7,#2f241c2e);position:absolute;inset:0}.showcase-panel{z-index:1;color:#fffdf9;gap:16px;width:min(520px,100% - 32px);margin-left:max(16px,50vw - 560px);padding:86px 0;display:grid;position:relative}.showcase-panel h2{color:#fffdf9}.showcase-panel p{color:#f4eadc}.landing-section.split{grid-template-columns:minmax(280px,.9fr) minmax(0,1fr);align-items:center;gap:42px;display:grid}.showcase-image-card{border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-soft);overflow:hidden}.showcase-image-card img{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}.feature-list{gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.feature-list li{color:var(--walnut);align-items:center;gap:10px;font-weight:700;display:flex}.pricing-section{padding-top:20px}.pricing-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);text-align:center;max-width:520px;box-shadow:var(--shadow-soft);gap:14px;margin:0 auto;padding:30px;display:grid}.pricing-card form{justify-content:center;display:flex}.price{color:var(--accent);font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:58px;font-weight:700}.price span{color:var(--muted);font-family:inherit;font-size:18px}.app-visual-band{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-soft);grid-template-columns:minmax(220px,.8fr) minmax(0,1fr);align-items:center;gap:22px;margin-bottom:18px;padding:14px;display:grid;position:relative;overflow:hidden}.app-visual-band img{border-radius:var(--radius-md);object-fit:cover;width:100%;height:190px}.app-visual-band div{gap:8px;padding:8px;display:grid}.app-visual-band p{color:var(--muted);line-height:1.5}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.header-actions{align-items:center;gap:8px;display:flex}.page-title{gap:6px;display:grid}.eyebrow{color:var(--plum);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800}h1,h2,h3,p{margin:0}h1{color:var(--accent);font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:42px;font-weight:700;line-height:1.08}h2{color:var(--foreground);font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:24px;font-weight:700;line-height:1.2}h3{font-size:15px}.dashboard-grid{grid-template-columns:1.8fr 1fr;gap:18px;display:grid}.dashboard-overview{grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:18px;margin-bottom:18px;display:grid}.onboarding-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:18px;display:grid}.setup-step{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid}.setup-step>svg{color:var(--accent-2)}.setup-step p,.handoff-list span{color:var(--muted);font-size:14px;line-height:1.45}.handoff-list{gap:12px;display:grid}.handoff-list>div{align-items:flex-start;gap:10px;display:flex}.handoff-list svg{color:var(--gold);flex:none;margin-top:1px}.context-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.learning-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.learning-grid>div{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;gap:8px;padding:12px;display:grid}.similar-list{gap:10px;display:grid}.similar-list article{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;gap:10px;padding:12px;display:grid}.similar-list h3 a{color:var(--accent)}.profile-map{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.profile-heading-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.confidence-badge{border:1px solid var(--line);color:#566044;background:#edf0e6;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.profile-signal-list{gap:12px;display:grid}.profile-signal-list>div{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;gap:8px;padding:12px;display:grid}.source-links{flex-wrap:wrap;gap:6px;display:flex}.source-links a{border:1px solid var(--line);color:var(--walnut);background:#fbf3e6;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}.source-links-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.preference-map{gap:16px;display:grid}.preference-axis{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;gap:8px;padding:12px;display:grid}.axis-track{background:linear-gradient(90deg,#edf0e6,#fbf3e6,#e6d6dc);border-radius:999px;height:10px;position:relative}.axis-track span{background:var(--accent);border:2px solid #fffdf9;border-radius:999px;width:18px;height:18px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 4px 12px #5b1f2a33}.axis-labels{color:var(--muted);justify-content:space-between;font-size:12px;font-weight:700;display:flex}.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.comparison-column{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);align-content:start;gap:14px;padding:18px;display:grid}.comparison-column>div:not(:first-child){border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;gap:8px;padding:12px;display:grid}.context-item{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;gap:4px;padding:12px;display:grid}.context-item span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.context-item strong{color:var(--walnut);font-size:14px;line-height:1.35}.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.insight-grid>div,.recommendation-list>div{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;gap:8px;padding:12px;display:grid}.recommendation-list{gap:10px;display:grid}.recommendation-list strong{color:var(--accent);font-size:13px}.recommendation-list span{color:var(--walnut);font-size:14px;line-height:1.35}.budget-filter{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:18px;padding:14px;display:grid}.recommendation-context-panel{margin-bottom:18px}.buying-advice-form{gap:12px;display:grid}.buying-advice-form textarea{resize:vertical;min-height:132px}.segmented-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.segmented-fields label{cursor:pointer}.segmented-fields input{opacity:0;pointer-events:none;position:absolute}.segmented-fields span{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:42px;color:var(--walnut);background:#fffdf9;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex}.segmented-fields input:checked+span{border-color:var(--accent);background:var(--rose);color:var(--accent)}.context-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.buying-advice-results{gap:10px;display:grid}.buying-advice-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;grid-template-columns:92px minmax(0,1fr);gap:14px;padding:14px;display:grid}.advice-rank{border-right:1px solid var(--line);align-content:start;justify-items:center;gap:6px;padding-right:14px;display:grid}.advice-rank strong{background:var(--accent);color:#fff;border-radius:999px;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.advice-rank span{color:var(--walnut);text-align:center;text-transform:uppercase;font-size:12px;font-weight:800}.compact-details{gap:8px;margin-top:12px}.recommendation-lanes{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.recommendation-card,.saved-recommendation{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);gap:14px;display:grid}.recommendation-card{padding:18px}.recommendation-card-heading,.card-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.recommendation-card-heading svg{color:var(--gold)}.recommendation-details{gap:12px;margin:0;display:grid}.recommendation-details div{gap:4px;display:grid}.recommendation-details dt{color:var(--accent);text-transform:uppercase;font-size:12px;font-weight:800}.recommendation-details dd{color:var(--walnut);margin:0;font-size:14px;line-height:1.45}.saved-recommendations{gap:10px;display:grid}.saved-recommendation{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:14px}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.report-grid svg{color:var(--gold)}.stack{gap:14px;display:grid}.panel,.tasting-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft)}.panel{padding:18px}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.stat{border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;padding:14px}.stat strong{color:var(--accent);font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:26px;display:block}.stat span{color:var(--muted);font-size:13px}.tasting-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.tasting-log-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.tasting-log-carousel{scroll-snap-type:x mandatory;grid-auto-columns:minmax(280px,420px);grid-auto-flow:column;gap:12px;margin:0;padding:0 0 12px;list-style:none;display:grid;overflow-x:auto}.tasting-log-carousel>.tasting-card{scroll-snap-align:start}.view-toolbar{justify-content:space-between;align-items:center;gap:14px;display:flex}.journal-filters{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:10px;padding:14px;display:grid}.journal-filters .button{min-height:42px}.search-field{position:relative}.search-field svg{color:var(--muted);position:absolute;bottom:13px;left:12px}.search-field input{padding-left:36px}.filter-label{align-items:center;gap:5px;display:inline-flex}.segmented-control{flex-wrap:wrap;gap:6px;display:flex}.tasting-card{gap:12px;padding:16px;display:grid}.card-header{justify-content:space-between;gap:18px;display:flex}.card-title-row{align-items:center;gap:12px;min-width:0;display:flex}.card-title-row>div{min-width:0}.card-date{text-align:right;white-space:nowrap;flex:none;min-width:max-content}.tasting-log-grid .card-header,.tasting-log-carousel .card-header{grid-template-columns:minmax(0,1fr);display:grid}.tasting-log-grid .card-date,.tasting-log-carousel .card-date{text-align:left}.meta-line{color:var(--muted);font-size:13px;line-height:1.35}.note{border-left:3px solid var(--gold);color:var(--walnut);background:#fbf3e6;padding:10px 12px;font-size:14px;line-height:1.45}.pills{flex-wrap:wrap;gap:6px;display:flex}.pill{color:#566044;background:#edf0e6;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:12px;font-weight:700;display:inline-flex}.pill-warm{color:var(--walnut);background:#fbf3e6}.empty{border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);border:1px dashed #c8bca9;gap:10px;padding:22px;display:grid}.form-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);gap:16px;padding:18px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.form-actions{justify-content:flex-end;display:flex}.form-error{color:var(--danger);font-size:14px;font-weight:700}.connection-code{border-radius:var(--radius-md);background:#fffaf0;border:1px dashed #c8bca9;gap:6px;padding:14px;display:grid}.connection-code span{overflow-wrap:anywhere;letter-spacing:0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:18px;font-weight:800}.connection-code small{color:var(--muted);font-size:12px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.upload-control{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.detail-nav{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:-8px 0 18px;display:grid}.keyboard-hint{color:var(--muted);text-align:center;margin:-8px 0 18px;font-size:12px}.detail-nav>:last-child{justify-self:end}.image-grid{grid-template-columns:repeat(auto-fit,minmax(160px,220px));gap:12px;display:grid}.image-card{gap:8px;margin:0;display:grid}.image-card form{display:flex}.image-meta{color:var(--muted);gap:2px;font-size:12px;line-height:1.3;display:grid}.bottle-image,.tasting-thumbnail{border:1px solid var(--line);border-radius:var(--radius-sm);object-fit:cover;background:#f4efe6;display:block}.bottle-image{aspect-ratio:3/4;width:100%}.tasting-thumbnail{flex:none;width:54px;height:72px}.image-placeholder{border-radius:var(--radius-md);min-height:160px;color:var(--muted);text-align:center;background:#fffaf0;border:1px dashed #c8bca9;place-items:center;padding:12px;font-size:13px;display:grid}.profile-summary{font-size:16px;line-height:1.55}@media (max-width:760px){.topbar-inner,.page{width:min(100% - 24px,1120px)}.topbar-inner,.page-header,.card-header,.view-toolbar,.header-actions{flex-direction:column;align-items:stretch}.upload-control{justify-content:flex-start;align-items:stretch}.nav{padding-bottom:4px;overflow-x:auto}.dashboard-grid,.dashboard-overview,.onboarding-grid,.context-grid,.learning-grid,.comparison-grid,.profile-map,.budget-filter,.context-field-grid,.buying-advice-card,.recommendation-lanes,.saved-recommendation,.report-grid,.journal-filters,.insight-grid,.form-grid,.form-grid.compact,.stat-grid,.feature-grid,.landing-section.split,.app-visual-band{grid-template-columns:1fr}.setup-step{grid-template-columns:auto minmax(0,1fr)}.setup-step .button{grid-column:1/-1}.advice-rank{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);place-items:center start;padding-bottom:12px;padding-right:0}.landing-hero{min-height:auto}.landing-hero:after{background:linear-gradient(180deg, #1f1713e0, #1f171394 65%, var(--background))}.landing-hero-content{padding:56px 0 78px}.landing-hero-content h1{font-size:46px}.landing-section,.pricing-section{padding:46px 0}.landing-showcase{min-height:520px}.showcase-panel{padding:52px 0}.detail-nav{grid-template-columns:1fr}.detail-nav>:last-child{justify-self:stretch}}
