@font-face{font-family:"Playfair Display";font-style:normal;font-weight:600 800;font-display:swap;src:url("/fonts/playfair-display-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*::before,*::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Helvetica Neue",Arial,sans-serif;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;tab-size:4}h1,h2,h3,.card-title,.page-title,.empty-state-title,.section-title{font-family:"Playfair Display","Georgia","Times New Roman",serif}body{margin:0;line-height:1.5;min-height:100vh}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}ul,ol{list-style:none;padding:0}button{cursor:pointer;background:none;padding:0}:root{--light:#fdfaf5;--light-sec:rgba(253,250,245,0.85);--dark:rgba(15,8,4,0.88);--dark-sec:rgba(15,8,4,0.60);--primary:#2b1810;--dark-oblique:rgba(15,8,4,0.32);--light-oblique:rgba(253,250,245,0.12);--light-oblique-hover:rgba(253,250,245,0.20);--light-hazy:rgba(253,250,245,0.90);--accent:#e07a5f;--accent-hover:#f0977a;--accent-glow:rgba(224,122,95,0.35);--success:#8ab878;--missing:#e05555;--warning:#e0a55f;--overlay:rgba(0,0,0,0.64);--gradient:linear-gradient(180deg,#120802 0%,#1f100a 35%,#2b1810 65%,#1a0c06 100%);--logo-gradient:linear-gradient(135deg,#e07a5f 0%,#f5a623 50%,#e07a5f 100%);--font-h1:48px;--font-h2:32px;--font-h3:24px;--font-h4:20px;--font-h5:20px;--font-large:20px;--font-medium:16px;--font-small:14px;--font-micro:12px;--font-emoji:48px;--spacing-micro:8px;--spacing-xs:12px;--spacing-small:16px;--spacing-medium:24px;--spacing-large:32px;--spacing-xl:48px;--spacing-huge:80px;--round:96px;--round-card:24px;--round-sm:12px;--max-width:min(1280px,100%);--header-height:72px}@media (max-width:980px){:root{--font-h1:32px;--font-h2:24px;--font-h3:20px;--font-h4:18px;--font-large:18px;--spacing-xl:32px;--spacing-huge:48px}}@media (max-width:768px){:root{--font-h1:30px;--font-h2:23px;--font-h3:19px;--font-large:18px;--spacing-xl:28px;--spacing-huge:40px}.results-grid{grid-template-columns:1fr}.page-hero{padding:var(--spacing-medium) 0 var(--spacing-small)}}@media (max-width:640px){:root{--font-h1:28px;--font-h2:22px;--font-h3:18px;--font-emoji:40px;--spacing-large:24px;--spacing-xl:24px;--spacing-huge:32px}}html{background:var(--gradient);background-color:#1a0c06;color:var(--light);background-attachment:fixed}body{position:relative;overflow-x:hidden;background-color:#1a0c06}body::before{content:"";position:fixed;top:30%;left:50%;transform:translate(-50%,-50%);width:clamp(320px,70vw,900px);height:clamp(240px,55vh,700px);background:radial-gradient(ellipse,rgba(224,122,95,0.08) 0%,transparent 70%);pointer-events:none;z-index:0}body::after{content:"";position:fixed;inset:0;opacity:0.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;pointer-events:none;z-index:0}h1,.h1{font-size:var(--font-h1);font-weight:700;line-height:1.2}.container{width:var(--max-width);margin:0 auto;padding:0 var(--spacing-small)}.page-wrapper{position:relative;z-index:1;padding-bottom:var(--spacing-huge)}.header{position:sticky;top:0;z-index:10;background:rgba(18,8,2,0.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(250,246,241,0.06);height:var(--header-height);display:flex;align-items:center}.header-inner{width:var(--max-width);margin:0 auto;padding:0 var(--spacing-small);display:flex;align-items:center;justify-content:space-between}.logo{display:inline-flex;align-items:center;gap:var(--spacing-micro);font-size:var(--font-h4);font-weight:700;letter-spacing:-0.3px}.logo-emoji{font-size:28px;line-height:1}.card{background:rgba(43,24,16,0.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(250,246,241,0.12);border-left:3px solid var(--accent);border-radius:var(--round-card);padding:var(--spacing-large);transition:border-color 0.2s,box-shadow 0.2s;box-shadow:0 4px 24px rgba(0,0,0,0.3)}.card:hover{border-color:rgba(250,246,241,0.18);box-shadow:0 4px 32px rgba(0,0,0,0.5)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-small);margin-bottom:var(--spacing-small);padding-bottom:var(--spacing-small);border-bottom:1px solid rgba(250,246,241,0.08)}.card-title{font-size:var(--font-h3);font-weight:700;color:var(--light);margin-bottom:6px;letter-spacing:-0.2px}.card-title-link{transition:color 0.2s}.card-title-link:hover{color:var(--accent)}.card-meta{display:flex;gap:var(--spacing-xs);flex-wrap:wrap;font-size:var(--font-small);color:var(--light-sec)}.card-tag{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-micro);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;padding:4px 10px;border-radius:var(--round);background:rgba(250,246,241,0.14);color:rgba(253,250,245,0.90)}.card-body{margin-top:var(--spacing-small)}.ingredient-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:2px}.ingredient-row{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:var(--font-small);border-radius:var(--round-sm);transition:background 0.15s}.ingredient-row:hover{background:rgba(250,246,241,0.04)}.ingredient-icon{font-size:16px;width:20px;text-align:center;flex-shrink:0}.ingredient-icon.have{color:var(--success)}.ingredient-icon.missing{color:var(--missing)}.ingredient-name{flex:1}.ingredient-name.missing{color:var(--missing);text-decoration:line-through;text-decoration-color:rgba(224,85,85,0.3)}.missing-extras{margin-top:var(--spacing-small);padding-top:var(--spacing-small);border-top:1px solid rgba(250,246,241,0.06);display:flex;flex-wrap:wrap;align-items:center;gap:8px}.missing-extras-label{font-size:var(--font-micro);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;color:var(--light-sec)}.missing-extras-item{font-size:var(--font-micro);padding:4px 12px;border-radius:var(--round);background:rgba(250,246,241,0.05);color:var(--light-sec)}.ingredient-amount{color:var(--light-sec);font-variant-numeric:tabular-nums;text-align:right}.ingredient-optional{color:var(--light-sec);font-style:italic;font-size:var(--font-micro)}.recipe-steps{counter-reset:step;list-style:none}.recipe-steps li{counter-increment:step;display:flex;gap:var(--spacing-micro);padding:10px 0;font-size:var(--font-medium);line-height:1.7;color:rgba(253,250,245,0.92)}.recipe-steps li::before{content:counter(step);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--light);font-size:var(--font-micro);font-weight:700;flex-shrink:0;margin-top:1px}.garnish{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:var(--round);background:rgba(224,122,95,0.12);color:var(--accent);font-size:var(--font-micro);font-weight:600}.match-badge{display:inline-flex;text-align:center;white-space:nowrap;align-items:center;gap:5px;font-weight:700;margin-left:var(--spacing-small);flex-shrink:0;font-variant-numeric:tabular-nums}.match-badge.exact{background:rgba(106,191,105,0.15);color:var(--success);border:1px solid rgba(106,191,105,0.25);padding:7px 16px;border-radius:48px;font-size:13px;letter-spacing:0.1px}.match-badge.partial{background:rgba(250,246,241,0.06);color:var(--light-sec);border:1px solid rgba(250,246,241,0.10);padding:5px 14px;border-radius:var(--round);font-size:12px;letter-spacing:0.2px}.match-badge.almost{background:rgba(224,165,95,0.08);color:var(--warning);border:1px solid rgba(224,165,95,0.15);padding:4px 12px;border-radius:var(--round);font-size:11px;letter-spacing:0.2px}.section-header{margin-bottom:var(--spacing-medium);padding-bottom:var(--spacing-small);border-bottom:2px solid rgba(250,246,241,0.08)}.section-header::before{content:"";display:block;width:40px;height:3px;border-radius:2px;margin-bottom:var(--spacing-xs)}.section-header.exact{border-color:rgba(106,191,105,0.50)}.section-header.exact::before{background:var(--success)}.section-header.partial{border-color:rgba(224,122,95,0.40)}.section-header.partial::before{background:var(--accent)}.section-header.almost{border-color:rgba(224,165,95,0.40)}.section-header.almost::before{background:var(--warning)}.section-title{font-size:var(--font-h2);font-weight:700;display:flex;align-items:center;gap:var(--spacing-small)}.section-subtitle{font-size:var(--font-small);color:var(--light-sec);margin-top:4px}.section-count{font-size:var(--font-small);font-weight:600;color:var(--light-sec);margin-left:auto;font-variant-numeric:tabular-nums}.picker-grid{display:flex;flex-direction:column;gap:var(--spacing-large)}.picker-group{border:none;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:0;padding:0}.picker-group-title{display:flex;align-items:center;gap:var(--spacing-micro);font-size:var(--font-small);font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--accent);margin-bottom:var(--spacing-micro);padding:var(--spacing-micro) 4px;border-bottom:1px solid rgba(250,246,241,0.08);cursor:pointer;list-style:none;user-select:none;transition:color 0.15s}.picker-group-title::-webkit-details-marker{display:none}.picker-group-title:hover{color:var(--accent-hover)}.picker-group-title::before{content:"";width:0;height:0;flex-shrink:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid var(--accent);transition:transform 0.15s}details[open]>.picker-group-title::before{transform:rotate(90deg)}.picker-group-count{margin-left:auto;color:var(--light-sec);font-weight:600;letter-spacing:normal;text-transform:none}.similar-cocktails{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-micro)}.cocktail-hero-glass{display:flex;justify-content:center;margin-bottom:var(--spacing-small)}.density-toggle{width:auto;max-width:max-content;margin:0 0 var(--spacing-small) auto}.density-toggle .view-toggle-btn{flex:0 0 auto;padding:6px 14px;font-size:var(--font-micro)}.results-stack.compact .recipe-steps,.results-stack.compact .card-meta,.results-stack.compact .garnish,.results-stack.compact .ingredient-more{display:none}.results-stack.compact .card>.mt-md,.results-stack.compact .card>.mt-sm{display:none}.results-stack.compact .card{padding:var(--spacing-small) var(--spacing-medium)}.results-stack.compact .ingredient-row{padding-top:2px;padding-bottom:2px}.ingredient-more-title{cursor:pointer;list-style:none;user-select:none;display:flex;align-items:center;gap:var(--spacing-micro);font-size:var(--font-small);font-weight:600;color:var(--accent);padding:var(--spacing-micro) 0;transition:color 0.15s}.ingredient-more-title::-webkit-details-marker{display:none}.ingredient-more-title:hover{color:var(--accent-hover)}.ingredient-more-title::before{content:"";width:0;height:0;flex-shrink:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid currentColor;transition:transform 0.15s}details[open]>.ingredient-more-title::before{transform:rotate(90deg)}details[open]>.ingredient-more-title{opacity:0.7}.picker-group-select-all,.picker-group-sort{flex-shrink:0;background:rgba(250,246,241,0.06);border:1px solid rgba(250,246,241,0.12);border-radius:var(--round);color:var(--light-sec);font:inherit;font-size:var(--font-micro);letter-spacing:0.5px;padding:3px 10px;cursor:pointer;transition:background 0.15s,color 0.15s}.picker-group-select-all:hover,.picker-group-sort:hover{background:rgba(224,122,95,0.18);color:var(--accent-hover)}details[data-sort="desc"]>.picker-group-title>.picker-group-sort,details[data-sort="asc"]>.picker-group-title>.picker-group-sort{color:var(--accent);border-color:rgba(224,122,95,0.35)}.picker-checkboxes{display:flex;flex-direction:column;gap:1px}.picker-checkboxes label{display:flex;align-items:center;gap:var(--spacing-micro);padding:8px 10px;border-radius:var(--round-sm);cursor:pointer;transition:background 0.15s;font-size:var(--font-small);user-select:none;line-height:22px}.picker-checkboxes label:hover{background:rgba(250,246,241,0.05)}.picker-checkboxes input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid rgba(250,246,241,0.20);border-radius:4px;flex-shrink:0;cursor:pointer;transition:all 0.15s;position:relative;vertical-align:middle}.picker-checkboxes input[type="checkbox"]:checked{background:var(--accent);border-color:var(--accent)}.picker-checkboxes input[type="checkbox"]:checked::after{content:"";position:absolute;left:3px;top:0px;width:4px;height:8px;border:solid var(--light);border-width:0 2px 2px 0;transform:rotate(45deg)}.picker-checkboxes input[type="checkbox"]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.picker-checkbox-row{display:flex;align-items:center;gap:var(--spacing-micro);padding:8px 10px;border-radius:var(--round-sm);transition:background 0.15s;font-size:var(--font-small);user-select:none;line-height:22px}.picker-checkbox-row:hover{background:rgba(250,246,241,0.05)}.picker-checkbox-row input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid rgba(250,246,241,0.20);border-radius:4px;flex-shrink:0;cursor:pointer;transition:all 0.15s;position:relative;vertical-align:middle}.picker-checkbox-row input[type="checkbox"]:checked{background:var(--accent);border-color:var(--accent)}.picker-checkbox-row input[type="checkbox"]:checked::after{content:"";position:absolute;left:3px;top:0px;width:4px;height:8px;border:solid var(--light);border-width:0 2px 2px 0;transform:rotate(45deg)}.picker-drink-thumb{width:24px;height:24px;object-fit:contain;flex-shrink:0}.picker-drink-link{flex:1;color:var(--light);text-decoration:none}.picker-drink-link:hover{color:var(--accent);text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:16px 44px;border-radius:12px;border:2px solid transparent;font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:1px;transition:all 0.3s ease;background:var(--accent);color:var(--light);box-shadow:0 4px 24px var(--accent-glow)}.button.sec{background:var(--light-oblique);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(224,122,95,0.35);color:var(--light);box-shadow:0 2px 12px rgba(224,122,95,0.12)}.button.sec:hover{background:var(--light-oblique-hover);border-color:var(--accent);box-shadow:0 4px 24px rgba(224,122,95,0.25),0 2px 8px rgba(0,0,0,0.2);transform:translateY(-1px)}.button:hover{background:var(--accent-hover);box-shadow:0 6px 32px var(--accent-glow),0 0 0 4px rgba(224,122,95,0.15);transform:translateY(-2px)}.button:active{transform:translateY(0);box-shadow:0 2px 8px var(--accent-glow)}.button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.button.small{padding:7px 20px;font-size:var(--font-small);letter-spacing:0.5px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-small);font-weight:600;color:var(--light-sec);padding:8px 16px;border-radius:var(--round);transition:all 0.2s;margin-top:var(--spacing-medium)}.back-link:hover{background:var(--light-oblique);color:var(--light);text-decoration:underline;text-underline-offset:3px}.detail-page{max-width:640px;margin:0 auto;padding:var(--spacing-medium) 0}.detail-page .back-link{margin-top:0;margin-bottom:var(--spacing-large)}.detail-hero{text-align:center;padding:var(--spacing-large) 0 var(--spacing-medium)}.detail-hero-image{width:180px;height:180px;object-fit:contain;margin:0 auto;display:block}.detail-hero-credit{font-size:var(--font-micro);color:var(--light-sec);margin-bottom:var(--spacing-medium)}.detail-title{font-size:var(--font-h1);font-weight:800;letter-spacing:-0.5px;color:var(--light);margin-bottom:var(--spacing-small)}.detail-meta{display:flex;justify-content:center;gap:var(--spacing-xs);flex-wrap:wrap}.detail-section{margin-top:var(--spacing-large);padding-top:var(--spacing-large);border-top:1px solid rgba(250,246,241,0.08)}.detail-section-title{font-size:var(--font-h4);font-weight:700;color:var(--light);margin-bottom:var(--spacing-small);letter-spacing:-0.2px}.cocktails-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-small);padding:var(--spacing-medium) 0}.cocktail-directory-item{display:flex !important;align-items:center;justify-content:space-between;padding:var(--spacing-small) var(--spacing-medium) !important;border-radius:var(--round-sm) !important;border-left:2px solid var(--accent) !important;text-decoration:none}.cocktail-directory-item:hover{background:rgba(250,246,241,0.08) !important;transform:translateX(4px)}.cocktail-directory-name{font-size:var(--font-medium);font-weight:600;color:var(--light)}.cocktail-directory-arrow{font-size:var(--font-large);color:var(--accent);opacity:0.6;transition:opacity 0.2s}.cocktail-directory-item:hover .cocktail-directory-arrow{opacity:1}.footer{text-align:center;padding:var(--spacing-xl) 0;color:var(--light-sec);font-size:var(--font-small);border-top:1px solid rgba(250,246,241,0.06);margin-top:var(--spacing-huge)}.empty-state{text-align:center;padding:var(--spacing-huge) var(--spacing-large);position:relative}.empty-state::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(224,122,95,0.08) 0%,rgba(224,122,95,0.03) 40%,transparent 70%);pointer-events:none}.empty-state-emoji{font-size:96px;margin-bottom:var(--spacing-medium);position:relative;display:inline-block;filter:drop-shadow(0 4px 16px rgba(224,122,95,0.15))}.empty-state-title{font-size:var(--font-h2);font-weight:700;margin-bottom:var(--spacing-small);position:relative}.empty-state-text{font-size:var(--font-large);color:var(--light-sec);max-width:480px;margin:0 auto var(--spacing-medium);position:relative;line-height:1.6}.empty-state-suggestions{display:flex;gap:var(--spacing-small);justify-content:center;flex-wrap:wrap;margin-top:var(--spacing-medium);position:relative}.empty-state-suggestion-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--spacing-small) var(--spacing-medium);background:rgba(250,246,241,0.05);border:1px solid rgba(250,246,241,0.08);border-radius:var(--round-card);min-width:160px;cursor:pointer;transition:all 0.2s}.empty-state-suggestion-card:hover{background:rgba(250,246,241,0.10);border-color:rgba(224,122,95,0.25);transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,0.2)}.hero-illustration{display:flex;justify-content:center;margin-bottom:var(--spacing-medium)}.hero-illustration svg{filter:drop-shadow(0 8px 24px rgba(224,122,95,0.12))}.page-hero{text-align:center;padding:var(--spacing-large) 0 var(--spacing-medium)}.page-subtitle{font-size:var(--font-large);color:var(--light-sec);margin-top:var(--spacing-micro);max-width:560px;margin-left:auto;margin-right:auto}.results-stack{display:flex;flex-direction:column;gap:var(--spacing-huge)}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:var(--spacing-large)}.results-section{padding:var(--spacing-medium) 0}.divider{border:none;height:1px;background:rgba(250,246,241,0.06);margin:var(--spacing-medium) 0}.text-center{text-align:center}.mt-sm{margin-top:var(--spacing-small)}.mt-md{margin-top:var(--spacing-medium)}.mt-lg{margin-top:var(--spacing-large)}.mt-xl{margin-top:var(--spacing-xl)}.flex{display:flex}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes fadeInUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInUp 0.4s ease-out both}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.page-title{font-size:var(--font-h1);font-weight:800;letter-spacing:-0.5px;background:linear-gradient(90deg,var(--accent) 0%,#f5a623 25%,var(--accent) 50%,#f5a623 75%,var(--accent) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block;position:relative;animation:shimmer 4s linear infinite}.page-title::after{content:"";display:block;width:100%;height:3px;border-radius:2px;background:var(--accent);margin:var(--spacing-micro) 0 0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(250,246,241,0.12);border-radius:var(--round)}::-webkit-scrollbar-thumb:hover{background:rgba(250,246,241,0.2)}.skip-link{position:absolute;top:-100%;left:16px;z-index:100;padding:12px 24px;background:var(--accent);color:var(--light);font-weight:700;font-size:var(--font-small);border-radius:0 0 var(--round-sm) var(--round-sm);transition:top 0.2s ease}.skip-link:focus{top:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a.card:focus-visible,a.cocktail-directory-item:focus-visible,a.barware-card:focus-visible{outline:none}a.card:focus-visible .card-title-link,a.cocktail-directory-item:focus-visible .cocktail-directory-name,a.barware-card:focus-visible .card-title-link,a.barware-card:focus-visible .card-title{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.view-toggle{display:flex;justify-content:center;gap:0;margin-bottom:var(--spacing-large)}.view-toggle-btn{display:inline-flex;align-items:center;justify-content:center;flex:1;gap:6px;padding:12px 32px;font-size:var(--font-small);font-weight:600;cursor:pointer;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);background:var(--light-oblique);color:var(--light-sec);border:1px solid rgba(250,246,241,0.06)}.view-toggle-btn:first-child{border-radius:var(--round) 0 0 var(--round)}.view-toggle-btn:last-child{border-radius:0 var(--round) var(--round) 0}.view-toggle-btn.active{background:var(--accent);color:var(--light);box-shadow:0 2px 16px var(--accent-glow),inset 0 1px 0 rgba(255,255,255,0.15);border-color:var(--accent);transform:scale(1.02)}.view-toggle-btn:hover:not(.active){background:var(--light-oblique-hover);color:var(--light)}.search-section{max-width:640px;margin:0 auto var(--spacing-medium)}.search-panel{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:20px;padding:24px;position:relative;box-shadow:0 4px 24px rgba(0,0,0,0.2)}.search-bar-wrap{position:relative;margin-bottom:20px}.search-bar-wrap::before{content:"";position:absolute;left:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");mask-size:contain;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");-webkit-mask-size:contain;color:rgba(255,255,255,0.30);z-index:2;pointer-events:none;transition:color 0.25s}.search-bar-wrap:focus-within::before{color:var(--accent)}.search-bar{width:100%;padding:16px 20px 16px 54px;font-size:18px;font-weight:500;letter-spacing:0.01em;background:rgba(255,255,255,0.10);border:2px solid rgba(255,255,255,0.12);border-radius:14px;color:var(--light);outline:none;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.15)}.search-bar::placeholder{color:rgba(255,255,255,0.50);font-weight:400}.search-bar:hover{border-color:rgba(255,255,255,0.18);background:rgba(255,255,255,0.10)}.search-bar:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow),inset 0 1px 2px rgba(0,0,0,0.15);background:rgba(255,255,255,0.12)}.search-dropdown{display:none;position:absolute;top:calc(100%+6px);left:0;right:0;background:linear-gradient(90deg,rgba(20,20,20,0.98) 0%,rgba(30,15,10,0.95) 100%);backdrop-filter:blur(30px) saturate(1.8);-webkit-backdrop-filter:blur(30px) saturate(1.8);border:1px solid rgba(255,255,255,0.12);border-radius:14px;max-height:360px;overflow-y:auto;z-index:20;box-shadow:0 20px 60px rgba(0,0,0,0.6),0 0 0 1px rgba(0,0,0,0.4);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.10) transparent;color:#f5f5f5}.search-dropdown::-webkit-scrollbar{width:5px}.search-dropdown::-webkit-scrollbar-track{background:transparent;margin:8px 0}.search-dropdown::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.10);border-radius:3px}.search-dropdown::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.18)}.search-dropdown.visible{display:block;animation:dropdownIn 0.15s cubic-bezier(0.4,0,0.2,1) both}@keyframes dropdownIn{from{opacity:0;transform:translateY(-4px) scale(0.99)}to{opacity:1;transform:translateY(0) scale(1)}}.search-dropdown-item{display:flex;align-items:center;gap:10px;padding:12px 20px;cursor:pointer;transition:background 0.1s ease;font-size:14px;border-left:2px solid transparent}.search-dropdown-item:first-child{border-radius:14px 14px 0 0;padding-top:13px}.search-dropdown-item:last-child{border-radius:0 0 14px 14px;padding-bottom:13px}.search-dropdown-item:hover,.search-dropdown-item.highlighted{background:rgba(255,255,255,0.08);border-left-color:var(--accent)}.search-dropdown-item.added{opacity:0.40}.search-dropdown-thumb{width:32px;height:32px;object-fit:contain;flex-shrink:0}.search-dropdown-name{flex:1;font-weight:600;color:#f5f5f5}.search-dropdown-group{font-size:var(--font-small);color:#f0f0f0;text-transform:uppercase;letter-spacing:0.5px;padding:4px 10px;border-radius:var(--round);background:rgba(250,246,241,0.10)}.search-dropdown-added{font-size:var(--font-micro);color:var(--success);font-weight:600}.search-dropdown-handle{display:none}.search-dropdown-empty{padding:16px;text-align:center;color:#d5d5d5;font-size:var(--font-small)}.search-dropdown-heading{padding:10px 20px 6px;font-size:var(--font-micro);text-transform:uppercase;letter-spacing:0.8px;color:#d5d5d5;border-radius:14px 14px 0 0;border-bottom:1px solid rgba(250,246,241,0.08)}.selected-section{max-width:640px;margin:0 auto;padding-top:16px}.selected-heading{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:rgba(255,255,255,0.70);margin-bottom:10px;display:flex;align-items:center;gap:10px}.selected-heading::after{content:"";flex:1;height:1px;background:rgba(255,255,255,0.06)}.selected-list{display:flex;flex-wrap:wrap;gap:8px;min-height:46px;padding:14px 16px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.06);border-radius:14px;transition:border-color 0.2s}.selected-list:has(.selected-tag){border-color:rgba(255,255,255,0.10);background:rgba(255,255,255,0.05)}.selected-empty{color:rgba(255,255,255,0.45);font-size:14px;font-style:italic;padding:4px 0;width:100%}.selected-empty-suggestions{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-micro);margin-top:var(--spacing-small)}.selected-empty-suggestions-title{grid-column:1 / -1;font-size:var(--font-micro);text-transform:uppercase;letter-spacing:0.8px;color:var(--light-sec)}.selected-tag-thumb{width:20px;height:20px;object-fit:contain;flex-shrink:0}.selected-tag{display:inline-flex;align-items:center;gap:4px;padding:7px 10px 7px 14px;background:rgba(255,255,255,0.10);border:1px solid rgba(255,255,255,0.08);border-radius:10px;font-size:14px;font-weight:600;color:rgba(255,255,255,0.90);animation:fadeInUp 0.25s cubic-bezier(0.4,0,0.2,1) both;transition:all 0.15s ease}.selected-tag:hover{background:rgba(255,255,255,0.14);border-color:rgba(255,255,255,0.14);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,0.25)}.selected-tag-link{color:inherit;text-decoration:none}.selected-tag-link:hover{text-decoration:underline;text-underline-offset:3px}.selected-tag-remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:15px;font-weight:700;line-height:1;color:rgba(255,255,255,0.45);cursor:pointer;transition:all 0.15s ease;background:rgba(255,255,255,0.08);border:none;margin:-1px -1px -1px 2px}.selected-tag-remove:hover{background:var(--missing);color:#fff;transform:scale(1.15)}.bar-ingredients{margin-bottom:var(--spacing-large)}.bar-ingredients-summary{font-size:var(--font-small);font-weight:600;color:var(--light-sec);cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:var(--spacing-micro);margin-bottom:var(--spacing-small);user-select:none}.bar-ingredients-summary::-webkit-details-marker{display:none}.bar-ingredients-summary::after{content:"▾";font-size:10px;margin-left:2px;transition:transform 0.15s}details[open]>.bar-ingredients-summary::after{transform:rotate(180deg)}.bar-ingredients-list{display:flex;flex-wrap:wrap;gap:8px}.barware-card{display:flex;flex-direction:column;padding:0;overflow:hidden;text-decoration:none}.barware-card:hover .barware-card-image{transform:scale(1.08)}.barware-card:hover .barware-card-credit{opacity:1}.barware-card-image-wrap{position:relative;width:100%;aspect-ratio:4 / 3;min-height:180px;background:rgba(18,8,2,0.6);display:flex;align-items:center;justify-content:center;overflow:hidden}.barware-card-image-wrap::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(224,122,95,0.05) 0%,transparent 70%);pointer-events:none}.barware-card-image{width:100%;height:100%;object-fit:contain;padding:var(--spacing-small);transition:transform 0.4s ease}.barware-card-credit{position:absolute;bottom:0;left:0;right:0;padding:4px 10px;font-size:11px;color:var(--light-sec);background:rgba(15,8,4,0.7);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);text-align:right;opacity:0;transition:opacity 0.2s}.barware-card .card-header,.barware-card .card-body{padding:0 var(--spacing-small)}.barware-card .card-header{padding-top:var(--spacing-small)}.barware-card .card-body{padding-bottom:var(--spacing-small)}.barware-detail-hero-image{width:280px;height:280px;object-fit:contain;margin:0 auto;display:block;filter:drop-shadow(0 8px 24px rgba(0,0,0,0.4))}.barware-detail-section{background:rgba(43,24,16,0.5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(250,246,241,0.08);border-radius:var(--round-card);padding:var(--spacing-large);margin-top:var(--spacing-large)}.barware-detail-section-title{font-size:var(--font-h4);font-weight:700;color:var(--light);margin-bottom:var(--spacing-small);letter-spacing:-0.2px}.barware-detail-about{font-size:var(--font-medium);color:var(--light-sec);line-height:1.8;margin:0}.header-nav{display:flex;gap:var(--spacing-small);align-items:center}.header-nav-link{font-size:var(--font-small);font-weight:600;color:var(--light-sec);padding:6px 14px;border-radius:var(--round);transition:all 0.2s}.header-nav-link:hover{background:var(--light-oblique);color:var(--light)}@media (prefers-reduced-motion:reduce){.animate-in{animation:none;opacity:1}.page-title{animation:none}.results-grid>*{animation-delay:0s}.barware-card-image{transition:none}}@media (max-width:640px){.barware-card-image-wrap{height:160px}.barware-detail-hero-image{width:200px;height:200px}.barware-detail-section{padding:var(--spacing-medium)}.barware-detail-about{font-size:var(--font-small)}.search-section{max-width:100%}.search-panel{padding:16px;border-radius:16px}.search-bar-wrap{margin-bottom:10px}.search-bar{padding:14px 16px 14px 44px;font-size:16px;border-radius:12px}.search-dropdown{position:fixed;top:auto;bottom:0;left:0;right:0;max-height:50vh;border-radius:18px 18px 0 0}.search-dropdown-handle{display:block;position:sticky;top:0;z-index:1;height:16px;background:linear-gradient(rgba(20,20,20,0.98),rgba(20,20,20,0.85))}.search-dropdown-handle::after{content:"";display:block;width:36px;height:4px;background:rgba(255,255,255,0.25);border-radius:2px;margin:8px auto 4px}.selected-list{min-height:36px;padding:8px 10px}.selected-tag{font-size:13px;padding:5px 7px 5px 10px}.header-nav{gap:var(--spacing-micro)}.header-nav-link{font-size:var(--font-micro);padding:4px 10px}}@media print{:root{--light:#111111;--light-sec:#444444;--light-hazy:#111111;--light-oblique:rgba(0,0,0,0.10);--light-oblique-hover:rgba(0,0,0,0.14);--dark:#ffffff;--dark-sec:#ffffff;--dark-oblique:rgba(0,0,0,0.06);--primary:#ffffff;--accent:#8a3b22;--accent-hover:#8a3b22;--accent-glow:transparent;--overlay:transparent;--gradient:none;--logo-gradient:none}html,body,.page-wrapper,.container,.card,.detail-section{background:#ffffff !important;color:#111111 !important}*{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;box-shadow:none !important;text-shadow:none !important;animation:none !important}.header,.footer,.skip-link,.back-link,.density-toggle,.similar-section,.cocktail-hero-glass,#make-this-btn,#make-this-result{display:none !important}body::before,body::after{display:none !important}details>summary{display:none !important}details>*:not(summary){display:revert !important}a{color:#111111 !important}.card-tag,.recipe-steps li,.ingredient-name,.ingredient-amount,.detail-section-title,.garnish{color:#111111 !important}.recipe-steps li::before{background:#111111 !important;color:#ffffff !important}}.lightbox-trigger{display:block;background:none;border:0;padding:0;cursor:zoom-in;margin:0 auto}.lightbox{border:0;padding:0;background:transparent;max-width:92vw;max-height:92vh;overflow:visible}.lightbox::backdrop{background:rgba(10,5,2,0.88);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.lightbox-image{max-width:92vw;max-height:92vh;width:auto;height:auto;border-radius:var(--round-sm)}.lightbox-close{position:absolute;top:-14px;right:-14px;width:36px;height:36px;border-radius:50%;background:var(--light);color:#111;font-size:22px;line-height:1;cursor:pointer}.rating-dots{display:inline-flex;gap:2px;margin-left:6px;vertical-align:middle}.rating-dots::before{content:"";width:calc(var(--filled) * 7px);height:7px;border-radius:4px;background:currentColor}.rating-dots::after{content:"";width:calc((10 - var(--filled)) * 7px);height:7px;border-radius:4px;background:currentColor;opacity:0.25}.substitute-list{display:flex;flex-wrap:wrap;gap:var(--spacing-micro)}.tasting-notes{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--spacing-micro);margin-top:var(--spacing-small)}.tasting-notes-label{font-size:var(--font-micro);text-transform:uppercase;letter-spacing:0.8px;color:var(--light-sec)}.price-tier-premium{border:1px solid rgba(224,122,95,0.45)}.wizard-popular{max-width:640px;margin:var(--spacing-large) auto 0}.wizard-popular-title{font-size:var(--font-micro);text-transform:uppercase;letter-spacing:0.8px;color:var(--light-sec);margin-bottom:var(--spacing-micro)}.barware-toolbar{max-width:720px;margin:0 auto var(--spacing-medium);display:flex;flex-direction:column;gap:var(--spacing-micro)}.barware-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-micro);justify-content:center}.barware-chip{background:var(--light-oblique);border:1px solid rgba(250,246,241,0.12);border-radius:var(--round);color:var(--light-sec);font-size:var(--font-small);padding:6px 14px;cursor:pointer;transition:background 0.15s,color 0.15s,border-color 0.15s}.barware-chip:hover{background:var(--light-oblique-hover);color:var(--light)}.barware-chip.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.buy-links{display:flex;flex-wrap:wrap;gap:var(--spacing-micro)}.buy-link-price{margin-left:var(--spacing-micro);font-size:var(--font-micro);color:var(--light-sec)}.barware-neighbours{display:flex;justify-content:space-between;gap:var(--spacing-small);margin:var(--spacing-large) 0 var(--spacing-medium);padding-top:var(--spacing-small);border-top:1px solid rgba(250,246,241,0.08)}.barware-neighbour{color:var(--accent);font-size:var(--font-small);font-weight:600;transition:color 0.15s}.barware-neighbour:hover{color:var(--accent-hover)}.barware-neighbour.next{margin-left:auto}.credits-toolbar{max-width:560px;margin:0 auto var(--spacing-medium)}.credits-count{text-align:center;font-size:var(--font-micro);color:var(--light-sec);margin:var(--spacing-micro) 0 0}.credit-card{flex-direction:row !important;align-items:center;gap:var(--spacing-small)}.credit-thumb{width:48px;height:48px;flex-shrink:0;object-fit:contain}.credit-body{display:flex;flex-direction:column;gap:2px;min-width:0}.init-error{background:rgba(224,85,85,0.15);border:1px solid rgba(224,85,85,0.4);border-radius:var(--round-sm);color:var(--light);font-size:var(--font-small);padding:var(--spacing-small);margin-bottom:var(--spacing-medium)}:root.light,:root[data-theme="light"]{--light:#1c1210;--light-sec:rgba(28,18,16,0.75);--light-hazy:rgba(28,18,16,0.90);--light-oblique:rgba(28,18,16,0.07);--light-oblique-hover:rgba(28,18,16,0.12);--dark:#fdfaf5;--dark-sec:rgba(253,250,245,0.75);--dark-oblique:rgba(28,18,16,0.05);--primary:#fdfaf5;--accent:#a64a2e;--accent-hover:#8a3b22;--accent-glow:rgba(166,74,46,0.22);--success:#4a7c3f;--missing:#b03030;--warning:#9a6a1f;--overlay:rgba(28,18,16,0.45);--gradient:linear-gradient(180deg,#fdfaf5 0%,#f6efe6 40%,#f1e7db 100%)}:root.light body,:root[data-theme="light"] body,:root.light,:root[data-theme="light"]{background-color:#f6efe6}:root.light .card,:root[data-theme="light"] .card{background:rgba(255,255,255,0.86);border-color:rgba(28,18,16,0.10);box-shadow:0 4px 20px rgba(28,18,16,0.08)}:root.light .header,:root[data-theme="light"] .header{background:rgba(253,250,245,0.82);border-bottom-color:rgba(28,18,16,0.08)}@media (prefers-color-scheme:light){:root:not(.dark):not([data-theme="dark"]){--light:#1c1210;--light-sec:rgba(28,18,16,0.75);--light-hazy:rgba(28,18,16,0.90);--light-oblique:rgba(28,18,16,0.07);--light-oblique-hover:rgba(28,18,16,0.12);--dark:#fdfaf5;--dark-sec:rgba(253,250,245,0.75);--dark-oblique:rgba(28,18,16,0.05);--primary:#fdfaf5;--accent:#a64a2e;--accent-hover:#8a3b22;--accent-glow:rgba(166,74,46,0.22);--success:#4a7c3f;--missing:#b03030;--warning:#9a6a1f;--overlay:rgba(28,18,16,0.45);--gradient:linear-gradient(180deg,#fdfaf5 0%,#f6efe6 40%,#f1e7db 100%)}:root:not(.dark):not([data-theme="dark"]),:root:not(.dark):not([data-theme="dark"]) body{background-color:#f6efe6}:root:not(.dark):not([data-theme="dark"]) .card{background:rgba(255,255,255,0.86);border-color:rgba(28,18,16,0.10);box-shadow:0 4px 20px rgba(28,18,16,0.08)}:root:not(.dark):not([data-theme="dark"]) .header{background:rgba(253,250,245,0.82);border-bottom-color:rgba(28,18,16,0.08)}}@media (prefers-reduced-transparency:reduce),(prefers-reduced-data:reduce){.card,.header,.search-dropdown,.lightbox::backdrop{backdrop-filter:none !important;-webkit-backdrop-filter:none !important}.card{background:#2b1810}.header{background:#120802}.search-dropdown{background:#141414}}@media (prefers-reduced-data:reduce),(max-width:640px),(pointer:coarse){body::after{display:none}}:root.light .card-tag,:root[data-theme="light"] .card-tag,:root.light .recipe-steps li,:root[data-theme="light"] .recipe-steps li,:root.light .ingredient-name,:root[data-theme="light"] .ingredient-name,:root.light .search-dropdown-name,:root[data-theme="light"] .search-dropdown-name{color:#1c1210}:root.light .card-tag,:root[data-theme="light"] .card-tag{background:rgba(28,18,16,0.08)}@media (prefers-color-scheme:light){:root:not(.dark):not([data-theme="dark"]) .card-tag,:root:not(.dark):not([data-theme="dark"]) .recipe-steps li,:root:not(.dark):not([data-theme="dark"]) .ingredient-name,:root:not(.dark):not([data-theme="dark"]) .search-dropdown-name{color:#1c1210}:root:not(.dark):not([data-theme="dark"]) .card-tag{background:rgba(28,18,16,0.08)}}