    :root{
      --bg:#12090d;--bg2:#1b0b12;--panel:#211318;--panel2:#2a171d;--card:#23161a;--card2:#2d1a20;
      --burg:#4a1424;--burg2:#6e2238;--burg3:#8a3e52;--cream:#2b2222;--gold:#d8b98a;
      --ink:#f4eeee;--muted:#bcaeb2;--subtle:#8f7d82;--line:#442a31;--chip:#3a242b;--shadow:0 10px 30px rgba(0,0,0,.42);
      --radius:16px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--keyboard-offset:0px;
      --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    }
    *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
    html,body{margin:0;min-height:100%;font-family:var(--font);background:radial-gradient(circle at top,#2d111b 0%,var(--bg) 40%,#0d0709 100%);color:var(--ink);-webkit-font-smoothing:antialiased}
    body{padding-bottom:calc(190px + var(--safe-bottom));}
    button,input,select{font:inherit}button{border:0;cursor:pointer;touch-action:manipulation}input,select{width:100%;min-height:40px;border:1px solid #56323b;border-radius:12px;background:#180d11;color:var(--ink);padding:9px 10px;font-size:16px;outline:none}input::placeholder{color:#8f7f83}input:focus,select:focus{border-color:var(--burg3);box-shadow:0 0 0 4px rgba(138,62,82,.18)}
    .app-header{position:sticky;top:0;z-index:50;padding:calc(8px + var(--safe-top)) 14px 9px;background:linear-gradient(180deg,#3b101d 0%,#250711 100%);color:white;box-shadow:0 3px 16px rgba(0,0,0,.35)}
    .header-row{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;max-width:920px;margin:0 auto}.app-title{margin:0;font-size:1.08rem;font-weight:950;line-height:1.05}.app-subtitle{font-size:.7rem;color:#d8c9ce;font-weight:650;margin-top:1px}.count-pill{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.11);font-weight:900;font-size:.86rem;white-space:nowrap;color:#fff}
    main{max-width:920px;margin:0 auto;padding:9px 10px 0}.result-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:4px 2px 8px;color:var(--muted);font-size:.86rem;font-weight:800}.sort-note{font-size:.74rem;color:var(--subtle);text-align:right}.empty{padding:22px 16px;border-radius:16px;background:linear-gradient(180deg,#211318,#180d11);box-shadow:var(--shadow);border:1px solid var(--line);text-align:center;color:var(--muted);line-height:1.35;font-weight:650}
    .results{margin-top:1px}.wine-card{background:linear-gradient(180deg,var(--card2),var(--card));border-radius:14px;box-shadow:var(--shadow);border:1px solid #3a2229;overflow:hidden;margin-bottom:8px}.card-top{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:linear-gradient(180deg,#382226,#2c1a1d);border-bottom:1.5px solid #8c6b4b}.mini{min-width:0;padding:6px 5px;text-align:center;border-right:1px solid #4c3034}.mini:last-child{border-right:0}.mini-label{display:block;margin-bottom:2px;color:#c8a778;font-size:.59rem;line-height:1;font-weight:950;letter-spacing:.08em}.mini-value{display:block;color:#fff;font-size:.88rem;line-height:1;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-body{padding:9px 11px 10px}.wine-name{margin:0 0 4px;font-size:1rem;line-height:1.15;font-weight:950;color:#fff}.region-line{margin:0 0 8px;font-size:.88rem;line-height:1.18;font-style:italic;font-weight:720;color:#dacdd0}.tags{display:flex;flex-wrap:wrap;gap:5px}.tag{padding:4px 7px;border-radius:999px;background:#332226;color:#eadfe2;font-size:.66rem;font-weight:850;line-height:1.05;letter-spacing:.02em}.tag.grape{background:#4b2630;color:#fff0e2}
    .bottom-area{position:fixed;left:0;right:0;bottom:calc(var(--keyboard-offset));z-index:90;padding:8px 9px calc(8px + var(--safe-bottom));background:linear-gradient(180deg,rgba(18,9,13,0) 0%,rgba(18,9,13,.92) 15%,rgba(18,9,13,1) 38%);transition:bottom .18s ease}.dock-inner,.filter-window{max-width:920px;margin:0 auto;background:rgba(33,19,24,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid #432630;box-shadow:0 -10px 34px rgba(0,0,0,.36);border-radius:18px;padding:8px}.filter-window{margin-top:7px;max-height:58px;overflow:auto}.filter-window:empty{display:none}.search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.search-wrap{position:relative;min-width:0}.main-search{min-height:42px}.apply-btn{min-height:42px;border-radius:13px;padding:0 15px;background:var(--burg2);color:#fff;font-weight:950}.apply-btn:active,.apply-btn.pulse{transform:scale(.96);filter:brightness(1.18)}.id-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}.id-field{position:relative}.id-field label{position:absolute;left:10px;top:4px;color:var(--gold);font-size:.58rem;font-weight:950;letter-spacing:.08em;z-index:1}.id-field input{min-height:40px;padding-top:15px;font-size:.9rem}.dock-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:7px}.dock-btn{min-height:38px;border-radius:12px;background:#2d1b21;color:#f3e8eb;border:1px solid #4a2d35;font-size:.78rem;font-weight:900}.dock-btn.reset{background:#180d11;color:#e7cdd4;border-color:#5b3540}.dock-btn:active{transform:translateY(1px);filter:brightness(1.12)}
    .chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:6px 8px;border-radius:999px;background:#3a2029;border:1px solid #5a3440;color:#fff;font-size:.78rem;font-weight:850;margin:2px}.chip button{width:19px;height:19px;min-height:19px;border-radius:999px;background:#57323e;color:#fff;padding:0;font-size:.9rem;line-height:1}
    .suggestions{position:absolute;left:0;right:0;bottom:calc(100% + 8px);display:none;max-height:260px;overflow:auto;background:#211318;border:1px solid #56323b;border-radius:15px;box-shadow:0 14px 38px rgba(0,0,0,.5);z-index:130}.suggestions.open{display:block}.suggestion{padding:12px 13px;border-bottom:1px solid #372027;color:#f8eef1;font-size:.93rem;font-weight:700;line-height:1.18}.suggestion:last-child{border-bottom:0}.suggestion:active{background:#3a2029}
    .backdrop{position:fixed;inset:0;display:none;z-index:140;background:rgba(0,0,0,.56)}.backdrop.open{display:block}.drawer{position:fixed;left:0;right:0;bottom:0;z-index:150;display:none;max-height:min(86vh,770px);padding:9px 12px calc(12px + var(--safe-bottom));background:#180d11;border-radius:24px 24px 0 0;box-shadow:0 -16px 38px rgba(0,0,0,.52);border-top:1px solid #4c2a33}.drawer.open{display:block}.handle{width:52px;height:5px;background:#6e5a60;border-radius:999px;margin:0 auto 9px}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.drawer-title{margin:0;color:#fff;font-size:1.1rem;font-weight:950}.head-actions{display:flex;gap:6px;align-items:center}.small-btn{min-height:36px;padding:0 11px;border-radius:12px;font-size:.84rem;font-weight:900}.cancel{background:#302027;color:#f6e7eb}.reset-small{background:#211318;color:#e4c9d0;border:1px solid #57313c}.done{background:var(--burg2);color:#fff}.x-btn{width:34px;min-height:34px;border-radius:999px;background:#3b3033;color:#c8bfc2;font-size:1.1rem;padding:0}.drawer-body{overflow:auto;max-height:calc(86vh - 76px - var(--safe-bottom));padding:0 0 4px}.compact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.field label,.hybrid label,.range-title{display:block;margin:0 0 4px 2px;color:#c8a778;font-size:.68rem;font-weight:950;letter-spacing:.08em}.field select{min-height:40px;font-size:.9rem;border-radius:12px;background:#211318}.hybrid-input{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:5px}.hybrid-input input{min-height:40px;font-size:.9rem}.drop-btn{min-height:40px;border-radius:12px;background:#2c1a20;color:#fff;border:1px solid #4e2c36;font-weight:950}.hybrid-options{display:none;max-height:170px;overflow:auto;margin-top:5px;border-radius:12px;border:1px solid #4e2c36;background:#211318}.hybrid-options.open{display:block}.option-row{padding:10px 11px;border-bottom:1px solid #382129;font-size:.88rem;font-weight:750}.option-row:last-child{border-bottom:0}.option-row:active{background:#3a2029}.quick-grid{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 12px}.bubble{min-height:34px;border-radius:999px;background:#2d1b21;color:#f0e3e6;border:1px solid #4c2d35;padding:0 10px;font-size:.78rem;font-weight:880}.bubble.active{background:var(--burg2);border-color:#a85a70;color:#fff}.check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:8px}.check-pill{display:flex;align-items:center;gap:5px;min-height:32px;border-radius:10px;background:#211318;border:1px solid #3d252c;color:#f1e5e8;padding:0 7px;font-size:.76rem;font-weight:800}.check-pill input{width:15px;min-height:auto;height:15px;accent-color:var(--burg3)}.range-card{margin:7px 0 11px;padding:10px;border-radius:16px;background:#211318;border:1px solid #3c252b}.range-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.range-current{color:#e8c78e;font-size:.84rem;font-weight:950}.range-wrap{position:relative;height:42px;margin:0 3px 8px}.range-track{position:absolute;left:0;right:0;top:19px;height:4px;border-radius:999px;background:#4a343a}.range-fill{position:absolute;top:19px;height:4px;border-radius:999px;background:var(--burg3)}.range-wrap input[type=range]{position:absolute;left:0;top:9px;width:100%;margin:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none}.range-wrap input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;height:24px;width:24px;border-radius:50%;background:var(--burg3);border:3px solid #eadfe2;box-shadow:0 2px 10px rgba(0,0,0,.35);pointer-events:auto}.range-wrap input[type=range]::-webkit-slider-runnable-track{height:4px;background:transparent}.range-tip{position:absolute;top:-18px;transform:translateX(-50%) scale(.92);opacity:0;padding:4px 7px;border-radius:8px;background:#e8d7db;color:#250711;font-size:.75rem;font-weight:950;box-shadow:0 4px 12px rgba(0,0,0,.35);transition:opacity .12s, transform .12s;pointer-events:none;white-space:nowrap}.range-tip.show{opacity:1;transform:translateX(-50%) scale(1)}.markers{display:flex;justify-content:space-between;color:#8f7d82;font-size:.58rem;font-weight:800;margin:0 1px 7px}.range-inputs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.range-inputs label{font-size:.62rem;color:#bda580;font-weight:950;letter-spacing:.08em}.range-inputs input{min-height:38px;font-size:.88rem}.section-title{margin:12px 0 5px;color:#c8a778;font-size:.72rem;font-weight:950;letter-spacing:.08em}
    @media (max-height:720px){.check-grid{grid-template-columns:repeat(5,1fr)}.drawer-body{max-height:calc(86vh - 70px - var(--safe-bottom))}.wine-card{margin-bottom:7px}.card-body{padding:8px 10px}.mini{padding:5px 4px}}

    /* v6 visual polish: reflective gold accents */
    @keyframes goldSweep{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
    .wine-card,.dock-inner,.filter-window,.drawer,input,select,.dock-btn,.apply-btn,.drop-btn,.small-btn,.x-btn{position:relative}
    .wine-card{border:1px solid transparent;background:linear-gradient(180deg,var(--card2),var(--card)) padding-box,linear-gradient(120deg,rgba(151,104,45,.55),rgba(255,226,159,.95),rgba(116,78,28,.55),rgba(255,235,175,.82)) border-box;background-size:auto,240% 240%;animation:goldSweep 7s ease infinite;box-shadow:0 10px 24px rgba(0,0,0,.46),0 0 18px rgba(216,185,138,.10);}
    .mini{background:var(--burg2);border-right:1px solid #f3d98f!important;border-bottom:1px solid #f3d98f;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,226,159,.18)}
    .mini-label{color:#f7dc98}.mini-value{color:#fff}
    .card-top{background:transparent;border-bottom:1.5px solid #f4d889}
    .main-search,.id-field input,.hybrid-input input,.range-inputs input,input[type=number],select,.dock-btn,.apply-btn,.drop-btn{border:1px solid transparent;background:linear-gradient(#180d11,#180d11) padding-box,linear-gradient(120deg,rgba(151,104,45,.50),rgba(255,226,159,.90),rgba(116,78,28,.50)) border-box;background-size:auto,220% 220%;animation:goldSweep 8s ease infinite;}
    .dock-btn,.drop-btn{background:linear-gradient(#2d1b21,#2d1b21) padding-box,linear-gradient(120deg,rgba(151,104,45,.55),rgba(255,226,159,.9),rgba(116,78,28,.55)) border-box;background-size:auto,220% 220%;}
    .apply-btn,.done{background:linear-gradient(var(--burg2),var(--burg2)) padding-box,linear-gradient(120deg,rgba(151,104,45,.55),rgba(255,226,159,.9),rgba(116,78,28,.55)) border-box;background-size:auto,220% 220%;animation:goldSweep 8s ease infinite;}
    .filter-window:not(:empty)::before{content:'Applied Filters';display:block;color:#f7dc98;font-size:.66rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase;margin:0 0 4px 4px;}
    .filter-window .chip{background:#6e2238;border-color:#f3d98f;color:#fff;box-shadow:0 0 10px rgba(216,185,138,.12)}
    .filter-window .chip button{background:#8a3e52;color:#fff}
    .subdrawer-btn{width:100%;min-height:42px;margin:8px 0 10px;border-radius:14px;background:linear-gradient(#2d1b21,#2d1b21) padding-box,linear-gradient(120deg,rgba(151,104,45,.55),rgba(255,226,159,.95),rgba(116,78,28,.55)) border-box;border:1px solid transparent;color:#fff;font-weight:950;animation:goldSweep 8s ease infinite;}
    .price-panel{display:block}.price-panel.hidden{display:none}.subdrawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}.subdrawer-title{color:#fff;font-weight:950;font-size:.96rem}.back-sub{min-height:34px;border-radius:12px;background:#302027;color:#f6e7eb;padding:0 10px;font-size:.82rem;font-weight:900}

  
    /* WineStack v7 polish */
    @keyframes floatDockIn{0%{transform:translateY(-120vh) scale(.98);opacity:0}70%{transform:translateY(8px) scale(1);opacity:1}100%{transform:translateY(0);opacity:1}}
    @keyframes textFadeIn{0%,62%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:translateY(0)}}
    @keyframes brassShine{0%{filter:drop-shadow(0 0 0 rgba(244,203,115,0)); transform:perspective(400px) rotateY(-6deg)}45%{filter:drop-shadow(0 0 14px rgba(255,223,150,.85)); transform:perspective(400px) rotateY(6deg)}100%{filter:drop-shadow(0 0 0 rgba(244,203,115,0)); transform:perspective(400px) rotateY(-6deg)}}
    @keyframes markGlow{0%{box-shadow:0 0 0 rgba(241,190,105,0)}50%{box-shadow:0 0 18px rgba(241,190,105,.28)}100%{box-shadow:0 0 0 rgba(241,190,105,0)}}
    .bottom-area{animation:floatDockIn .95s cubic-bezier(.16,1,.3,1) both;}
    .app-header, main{animation:textFadeIn .65s ease .85s both;}
    .app-header{padding:calc(6px + var(--safe-top)) 10px 7px;}
    .header-grid{display:grid;grid-template-columns:74px minmax(0,1fr) 86px;align-items:center;gap:8px;max-width:920px;}
    .brand-block,.restaurant-block,.search-count-block{text-align:center;min-width:0;}
    .brand-block{justify-self:start;width:74px}
    .brand-name{font-size:.66rem;font-weight:950;letter-spacing:.02em;color:#fff;margin-top:2px}
    .wstack-mark{width:34px;height:34px;margin:0 auto;border-radius:10px;background:linear-gradient(145deg,#6d2035,#2d0b15);border:1px solid rgba(244,203,115,.75);position:relative;animation:markGlow 5s ease-in-out infinite;}
    .wstack-mark:before{content:"";position:absolute;left:15px;top:5px;width:4px;height:24px;border-radius:4px;background:linear-gradient(#f4d486,#b1762e);transform:rotate(22deg)}
    .wstack-mark:after{content:"";position:absolute;left:6px;right:6px;bottom:7px;height:9px;border-radius:100% 100% 40% 40%;background:repeating-linear-gradient(90deg,#c98b3a 0 3px,#f0c46e 3px 5px);opacity:.95}
    .restaurant-block{justify-self:center;}
    .restaurant-logo{display:block;width:min(64px,16vw);height:auto;margin:0 auto -1px;object-fit:contain;animation:brassShine 3.3s ease-in-out infinite;}
    .restaurant-name{font-size:.62rem;font-weight:850;color:#ecdfe3;line-height:1.05;white-space:normal;text-shadow:0 1px 1px rgba(0,0,0,.6)}
    .search-count-block{justify-self:end;width:86px;text-align:right}
    .search-label{font-size:.66rem;font-weight:950;color:#fff;margin-bottom:3px}
    .count-pill{display:inline-block;font-size:.78rem;padding:6px 8px;background:rgba(255,255,255,.10);border:1px solid rgba(241,190,105,.32)}
    .landing-copy{padding:10px 12px;margin:2px 0 9px;border-radius:14px;background:rgba(24,13,17,.72);border:1px solid #4a2731;color:#f3e6ea;font-size:.86rem;line-height:1.28;font-weight:700;box-shadow:var(--shadow)}
    .dock-inner,.filter-window{background:rgba(18,8,12,.98);border-color:rgba(241,190,105,.42);box-shadow:0 -10px 38px rgba(0,0,0,.56), inset 0 0 0 1px rgba(255,255,255,.03)}
    .box-label{position:absolute;left:10px;top:4px;color:var(--gold);font-size:.58rem;font-weight:950;letter-spacing:.08em;z-index:2}
    .labeled-search input{padding-top:16px;}
    .search-wrap{position:relative}
    .clear-input{display:none;position:absolute;right:9px;top:50%;transform:translateY(-50%);width:23px;height:23px;min-height:23px;border-radius:999px;background:#4a4246;color:#d0c7ca;font-weight:950;line-height:1;padding:0;z-index:5}
    .clear-input.visible{display:block}
    .labeled-search .clear-input{top:55%}
    .id-field .clear-input{top:60%}
    .hybrid-clear{right:43px!important;top:50%!important}
    input.clearable-input{padding-right:38px}
    .hybrid-input input.clearable-input{padding-right:72px}
    body.focus-mode main, body.drawer-open main, body.drawer-open .bottom-area{filter:blur(4px);transition:filter .18s ease;}
    body.focus-mode .app-header{filter:blur(2px);transition:filter .18s ease;}
    body.focus-mode .bottom-area{z-index:160}
    .filter-window:before{content:"Applied Filters";display:block;color:#f8d58e;font-size:.64rem;font-weight:950;letter-spacing:.08em;margin:0 0 5px 3px;text-transform:uppercase}
    .filter-window:empty:before{display:none}
    .filter-window .chip{background:linear-gradient(180deg,#8a3e52,#5b1b2b);border-color:#ffd67a;color:#fff;box-shadow:0 0 10px rgba(241,190,105,.12)}
    .suggestion.match-start{color:#fff7e2}
    .suggestions{border-color:rgba(241,190,105,.55)}

  
    /* WineStack v8 — official branded application treatment */
    :root{
      --bg:#120407;
      --bg2:#1d070d;
      --panel:#211015;
      --panel2:#2e111a;
      --card:#241116;
      --card2:#33141e;
      --burg:#521326;
      --burg2:#711d35;
      --burg3:#8e2f49;
      --brass-shadow:#784312;
      --brass-dark:#9a5c1c;
      --brass-mid:#c48635;
      --brass-light:#efcf83;
      --gold:#d6ad60;
      --ink:#f5eeee;
      --muted:#b9afb1;
      --subtle:#8f8185;
      --line:#5b3540;
      --chip:#4d1c2d;
      color-scheme:dark;
    }

    html{
      min-height:100%;
      min-height:-webkit-fill-available;
      background:#120407!important;
      overscroll-behavior-y:none;
    }
    body{
      min-height:100vh;
      min-height:100dvh;
      min-height:-webkit-fill-available;
      background:#120407!important;
      overscroll-behavior-y:none;
      position:relative;
      isolation:isolate;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      z-index:-1;
      pointer-events:none;
      background:
        linear-gradient(rgba(18,4,7,.34),rgba(18,4,7,.44)),
        url("../assets/winestack-backsplash.jpg") center 43% / cover no-repeat;
      opacity:0;
      animation:backsplashFade 2.15s ease 2.65s forwards;
    }

    .app-header{
      animation:none!important;
      background:
        linear-gradient(180deg,rgba(48,8,18,.98),rgba(24,3,8,.98))!important;
      border-bottom:1px solid rgba(214,173,96,.36);
      box-shadow:0 4px 18px rgba(0,0,0,.55),inset 0 -1px rgba(239,207,131,.08);
      padding:calc(5px + var(--safe-top)) 10px 6px!important;
    }
    main{animation:none!important;position:relative;z-index:1;min-height:calc(100dvh - 115px);}
    .header-grid{
      grid-template-columns:92px minmax(0,1fr) 96px!important;
      min-height:61px;
      align-items:center!important;
    }
    .brand-block{width:92px!important;justify-self:start!important;}
    .restaurant-block{justify-self:center!important;}
    .header-logo{
      display:block;
      opacity:0;
      object-fit:contain;
      will-change:filter,opacity;
      animation:
        brandLogoFade 2.15s ease 2.65s forwards,
        logoBrassShimmer 7.6s ease-in-out 4.9s infinite;
    }
    .winestack-header-logo{width:82px;height:58px;margin:0 auto;}
    .restaurant-logo{width:68px!important;height:58px;margin:0 auto!important;}
    .brand-name,.restaurant-name,.wstack-mark{display:none!important;}
    .search-count-block{width:96px!important;}
    .search-label{
      font-size:.82rem!important;
      line-height:1.05;
      letter-spacing:.015em;
      color:#f5edea!important;
      margin-bottom:4px!important;
    }
    .count-pill{
      font-size:.78rem!important;
      color:#fff!important;
      background:linear-gradient(180deg,rgba(113,29,53,.75),rgba(67,13,28,.82))!important;
      border:1px solid rgba(214,173,96,.48)!important;
      box-shadow:inset 0 1px rgba(239,207,131,.12),0 3px 9px rgba(0,0,0,.28);
    }

    .landing-copy{
      max-width:760px;
      margin:11px auto 9px!important;
      padding:4px 14px!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
      text-align:center;
      color:#bcb5b7!important;
      font-size:.88rem!important;
      line-height:1.38!important;
      font-weight:650!important;
      opacity:0;
      animation:instructionsFade 2.15s ease 6.65s forwards;
      text-shadow:0 2px 8px rgba(0,0,0,.72);
    }
    .landing-copy.hidden{display:none;}
    .result-meta:empty,.results:empty{display:none;}

    /* Slow opening sequence: controls first, logos/background, general text, instructions last. */
    .bottom-area{
      animation:controlsFloatDown 2.65s cubic-bezier(.16,1,.3,1) both!important;
    }
    .box-label,.id-field label,.dock-btn,.apply-btn,.search-label,.count-pill,
    .clear-input,.drawer-title,.small-btn,.x-btn,.field label,.hybrid label,
    .range-title,.section-title{
      opacity:0;
      animation:interfaceTextFade 1.95s ease 4.85s forwards;
    }
    input::placeholder{
      opacity:0;
      animation:placeholderFade 1.95s ease 4.85s forwards;
    }

    /* Cohesive burgundy + reflective brass palette */
    .dock-inner,.filter-window,.drawer{
      background:linear-gradient(180deg,rgba(34,12,19,.985),rgba(18,5,9,.99)) padding-box,
                 linear-gradient(115deg,var(--brass-shadow),var(--brass-light),var(--brass-dark),#e2ae54,var(--brass-shadow)) border-box!important;
      border:1px solid transparent!important;
      background-size:auto,260% 260%!important;
      animation:brassSurfaceShimmer 10s ease-in-out infinite!important;
      box-shadow:0 -10px 38px rgba(0,0,0,.62),inset 0 1px rgba(239,207,131,.08)!important;
    }
    .wine-card{
      background:linear-gradient(180deg,rgba(50,20,29,.97),rgba(29,11,17,.98)) padding-box,
                 linear-gradient(125deg,#6e3a10,#e3b761,#9c5c1c,#f0d58c,#75400f) border-box!important;
      background-size:auto,280% 280%!important;
      border:1px solid transparent!important;
      animation:brassSurfaceShimmer 11.5s ease-in-out infinite!important;
      box-shadow:0 12px 28px rgba(0,0,0,.52),inset 0 1px rgba(239,207,131,.05)!important;
    }
    .mini{
      background:linear-gradient(180deg,#77213a,#4c1024)!important;
      border-color:#d4a85b!important;
      box-shadow:inset 0 1px rgba(245,219,157,.16),inset 0 -6px 16px rgba(40,4,12,.24)!important;
    }
    .mini-label{color:#efd190!important;}
    .main-search,.id-field input,.hybrid-input input,.range-inputs input,input[type=number],select{
      background:linear-gradient(#18080d,#18080d) padding-box,
                 linear-gradient(110deg,#6f3d12,#e8c574,#9b5d20,#f2d997,#75400f) border-box!important;
      background-size:auto,260% 260%!important;
      border:1px solid transparent!important;
      animation:brassSurfaceShimmer 10.5s ease-in-out infinite!important;
      box-shadow:inset 0 2px 10px rgba(0,0,0,.34),0 3px 10px rgba(0,0,0,.20);
    }
    .dock-btn,.apply-btn,.drop-btn,.small-btn,.x-btn,.subdrawer-btn{
      background:linear-gradient(180deg,#351521,#211017) padding-box,
                 linear-gradient(110deg,#704012,#e7c06b,#9c5b1d,#f0d58c,#77410f) border-box!important;
      background-size:auto,260% 260%!important;
      border:1px solid transparent!important;
      animation:brassSurfaceShimmer 10s ease-in-out infinite!important;
      box-shadow:inset 0 1px rgba(244,214,145,.10),0 3px 10px rgba(0,0,0,.23);
    }
    .apply-btn,.done{
      background:linear-gradient(180deg,#8c2948,#5b142c) padding-box,
                 linear-gradient(110deg,#75410f,#f0d087,#a46120,#efc76f,#75410f) border-box!important;
    }
    .dock-btn.reset,.reset-small{
      background:linear-gradient(180deg,#211016,#15080c) padding-box,
                 linear-gradient(110deg,#5c3210,#bd8137,#76420f) border-box!important;
      color:#e7d9dc!important;
    }
    .tag.grape{background:#5b1c31!important;color:#fff0e8!important;}
    .tag{background:#321820!important;color:#eee5e7!important;}
    .bubble.active{background:#7d2441!important;border-color:#d3a054!important;}
    .range-fill{background:linear-gradient(90deg,#925219,#e1b45d,#a86825)!important;}
    .range-wrap input[type=range]::-webkit-slider-thumb{
      background:linear-gradient(145deg,#efcf83,#9b5b1e)!important;
      border-color:#f7e4b8!important;
    }
    .filter-window .chip{
      background:linear-gradient(180deg,#7a2441,#501328)!important;
      border-color:#ddb86f!important;
      color:#fff!important;
    }
    .filter-window .chip button{background:#9b3c59!important;}

    /* Prevent any uncovered white viewport/safe-area region. */
    .bottom-area{
      background:linear-gradient(180deg,rgba(18,4,7,0) 0%,rgba(18,4,7,.94) 14%,#120407 38%)!important;
      padding-bottom:calc(10px + max(var(--safe-bottom),16px))!important;
    }
    .bottom-area::after{
      content:"";
      position:absolute;
      left:0;right:0;top:100%;
      height:120px;
      background:#120407;
    }

    .dock-btn,.apply-btn,.small-btn,.x-btn{
      opacity:0;
      animation:
        interfaceTextFade 1.95s ease 4.85s forwards,
        brassSurfaceShimmer 10s ease-in-out 6.8s infinite!important;
    }

    @keyframes controlsFloatDown{
      0%{transform:translateY(-125vh);opacity:1}
      78%{transform:translateY(10px);opacity:1}
      100%{transform:translateY(0);opacity:1}
    }
    @keyframes backsplashFade{
      from{opacity:0}
      to{opacity:.72}
    }
    @keyframes brandLogoFade{
      from{opacity:0}
      to{opacity:1}
    }
    @keyframes interfaceTextFade{
      from{opacity:0}
      to{opacity:1}
    }
    @keyframes placeholderFade{
      from{opacity:0}
      to{opacity:1}
    }
    @keyframes instructionsFade{
      from{opacity:0;transform:translateY(8px)}
      to{opacity:1;transform:translateY(0)}
    }
    @keyframes brassSurfaceShimmer{
      0%{background-position:0 0,0% 50%;filter:brightness(.96)}
      45%{background-position:0 0,100% 50%;filter:brightness(1.035)}
      100%{background-position:0 0,0% 50%;filter:brightness(.96)}
    }
    @keyframes logoBrassShimmer{
      0%,100%{filter:drop-shadow(0 3px 5px rgba(0,0,0,.52)) brightness(.91) contrast(1.05)}
      48%{filter:drop-shadow(0 4px 9px rgba(183,105,28,.42)) brightness(1.17) contrast(1.09)}
      62%{filter:drop-shadow(0 3px 7px rgba(239,197,107,.30)) brightness(1.02) contrast(1.07)}
    }

    @media (max-width:430px){
      .header-grid{grid-template-columns:84px minmax(0,1fr) 90px!important;}
      .brand-block{width:84px!important;}
      .winestack-header-logo{width:76px;height:54px;}
      .restaurant-logo{width:62px!important;height:54px;}
      .search-count-block{width:90px!important;}
      .search-label{font-size:.76rem!important;}
    }

  
    /* WineStack v9 — launch choreography and interaction repairs */
    body::before{
      animation:backsplashFade 2.15s ease 0s forwards!important;
    }
    .bottom-area{
      animation:controlsFloatUp 2.65s cubic-bezier(.16,1,.3,1) both!important;
    }
    .header-logo{
      animation:brandLogoFade 2.15s ease 2.65s forwards,logoBrassShimmer 7.6s ease-in-out 4.8s infinite!important;
    }
    .box-label,.id-field label,.dock-btn,.apply-btn,
    .clear-input,.drawer-title,.small-btn,.x-btn,.field label,.hybrid label,
    .range-title,.section-title,.venue-name{
      animation:interfaceTextFade 2.15s ease 2.65s forwards!important;
    }
    input::placeholder{
      animation:placeholderFade 2.15s ease 2.65s forwards!important;
    }
    .landing-copy{
      animation:instructionsFade 2.15s ease 2.65s forwards!important;
    }

    .header-grid{
      grid-template-columns:88px minmax(0,1fr) 132px!important;
    }
    .venue-block{
      justify-self:end;
      width:132px;
      text-align:right;
      min-width:0;
    }
    .venue-name{
      color:#ead9d5;
      font-size:.69rem;
      line-height:1.16;
      font-weight:850;
      letter-spacing:.015em;
      text-wrap:balance;
      text-shadow:0 2px 8px rgba(0,0,0,.72);
      opacity:0;
    }
    .search-count-block,.search-label,.count-pill{display:none!important;}

    /* iOS: 16px prevents automatic input zoom. */
    input,select,textarea,
    .main-search,.id-field input,.hybrid-input input,.range-inputs input,input[type=number]{
      font-size:16px!important;
      touch-action:manipulation;
    }

    /* Drawers must always sit above the blurred application surface. */
    .backdrop{z-index:980!important;}
    .drawer{
      z-index:1000!important;
      visibility:hidden;
      opacity:0;
      pointer-events:none;
      display:block!important;
      transform:translateY(104%);
      transition:transform .24s ease,opacity .2s ease,visibility 0s linear .24s;
    }
    .drawer.open{
      visibility:visible;
      opacity:1;
      pointer-events:auto;
      transform:translateY(0);
      transition:transform .24s ease,opacity .2s ease,visibility 0s;
    }
    body.drawer-open main,body.drawer-open .app-header,body.drawer-open .bottom-area{
      filter:blur(4px)!important;
      pointer-events:none;
    }
    body.focus-mode .bottom-area{z-index:90!important;}
    body.drawer-open .bottom-area{z-index:90!important;}

    @keyframes controlsFloatUp{
      0%{transform:translateY(calc(100% + 34px));opacity:1}
      78%{transform:translateY(-7px);opacity:1}
      100%{transform:translateY(0);opacity:1}
    }

    @media(max-width:430px){
      .header-grid{grid-template-columns:80px minmax(0,1fr) 124px!important;}
      .venue-block{width:124px;}
      .venue-name{font-size:.65rem;line-height:1.14;}
    }

  

    /* WineStack v10 — contextual active-control brass shimmer */
    .search-wrap,.hybrid-input,.dock-btn,.drawer{isolation:isolate;}
    .search-wrap{border-radius:18px;}
    .hybrid-input{border-radius:13px;}

    .search-wrap.search-engaged::after,
    .hybrid-input.search-engaged::after,
    .dock-btn.active-filter::after,
    .drawer.active-filter::after{
      content:"";
      position:absolute;
      inset:-2px;
      border-radius:inherit;
      padding:2px;
      pointer-events:none;
      z-index:12;
      background:linear-gradient(105deg,
        #6b350c 0%,
        #a9631f 18%,
        #f3d68c 34%,
        #c57a28 47%,
        #7f410f 61%,
        #efbd61 77%,
        #6b350c 100%);
      background-size:320% 100%;
      -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
      -webkit-mask-composite:xor;
      mask-composite:exclude;
      filter:drop-shadow(0 0 5px rgba(222,153,57,.55)) drop-shadow(0 0 10px rgba(114,57,13,.35));
      animation:activeBrassBorderSweep 1.8s linear infinite;
    }

    .dock-btn.active-filter{
      color:#fff8e8!important;
      box-shadow:
        inset 0 1px rgba(255,232,176,.18),
        0 0 0 1px rgba(221,163,73,.24),
        0 0 14px rgba(160,83,22,.30)!important;
    }

    .drawer.active-filter::after{
      inset:0;
      border-radius:24px 24px 0 0;
      padding:2px 2px 0;
      z-index:220;
    }

    @keyframes activeBrassBorderSweep{
      0%{background-position:150% 50%;filter:drop-shadow(0 0 4px rgba(222,153,57,.40)) drop-shadow(0 0 8px rgba(114,57,13,.28));}
      50%{filter:drop-shadow(0 0 7px rgba(243,190,89,.72)) drop-shadow(0 0 13px rgba(155,78,18,.42));}
      100%{background-position:-150% 50%;filter:drop-shadow(0 0 4px rgba(222,153,57,.40)) drop-shadow(0 0 8px rgba(114,57,13,.28));}
    }

  
    /* WineStack v11 — drawer compositor repair, header balance, slower shimmer */

    .header-grid{
      grid-template-columns:92px minmax(0,1fr) 92px!important;
      gap:8px!important;
    }
    .venue-block{
      width:92px!important;
      min-width:92px!important;
      justify-self:end!important;
      align-self:center;
      text-align:right!important;
    }
    .venue-name{
      display:flex;
      flex-direction:column;
      align-items:flex-end;
      justify-content:center;
      gap:1px;
      width:100%;
      color:#ead9d5!important;
      font-size:.61rem!important;
      line-height:1.07!important;
      font-weight:820!important;
      letter-spacing:.012em!important;
      text-align:right!important;
    }
    .venue-name span{
      display:block;
      width:100%;
      white-space:nowrap;
      text-align:right;
    }

    /* Use the overlay itself for Gaussian blur. Direct CSS filters on fixed
       siblings can cause WebKit to composite the drawer underneath them. */
    body.drawer-open main,
    body.drawer-open .app-header,
    body.drawer-open .bottom-area,
    html.drawer-open main,
    html.drawer-open .app-header,
    html.drawer-open .bottom-area{
      filter:none!important;
      -webkit-filter:none!important;
    }

    #backdrop.backdrop{
      position:fixed!important;
      inset:0!important;
      display:block!important;
      visibility:hidden;
      opacity:0;
      pointer-events:none;
      z-index:2147483000!important;
      background:rgba(10,2,5,.50)!important;
      -webkit-backdrop-filter:blur(7px) saturate(.82)!important;
      backdrop-filter:blur(7px) saturate(.82)!important;
      transition:opacity .24s ease,visibility 0s linear .24s!important;
      transform:translateZ(0);
      -webkit-transform:translateZ(0);
    }
    #backdrop.backdrop.open{
      visibility:visible!important;
      opacity:1!important;
      pointer-events:auto!important;
      transition:opacity .24s ease,visibility 0s!important;
    }

    section.drawer{
      position:fixed!important;
      left:0!important;
      right:0!important;
      top:auto!important;
      bottom:0!important;
      display:block!important;
      visibility:hidden;
      opacity:0;
      pointer-events:none;
      z-index:2147483600!important;
      max-height:min(86dvh,770px)!important;
      transform:translate3d(0,110%,0)!important;
      -webkit-transform:translate3d(0,110%,0)!important;
      transition:
        transform .32s cubic-bezier(.22,.82,.29,1),
        opacity .22s ease,
        visibility 0s linear .32s!important;
      will-change:transform,opacity;
      backface-visibility:hidden;
      -webkit-backface-visibility:hidden;
      isolation:auto!important;
      filter:none!important;
      -webkit-filter:none!important;
      animation:none!important;
      overflow:hidden;
    }
    section.drawer.open{
      visibility:visible!important;
      opacity:1!important;
      pointer-events:auto!important;
      transform:translate3d(0,0,0)!important;
      -webkit-transform:translate3d(0,0,0)!important;
      transition:
        transform .32s cubic-bezier(.22,.82,.29,1),
        opacity .22s ease,
        visibility 0s!important;
    }
    section.drawer .drawer-body{
      max-height:calc(86dvh - 78px - var(--safe-bottom))!important;
      overflow-y:auto!important;
      overscroll-behavior:contain;
      -webkit-overflow-scrolling:touch;
    }

    /* Slow the contextual active search/filter shimmer dramatically. */
    .search-wrap.search-engaged::after,
    .hybrid-input.search-engaged::after,
    .dock-btn.active-filter::after,
    .drawer.active-filter::after{
      animation-duration:14s!important;
      animation-timing-function:linear!important;
    }

    @media(max-width:430px){
      .header-grid{
        grid-template-columns:84px minmax(0,1fr) 84px!important;
        gap:6px!important;
      }
      .brand-block{width:84px!important;}
      .venue-block{
        width:84px!important;
        min-width:84px!important;
      }
      .venue-name{
        font-size:.56rem!important;
        line-height:1.06!important;
      }
    }

  
    /* WineStack v12 — locked redesign implementation */
    :root{
      --v12-black:#080707;
      --v12-charcoal:#171414;
      --v12-oxblood:#17070c;
      --v12-burgundy:#4b0f22;
      --v12-burgundy-mid:#6e1530;
      --v12-burgundy-bright:#92254b;
      --v12-bronze:#6f4218;
      --v12-brass:#c68b35;
      --v12-brass-light:#efcf83;
      --v12-grey:#b8afb1;
    }
    html,body{background:#120407!important;}
    body{padding-bottom:calc(390px + var(--safe-bottom))!important;}

    /* Header: opaque, centered, dual-line brass divider, launch swap. */
    .app-header{
      min-height:calc(112px + var(--safe-top));
      padding:calc(5px + var(--safe-top)) 12px 8px!important;
      display:flex;align-items:flex-end;justify-content:center;
      background:linear-gradient(180deg,#310814 0%,#21050d 100%)!important;
      border:0!important;box-shadow:0 5px 18px rgba(0,0,0,.55)!important;
      overflow:hidden;
    }
    .app-header::before,.app-header::after{content:"";position:absolute;left:0;right:0;bottom:0;pointer-events:none;}
    .app-header::before{height:3px;background:#3d250f;box-shadow:0 -1px rgba(0,0,0,.6);}
    .app-header::after{bottom:3px;height:1px;background:linear-gradient(90deg,#79501f,#edc575,#8a591d);box-shadow:0 0 7px rgba(220,159,61,.35);}
    .brand-stage-wrap{width:100%;display:flex;justify-content:center;align-items:flex-end;}
    .brand-stage{position:relative;width:min(310px,76vw);height:94px;padding:0;background:transparent;color:inherit;border:0;overflow:hidden;opacity:0;animation:brandStageFade 2.15s ease 2.65s forwards!important;}
    .brand-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transform:scale(.96);transition:opacity .34s ease,transform .5s cubic-bezier(.2,.8,.2,1);pointer-events:none;}
    .brand-face.is-active{opacity:1;transform:scale(1);}
    .brand-ws-image{width:112px;height:90px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.55));}
    .brand-eagle-image{width:92px;height:68px;object-fit:contain;margin-top:-3px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.55));}
    .brand-eagle-caption{display:block;margin-top:-2px;white-space:nowrap;color:#d9a953;font-family:Georgia,"Times New Roman",serif;font-size:.83rem;letter-spacing:.035em;text-shadow:0 1px 1px #000,0 0 7px rgba(205,137,44,.20);}
    .brand-sun-flare{position:absolute;top:-20%;bottom:-20%;left:-35%;width:26%;opacity:0;pointer-events:none;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,220,142,.14),rgba(255,244,205,.98),rgba(232,158,52,.45),transparent);filter:blur(2px) drop-shadow(0 0 12px rgba(255,194,77,.75));}
    .brand-stage.flare-active .brand-sun-flare{animation:sunFlareSweep 1.05s cubic-bezier(.22,.7,.2,1);}
    @keyframes brandStageFade{from{opacity:0}to{opacity:1}}
    @keyframes sunFlareSweep{0%{left:-35%;opacity:0}16%{opacity:.8}52%{opacity:1}100%{left:118%;opacity:0}}

    .landing-copy{margin:7px auto 0!important;padding:0 18px!important;max-width:760px;color:#aaa1a4!important;font-size:.78rem!important;line-height:1.28!important;font-weight:550!important;text-align:center!important;opacity:0;animation:instructionsFade 2.15s ease 2.65s forwards!important;text-shadow:0 2px 7px rgba(0,0,0,.68);}
    .landing-copy.hidden,.landing-tagline.hidden{display:none!important;}
    .landing-tagline{max-width:920px;margin:0 auto 6px;text-align:center;color:#b97527;font-family:Georgia,"Times New Roman",serif;font-size:.91rem;line-height:1;letter-spacing:.035em;text-shadow:0 0 1px #f1c16f,0 2px 8px rgba(0,0,0,.78);background:linear-gradient(90deg,#6c3d10,#db9d43,#7c4815);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:0;animation:interfaceTextFade 2.15s ease 2.65s forwards!important;}

    /* Primary Window */
    .bottom-area{padding:6px 9px calc(9px + var(--safe-bottom))!important;background:linear-gradient(180deg,transparent 0%,rgba(18,4,7,.9) 8%,#120407 22%)!important;}
    .primary-window{max-width:920px!important;padding:12px!important;border-radius:25px!important;background:linear-gradient(180deg,#111010,#080808) padding-box,linear-gradient(120deg,#6a3c14,#f0d083,#9a5c1f,#d69b43,#5f3510) border-box!important;border:3px solid transparent!important;box-shadow:0 -22px 42px rgba(0,0,0,.76),inset 0 0 0 1px #2c1d10,inset 0 2px rgba(255,226,164,.12)!important;animation:none!important;}
    .primary-control-grid{display:grid;grid-template-columns:minmax(0,1fr) 126px;gap:10px;align-items:stretch;}
    .primary-fields{display:grid;gap:9px;min-width:0;}
    .primary-actions{display:grid;grid-template-rows:1fr 1fr;gap:9px;}
    .primary-actions .apply-btn,.primary-reset{min-height:68px;border-radius:18px;border:1px solid transparent;font-size:1.05rem;font-weight:950;color:#fff;}
    .primary-actions .apply-btn{background:linear-gradient(180deg,#9a2850,#65152f) padding-box,linear-gradient(120deg,#8c551c,#f3d486,#8d511b) border-box!important;}
    .primary-reset{background:linear-gradient(180deg,#201c1d,#111011) padding-box,linear-gradient(120deg,#724415,#e9c472,#764515) border-box;box-shadow:inset 0 1px rgba(255,255,255,.05);}
    .main-search,.id-field input{background:#110b0d!important;border:1px solid #81511e!important;box-shadow:inset 0 2px 11px rgba(0,0,0,.45)!important;}
    .main-search{min-height:68px!important;border-radius:18px!important;padding-top:21px!important;font-size:16px!important;}
    .id-row{margin-top:0!important;gap:9px!important;}
    .id-field input{min-height:54px!important;border-radius:16px!important;padding-top:18px!important;}
    .box-label,.id-field label{color:#dcac58!important;font-size:.66rem!important;letter-spacing:.12em!important;}
    .dock-actions{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;margin-top:10px!important;}
    .dock-btn{position:relative;min-height:92px!important;border-radius:19px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:linear-gradient(180deg,#581326,#220b12) padding-box,linear-gradient(120deg,#704014,#e7c36f,#714014) border-box!important;border:1px solid transparent!important;color:#fff!important;font-size:.82rem!important;box-shadow:inset 0 1px rgba(255,232,183,.08),0 5px 14px rgba(0,0,0,.36)!important;}
    .drawer-icon{width:31px;height:31px;display:block;color:#c99538;}
    .drawer-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
    .drawer-icon svg circle{fill:currentColor;stroke:none;}
    .filter-window{margin-top:10px!important;max-height:82px!important;min-height:0;border-radius:18px!important;padding:9px!important;background:#100c0d!important;border:1px solid #6a451c!important;box-shadow:inset 0 2px 10px rgba(0,0,0,.38)!important;}
    .filter-window:not(:empty)::before{font-size:.66rem!important;color:#dcac58!important;}

    /* Drawer surfaces and header controls */
    section.drawer{background:linear-gradient(180deg,#171414,#090909) padding-box,linear-gradient(120deg,#734214,#edc879,#744216) border-box!important;border:2px solid transparent!important;border-bottom:0!important;border-radius:28px 28px 0 0!important;padding:9px 13px calc(14px + var(--safe-bottom))!important;box-shadow:0 -18px 46px rgba(0,0,0,.70),inset 0 1px rgba(255,231,180,.08)!important;}
    .drawer-title{font-family:Georgia,"Times New Roman",serif;color:#d9a852!important;font-size:1.38rem!important;font-weight:650!important;}
    .drawer-head{margin-bottom:14px!important;}
    .head-actions{gap:8px!important;}
    .small-btn,.x-btn{opacity:1!important;animation:none!important;}
    .reset-small{min-width:72px!important;background:linear-gradient(180deg,#211d1e,#0d0c0c) padding-box,linear-gradient(120deg,#704015,#e5bf68,#704015) border-box!important;border:1px solid transparent!important;color:#fff!important;}
    .done{min-width:80px!important;background:linear-gradient(180deg,#96274d,#61142e) padding-box,linear-gradient(120deg,#875019,#efcf81,#875019) border-box!important;border:1px solid transparent!important;color:#fff!important;}
    .x-btn{width:42px!important;min-height:42px!important;border:1px solid #b8792a!important;background:#151313!important;color:#fff!important;font-size:1.35rem!important;}
    .range-card{background:#0f0e0e!important;border:1px solid #754719!important;border-radius:19px!important;padding:13px!important;}
    .range-title,.range-inputs label,.section-title,.hybrid label{color:#d5a250!important;letter-spacing:.12em!important;}
    .range-current{color:#e1aa4d!important;}
    .range-inputs input{background:linear-gradient(180deg,#4b0e20,#22080f)!important;border:1px solid #a46c25!important;border-radius:15px!important;color:#fff!important;font-weight:700;}

    /* Precision sliders + exact marker lines */
    .precision-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none!important;appearance:none!important;width:31px!important;height:42px!important;border:0!important;border-radius:0!important;background:linear-gradient(145deg,#f4d88c,#a45f18)!important;clip-path:polygon(50% 100%,0 12%,12% 0,88% 0,100% 12%)!important;box-shadow:0 2px 5px rgba(0,0,0,.7)!important;}
    .precision-range input[type=range]::-moz-range-thumb{width:31px!important;height:42px!important;border:0!important;border-radius:0!important;background:linear-gradient(145deg,#f4d88c,#a45f18)!important;clip-path:polygon(50% 100%,0 12%,12% 0,88% 0,100% 12%)!important;}
    .range-track{background:#3b181f!important;height:7px!important;top:18px!important;border:1px solid #6e4217;}
    .range-fill{background:linear-gradient(90deg,#5d0f28,#9b2450,#5d0f28)!important;height:7px!important;top:18px!important;}
    .markers{display:grid!important;align-items:start!important;margin-top:0!important;color:#c1b9bb!important;}
    .marker-price{grid-template-columns:repeat(11,1fr)!important;}
    .marker-high,.marker-vintage{grid-template-columns:repeat(6,1fr)!important;}
    .markers span{position:relative;display:flex!important;flex-direction:column;align-items:center;min-width:0;font-size:.57rem!important;font-weight:650;}
    .markers span:first-child{align-items:flex-start}.markers span:last-child{align-items:flex-end}
    .markers i{display:block;width:1px;height:13px;background:#ded8d7;margin-bottom:3px;box-shadow:0 0 2px rgba(255,255,255,.35);}
    .markers b{font-weight:650;white-space:nowrap;}

    /* Price drawers */
    .price-quick-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:9px!important;margin:2px auto 12px!important;}
    .price-quick-grid .bubble,.high-price-grid .bubble{min-height:50px!important;border-radius:16px!important;background:linear-gradient(180deg,#5a1126,#260911)!important;border:1px solid #b07325!important;color:#fff!important;font-size:.78rem!important;}
    .subdrawer-btn,.back-sub{display:flex!important;align-items:center;justify-content:center;gap:10px;min-height:52px!important;width:100%;border-radius:16px!important;background:linear-gradient(180deg,#242222,#151414) padding-box,linear-gradient(120deg,#6d4219,#c08a39,#6d4219) border-box!important;border:1px solid transparent!important;color:#d89a40!important;font-weight:800!important;animation:none!important;}
    .subdrawer-btn .nav-arrow{margin-left:auto}.back-sub .nav-arrow{margin-right:2px}
    .nav-arrow{width:23px;height:23px;fill:none;stroke:#dca34a;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
    .high-price-grid{display:grid!important;grid-template-columns:repeat(2,1fr);gap:9px!important;}
    .high-price-grid .bubble:last-child{grid-column:1/-1;}
    .back-sub{margin:12px 0!important;}

    /* Grape drawer */
    .grape-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;margin-top:10px;}
    .grape-quick{min-height:58px;border-radius:17px;background:#1b1013;border:1px solid #a86b23;color:#fff;display:flex;align-items:center;gap:11px;padding:8px 12px;text-align:left;font-size:.65rem;font-weight:750;letter-spacing:.01em;}
    .grape-quick.active{box-shadow:inset 0 0 0 2px rgba(239,207,131,.52),0 0 12px rgba(176,91,30,.28);background:#321019;}
    .quick-symbol{width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px;}
    .quick-symbol svg{width:100%;height:100%;fill:currentColor;stroke:currentColor;stroke-width:.6;}
    .icon-cabernet-sauvignon{color:#6E1F3B}.icon-malbec{color:#713B78}.icon-merlot{color:#8A314A}.icon-pinot-noir{color:#A33B4A}.icon-zinfandel{color:#8F2945}.icon-chardonnay{color:#C8A84B}.icon-pinot-grigio{color:#B78A7A}.icon-rose{color:#C77D8D}.icon-sauvignon-blanc{color:#91A95C}.icon-sparkling{color:#E7DDC4}

    /* Region hybrids */
    .region-hybrid-grid{gap:13px!important;}
    .hybrid-input{grid-template-columns:minmax(0,1fr) 52px!important;gap:0!important;border:1px solid #8d5a20;border-radius:16px;overflow:visible;}
    .hybrid-input input{border:0!important;border-radius:15px 0 0 15px!important;background:#110b0d!important;min-height:54px!important;box-shadow:none!important;}
    .drop-btn{border:0!important;border-left:1px solid #8d5a20!important;border-radius:0 15px 15px 0!important;background:#241117!important;color:#e2ae58!important;min-height:54px!important;font-size:1.4rem;}
    .hybrid-options{position:relative;z-index:30;background:#151011!important;border-color:#87531d!important;}

    /* Vintage drawer */
    .vintage-check-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;}
    .vintage-check-grid .check-pill{min-height:47px!important;border-radius:13px!important;background:linear-gradient(180deg,#571126,#25090f)!important;border:1px solid #a86a22!important;color:#fff!important;font-size:.95rem!important;font-weight:950!important;gap:7px!important;padding:0 9px!important;}
    .vintage-check-grid .check-pill input{width:20px!important;height:20px!important;min-height:20px!important;accent-color:#a85a33!important;}
    .vintage-check-grid .check-pill:has(input:checked){box-shadow:inset 0 0 0 2px #d7a44c;background:linear-gradient(180deg,#7b1b39,#42101f)!important;}

    @media(max-width:430px){
      body{padding-bottom:calc(385px + var(--safe-bottom))!important;}
      .app-header{min-height:calc(106px + var(--safe-top));}
      .brand-stage{height:87px;width:min(294px,78vw)}
      .brand-ws-image{width:105px;height:84px}.brand-eagle-image{width:86px;height:62px}.brand-eagle-caption{font-size:.75rem}
      .primary-control-grid{grid-template-columns:minmax(0,1fr) 112px;gap:8px}.primary-actions .apply-btn,.primary-reset{min-height:62px;font-size:.95rem}
      .dock-btn{min-height:84px!important}.drawer-icon{width:28px;height:28px}
      .grape-quick{font-size:.61rem;padding:8px}.quick-symbol{width:27px;height:27px;flex-basis:27px}
      .vintage-check-grid .check-pill{font-size:.86rem!important;padding:0 6px!important;gap:5px!important;}
      .vintage-check-grid .check-pill input{width:18px!important;height:18px!important;}
    }
    @media(prefers-reduced-motion:reduce){
      .brand-stage.flare-active .brand-sun-flare{animation:none!important;display:none!important}.brand-face{transition:opacity .25s ease!important;}
    }

  
    /* WineStack v12.1 visual QA corrections */
    input::placeholder{opacity:1!important;color:#8f8588!important;animation:none!important;}
    .drawer-icon svg circle{fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;}
    .dock-btn[data-open="grape"] .drawer-icon svg circle{fill:currentColor!important;stroke:none!important;}
    .grape-quick-grid .grape-quick:nth-child(1){grid-column:1;grid-row:1}
    .grape-quick-grid .grape-quick:nth-child(2){grid-column:1;grid-row:2}
    .grape-quick-grid .grape-quick:nth-child(3){grid-column:1;grid-row:3}
    .grape-quick-grid .grape-quick:nth-child(4){grid-column:1;grid-row:4}
    .grape-quick-grid .grape-quick:nth-child(5){grid-column:1;grid-row:5}
    .grape-quick-grid .grape-quick:nth-child(6){grid-column:2;grid-row:1}
    .grape-quick-grid .grape-quick:nth-child(7){grid-column:2;grid-row:2}
    .grape-quick-grid .grape-quick:nth-child(8){grid-column:2;grid-row:3}
    .grape-quick-grid .grape-quick:nth-child(9){grid-column:2;grid-row:4}
    .grape-quick-grid .grape-quick:nth-child(10){grid-column:2;grid-row:5}

    /* WineStack v13 staging — locked compact Primary Window + copper-brass system */
    :root{--metal-shadow:#54230f;--metal-dark:#783515;--metal-mid:#a95320;--metal-warm:#c97931;--metal-bright:#eead65;--metal-specular:#ffe0a1;--metal-gradient:linear-gradient(135deg,#54230f 0%,#a95320 24%,#eead65 43%,#ffe0a1 50%,#c97931 58%,#783515 78%,#b96226 100%)}
    body{padding-bottom:calc(238px + var(--safe-bottom))!important}
    .app-header{min-height:calc(96px + var(--safe-top))!important;padding:calc(4px + var(--safe-top)) 10px 7px!important;background:radial-gradient(ellipse at 50% 42%,#571529 0%,#350b19 42%,#19060d 100%)!important}
    .app-header::before{height:3px!important;background:var(--metal-dark)!important}.app-header::after{bottom:3px!important;background:linear-gradient(90deg,var(--metal-shadow),var(--metal-bright),var(--metal-specular),var(--metal-warm),var(--metal-shadow))!important}
    .brand-stage{height:86px!important;width:min(286px,76vw)!important}.brand-ws-image{width:96px!important;height:76px!important}.brand-eagle-image{width:96px!important;height:80px!important;object-fit:cover!important;object-position:center!important;margin-top:-5px!important;mix-blend-mode:lighten}.brand-eagle-caption{margin-top:-1px!important;color:var(--metal-bright)!important;font-size:.56rem!important;line-height:1!important;letter-spacing:.08em!important;text-transform:uppercase}
    .landing-copy{margin-top:6px!important;padding:0 14px!important;font-size:.74rem!important;line-height:1.25!important}.landing-tagline{margin-bottom:4px!important;font-size:.84rem!important;background:linear-gradient(90deg,var(--metal-dark),var(--metal-bright),var(--metal-specular),var(--metal-mid))!important;-webkit-background-clip:text!important;background-clip:text!important}.bottom-area{padding:4px 8px calc(7px + var(--safe-bottom))!important;background:linear-gradient(180deg,transparent 0%,rgba(18,4,7,.94) 7%,#120407 20%)!important}
    .primary-window{padding:8px!important;border-width:2px!important;border-radius:19px!important;background:linear-gradient(180deg,#111010,#080808) padding-box,var(--metal-gradient) border-box!important;box-shadow:0 -14px 30px rgba(0,0,0,.7),inset 0 0 0 1px #2c160d,inset 0 1px rgba(255,224,161,.12)!important}
    .primary-control-grid{grid-template-columns:minmax(0,1fr) 88px!important;gap:6px!important}.primary-fields,.primary-actions{gap:6px!important}.primary-actions{grid-template-rows:44px 44px!important}.primary-actions .apply-btn,.primary-reset{min-height:44px!important;height:44px!important;border-radius:12px!important;font-size:.84rem!important}.primary-actions .apply-btn{background:linear-gradient(180deg,#8a2348,#571329) padding-box,var(--metal-gradient) border-box!important}.primary-reset{background:linear-gradient(180deg,#211e1f,#0d0c0c) padding-box,var(--metal-gradient) border-box!important}
    .main-search,.id-field input{min-height:44px!important;height:44px!important;border-radius:12px!important;border-color:var(--metal-mid)!important}.main-search{padding:15px 34px 4px 9px!important}.id-row{gap:6px!important}.id-field input{padding:15px 30px 4px 9px!important;font-size:16px!important}.box-label,.id-field label{left:9px!important;top:4px!important;font-size:.56rem!important;letter-spacing:.09em!important;color:var(--metal-bright)!important}.clear-input{width:21px!important;height:21px!important;min-height:21px!important;right:7px!important}
    .dock-actions{gap:6px!important;margin-top:6px!important}.dock-btn{min-height:48px!important;height:48px!important;border-radius:12px!important;gap:2px!important;padding:3px 2px!important;font-size:.68rem!important;background:linear-gradient(180deg,#501123,#210a11) padding-box,var(--metal-gradient) border-box!important}.drawer-icon{width:19px!important;height:19px!important;color:var(--metal-warm)!important}
    .filter-window,.filter-window:empty{display:block!important;margin-top:6px!important;min-height:27px!important;max-height:56px!important;padding:5px 7px!important;border-radius:11px!important;border-color:var(--metal-mid)!important}.filter-window::before,.filter-window:empty::before{content:"Applied Filters"!important;display:block!important;margin:0!important;text-align:center!important;color:var(--metal-bright)!important;font-size:.56rem!important;line-height:15px!important;letter-spacing:.11em!important}.filter-window:not(:empty)::before{margin-bottom:3px!important}.filter-window .chip{padding:4px 7px!important;font-size:.7rem!important}
    @media(max-width:430px){body{padding-bottom:calc(238px + var(--safe-bottom))!important}.app-header{min-height:calc(102px + var(--safe-top))!important}.brand-stage{height:86px!important;width:min(286px,76vw)!important}.brand-ws-image{width:96px!important;height:76px!important}.brand-eagle-image{width:96px!important;height:80px!important}.primary-control-grid{grid-template-columns:minmax(0,1fr) 88px!important;gap:6px!important}.primary-actions .apply-btn,.primary-reset{min-height:44px!important;height:44px!important;font-size:.84rem!important}.dock-btn{min-height:48px!important;height:48px!important}.drawer-icon{width:19px!important;height:19px!important}}

    /* WineStack v14 staging — quieter luxury palette and legibility pass */
    :root{
      --v14-champagne:#d8c39b;
      --v14-champagne-soft:#bca77f;
      --v14-warm-ivory:#ded6d0;
      --v14-warm-grey:#b7ada9;
      --v14-oxblood:#471322;
      --v14-oxblood-dark:#250b13;
      --v14-metal:linear-gradient(135deg,#4a3526 0%,#96734d 28%,#d8c39b 47%,#f0dfbd 52%,#b48a58 66%,#5e4430 100%);
    }
    .brand-eagle-image{object-fit:contain!important;mix-blend-mode:normal!important;filter:drop-shadow(0 3px 5px rgba(0,0,0,.58))!important}
    .brand-eagle-caption{color:var(--v14-champagne)!important;text-shadow:0 1px 1px #000!important}
    .primary-window{background:linear-gradient(180deg,#111010,#080808) padding-box,var(--v14-metal) border-box!important}
    .main-search,.id-field input{border-color:#806544!important;color:#d8d0cb!important}
    .box-label,.id-field label{color:var(--v14-champagne-soft)!important}
    .primary-actions .apply-btn{background:linear-gradient(180deg,var(--v14-oxblood),var(--v14-oxblood-dark)) padding-box,var(--v14-metal) border-box!important;color:var(--v14-warm-ivory)!important;text-shadow:0 1px 1px rgba(0,0,0,.65)!important}
    .primary-reset{background:linear-gradient(180deg,#1b1819,#0b0a0a) padding-box,var(--v14-metal) border-box!important;color:#d2cac6!important;text-shadow:none!important}
    .dock-btn{background:linear-gradient(180deg,#2d1119,#160b0f) padding-box,var(--v14-metal) border-box!important;color:#d8d0cb!important;text-shadow:none!important;font-weight:780!important}
    .drawer-icon{width:22px!important;height:22px!important;color:var(--v14-champagne)!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.7))}
    .dock-btn[data-open="price"] .drawer-icon{width:23px!important;height:23px!important}
    .dock-btn[data-open="vintage"] .drawer-icon{width:23px!important;height:23px!important}
    .filter-window,.filter-window:empty{border-color:#806544!important}
    .filter-window::before,.filter-window:empty::before{color:var(--v14-champagne-soft)!important}
    .drawer-title,.range-title,.range-inputs label,.section-title,.hybrid label{color:var(--v14-champagne-soft)!important}
    .small-btn,.x-btn,.bubble,.subdrawer-btn,.back-sub,.grape-quick,.check-pill{color:var(--v14-warm-ivory)!important;text-shadow:none!important}
    .done{background:linear-gradient(180deg,var(--v14-oxblood),var(--v14-oxblood-dark)) padding-box,var(--v14-metal) border-box!important}
    .reset-small,.x-btn{background:linear-gradient(180deg,#1d1a1a,#0c0b0b) padding-box,var(--v14-metal) border-box!important}
    @media(max-width:430px){.drawer-icon{width:22px!important;height:22px!important}.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:23px!important;height:23px!important}}

    /* WineStack v15 staging — continuous filter shelf */
    :root{
      --v15-burgundy:#4a1021;
      --v15-burgundy-deep:#260b14;
      --v15-beige:#d8c8ab;
      --v15-beige-muted:#b9aa91;
      --v15-charcoal:#111011;
      --v15-gold:#b6935d;
    }
    body{padding-bottom:calc(166px + var(--safe-bottom))!important}
    .brand-eagle-image{display:none!important}
    .brand-eagle-mark{display:block;width:88px;height:66px;margin-top:-2px;background:var(--v15-beige);-webkit-mask:url("../assets/double-eagle-header-logo.png") center/contain no-repeat;mask:url("../assets/double-eagle-header-logo.png") center/contain no-repeat;filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))}
    .brand-eagle-caption{margin-top:-3px!important;color:var(--v15-beige)!important;font-size:.56rem!important;font-weight:600!important;letter-spacing:.09em!important;text-shadow:0 1px 1px rgba(0,0,0,.65)!important}
    .bottom-area{padding:4px 8px calc(7px + var(--safe-bottom))!important;background:linear-gradient(180deg,transparent 0%,rgba(18,4,7,.88) 10%,#120407 27%)!important}
    .primary-window{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
    .primary-control-grid{display:block!important}
    .primary-fields{display:block!important}
    .labeled-search{border-radius:18px!important;box-shadow:0 8px 22px rgba(0,0,0,.34)!important}
    .main-search{height:52px!important;min-height:52px!important;border:1px solid #78664f!important;border-radius:18px!important;background:rgba(16,15,16,.97)!important;padding:17px 132px 5px 13px!important;color:#ddd4c8!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important}
    .box-label{left:14px!important;top:5px!important;color:var(--v15-beige-muted)!important;font-size:.53rem!important}
    .labeled-search>.clear-input{right:124px!important;top:54%!important}
    .inline-search-actions{position:absolute;right:6px;top:50%;transform:translateY(-50%);z-index:20;display:flex;align-items:center;gap:3px;height:40px}
    .inline-search-actions button{height:36px;min-height:36px;border:0;color:var(--v15-beige);font-weight:800;box-shadow:none;animation:none!important}
    .hash-toggle,.integrated-reset{width:34px;padding:0;border-radius:50%!important;background:transparent!important;font-size:1rem}
    .hash-toggle{font-family:Georgia,"Times New Roman",serif;font-size:1.12rem!important}
    .integrated-reset{font-size:1.12rem!important;color:var(--v15-beige-muted)!important}
    .integrated-apply{min-width:52px;padding:0 9px!important;border-radius:13px!important;background:linear-gradient(180deg,rgba(74,16,33,.88),rgba(38,11,20,.92))!important;color:var(--v15-beige)!important;font-size:.72rem!important;letter-spacing:.015em}
    .hash-toggle:active,.integrated-reset:active,.integrated-apply:active{transform:scale(.94)}
    .hash-toggle.active-filter{color:#f1dfb9!important;filter:drop-shadow(0 0 4px rgba(226,196,135,.65))}
    .id-row{display:none!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin:6px 3px 0!important;padding:6px;border-radius:15px;background:rgba(15,13,14,.96);border:1px solid rgba(185,170,145,.32);box-shadow:0 8px 20px rgba(0,0,0,.3)}
    .id-row.open{display:grid!important}
    .id-field input{height:44px!important;min-height:44px!important;border:1px solid rgba(185,170,145,.48)!important;border-radius:12px!important;background:#121011!important;color:#d9d0c4!important}
    .id-field label{color:var(--v15-beige-muted)!important}
    .filter-window,.filter-window:empty{display:none!important}
    .filter-window:not(:empty){display:flex!important;align-items:center;gap:4px;min-height:0!important;max-height:50px!important;margin:6px 4px!important;padding:2px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow-x:auto;overflow-y:hidden}
    .filter-window:not(:empty)::before{display:none!important}
    .filter-window .chip{flex:0 0 auto!important;background:rgba(74,16,33,.82)!important;border:1px solid rgba(185,170,145,.38)!important;color:#d8cfc2!important;box-shadow:none!important}
    .dock-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin-top:7px!important;padding:8px 6px 7px!important;border:1px solid rgba(216,200,171,.32)!important;border-radius:22px!important;background:linear-gradient(180deg,#551326 0%,#3b0e1b 58%,#270b13 100%)!important;box-shadow:0 8px 22px rgba(0,0,0,.42),inset 0 1px rgba(238,219,184,.09)!important}
    .dock-btn{height:54px!important;min-height:54px!important;margin:0!important;padding:4px 2px!important;border:0!important;border-radius:16px!important;background:transparent!important;box-shadow:none!important;color:var(--v15-beige)!important;gap:2px!important;font-size:.66rem!important;font-weight:650!important;text-shadow:none!important;animation:none!important;isolation:auto!important}
    .dock-btn+.dock-btn{border-left:1px solid rgba(216,200,171,.10)!important;border-radius:0!important}
    .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:23px!important;height:23px!important;color:var(--v15-beige)!important;filter:none;transition:color .25s ease,filter .25s ease,transform .25s ease}
    .dock-btn.active-filter{color:#eadcbe!important;box-shadow:none!important}
    .dock-btn.active-filter::after{content:none!important;display:none!important}
    .dock-btn.active-filter .drawer-icon{color:#f2dfb5!important;filter:drop-shadow(0 0 3px rgba(242,223,181,.8)) drop-shadow(0 0 8px rgba(190,143,72,.52));animation:v15IconGlow 3.4s ease-in-out infinite}
    @keyframes v15IconGlow{0%,100%{transform:scale(1);filter:drop-shadow(0 0 2px rgba(242,223,181,.5)) drop-shadow(0 0 5px rgba(190,143,72,.32))}50%{transform:scale(1.045);filter:drop-shadow(0 0 4px rgba(255,235,195,.88)) drop-shadow(0 0 10px rgba(190,143,72,.58))}}
    @media(prefers-reduced-motion:reduce){.dock-btn.active-filter .drawer-icon{animation:none!important}}
    @media(max-width:430px){body{padding-bottom:calc(166px + var(--safe-bottom))!important}.main-search{padding-right:132px!important}.dock-btn{height:54px!important;min-height:54px!important}.drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:23px!important;height:23px!important}}

    /* WineStack v15.1 — visual QA corrections */
    .brand-eagle-mark{width:82px!important;height:61px!important;background:#b18b5f!important;opacity:.72!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.38))!important}
    .brand-eagle-caption{color:#b18b5f!important;opacity:.72!important;text-shadow:0 1px 1px rgba(0,0,0,.55)!important}
    .landing-copy{display:none!important}
    main>.landing-tagline{display:block;max-width:920px;margin:clamp(64px,10vh,88px) auto 0!important;padding:0 18px;text-align:center;font-family:Georgia,"Times New Roman",serif;font-size:.82rem!important;font-style:italic!important;font-weight:400;line-height:1.2!important;letter-spacing:.035em;color:rgba(190,157,108,.58)!important;background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;text-shadow:0 1px 5px rgba(0,0,0,.52)!important;opacity:1!important;animation:none!important}
    main>.landing-tagline.hidden{display:none!important}
    .dock-btn{opacity:1!important;visibility:visible!important;transform:none!important}
    .dock-btn .drawer-icon,.dock-btn>span:last-child{opacity:1!important;visibility:visible!important}

    /* WineStack v15.2 — edge-to-edge chin and integrated action refinements */
    :root{--v15-logo-warm:#b18b5f;--v15-logo-warm-active:#d2ad78}
    body{padding-bottom:calc(126px + var(--safe-bottom))!important}
    .bottom-area{padding:4px 0 0!important;background:linear-gradient(180deg,transparent 0%,rgba(18,4,7,.92) 13%,#120407 30%)!important}
    .primary-window{width:100%!important;max-width:none!important;margin:0!important}
    .search-control-line{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:6px;margin:0 8px}
    .search-control-line .labeled-search{min-width:0}
    .main-search{padding-right:91px!important}
    .labeled-search>.clear-input{right:84px!important}
    .inline-search-actions{right:5px!important;gap:3px!important}
    .hash-toggle{width:37px!important;height:37px!important;min-height:37px!important;border:1px solid rgba(177,139,95,.34)!important;background:rgba(177,139,95,.09)!important;color:#c3a67d!important;font-size:1.17rem!important}
    .hash-toggle:active{background:rgba(177,139,95,.17)!important}
    .integrated-apply{display:grid!important;place-items:center;min-width:38px!important;width:38px!important;height:38px!important;padding:0!important;border-radius:50%!important;background:rgba(74,16,33,.72)!important;color:#c7aa80!important}
    .integrated-apply svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
    .external-reset{width:42px;height:42px;min-height:42px;padding:0;border:1px solid rgba(177,139,95,.30);border-radius:50%;background:rgba(17,16,17,.92);color:var(--v15-logo-warm);font-size:1.13rem;line-height:1;box-shadow:0 5px 14px rgba(0,0,0,.28)}
    .external-reset:active{transform:scale(.94);background:rgba(74,16,33,.42)}
    .id-row{margin-left:8px!important;margin-right:56px!important}
    .filter-window:not(:empty){margin-left:8px!important;margin-right:8px!important}
    .dock-actions{width:100vw!important;margin:6px 0 0!important;padding:3px 4px calc(3px + var(--safe-bottom))!important;border-left:0!important;border-right:0!important;border-bottom:0!important;border-radius:18px 18px 0 0!important;min-height:51px!important;background:linear-gradient(180deg,#501225 0%,#370d1a 58%,#240a12 100%)!important;box-shadow:0 -6px 18px rgba(0,0,0,.34),inset 0 1px rgba(177,139,95,.12)!important}
    .dock-btn{height:44px!important;min-height:44px!important;padding:2px!important;gap:0!important;color:var(--v15-logo-warm)!important;font-size:.61rem!important;line-height:1!important}
    .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:20px!important;height:20px!important;color:var(--v15-logo-warm)!important}
    .dock-btn.active-filter{color:var(--v15-logo-warm-active)!important}
    .dock-btn.active-filter .drawer-icon{color:var(--v15-logo-warm-active)!important}
    .drawer-title,.range-title,.range-inputs label,.section-title,.hybrid label,.subdrawer-btn,.back-sub,.nav-arrow{color:var(--v15-logo-warm)!important}
    .small-btn,.x-btn,.bubble,.grape-quick,.check-pill{color:#cbbba5!important}
    @media(max-width:430px){body{padding-bottom:calc(126px + var(--safe-bottom))!important}.main-search{padding-right:91px!important}.dock-btn{height:44px!important;min-height:44px!important}.drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:20px!important;height:20px!important}}

    /* WineStack v15.3 — flat chin, separated search tools, and spacing refinement */
    body{padding-bottom:calc(139px + var(--safe-bottom))!important}
    @keyframes backsplashFade{from{opacity:0}to{opacity:.79}}
    .brand-eagle-mark{width:88px!important;height:65px!important;margin-top:-3px!important}
    .brand-eagle-caption{font-size:.58rem!important;margin-top:-4px!important}
    main>.landing-tagline{margin:clamp(470px,58vh,540px) auto 0!important;font-size:.91rem!important;line-height:1.25!important;color:rgba(190,157,108,.64)!important}
    .search-control-line{grid-template-columns:40px minmax(0,1fr) 42px!important;gap:7px!important;margin:0 8px!important}
    .search-control-line .labeled-search{grid-column:2;grid-row:1}
    .search-leading-icon{position:absolute;left:13px;top:50%;z-index:18;width:19px;height:19px;transform:translateY(-50%);color:#a89171;pointer-events:none}
    .search-leading-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
    .main-search{height:52px!important;min-height:52px!important;padding:6px 58px 6px 42px!important;font-size:.92rem!important}
    .labeled-search>.clear-input{right:53px!important;top:50%!important}
    .inline-search-actions{right:5px!important;gap:0!important}
    .hash-toggle{position:relative;grid-column:1;grid-row:1;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border:1px solid rgba(177,139,95,.52)!important;border-radius:12px!important;background:linear-gradient(180deg,rgba(177,139,95,.18),rgba(74,16,33,.28))!important;color:#d0b38a!important;font-size:1.2rem!important;box-shadow:inset 0 1px rgba(238,219,184,.08),0 4px 12px rgba(0,0,0,.22)!important}
    .hash-toggle:active{background:rgba(177,139,95,.25)!important}
    .integrated-apply{min-width:46px!important;width:46px!important;height:38px!important;border-radius:15px!important;background:linear-gradient(180deg,rgba(82,20,38,.88),rgba(43,10,20,.94))!important;color:#cbb083!important;box-shadow:inset 0 1px rgba(255,255,255,.035)!important}
    .integrated-apply svg{width:21px!important;height:21px!important}
    .external-reset{grid-column:3;grid-row:1;width:42px!important;height:42px!important;border:1px solid rgba(145,128,104,.28)!important;border-radius:50%!important;background:linear-gradient(180deg,#252223,#100f10)!important;color:#a99d8e!important;font-size:1.08rem!important;box-shadow:0 5px 14px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.035)!important}
    .external-reset:active{color:#d0b38a!important;background:#2b2023!important}
    .id-row{margin-left:55px!important;margin-right:57px!important}
    .dock-actions{min-height:61px!important;margin:7px 0 0!important;padding:5px 4px calc(5px + var(--safe-bottom))!important;border:0!important;border-top:1px solid rgba(177,139,95,.28)!important;border-radius:0!important;background:linear-gradient(180deg,#521326 0%,#380e1a 57%,#240a12 100%)!important}
    .dock-btn{height:51px!important;min-height:51px!important;padding:3px 2px!important;gap:1px!important;font-size:.67rem!important;font-weight:680!important}
    .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:23px!important;height:23px!important}
    @media(max-width:430px){body{padding-bottom:calc(139px + var(--safe-bottom))!important}main>.landing-tagline{margin-top:clamp(470px,58vh,540px)!important;font-size:.91rem!important}.main-search{padding:6px 58px 6px 42px!important}.dock-btn{height:51px!important;min-height:51px!important;font-size:.67rem!important}.drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:23px!important;height:23px!important}}

    /* WineStack v15.4 — restrained visual balance pass */
    @keyframes backsplashFade{from{opacity:0}to{opacity:.83}}
    .brand-eagle-mark{width:93px!important;height:69px!important}
    main>.landing-tagline{margin-top:clamp(458px,56.5vh,526px)!important}
    .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:25px!important;height:25px!important}
    @media(max-width:430px){main>.landing-tagline{margin-top:clamp(458px,56.5vh,526px)!important}.drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:25px!important;height:25px!important}}

    /* WineStack v15.5 — subtle proportion tuning */
    body{padding-bottom:calc(145px + var(--safe-bottom))!important}
    @keyframes backsplashFade{from{opacity:0}to{opacity:.86}}
    .search-leading-icon{width:21px!important;height:21px!important;left:12px!important}
    .main-search{padding-left:43px!important}
    .dock-actions{min-height:66px!important;padding:6px 4px calc(6px + var(--safe-bottom))!important}
    .dock-btn{height:54px!important;min-height:54px!important;font-size:.67rem!important}
    .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:27px!important;height:27px!important}
    @media(max-width:430px){body{padding-bottom:calc(145px + var(--safe-bottom))!important}.main-search{padding-left:43px!important}.dock-btn{height:54px!important;min-height:54px!important;font-size:.67rem!important}.drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:27px!important;height:27px!important}}

    /* WineStack v15.6 — icon and quote micro-adjustment */
    main>.landing-tagline{margin-top:clamp(446px,55vh,514px)!important}
    .dock-btn{font-size:.67rem!important}
    .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:29px!important;height:29px!important}
    @media(max-width:430px){main>.landing-tagline{margin-top:clamp(446px,55vh,514px)!important}.dock-btn{font-size:.67rem!important}.drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:29px!important;height:29px!important}}

    /* WineStack v16 — unified restrained-luxury theme */
    :root{
      --v16-burgundy:#4a1021;
      --v16-burgundy-deep:#260b14;
      --v16-charcoal:#111011;
      --v16-panel:#191617;
      --v16-panel-soft:#211b1d;
      --v16-beige:#b18b5f;
      --v16-beige-light:#d2b78f;
      --v16-beige-muted:#95816a;
      --v16-line:rgba(177,139,95,.28);
    }

    /* Landing alignment refinements */
    body{padding-bottom:calc(156px + var(--safe-bottom))!important}
    body::before{background-position:center 40%!important}
    main>.landing-tagline{margin-top:clamp(425px,52.5vh,490px)!important}
    .dock-actions{min-height:73px!important;margin-top:12px!important;padding:7px 4px calc(7px + var(--safe-bottom))!important}
    .dock-btn{height:59px!important;min-height:59px!important;font-size:.67rem!important}
    .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:31px!important;height:31px!important}

    /* Shared drawer shell */
    .backdrop.open{background:rgba(5,3,4,.68)!important;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
    section.drawer,
    section.drawer.drawer-price,
    section.drawer.drawer-vintage,
    section.drawer.drawer-region,
    section.drawer.drawer-grape{
      background:linear-gradient(180deg,#2b0b15 0%,#171315 25%,#100f10 100%)!important;
      background-size:auto!important;
      border:0!important;
      border-top:1px solid var(--v16-line)!important;
      border-radius:20px 20px 0 0!important;
      padding:9px 13px calc(14px + var(--safe-bottom))!important;
      box-shadow:0 -12px 30px rgba(0,0,0,.54),inset 0 1px rgba(210,183,143,.035)!important;
      animation:none!important;
    }
    .handle{width:46px!important;height:4px!important;margin-bottom:11px!important;background:rgba(177,139,95,.38)!important}
    .drawer-head{margin-bottom:12px!important;padding-bottom:10px;border-bottom:1px solid rgba(177,139,95,.14)}
    .drawer-title{font-family:Georgia,"Times New Roman",serif!important;color:var(--v16-beige-light)!important;font-size:1.2rem!important;font-weight:500!important;letter-spacing:.025em!important;text-shadow:none!important}
    .head-actions{gap:7px!important}
    .small-btn,.x-btn{animation:none!important;box-shadow:none!important;text-shadow:none!important}
    .reset-small{min-width:68px!important;min-height:38px!important;border:1px solid rgba(149,129,106,.32)!important;border-radius:12px!important;background:#161415!important;color:#a99b89!important}
    .done{min-width:74px!important;min-height:38px!important;border:1px solid rgba(177,139,95,.36)!important;border-radius:12px!important;background:linear-gradient(180deg,#5a152a,#35101c)!important;color:#d0bea3!important}
    .x-btn{width:38px!important;height:38px!important;min-height:38px!important;border:1px solid rgba(149,129,106,.24)!important;border-radius:50%!important;background:#1d191a!important;color:#9f9487!important;font-size:1.2rem!important}

    /* Shared drawer typography and form controls */
    .range-title,.range-inputs label,.section-title,.hybrid label,.field label{color:var(--v16-beige)!important;letter-spacing:.1em!important;text-shadow:none!important}
    .drawer-title,.drawer .range-title,.drawer .range-inputs label,.drawer .section-title,.drawer .hybrid label,.drawer .field label{opacity:1!important;animation:none!important}
    .drawer .clear-input{color:#95897c!important;background:rgba(177,139,95,.08)!important;box-shadow:none!important;animation:none!important}
    .range-current{color:var(--v16-beige-light)!important;font-weight:750!important}
    .markers{color:#8e8278!important}
    .markers i{background:rgba(177,139,95,.42)!important;box-shadow:none!important}
    .range-card{margin:8px 0 12px!important;padding:12px!important;border:1px solid rgba(177,139,95,.22)!important;border-radius:15px!important;background:rgba(15,14,15,.82)!important;box-shadow:none!important}
    .range-inputs input,.hybrid-input input,.field select,input[type=number],select{
      border:1px solid rgba(177,139,95,.31)!important;
      background:#121112!important;
      background-size:auto!important;
      color:#d3c8b9!important;
      box-shadow:none!important;
      animation:none!important;
    }
    .range-inputs input{border-radius:12px!important;font-weight:650!important}
    .range-track{height:5px!important;top:19px!important;border:0!important;background:#3b3134!important}
    .range-fill{height:5px!important;top:19px!important;background:linear-gradient(90deg,#6a1a31,#a06654,#b18b5f)!important}
    .precision-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none!important;appearance:none!important;width:24px!important;height:24px!important;border:2px solid #4a1021!important;border-radius:50%!important;background:#c5a77d!important;clip-path:none!important;box-shadow:0 2px 7px rgba(0,0,0,.42)!important}
    .precision-range input[type=range]::-moz-range-thumb{width:24px!important;height:24px!important;border:2px solid #4a1021!important;border-radius:50%!important;background:#c5a77d!important;clip-path:none!important;box-shadow:0 2px 7px rgba(0,0,0,.42)!important}
    .range-tip{border:1px solid rgba(74,16,33,.35)!important;background:#d2b78f!important;color:#24151a!important;box-shadow:0 4px 12px rgba(0,0,0,.35)!important}

    /* Price drawer */
    .price-quick-grid .bubble,.high-price-grid .bubble,.bubble{
      min-height:46px!important;
      border:1px solid rgba(177,139,95,.25)!important;
      border-radius:13px!important;
      background:#211719!important;
      color:#c7b7a2!important;
      box-shadow:none!important;
      animation:none!important;
    }
    .bubble.active{border-color:rgba(210,183,143,.5)!important;background:#501326!important;color:#ddcdb6!important;box-shadow:0 0 8px rgba(177,139,95,.16)!important}
    .subdrawer-btn,.back-sub{min-height:48px!important;border:1px solid rgba(177,139,95,.25)!important;border-radius:13px!important;background:#181516!important;color:var(--v16-beige)!important;box-shadow:none!important;animation:none!important}
    .nav-arrow{color:var(--v16-beige)!important;stroke:currentColor!important}

    /* Region and grape drawers */
    .region-hybrid-grid{gap:12px!important}
    .hybrid-input{border:1px solid rgba(177,139,95,.28)!important;border-radius:13px!important;background:#121112!important;box-shadow:none!important}
    .hybrid-input input{min-height:52px!important;border:0!important;border-radius:12px 0 0 12px!important}
    .drop-btn{min-height:52px!important;border:0!important;border-left:1px solid rgba(177,139,95,.24)!important;border-radius:0 12px 12px 0!important;background:#23181b!important;color:var(--v16-beige)!important;box-shadow:none!important;animation:none!important}
    .hybrid-options{border:1px solid rgba(177,139,95,.25)!important;border-radius:12px!important;background:#181516!important;box-shadow:0 9px 20px rgba(0,0,0,.35)!important}
    .option-row{border-bottom:1px solid rgba(177,139,95,.11)!important;color:#c9bdae!important}
    .option-row:active{background:#421120!important;color:#ded0bd!important}
    .grape-quick{min-height:54px!important;border:1px solid rgba(177,139,95,.24)!important;border-radius:14px!important;background:#1c1718!important;color:#c7b7a2!important;box-shadow:none!important}
    .grape-quick.active{border-color:rgba(210,183,143,.48)!important;background:#481221!important;color:#dfcfb9!important;box-shadow:0 0 9px rgba(177,139,95,.17)!important}
    .quick-symbol,.icon-cabernet-sauvignon,.icon-malbec,.icon-merlot,.icon-pinot-noir,.icon-zinfandel,.icon-chardonnay,.icon-pinot-grigio,.icon-rose,.icon-sauvignon-blanc,.icon-sparkling{color:var(--v16-beige)!important}

    /* Vintage drawer */
    .vintage-check-grid .check-pill,.check-pill{min-height:45px!important;border:1px solid rgba(177,139,95,.23)!important;border-radius:12px!important;background:#1b1718!important;color:#c6b7a4!important;box-shadow:none!important}
    .vintage-check-grid .check-pill input,.check-pill input{accent-color:#7a2940!important}
    .vintage-check-grid .check-pill:has(input:checked),.check-pill:has(input:checked){border-color:rgba(210,183,143,.5)!important;background:#4a1223!important;color:#dfcfb9!important;box-shadow:0 0 8px rgba(177,139,95,.14)!important}

    /* Search suggestions and wine result cards */
    .suggestions{border:1px solid rgba(177,139,95,.28)!important;border-radius:14px!important;background:#171415!important;box-shadow:0 12px 28px rgba(0,0,0,.46)!important}
    .suggestion{border-bottom:1px solid rgba(177,139,95,.11)!important;color:#cfc3b5!important}
    .suggestion.match-start{color:#dfcfb9!important}
    .suggestion:active{background:#471222!important}
    .result-meta{color:#aa9d8d!important}
    .sort-note{color:#877b70!important}
    .wine-card{
      margin-bottom:9px!important;
      border:1px solid rgba(177,139,95,.24)!important;
      border-radius:14px!important;
      background:linear-gradient(180deg,#1c1719,#121112)!important;
      background-size:auto!important;
      box-shadow:0 7px 18px rgba(0,0,0,.34)!important;
      animation:none!important;
    }
    .card-top{border-bottom:1px solid rgba(177,139,95,.22)!important;background:#35101c!important}
    .mini{border-right:1px solid rgba(177,139,95,.13)!important;background:transparent!important;box-shadow:none!important}
    .mini-label{color:#9f896d!important;font-weight:800!important}
    .mini-value{color:#d2c4b2!important;font-weight:800!important}
    .card-body{background:transparent!important}
    .wine-name{color:#d8c8b2!important;font-weight:800!important}
    .region-line{color:#a99b8d!important;font-weight:600!important}
    .tag,.tag.grape{border:1px solid rgba(177,139,95,.14)!important;background:#211a1c!important;color:#bdb0a0!important}
    .tag.grape{background:#451220!important;color:#d4c1a8!important}
    .empty{border:1px solid rgba(177,139,95,.22)!important;background:#171415!important;color:#b9ac9d!important;box-shadow:none!important}

    @media(max-width:430px){
      body{padding-bottom:calc(156px + var(--safe-bottom))!important}
      main>.landing-tagline{margin-top:clamp(425px,52.5vh,490px)!important}
      .dock-actions{min-height:73px!important;margin-top:12px!important;padding:7px 4px calc(7px + var(--safe-bottom))!important}
      .dock-btn{height:59px!important;min-height:59px!important;font-size:.67rem!important}
      .drawer-icon,.dock-btn[data-open="price"] .drawer-icon,.dock-btn[data-open="vintage"] .drawer-icon{width:31px!important;height:31px!important}
    }

    /* WineStack v17 — unified drawer behavior and functional palette */
    :root{
      --v17-burgundy:#4a1021;
      --v17-burgundy-dark:#2b0914;
      --v17-beige:#d3c0a0;
      --v17-beige-soft:#e1d3bb;
      --v17-charcoal:#3b3a3b;
      --v17-hairline:linear-gradient(90deg,#6e4219 0%,#c18c42 25%,#efd08a 50%,#a86e2d 76%,#5b3515 100%);
    }
    .brand-eagle-caption{margin-top:2px!important}
    main>.landing-tagline{
      background:var(--v17-hairline)!important;
      -webkit-background-clip:text!important;background-clip:text!important;
      color:transparent!important;
      opacity:.64!important;
      text-shadow:none!important;
    }
    .bottom-area{isolation:isolate!important}
    .bottom-area::before{
      content:"";position:absolute;left:0;right:0;top:0;height:1px;
      background:var(--v17-hairline);opacity:.86;pointer-events:none;z-index:4;
      box-shadow:0 0 5px rgba(194,139,60,.24);
    }
    .dock-actions{align-items:stretch!important}
    .dock-btn{
      display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
      gap:5px!important;padding:5px 2px 4px!important;
    }
    .search-wrap.labeled-search{
      border:1px solid transparent!important;border-radius:14px!important;
      background:linear-gradient(#111011,#111011) padding-box,var(--v17-hairline) border-box!important;
    }
    .search-wrap.labeled-search .main-search{border:0!important;background:transparent!important;box-shadow:none!important}
    .external-reset,.reset-small{
      border:1px solid transparent!important;
      background:linear-gradient(#151314,#151314) padding-box,var(--v17-hairline) border-box!important;
    }
    .search-leading-icon{color:#d1a75e!important;filter:drop-shadow(0 0 2px rgba(234,196,121,.25))}

    section.drawer,section.drawer.drawer-price,section.drawer.drawer-vintage,section.drawer.drawer-region,section.drawer.drawer-grape{
      background:var(--v17-burgundy-dark)!important;border-top:1px solid rgba(222,183,111,.48)!important;
      overflow:hidden!important;padding:9px 0 calc(0px + var(--safe-bottom))!important;
    }
    section.drawer .handle{background:rgba(225,211,187,.38)!important}
    .drawer-head{
      display:grid!important;grid-template-columns:76px minmax(0,1fr) 76px!important;align-items:center!important;
      min-height:58px!important;margin:0!important;padding:0 13px 10px!important;border-bottom:1px solid rgba(225,211,187,.18)!important;
    }
    .drawer-title{
      display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
      color:var(--v17-beige-soft)!important;font-family:var(--font)!important;font-size:.82rem!important;
      font-weight:700!important;letter-spacing:.025em!important;
    }
    .drawer-title-icon{display:block;width:31px;height:31px;color:var(--v17-beige-soft)}
    .drawer-title-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
    .drawer-head>.reset-small{justify-self:start;min-width:68px!important;color:var(--v17-beige-soft)!important}
    .drawer-head>.x-btn{justify-self:end;color:var(--v17-beige-soft)!important;border:1px solid rgba(225,211,187,.34)!important;background:rgba(18,9,13,.38)!important}
    .drawer-body{
      max-height:calc(86vh - 82px - var(--safe-bottom))!important;
      padding:15px 13px calc(16px + var(--safe-bottom))!important;
      background:linear-gradient(180deg,#ddd0b8 0%,#cfbea0 100%)!important;color:var(--v17-burgundy)!important;
    }
    .drawer .range-title,.drawer .range-inputs label,.drawer .section-title,.drawer .hybrid label,.drawer .field label,
    .drawer .range-current,.drawer .markers{color:var(--v17-burgundy)!important}
    .drawer .range-card{border:1px solid rgba(74,16,33,.24)!important;background:rgba(247,240,226,.48)!important}
    .drawer .range-inputs input,.drawer .hybrid-input input,.drawer .field select,.drawer input[type=number],.drawer select{
      border-color:rgba(74,16,33,.32)!important;background:rgba(252,247,238,.64)!important;color:var(--v17-burgundy)!important;
    }
    .drawer .hybrid-input{border-color:rgba(74,16,33,.32)!important;background:rgba(252,247,238,.64)!important}
    .drawer .drop-btn{border-left-color:rgba(74,16,33,.25)!important;background:rgba(74,16,33,.09)!important;color:var(--v17-burgundy)!important}
    .drawer .hybrid-options{border-color:rgba(74,16,33,.28)!important;background:#eee3d0!important}
    .drawer .option-row{border-bottom-color:rgba(74,16,33,.11)!important;color:var(--v17-burgundy)!important}
    .drawer .option-row:active{background:var(--v17-burgundy)!important;color:var(--v17-beige-soft)!important}
    .drawer .bubble,.drawer .grape-quick,.drawer .check-pill{
      border-color:rgba(74,16,33,.26)!important;background:rgba(249,242,229,.55)!important;color:var(--v17-burgundy)!important;
    }
    .drawer .bubble.active,.drawer .grape-quick.active,.drawer .check-pill:has(input:checked){
      border-color:var(--v17-burgundy)!important;background:var(--v17-burgundy)!important;color:var(--v17-beige-soft)!important;box-shadow:none!important;
    }
    .drawer .subdrawer-btn,.drawer .back-sub{
      justify-content:center!important;border-color:rgba(74,16,33,.32)!important;background:rgba(249,242,229,.58)!important;color:var(--v17-burgundy)!important;
    }
    .drawer .subdrawer-btn .nav-arrow{position:absolute;right:13px;color:var(--v17-burgundy)!important}
    .drawer .back-sub .nav-arrow{color:var(--v17-burgundy)!important}
    .range-wrap{margin-left:12px!important;margin-right:12px!important}
    .markers{display:block!important;position:relative!important;height:31px!important;margin-left:12px!important;margin-right:12px!important}
    .markers span{position:absolute!important;top:0;transform:translateX(-50%);align-items:center!important}
    .markers span:first-child{transform:none;align-items:flex-start!important}
    .markers span:last-child{transform:translateX(-100%);align-items:flex-end!important}
    .range-track{left:0!important;right:0!important;height:4px!important;background:var(--v17-charcoal)!important}
    .range-fill{height:4px!important;background:var(--v17-burgundy)!important}
    .precision-range input[type=range]::-webkit-slider-thumb{
      width:18px!important;height:27px!important;border:2px solid #d7c5a5!important;border-radius:6px!important;background:var(--v17-burgundy)!important;box-shadow:0 2px 5px rgba(0,0,0,.3)!important;
    }
    .precision-range input[type=range]::-moz-range-thumb{
      width:18px!important;height:27px!important;border:2px solid #d7c5a5!important;border-radius:6px!important;background:var(--v17-burgundy)!important;box-shadow:0 2px 5px rgba(0,0,0,.3)!important;
    }
    .markers i{background:var(--v17-burgundy)!important}.markers b{color:var(--v17-burgundy)!important}
    .quick-symbol{filter:drop-shadow(0 1px 0 rgba(255,255,255,.45)) drop-shadow(0 1px 2px rgba(38,13,20,.34))}
    .quick-symbol svg{stroke:currentColor!important}.grape-quick.active .quick-symbol{filter:drop-shadow(0 1px 2px rgba(0,0,0,.55))}
    .icon-cabernet-sauvignon{color:#67243a!important}.icon-malbec{color:#63405a!important}.icon-merlot{color:#815060!important}
    .icon-pinot-noir{color:#934a4e!important}.icon-zinfandel{color:#7d3b35!important}.icon-chardonnay{color:#9d8538!important}
    .icon-pinot-grigio{color:#7a875f!important}.icon-rose{color:#ae6f70!important}.icon-sauvignon-blanc{color:#718957!important}.icon-sparkling{color:#8f7f55!important}
    .grape-quick.active .quick-symbol{color:var(--v17-beige-soft)!important}
    @media(max-width:430px){.drawer-body{max-height:calc(86vh - 82px - var(--safe-bottom))!important}.dock-btn{gap:5px!important}}

    /* WineStack v17.1 — copper accents, static landing quote, refined drawer readability */
    :root{
      --v171-copper-line:linear-gradient(90deg,#5f2d20 0%,#8c402b 24%,#c06d45 51%,#91452f 76%,#59291e 100%);
      --v171-copper-soft:linear-gradient(90deg,#65372a 0%,#8d4d38 35%,#a76043 64%,#704033 100%);
      --v171-drawer-beige:#bca582;
      --v171-drawer-beige-dark:#ad956f;
      --v171-control-border:#6d2338;
    }
    main>.landing-tagline{
      position:fixed!important;left:0!important;right:0!important;bottom:calc(173px + var(--safe-bottom))!important;top:auto!important;
      z-index:1!important;margin:0 auto!important;pointer-events:none!important;
      background:var(--v171-copper-line)!important;-webkit-background-clip:text!important;background-clip:text!important;
      color:transparent!important;opacity:.42!important;animation:none!important;transform:none!important;text-shadow:none!important;
    }
    .bottom-area::before{display:none!important}
    .dock-actions{position:relative!important;border-top:0!important}
    .dock-actions::before{
      content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--v171-copper-line);
      opacity:.82;box-shadow:0 0 4px rgba(160,78,46,.24);pointer-events:none;
    }
    .search-wrap.labeled-search{
      border-color:transparent!important;
      background:linear-gradient(#111011,#111011) padding-box,var(--v171-copper-soft) border-box!important;
    }
    .search-control-line{grid-template-columns:42px minmax(0,1fr) 42px!important}
    .main-search{height:52px!important;min-height:52px!important;font-size:16px!important;touch-action:manipulation!important}
    .hash-toggle{
      width:42px!important;height:52px!important;min-height:52px!important;border:1px solid transparent!important;border-radius:13px!important;
      background:linear-gradient(#171415,#171415) padding-box,var(--v171-copper-line) border-box!important;
      color:var(--v15-logo-warm)!important;box-shadow:0 4px 12px rgba(0,0,0,.22)!important;
    }
    .external-reset,.reset-small,.x-btn{
      border:1px solid transparent!important;
      background:linear-gradient(#151314,#151314) padding-box,var(--v171-copper-line) border-box!important;
    }
    .search-leading-icon{color:#bc704b!important}

    .drawer-head{min-height:72px!important;padding-bottom:9px!important}
    .drawer-title{
      flex-direction:column!important;gap:3px!important;color:var(--v15-logo-warm)!important;
      font-size:.72rem!important;font-weight:700!important;line-height:1!important;
    }
    .drawer-title-icon{width:30px!important;height:30px!important;color:var(--v15-logo-warm)!important}
    .drawer-head>.x-btn{
      width:42px!important;height:42px!important;min-height:42px!important;color:var(--v15-logo-warm)!important;
      border-radius:50%!important;
    }
    .drawer-body{
      max-height:calc(86vh - 96px - var(--safe-bottom))!important;
      background:linear-gradient(180deg,var(--v171-drawer-beige) 0%,var(--v171-drawer-beige-dark) 100%)!important;
      font-size:.94rem!important;
    }
    .drawer .range-title,.drawer .section-title,.drawer .hybrid label,.drawer .field label{font-size:.75rem!important}
    .drawer .range-current{font-size:.91rem!important}
    .drawer .markers{font-size:.64rem!important}
    .drawer .markers span{font-size:.64rem!important}
    .drawer .bubble,.drawer .grape-quick,.drawer .check-pill,.drawer .subdrawer-btn,.drawer .back-sub{font-size:.84rem!important}
    .drawer .option-row{font-size:.94rem!important}
    .drawer input,.drawer select{font-size:16px!important}

    .drawer .range-card,.drawer .range-inputs input,.drawer .hybrid-input,.drawer .field select,
    .drawer input[type=number],.drawer select,.drawer .drop-btn,.drawer .bubble,.drawer .grape-quick,
    .drawer .check-pill,.drawer .subdrawer-btn,.drawer .back-sub{
      border-color:rgba(109,35,56,.72)!important;
    }
    .drawer .hybrid-input input{border:0!important}
    .drawer .drop-btn{border-left:1px solid rgba(109,35,56,.72)!important}
    .vintage-check-grid .check-pill input,.check-pill input{
      -webkit-appearance:none!important;appearance:none!important;position:relative!important;
      width:19px!important;height:19px!important;min-height:19px!important;padding:0!important;
      border:1px solid var(--v171-control-border)!important;border-radius:4px!important;
      background:var(--v171-drawer-beige-dark)!important;box-shadow:inset 0 1px 2px rgba(74,16,33,.12)!important;
    }
    .vintage-check-grid .check-pill input:checked,.check-pill input:checked{background:var(--v17-burgundy)!important}
    .vintage-check-grid .check-pill input:checked::after,.check-pill input:checked::after{
      content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;
      border:solid var(--v17-beige-soft);border-width:0 2px 2px 0;transform:rotate(45deg);
    }
    .wine-card{border:1px solid rgba(151,121,86,.72)!important}
    @media(max-width:430px){
      main>.landing-tagline{bottom:calc(173px + var(--safe-bottom))!important}
      .drawer-body{max-height:calc(86vh - 96px - var(--safe-bottom))!important}
    }

    /* WineStack v17.2 — balanced bronze hairlines and precision controls */
    :root{
      --v172-metal-line:linear-gradient(90deg,#63391f 0%,#95602f 24%,#d39a57 50%,#a56a32 76%,#5a321c 100%);
      --v172-metal-soft:linear-gradient(90deg,#69462f 0%,#8f6949 34%,#b58a61 62%,#73503a 100%);
    }
    main>.landing-tagline{
      bottom:calc(216px + var(--safe-bottom))!important;opacity:.49!important;
      background:var(--v172-metal-line)!important;-webkit-background-clip:text!important;background-clip:text!important;
    }
    .dock-actions::before{background:var(--v172-metal-line)!important}
    .search-wrap.labeled-search{background:linear-gradient(#111011,#111011) padding-box,var(--v172-metal-soft) border-box!important}
    .external-reset,.reset-small,.x-btn{background:linear-gradient(#151314,#151314) padding-box,var(--v172-metal-line) border-box!important}
    .search-control-line{grid-template-columns:42px minmax(0,1fr) 42px!important;gap:7px!important}
    .hash-toggle{
      width:42px!important;height:42px!important;min-height:42px!important;border-radius:50%!important;
      background:linear-gradient(#3b0d1b,#250811) padding-box,var(--v172-metal-line) border-box!important;
      color:#c49a69!important;font-size:1.42rem!important;line-height:1!important;
    }
    .drawer .range-card,.drawer .range-inputs input,.drawer .hybrid-input,.drawer .field select,
    .drawer input[type=number],.drawer select,.drawer .drop-btn,.drawer .bubble,.drawer .grape-quick,
    .drawer .check-pill,.drawer .subdrawer-btn,.drawer .back-sub{border-width:1.5px!important}
    .drawer .drop-btn{border-left-width:1.5px!important}

    .drawer-region .hybrid-input,.drawer-grape .hybrid-input{height:44px!important;min-height:44px!important}
    .drawer-region .hybrid-input input,.drawer-grape .hybrid-input input,
    .drawer-region .drop-btn,.drawer-grape .drop-btn{height:42px!important;min-height:42px!important}
    .drawer .range-inputs input{height:44px!important;min-height:44px!important}

    .drawer-title-icon{width:35px!important;height:35px!important}
    .drawer-head>.reset-small,.drawer-head>.x-btn{transform:translateY(-4px)!important}
    .drawer-head>.x-btn{
      background:linear-gradient(#151314,#151314) padding-box,var(--v172-metal-line) border-box!important;
    }
    .grape-title-icon svg circle{fill:currentColor!important;stroke:#5a2135!important;stroke-width:.65!important}

    .drawer .drop-btn{
      display:grid!important;place-items:center!important;width:42px!important;padding:0!important;
      border-top:0!important;border-right:0!important;border-bottom:0!important;border-radius:0 11px 11px 0!important;
      background:linear-gradient(180deg,rgba(82,20,38,.92),rgba(43,10,20,.97))!important;
      color:#cbb083!important;box-shadow:inset 0 1px rgba(255,255,255,.04)!important;
    }
    .drawer .drop-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
    .subdrawer-btn{font-size:.93rem!important}
    .subdrawer-btn .nav-arrow{
      display:block!important;width:38px!important;height:34px!important;padding:7px!important;border-radius:13px!important;
      background:linear-gradient(180deg,rgba(82,20,38,.92),rgba(43,10,20,.97))!important;
      color:#cbb083!important;stroke:currentColor!important;box-shadow:inset 0 1px rgba(255,255,255,.04)!important;
    }

    .range-wrap{height:38px!important;margin-bottom:4px!important}
    .range-track,.range-fill{top:17px!important;height:5px!important}
    .range-wrap input[type=range]{
      top:4px!important;height:31px!important;min-height:31px!important;padding:0!important;border:0!important;
    }
    .range-wrap input[type=range]::-webkit-slider-runnable-track{height:5px!important;background:transparent!important}
    .range-wrap input[type=range]::-moz-range-track{height:5px!important;background:transparent!important}
    .markers{height:29px!important;font-size:.61rem!important}
    .markers span{font-size:.61rem!important}
    @media(max-width:430px){main>.landing-tagline{bottom:calc(216px + var(--safe-bottom))!important}}

    /* WineStack v17.3 — final drawer navigation and field cleanup */
    .drawer .range-card,.drawer .range-inputs input,.drawer .hybrid-input,.drawer .field select,
    .drawer input[type=number],.drawer select,.drawer .drop-btn,.drawer .bubble,.drawer .grape-quick,
    .drawer .check-pill,.drawer .subdrawer-btn,.drawer .back-sub{border-width:2px!important}
    .drawer .drop-btn{border-left-width:2px!important}

    .drawer-title-icon{width:40px!important;height:40px!important}
    .drawer-head>.x-btn{
      display:grid!important;place-items:center!important;padding:0!important;
      line-height:1!important;text-indent:0!important;font-family:Arial,sans-serif!important;
    }

    .drawer-vintage .check-pill input[type=checkbox]{
      width:20px!important;height:20px!important;min-width:20px!important;
      border:2px solid #5b1730!important;background:#d4c2a3!important;
    }

    .drawer-region .hybrid-input,.drawer-grape .hybrid-input{
      grid-template-columns:minmax(0,1fr) 44px!important;gap:0!important;
      overflow:hidden!important;background:transparent!important;
    }
    .drawer-region .hybrid-input::before,.drawer-region .hybrid-input::after,
    .drawer-grape .hybrid-input::before,.drawer-grape .hybrid-input::after{display:none!important}
    .drawer-region .hybrid-input input.clearable-input,
    .drawer-grape .hybrid-input input.clearable-input{
      min-width:0!important;padding-right:36px!important;white-space:nowrap!important;
      overflow:hidden!important;text-overflow:ellipsis!important;
    }
    .drawer-region .hybrid-clear,.drawer-grape .hybrid-clear{right:49px!important}
    .drawer-region .drop-btn,.drawer-grape .drop-btn{
      width:44px!important;min-width:44px!important;border-radius:0!important;
    }

    .drawer .subdrawer-btn,.drawer .back-sub{
      display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;
      min-height:54px!important;border:1px solid transparent!important;border-radius:16px!important;
      background:linear-gradient(#3b0d1b,#250811) padding-box,var(--v172-metal-line) border-box!important;
      color:#c49a69!important;box-shadow:inset 0 1px rgba(255,255,255,.035)!important;
      text-shadow:none!important;
    }
    .drawer .subdrawer-btn{font-size:1.05rem!important;font-weight:900!important}
    .drawer .back-sub{font-size:1rem!important;font-weight:900!important}
    .price-nav-icon{
      position:static!important;display:block!important;width:21px!important;height:21px!important;
      flex:0 0 21px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
      background:none!important;box-shadow:none!important;fill:none!important;stroke:currentColor!important;
      stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;
    }

    /* WineStack v18 — compact shell, sort rail, grouped drawers, and card metadata */
    :root{
      --v18-charcoal-line:#4b4848;
      --v18-charcoal-soft:#5b5757;
      --v18-drawer-base:#b49c76;
      --v18-subwindow:#ddccb0;
      --v18-subwindow-soft:#eadcc6;
      --v18-brown-burgundy:#3a1717;
    }
    html{scrollbar-width:thin;scrollbar-color:rgba(137,126,119,.58) transparent}
    html::-webkit-scrollbar,body::-webkit-scrollbar,.drawer-body::-webkit-scrollbar{width:5px;height:5px}
    html::-webkit-scrollbar-track,body::-webkit-scrollbar-track,.drawer-body::-webkit-scrollbar-track{background:transparent}
    html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,.drawer-body::-webkit-scrollbar-thumb{background:rgba(137,126,119,.58);border-radius:999px}

    body::before{
      background:linear-gradient(rgba(18,4,7,.34),rgba(18,4,7,.44)),url("../assets/winestack-backsplash.jpg") center 36% / 85% auto no-repeat!important;
    }
    .app-header{
      min-height:calc(86px + var(--safe-top))!important;
      padding:calc(1px + var(--safe-top)) 8px 3px!important;
      background:radial-gradient(ellipse at 50% 42%,#512024 0%,#361317 46%,#210b0e 100%)!important;
    }
    .brand-stage{height:80px!important}
    main>.landing-tagline{bottom:calc(248px + var(--safe-bottom))!important}
    .bottom-area{padding-bottom:0!important}
    .dock-actions{
      min-height:62px!important;margin-top:8px!important;padding:2px 4px calc(2px + var(--safe-bottom))!important;
      background:linear-gradient(180deg,#4b2022 0%,#351517 57%,#241013 100%)!important;
    }
    .dock-btn{height:54px!important;min-height:54px!important;padding-top:2px!important;padding-bottom:2px!important}
    .image-drawer-icon img,.image-title-icon img{display:block;width:100%;height:100%;object-fit:contain}
    .image-drawer-icon,.image-title-icon{overflow:visible}

    .header-sort-toggle{
      position:absolute;right:8px;bottom:5px;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;
      width:54px;height:64px;padding:0;border:0;background:transparent;color:#d5b780;font-size:.54rem;font-weight:850;letter-spacing:.12em;
    }
    .header-sort-toggle[hidden]{display:none!important}
    .header-sort-toggle img{display:block;width:43px;height:43px;object-fit:contain}
    .header-sort-toggle.is-visible img{animation:sortInviteGlow 2.4s ease-in-out infinite}
    .header-sort-toggle span{margin-top:-2px}
    @keyframes sortInviteGlow{0%,100%{filter:drop-shadow(0 0 2px rgba(215,164,85,.18));transform:scale(1)}50%{filter:drop-shadow(0 0 7px rgba(232,184,104,.58));transform:scale(1.025)}}
    body.drawer-open .header-sort-toggle{opacity:0;pointer-events:none}
    .sort-rail{
      position:fixed;right:0;top:calc(86px + var(--safe-top));z-index:120;width:72px;padding:0 8px 10px;
      border:1px solid var(--v18-charcoal-line);border-right:0;border-radius:15px 0 0 15px;
      background:linear-gradient(180deg,#d8c5a7,#bba079);box-shadow:-8px 8px 22px rgba(0,0,0,.4);
      transform:translate3d(110%,0,0);opacity:0;pointer-events:none;transition:transform .32s cubic-bezier(.2,.82,.24,1),opacity .22s ease;
    }
    .sort-rail.open{transform:translate3d(0,0,0);opacity:1;pointer-events:auto}
    .sort-rail-title{margin:0 -8px 8px;padding:8px 2px 7px;background:linear-gradient(180deg,#3b1119,#240b10);color:#e0c79d;text-align:center;font-size:.75rem;letter-spacing:.1em}
    .sort-rail button{
      width:55px;height:55px;margin:0 0 7px;padding:4px;border:1px solid #b47b38;border-radius:15px;
      display:flex;align-items:center;justify-content:center;gap:1px;background:linear-gradient(180deg,#6c1731,#370c18);color:#e6bd74;
      box-shadow:inset 0 0 0 2px rgba(239,196,111,.25),0 3px 6px rgba(0,0,0,.25);transition:filter .16s,transform .16s,box-shadow .16s;
    }
    .sort-rail button:last-child{margin-bottom:0}.sort-rail button.selected{filter:brightness(1.22);transform:scale(1.04);box-shadow:0 0 13px rgba(238,185,96,.78),inset 0 0 0 2px rgba(255,221,153,.65)}
    .sort-rail button svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
    .sort-rail .sort-grape circle{fill:currentColor;stroke:#5b1930;stroke-width:.45}.sort-az,.sort-dollar{font-family:Georgia,serif;font-size:1.08rem;line-height:.8}.sort-dollar{font-size:1.7rem}

    section.drawer{transition:transform .38s cubic-bezier(.2,.86,.25,1),opacity .25s ease!important;will-change:transform;touch-action:pan-y}
    section.drawer.dragging{transition:none!important}
    .backdrop{transition:opacity .3s ease!important}
    .drawer-body{background:linear-gradient(180deg,#bda680 0%,var(--v18-drawer-base) 100%)!important}
    .drawer .range-card,.drawer .range-inputs input,.drawer .hybrid-input,.drawer .field select,
    .drawer input[type=number],.drawer select,.drawer .drop-btn,.drawer .bubble,.drawer .grape-quick,
    .drawer .check-pill,.drawer .subdrawer-btn,.drawer .back-sub{border-color:var(--v18-charcoal-line)!important}
    .drawer .drop-btn{border-left-color:var(--v18-charcoal-line)!important}
    .drawer-subwindow{
      margin:0 0 13px;border:1.5px solid var(--v18-charcoal-line);border-radius:15px;overflow:hidden;
      background:var(--v18-subwindow);box-shadow:0 4px 10px rgba(45,29,21,.18);
    }
    .drawer-subwindow:last-child{margin-bottom:0}
    .subwindow-title{
      min-height:35px;display:grid;place-items:center;padding:7px 8px 6px;
      background:linear-gradient(180deg,#43131e,#270c12);color:#e0c79d;font-size:.78rem;font-weight:850;letter-spacing:.13em;text-align:center;
    }
    .subwindow-content{padding:12px;background:linear-gradient(180deg,var(--v18-subwindow-soft),var(--v18-subwindow))}
    .drawer-subwindow .range-card{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
    .drawer-subwindow .quick-grid{margin-top:0!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}

    .vintage-single-window{max-width:290px;margin-left:auto;margin-right:auto}
    .single-vintage-input{width:100%;min-height:58px!important;text-align:center;font-size:2rem!important;font-weight:900!important;border:2px solid var(--v18-charcoal-line)!important;border-radius:13px!important;background:#efe3d2!important;color:#3a0c19!important}
    .vintage-subwindow.active-window{border-color:transparent!important;background:linear-gradient(var(--v18-subwindow),var(--v18-subwindow)) padding-box,var(--v172-metal-line) border-box!important;animation:activeSubwindowGlow 2.6s ease-in-out infinite}
    @keyframes activeSubwindowGlow{0%,100%{box-shadow:0 4px 10px rgba(45,29,21,.18),0 0 3px rgba(218,158,77,.24)}50%{box-shadow:0 4px 10px rgba(45,29,21,.18),0 0 11px rgba(231,179,100,.62)}}
    .decade-button-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}
    .decade-button{
      min-height:49px;padding:0 9px;border:1.5px solid var(--v18-charcoal-line);border-radius:13px;
      display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(180deg,#541426,#260a12);color:#eadcc6;font-size:.88rem;font-weight:780;box-shadow:0 4px 8px rgba(0,0,0,.22);
    }
    .decade-button svg{width:16px;height:16px;fill:none;stroke:#dec48f;stroke-width:2;transition:transform .18s}.decade-button.expanded svg{transform:rotate(180deg)}
    .decade-year-panel{display:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:11px;padding:9px;border-top:1px solid var(--v18-charcoal-line);background:rgba(244,231,210,.55)}
    .decade-year-panel.open{display:grid}
    .vintage-year-button{min-height:45px;padding:0 2px;border:1.5px solid #332b2b;border-radius:9px;background:#e8d9c1;color:#35101a;font-size:.88rem;font-weight:900}
    .vintage-year-button.selected{background:#46101f;color:#efdfc4;border-color:#46101f}
    .vintage-range-card .range-current{display:none}.vintage-range-inputs>div{border:1.5px solid var(--v18-charcoal-line);border-radius:0 0 14px 14px;overflow:hidden;background:#efe2cf}
    .vintage-range-inputs label{display:block!important;margin:0!important;padding:8px 11px!important;background:linear-gradient(180deg,#43131e,#270c12)!important;color:#e0c79d!important;font-size:.75rem!important}
    .vintage-range-inputs input{height:68px!important;border:0!important;border-radius:0!important;background:#efe2cf!important;color:#3b0d1b!important;font-size:1.65rem!important;font-weight:900!important}

    .card-body{position:relative}.card-body-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.card-body-head .wine-name{flex:1;min-width:0}
    .card-corner-meta{display:flex;align-items:center;gap:5px;flex:0 0 auto;margin-top:-1px}
    .cellar-pill{padding:4px 7px;border:1px solid rgba(202,167,110,.62);border-radius:999px;background:#2f1118;color:#dfc89e;font-size:.58rem;font-weight:850;line-height:1;white-space:nowrap}
    .country-badge{width:25px;height:25px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(223,193,136,.7);border-radius:50%;background:#171313;font-size:17px;line-height:1;box-shadow:0 2px 5px rgba(0,0,0,.32)}
    .tag.dynamic-pill{border-color:color-mix(in srgb,var(--pill-bg) 70%,#d9c8ad 30%)!important;background:var(--pill-bg)!important;color:var(--pill-fg,#f2e5d0)!important;box-shadow:inset 0 1px rgba(255,255,255,.08)}
    @supports not (color:color-mix(in srgb,red,blue)){.tag.dynamic-pill{border-color:rgba(218,199,169,.38)!important}}

    @media(max-width:430px){
      .app-header{min-height:calc(86px + var(--safe-top))!important}.brand-stage{height:80px!important}
      main>.landing-tagline{bottom:calc(248px + var(--safe-bottom))!important}
      .dock-actions{min-height:62px!important;margin-top:8px!important;padding:2px 4px calc(2px + var(--safe-bottom))!important}
      .dock-btn{height:54px!important;min-height:54px!important}
      .decade-button-grid{gap:9px 8px}.decade-button{font-size:.78rem;padding:0 5px}.subwindow-content{padding:10px}
      .cellar-pill{font-size:.54rem;padding:4px 6px}.country-badge{width:23px;height:23px;font-size:16px}
    }

    /* WineStack v18.1 — focused visual and interaction refinements */
    body::before{background-size:90% auto!important}
    main>.landing-tagline{bottom:calc(273px + var(--safe-bottom))!important}
    .brand-eagle-image{transform:translateY(-2px)}
    .brand-eagle-caption{margin-top:-5px!important;transform:translateY(-2px)}
    .dock-btn .drawer-icon{transform:translateY(2px)}

    .price-line-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
    .drawer-title-icon.price-line-icon,.dock-btn[data-open="price"] .drawer-icon.price-line-icon{color:var(--v15-logo-warm)!important;filter:none!important}

    .sort-rail{
      right:6px;top:calc(86px + var(--safe-top));width:51px;padding:4px;
      border:1px solid rgba(214,188,142,.32);border-radius:12px;
      background:rgba(30,18,20,.64);box-shadow:-4px 7px 16px rgba(0,0,0,.3);
      -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    }
    .sort-rail button{
      width:41px;height:41px;margin:0 0 5px;padding:3px;border-radius:11px;gap:0;
      box-shadow:inset 0 0 0 1px rgba(239,196,111,.22),0 2px 5px rgba(0,0,0,.22);
    }
    .sort-rail button svg{width:27px;height:27px}
    .sort-pair{display:inline-flex;align-items:center;justify-content:center;gap:1px;line-height:.72}
    .sort-stack{font-family:Georgia,serif;font-size:.91rem;line-height:.72;text-align:center}
    .sort-dollar{font-family:Georgia,serif;font-size:1.48rem;line-height:1}
    .sort-arrow{font-size:1.18rem;line-height:1;margin-left:-1px;font-weight:700}

    .vintage-single-window{max-width:220px!important}
    .vintage-single-window .subwindow-title{min-height:28px;padding:4px 7px 3px;font-size:.72rem}
    .vintage-single-window .subwindow-content{padding:7px!important}
    .single-vintage-input{min-height:44px!important;height:44px!important;font-size:1.35rem!important;border-radius:10px!important}
    .decade-button{position:relative;justify-content:center!important;font-size:1rem!important;font-weight:850!important;text-align:center;padding:0 28px 0 10px!important}
    .decade-button svg{position:absolute;right:11px;width:15px;height:15px}
    .vintage-year-button{font-size:1.12rem!important;font-weight:950!important;color:#3c0d1b!important}
    .vintage-year-button.selected{color:#efdfc4!important}
    .vintage-range-inputs>div{border-radius:13px!important;overflow:hidden}
    .vintage-range-inputs label{
      min-height:27px!important;padding:5px 9px 4px!important;border-radius:11px 11px 0 0!important;
      color:#e0c79d!important;font-size:.67rem!important;line-height:1.05!important;
    }
    .vintage-range-inputs input{height:48px!important;font-size:1.15rem!important;padding:5px 9px!important}

    .country-stack{width:27px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;flex:0 0 27px}
    .country-badge{display:block;width:27px!important;height:27px!important;border:0!important;border-radius:50%;background:transparent;box-shadow:0 2px 5px rgba(0,0,0,.28);object-fit:cover}
    .country-code{width:27px;color:#d7c29e;font-size:.49rem;font-weight:900;letter-spacing:.04em;line-height:1;text-align:center}

    @media(max-width:430px){
      main>.landing-tagline{bottom:calc(273px + var(--safe-bottom))!important}
      .vintage-single-window{max-width:205px!important}
      .decade-button{font-size:.9rem!important;padding-right:25px!important}
      .country-stack{width:25px;flex-basis:25px}.country-badge{width:25px!important;height:25px!important}.country-code{width:25px}
    }

  

    /* WineStack v18.2 — icon, Vintage drawer, and header spacing refinements */
    .brand-eagle-image{
      transform:translateY(-9px)!important;
    }
    .brand-eagle-caption{
      margin-top:1px!important;
      transform:translateY(-1px)!important;
    }

    .vintage-single-window{
      max-width:182px!important;
    }
    .vintage-single-window .subwindow-content{
      padding:7px 9px!important;
    }
    .single-vintage-input{
      width:138px!important;
      max-width:100%!important;
      margin:0 auto!important;
      display:block!important;
    }
    .single-vintage-input::placeholder{
      color:transparent!important;
      opacity:0!important;
    }

    .vintage-range-inputs{
      grid-template-columns:repeat(2,minmax(0,164px))!important;
      justify-content:center!important;
      gap:14px!important;
    }
    .vintage-range-inputs>div{
      width:100%!important;
      max-width:164px!important;
      margin:0 auto!important;
    }
    .vintage-range-inputs label{
      color:#e0c79d!important;
      -webkit-text-fill-color:#e0c79d!important;
      opacity:1!important;
      text-shadow:none!important;
    }

    @media(max-width:430px){
      .vintage-single-window{max-width:174px!important}
      .single-vintage-input{width:130px!important}
      .vintage-range-inputs{grid-template-columns:repeat(2,minmax(0,148px))!important;gap:12px!important}
      .vintage-range-inputs>div{max-width:148px!important}
    }


    /* WineStack v18.3 — drawer typography, persistent dock, and open-state glow */
    .vintage-range-inputs label{
      min-height:22px!important;
      padding:3px 6px 2px!important;
      display:grid!important;
      place-items:center!important;
      text-align:center!important;
      line-height:1!important;
      font-size:.64rem!important;
    }
    .single-vintage-input{
      text-align:center!important;
      font-size:1.72rem!important;
      font-weight:950!important;
      padding-left:4px!important;
      padding-right:4px!important;
    }
    .brand-eagle-image{
      width:104px!important;
      height:86px!important;
      transform:translateY(-11px)!important;
    }
    .brand-eagle-caption{
      font-size:.72rem!important;
      margin-top:2px!important;
      transform:translateY(-1px)!important;
    }
    .header-sort-toggle span{
      margin-top:2px!important;
      transform:translateY(2px)!important;
    }

    /* The dedicated persistent dock below is the only dock promoted above an
       open drawer. The ordinary landing dock remains inside the bottom area. */
    body.drawer-open section.drawer{
      padding-bottom:calc(66px + var(--safe-bottom))!important;
    }
    body.drawer-open .drawer-body{
      max-height:calc(86vh - 148px - var(--safe-bottom))!important;
      padding-bottom:calc(80px + var(--safe-bottom))!important;
    }
    .dock-btn.active-filter,.dock-btn.active-filter .drawer-icon{
      filter:none!important;
      animation:none!important;
      color:var(--v15-logo-warm)!important;
    }
    .dock-btn.drawer-open-highlight{
      color:var(--v15-logo-warm-active)!important;
    }
    .dock-btn.drawer-open-highlight .drawer-icon{
      color:var(--v15-logo-warm-active)!important;
      filter:drop-shadow(0 0 3px rgba(242,223,181,.82)) drop-shadow(0 0 9px rgba(190,143,72,.62))!important;
      animation:v15IconGlow 3.4s ease-in-out infinite!important;
    }
    @media(prefers-reduced-motion:reduce){
      .dock-btn.drawer-open-highlight .drawer-icon{animation:none!important}
    }
    @media(max-width:430px){
      .brand-eagle-image{width:104px!important;height:86px!important}
      .brand-eagle-caption{font-size:.72rem!important}
      body.drawer-open section.drawer{padding-bottom:calc(66px + var(--safe-bottom))!important}
      body.drawer-open .drawer-body{max-height:calc(86vh - 148px - var(--safe-bottom))!important}
    }


    /* WineStack v18.4 — repair header emblem and persistent drawer dock */
    .brand-eagle-mark{display:none!important;}
    .brand-eagle-image{
      display:block!important;
      width:100px!important;
      height:72px!important;
      object-fit:contain!important;
      object-position:center!important;
      margin:0 auto!important;
      transform:translateY(-7px)!important;
      mix-blend-mode:normal!important;
      filter:drop-shadow(0 3px 5px rgba(0,0,0,.58))!important;
    }
    .brand-eagle-caption{
      margin-top:-7px!important;
      font-size:.66rem!important;
      line-height:1!important;
    }
    .persistent-drawer-dock{
      display:none;
      position:fixed;
      left:0;
      right:0;
      bottom:0;
      z-index:2147483647;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:0;
      width:100vw;
      min-height:66px;
      padding:6px 4px calc(6px + var(--safe-bottom));
      background:linear-gradient(180deg,#4b2022 0%,#351517 57%,#241013 100%);
      box-shadow:0 -7px 20px rgba(0,0,0,.4),inset 0 1px rgba(177,139,95,.2);
      border-top:1px solid rgba(177,139,95,.28);
    }
    body.drawer-open .persistent-drawer-dock{display:grid;}
    .persistent-drawer-dock .dock-btn{
      min-height:54px!important;
      height:54px!important;
      border:0!important;
      border-right:1px solid rgba(216,200,171,.12)!important;
      border-radius:0!important;
      background:transparent!important;
      box-shadow:none!important;
      opacity:1!important;
      animation:none!important;
      pointer-events:auto!important;
    }
    .persistent-drawer-dock .dock-btn:last-child{border-right:0!important;}
    body.drawer-open section.drawer{
      padding-bottom:calc(74px + var(--safe-bottom))!important;
    }
    body.drawer-open .drawer-body{
      padding-bottom:calc(86px + var(--safe-bottom))!important;
    }
    @media(max-width:430px){
      .brand-eagle-image{width:100px!important;height:72px!important;}
      .brand-eagle-caption{font-size:.66rem!important;}
    }

    /* WineStack v18.7 — restore approved emblem, drawer toggles, and final typography tuning */
    /* Restore the approved v18.3 Double Eagle mask treatment. */
    .brand-eagle-image{display:none!important;}
    .brand-eagle-mark{
      display:block!important;
      width:104px!important;
      height:78px!important;
      margin:0 auto!important;
      transform:translateY(-11px)!important;
      background:#b18b5f!important;
      opacity:.9!important;
      -webkit-mask:url("../assets/double-eagle-header-logo.png") center/contain no-repeat!important;
      mask:url("../assets/double-eagle-header-logo.png") center/contain no-repeat!important;
      filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))!important;
    }
    .brand-eagle-caption{
      margin-top:-15px!important;
      transform:translateY(-4px)!important;
      font-size:.72rem!important;
      line-height:1!important;
    }

    /* Make the Single Vintage value unmistakably centered and larger. */
    .single-vintage-input{
      text-align:center!important;
      text-align-last:center!important;
      font-size:2rem!important;
      font-weight:950!important;
      padding-left:0!important;
      padding-right:0!important;
      -moz-appearance:textfield!important;
      appearance:textfield!important;
    }
    .single-vintage-input::-webkit-outer-spin-button,
    .single-vintage-input::-webkit-inner-spin-button{
      -webkit-appearance:none!important;
      margin:0!important;
    }

    /* The replacement Price icon receives the same open-drawer glow as the other icons. */
    .dock-btn.drawer-open-highlight .drawer-icon.price-line-icon,
    .persistent-drawer-dock .dock-btn.drawer-open-highlight .drawer-icon.price-line-icon{
      color:var(--v15-logo-warm-active)!important;
      filter:drop-shadow(0 0 3px rgba(242,223,181,.82)) drop-shadow(0 0 9px rgba(190,143,72,.62))!important;
      animation:v15IconGlow 3.4s ease-in-out infinite!important;
    }
    @media(prefers-reduced-motion:reduce){
      .dock-btn.drawer-open-highlight .drawer-icon.price-line-icon,
      .persistent-drawer-dock .dock-btn.drawer-open-highlight .drawer-icon.price-line-icon{animation:none!important}
    }



    /* WineStack v18.7 — final Vintage typography and header-logo positioning */
    .single-vintage-input{
      height:44px!important;
      min-height:44px!important;
      line-height:44px!important;
      font-size:2.55rem!important;
      font-weight:950!important;
      text-align:center!important;
      text-align-last:center!important;
      padding:0!important;
    }
    .vintage-range-inputs label{
      width:100%!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      text-align:center!important;
      padding-left:0!important;
      padding-right:0!important;
    }
    .brand-eagle-mark{
      transform:translateY(-14px)!important;
    }



/* WineStack v18.7 — final Vintage typography and header alignment */
.drawer-vintage .single-vintage-input{
  height:58px!important;
  min-height:58px!important;
  width:138px!important;
  max-width:100%!important;
  padding:0 2px!important;
  text-align:center!important;
  text-align-last:center!important;
  font-size:2.65rem!important;
  font-weight:950!important;
  line-height:58px!important;
  letter-spacing:-.035em!important;
  color:#3a0c19!important;
  -webkit-text-fill-color:#3a0c19!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
}
.drawer-vintage .single-vintage-input::-webkit-inner-spin-button,
.drawer-vintage .single-vintage-input::-webkit-outer-spin-button{
  -webkit-appearance:none!important;
  margin:0!important;
}
.drawer-vintage .vintage-range-inputs label{
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  justify-content:center!important;
  min-height:20px!important;
  height:20px!important;
  padding:0 4px!important;
  margin:0!important;
  text-align:center!important;
  line-height:1!important;
}
.drawer-vintage .vintage-range-inputs input{
  text-align:center!important;
  text-align-last:center!important;
  padding-left:2px!important;
  padding-right:2px!important;
}
.brand-eagle-image{transform:translateY(-13px)!important;}
@media(max-width:430px){
  .drawer-vintage .single-vintage-input{font-size:2.55rem!important;}
  .brand-eagle-image{transform:translateY(-13px)!important;}
}



/* WineStack v18.9 — compact wine-card world/flag stack */
.card-body{
  position:relative!important;
  min-height:0!important;
  padding:9px 118px 10px 11px!important;
}
.card-body-head{align-items:flex-start!important;}
.card-side-meta{
  position:absolute;
  top:10px;
  right:10px;
  width:102px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  z-index:2;
}
.cellar-pill{
  padding:6px 11px!important;
  font-size:.66rem!important;
  line-height:1!important;
  letter-spacing:.055em!important;
  border-width:1.25px!important;
  text-transform:uppercase;
  text-align:center;
}
.country-stack-side{
  width:30px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  margin:0!important;
}
.country-badge-vignette{
  position:relative;
  display:block;
  width:30px;
  height:30px;
  overflow:hidden;
  border-radius:50%;
  box-shadow:0 2px 5px rgba(0,0,0,.28);
}
.country-badge-vignette::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  pointer-events:none;
  background:radial-gradient(circle at 50% 46%,rgba(255,255,255,.13) 0%,rgba(255,255,255,.04) 38%,rgba(0,0,0,.10) 68%,rgba(0,0,0,.42) 100%);
}
.country-badge-vignette .country-badge{
  display:block!important;
  width:30px!important;
  height:30px!important;
  border:0!important;
  border-radius:50%!important;
  object-fit:cover!important;
  filter:none!important;
  opacity:1!important;
  box-shadow:none!important;
}
.country-stack-side .country-code{
  width:30px;
  color:#d7c29e!important;
  opacity:1!important;
  font-size:.49rem;
  font-weight:900;
  letter-spacing:.04em;
  line-height:1;
  text-align:center;
}
@media(max-width:430px){
  .card-body{padding:8px 108px 9px 10px!important;}
  .card-side-meta{top:9px;right:9px;width:94px;gap:6px;}
  .cellar-pill{padding:5px 9px!important;font-size:.61rem!important;}
  .country-badge-vignette,.country-badge-vignette .country-badge{width:28px!important;height:28px!important;}
  .country-stack-side,.country-stack-side .country-code{width:28px;}
}



/* WineStack v18.11 — unified flat data pills */
.card-body{
  padding-right:176px!important;
}
.card-side-meta{
  top:9px!important;
  right:10px!important;
  width:160px!important;
  align-items:flex-end!important;
  gap:6px!important;
}
.card-meta-topline{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:nowrap;
}
.cellar-pill,
.bottle-size-badge,
.cooler-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:25px;
  padding:5px 10px!important;
  border-radius:999px;
  border:1.25px solid;
  font-size:.66rem!important;
  font-weight:900;
  line-height:1;
  letter-spacing:.055em;
  white-space:nowrap;
  text-transform:uppercase;
  text-align:center;
  box-shadow:0 1px 3px rgba(0,0,0,.24);
}
.cellar-pill{
  color:#ead8b8!important;
  background:#3a1822!important;
  border-color:#9b6c46!important;
}
.bottle-size-badge.copper{
  color:#f6ddc6;
  background:#743b28;
  border-color:#b8704c;
}
.bottle-size-badge.silver{
  color:#f0f1f2;
  background:#555b64;
  border-color:#9ca3ad;
}
.bottle-size-badge.gold{
  color:#f7e7b6;
  background:#80631d;
  border-color:#b99a45;
}
.cooler-pill{
  align-self:flex-end;
  color:#ffe2bd;
  background:#8a4a20;
  border-color:#c77b3f;
}
.country-stack-side{
  align-self:flex-end!important;
  margin-top:0!important;
}
.country-badge-vignette::after{
  background:radial-gradient(circle at 47% 43%,rgba(255,255,255,.22) 0%,rgba(255,255,255,.10) 24%,rgba(0,0,0,.04) 45%,rgba(0,0,0,.28) 72%,rgba(0,0,0,.52) 100%)!important;
  box-shadow:inset 0 0 7px rgba(0,0,0,.52)!important;
}
.country-badge{
  filter:saturate(1.08) brightness(1.03) contrast(1.06)!important;
}
@media(max-width:430px){
  .card-body{padding-right:164px!important;}
  .card-side-meta{width:149px!important;}
  .cellar-pill,.bottle-size-badge,.cooler-pill{
    min-height:24px;
    padding:5px 8px!important;
    font-size:.61rem!important;
  }
}



/* WineStack v18.12 — cooler pill alignment and card clipping patch */
.card-body{
  min-height:112px!important;
  padding-right:182px!important;
}
.card-side-meta{
  width:168px!important;
  align-items:flex-end!important;
}
.card-meta-topline{
  align-items:flex-start!important;
}
.world-meta-column{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
}
.world-meta-column .cellar-pill,
.world-meta-column .cooler-pill{
  align-self:center!important;
}
.cooler-pill{
  color:#f6dfbf!important;
  background:#4b2619!important;
  border-color:#9f5f36!important;
  font-size:.70rem!important;
  letter-spacing:.06em!important;
  min-height:25px!important;
  padding:5px 11px!important;
}
.world-meta-column .country-stack-side{
  align-self:center!important;
  margin-top:0!important;
}
.card-body:has(.cooler-pill){
  min-height:142px!important;
  padding-bottom:14px!important;
}
.card-body:has(.cooler-pill) .country-stack-side{
  margin-bottom:2px!important;
}
@media(max-width:430px){
  .card-body{padding-right:171px!important;min-height:108px!important;}
  .card-side-meta{width:157px!important;}
  .cooler-pill{font-size:.66rem!important;padding:5px 9px!important;}
  .card-body:has(.cooler-pill){min-height:138px!important;}
}



/* WineStack v18.13 — data-pill legibility and brighter drawer header surfaces */
.cellar-pill,
.bottle-size-badge,
.cooler-pill{
  min-height:27px!important;
  padding:6px 11px!important;
  font-size:.74rem!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
  border-width:1.5px!important;
}
.cellar-pill{
  background:#261017!important;
  border-color:#c28b58!important;
  color:#f0dfc2!important;
}
.bottle-size-badge.copper{
  background:#4e241b!important;
  border-color:#d08358!important;
  color:#f8e0cc!important;
}
.bottle-size-badge.silver{
  background:#383c43!important;
  border-color:#c0c6ce!important;
  color:#f4f5f6!important;
}
.bottle-size-badge.gold{
  background:#59430f!important;
  border-color:#d4b35a!important;
  color:#f8e9bb!important;
}
.cooler-pill{
  background:#2f1711!important;
  border-color:#cf8450!important;
  color:#f7e4c9!important;
  font-size:.76rem!important;
}
.country-code{
  font-size:.62rem!important;
  line-height:1.05!important;
  letter-spacing:.055em!important;
}
/* Brighter burgundy hue for every drawer's primary header region. */
section.drawer,
section.drawer.drawer-price,
section.drawer.drawer-vintage,
section.drawer.drawer-region,
section.drawer.drawer-grape{
  background:linear-gradient(180deg,#431022 0%,#2e0917 100%)!important;
}
/* Brighter sub-window and compact field header bars throughout all drawers. */
.subwindow-title,
.vintage-range-inputs label,
.drawer .range-inputs label{
  background:linear-gradient(180deg,#59172b 0%,#3b0d1d 100%)!important;
}
/* Keep header lettering consistent after the hue lift. */
.subwindow-title,
.vintage-range-inputs label,
.drawer .range-inputs label{
  color:#ead2aa!important;
}
@media(max-width:430px){
  .cellar-pill,.bottle-size-badge,.cooler-pill{
    min-height:26px!important;
    padding:5px 9px!important;
    font-size:.68rem!important;
  }
  .cooler-pill{font-size:.70rem!important;}
  .country-code{font-size:.58rem!important;}
}



/* WineStack v18.14 — backsplash scale, compact Single Vintage control, and search-icon color */
body::before{
  background-size:91.8% auto!important;
}
.drawer-vintage .vintage-single-window{
  max-width:155px!important;
}
.drawer-vintage .vintage-single-window .subwindow-content{
  padding:6px 8px!important;
}
.drawer-vintage .single-vintage-input{
  width:117px!important;
  height:49px!important;
  min-height:49px!important;
  line-height:49px!important;
  font-size:2.17rem!important;
  text-align:center!important;
  text-align-last:center!important;
  padding:0!important;
}
.search-leading-icon{
  color:#b9a586!important;
}
@media(max-width:430px){
  .drawer-vintage .vintage-single-window{max-width:148px!important;}
  .drawer-vintage .single-vintage-input{
    width:111px!important;
    height:49px!important;
    min-height:49px!important;
    line-height:49px!important;
    font-size:2.09rem!important;
  }
}



/* WineStack v18.15 — compact Vintage Range fields and larger backsplash */
body::before{
  background-size:99.15% auto!important;
}
.drawer-vintage .vintage-range-inputs input{
  height:41px!important;
  min-height:41px!important;
  box-sizing:border-box!important;
  padding:0 2px!important;
  line-height:41px!important;
  text-align:center!important;
  text-align-last:center!important;
  vertical-align:middle!important;
}
.drawer-vintage .vintage-range-inputs input::-webkit-inner-spin-button,
.drawer-vintage .vintage-range-inputs input::-webkit-outer-spin-button{
  -webkit-appearance:none!important;
  margin:0!important;
}



/* WineStack v18.16 — editorial refinements */
/* Slightly smaller Double Eagle mark while retaining its approved vertical position. */
.brand-eagle-image{
  transform:translateY(-13px) scale(.94)!important;
  transform-origin:center top!important;
}

/* Cream quick-filter controls; selected controls retain a clear inverted state. */
.drawer-grape .grape-quick,
.drawer-price .price-quick-grid .bubble,
.drawer-price .high-price-grid .bubble{
  background:#eadfc9!important;
  color:#4a1021!important;
  border-color:#5a4c45!important;
  box-shadow:0 2px 5px rgba(39,22,20,.14)!important;
}
.drawer-grape .grape-quick.active,
.drawer-price .price-quick-grid .bubble.active,
.drawer-price .high-price-grid .bubble.active{
  background:#4a1021!important;
  color:#eadfc9!important;
  border-color:#a98a60!important;
  box-shadow:0 0 8px rgba(207,174,120,.24)!important;
}

/* Subtle illumination around applied-filter chips. */
.filter-window .chip{
  box-shadow:0 0 7px rgba(221,184,119,.28),0 0 14px rgba(127,51,67,.14)!important;
}

/* Compact Vintage Range min/max controls, centered at 75% of their prior size. */
.drawer-vintage .vintage-range-inputs{
  grid-template-columns:repeat(2,minmax(0,123px))!important;
  gap:12px!important;
}
.drawer-vintage .vintage-range-inputs>div{
  max-width:123px!important;
}
.drawer-vintage .vintage-range-inputs input{
  height:31px!important;
  min-height:31px!important;
  line-height:31px!important;
  font-size:1rem!important;
  padding:0 2px!important;
  text-align:center!important;
  text-align-last:center!important;
}

/* Taller slider handles across Price and Vintage drawers. */
.drawer-price .precision-range input[type=range]::-webkit-slider-thumb,
.drawer-vintage .precision-range input[type=range]::-webkit-slider-thumb{
  height:32px!important;
}
.drawer-price .precision-range input[type=range]::-moz-range-thumb,
.drawer-vintage .precision-range input[type=range]::-moz-range-thumb{
  height:32px!important;
}

@media(max-width:430px){
  .drawer-vintage .vintage-range-inputs{grid-template-columns:repeat(2,minmax(0,111px))!important;gap:10px!important}
  .drawer-vintage .vintage-range-inputs>div{max-width:111px!important}
}



/* WineStack v18.17 — completed editorial animation and interaction batch */
:root{
  --drawer-slide-duration:.62s;
  --drawer-fade-duration:.42s;
  --landing-slide-duration:2.8s;
  --backsplash-reveal-duration:2.15s;
}

/* One slower, shared opening and closing motion for every drawer. */
section.drawer{
  transition:
    transform var(--drawer-slide-duration) cubic-bezier(.18,.78,.22,1),
    opacity var(--drawer-fade-duration) ease!important;
}
section.drawer.open{
  transition:
    transform var(--drawer-slide-duration) cubic-bezier(.18,.78,.22,1),
    opacity var(--drawer-fade-duration) ease!important;
}
#backdrop.backdrop{
  transition:opacity var(--drawer-fade-duration) ease!important;
}
#backdrop.backdrop.open{
  transition:opacity var(--drawer-fade-duration) ease!important;
}

/* A more visible glow and a full-pill touch target for applied filters. */
.filter-window .chip{
  cursor:pointer;
  box-shadow:
    0 0 10px rgba(238,201,130,.58),
    0 0 22px rgba(145,52,73,.38),
    inset 0 0 7px rgba(255,230,178,.16)!important;
  transition:filter .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
.filter-window .chip:active{
  transform:scale(.97);
  filter:brightness(1.12);
}

/* Shift Sort left and widen its rail so their centers remain aligned. */
.header-sort-toggle{
  right:18px!important;
}
.sort-rail{
  right:6px!important;
  width:78px!important;
  padding:5px 10px 10px!important;
}
.sort-rail-title{
  margin:-5px -10px 8px!important;
}
.sort-rail button{
  width:56px!important;
  height:56px!important;
}

/* Correct the two visible header-logo treatments. */
.brand-ws-image{
  width:91px!important;
  height:72px!important;
  transform:translateY(-3px)!important;
  transform-origin:center!important;
}
.brand-eagle-mark{
  width:99px!important;
  height:74px!important;
  transform:translateY(-14px)!important;
  transform-origin:center!important;
}

/* Coordinated landing entrance: header down, complete chin/dock up. */
@keyframes landingHeaderSlideDown{
  from{transform:translate3d(0,-100%,0)}
  to{transform:translate3d(0,0,0)}
}
@keyframes landingDockSlideUp{
  from{transform:translate3d(0,100%,0)}
  to{transform:translate3d(0,0,0)}
}
.app-header{
  animation:landingHeaderSlideDown var(--landing-slide-duration) cubic-bezier(.22,.76,.2,1) both!important;
}
.bottom-area{
  animation:landingDockSlideUp var(--landing-slide-duration) cubic-bezier(.22,.76,.2,1) both!important;
}
.bottom-area .dock-btn,
.bottom-area .apply-btn,
.bottom-area .box-label,
.bottom-area .clear-input{
  opacity:1!important;
  animation:none!important;
}
.bottom-area input::placeholder{
  opacity:1!important;
  animation:none!important;
}

/* Fade the initial WineStack logo only after the header finishes descending. */
.brand-stage{
  opacity:0;
  animation:brandStageFade 1.25s ease var(--landing-slide-duration) forwards!important;
}

/* The swap flare now blooms from, and returns to, the center of the logos. */
.brand-sun-flare{
  left:50%!important;
  top:50%!important;
  bottom:auto!important;
  width:34%!important;
  height:82%!important;
  border-radius:50%!important;
  transform:translate(-50%,-50%) scale(.12);
  background:radial-gradient(circle,
    rgba(255,250,219,.98) 0%,
    rgba(255,218,135,.86) 18%,
    rgba(232,158,52,.48) 42%,
    rgba(232,158,52,0) 72%)!important;
  filter:blur(1.5px) drop-shadow(0 0 15px rgba(255,194,77,.82))!important;
}
.brand-stage.flare-active .brand-sun-flare{
  animation:centerSunFlare 1.2s cubic-bezier(.2,.72,.2,1) both!important;
}
@keyframes centerSunFlare{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.12)}
  34%{opacity:.9;transform:translate(-50%,-50%) scale(.82)}
  52%{opacity:1;transform:translate(-50%,-50%) scale(1.38)}
  72%{opacity:.72;transform:translate(-50%,-50%) scale(.9)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(.12)}
}

/* Thread-like quote treatment with sequential handwritten letter reveals. */
main>.landing-tagline{
  font-family:"Snell Roundhand","Brush Script MT","Segoe Script",Georgia,serif!important;
  font-size:1rem!important;
  font-style:italic!important;
  font-weight:500!important;
  letter-spacing:.045em!important;
  color:#b9a17a!important;
  opacity:.76!important;
  animation:none!important;
  text-shadow:
    -1px -1px 0 rgba(255,244,211,.18),
    1px 1px 1px rgba(18,5,8,.82),
    0 0 3px rgba(164,122,72,.22)!important;
  -webkit-text-stroke:.2px rgba(112,76,43,.44);
}
.landing-tagline .stitched-letter,
.landing-tagline .stitched-space{
  display:inline-block;
  opacity:0;
  clip-path:inset(0 100% 0 0);
  transform:translateY(1px);
  animation:stitchedLetterWrite .34s cubic-bezier(.2,.72,.22,1) forwards;
  animation-delay:var(--letter-delay);
}
.landing-tagline .stitched-space{
  min-width:.28em;
}
@keyframes stitchedLetterWrite{
  0%{opacity:0;clip-path:inset(0 100% 0 0);filter:blur(.8px)}
  30%{opacity:.7}
  100%{opacity:1;clip-path:inset(0 0 0 0);transform:translateY(0);filter:blur(0)}
}

@media(prefers-reduced-motion:reduce){
  .app-header,.bottom-area,.brand-stage{
    animation:none!important;
    transform:none!important;
    opacity:1!important;
  }
  .brand-stage.flare-active .brand-sun-flare{
    display:none!important;
    animation:none!important;
  }
  .landing-tagline .stitched-letter,
  .landing-tagline .stitched-space{
    opacity:1!important;
    clip-path:inset(0 0 0 0)!important;
    transform:none!important;
    filter:none!important;
    animation:none!important;
  }
}

/* WineStack v18.18 — glow, landing quote, flare, and drawer-close polish */
:root{
  --drawer-close-duration:.78s;
  --drawer-close-fade-duration:.58s;
  --backsplash-reveal-duration:2.65s;
}

/* Match the Sort invitation with a continuous, breathing filter glow. */
.filter-window .chip{
  transform-origin:center;
  will-change:box-shadow,filter,transform;
  animation:appliedFilterInviteGlow 2.4s ease-in-out infinite!important;
}
@keyframes appliedFilterInviteGlow{
  0%,100%{
    filter:
      brightness(.98)
      drop-shadow(0 0 2px rgba(218,174,95,.28))
      drop-shadow(0 0 4px rgba(126,39,62,.18));
    transform:scale(1);
    box-shadow:
      0 0 6px rgba(218,174,95,.34),
      0 0 13px rgba(126,39,62,.25),
      inset 0 0 5px rgba(255,229,176,.12);
  }
  50%{
    filter:
      brightness(1.12)
      drop-shadow(0 0 7px rgba(248,213,145,.78))
      drop-shadow(0 0 12px rgba(163,57,83,.48));
    transform:scale(1.018);
    box-shadow:
      0 0 12px rgba(248,213,145,.84),
      0 0 25px rgba(163,57,83,.58),
      inset 0 0 8px rgba(255,239,203,.24);
  }
}
.filter-window .chip:active{
  animation:none!important;
  transform:scale(.97)!important;
}

/* The backsplash reveal now takes an additional half second. */
body::before{
  animation-duration:var(--backsplash-reveal-duration)!important;
}

/* Lock a dedicated embroidered quote asset directly beneath the backsplash logo. */
main>.landing-tagline{
  --stitched-quote-width:min(44vw,177px);
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  /* The quote belongs to the fixed backsplash composition, not the bottom
     control stack. Keeping it independent of the iPhone safe area prevents
     the installed app from lifting it into the WineStack wordmark. */
  bottom:309px!important;
  width:var(--stitched-quote-width)!important;
  height:calc(var(--stitched-quote-width) * .1521)!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  z-index:0!important;
  pointer-events:none!important;
  user-select:none!important;
  overflow:visible!important;
  opacity:1!important;
  transform:translate3d(-50%,0,0)!important;
  animation:none!important;
}
.stitched-quote-reveal{
  position:relative;
  display:block;
  width:0;
  height:100%;
  overflow:hidden;
  will-change:width;
  animation:stitchedQuoteWrite 3.7s cubic-bezier(.42,0,.22,1) var(--backsplash-reveal-duration) forwards;
}
.stitched-quote-reveal::after{
  content:"";
  position:absolute;
  top:5%;
  right:-1px;
  display:block;
  width:8px;
  height:90%;
  opacity:0;
  pointer-events:none;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(238,194,105,.22) 24%,
    rgba(255,229,165,.72) 52%,
    rgba(204,145,56,.2) 78%,
    transparent 100%);
  filter:blur(1.8px);
  animation:stitchedRevealEdgeGlow 3.7s ease var(--backsplash-reveal-duration) both;
}
@keyframes stitchedRevealEdgeGlow{
  0%{opacity:0;transform:scaleY(.72)}
  7%{opacity:.46;transform:scaleY(.9)}
  18%{opacity:.82;transform:scaleY(1)}
  78%{opacity:.72;transform:scaleY(1)}
  91%{opacity:.34;transform:scaleY(.9)}
  100%{opacity:0;transform:scaleY(.72)}
}
.stitched-quote-image{
  display:block;
  width:var(--stitched-quote-width);
  height:auto;
  max-width:none;
  opacity:.92;
  filter:brightness(.72) saturate(.82) sepia(.16) drop-shadow(0 1px 1px rgba(21,5,7,.72));
}
@keyframes stitchedQuoteWrite{
  from{width:0}
  to{width:100%}
}

/* A smaller, softer solar bloom with one continuous expansion and return. */
.brand-sun-flare{
  width:40.5%!important;
  height:93.75%!important;
  background:
    radial-gradient(circle at 50% 50%,
      rgba(255,255,240,.96) 0 7%,
      rgba(255,239,190,.82) 15%,
      rgba(247,195,91,.48) 34%,
      rgba(218,131,32,.18) 55%,
      rgba(218,131,32,0) 76%),
    repeating-conic-gradient(from 8deg at 50% 50%,
      rgba(255,225,153,.18) 0 3deg,
      rgba(255,225,153,0) 3deg 13deg)!important;
  background-position:50% 50%,48% 52%!important;
  filter:blur(1.7px) drop-shadow(0 0 11px rgba(255,194,77,.58))!important;
  will-change:transform,opacity,filter,background-position;
}
@keyframes centerSunFlare{
  0%{
    opacity:0;
    transform:translate3d(-50%,-50%,0) scale(.18) rotate(-4deg);
    filter:blur(2.4px) drop-shadow(0 0 4px rgba(255,194,77,.22));
    background-position:50% 50%,45% 55%;
  }
  50%{
    opacity:.96;
    transform:translate3d(-50%,-50%,0) scale(1) rotate(3deg);
    filter:blur(1.25px) drop-shadow(0 0 13px rgba(255,203,99,.7));
    background-position:50% 50%,55% 45%;
  }
  100%{
    opacity:0;
    transform:translate3d(-50%,-50%,0) scale(.18) rotate(-4deg);
    filter:blur(2.4px) drop-shadow(0 0 4px rgba(255,194,77,.22));
    background-position:50% 50%,45% 55%;
  }
}
.brand-stage.flare-active .brand-sun-flare{
  animation:centerSunFlare 1.45s cubic-bezier(.37,0,.63,1) both!important;
}

/* Reduce only the Double Eagle emblem by a further ten percent. */
.brand-eagle-mark{
  width:89px!important;
  height:67px!important;
}

/* Avoid WebKit clip-path ghosts while retaining a left-to-right writing motion. */
@keyframes stitchedLetterWrite{
  0%{opacity:0;filter:none}
  45%{opacity:.62;filter:none}
  100%{opacity:1;filter:none}
}
.landing-tagline .written{
  opacity:1!important;
  animation:none!important;
  transform:none!important;
  clip-path:none!important;
  filter:none!important;
}

/* Preserve the approved opening motion, while giving closing its own smooth path. */
section.drawer{
  transition:
    transform var(--drawer-close-duration) cubic-bezier(.32,0,.18,1),
    opacity .28s ease .42s!important;
}
section.drawer.open{
  transition:
    transform var(--drawer-slide-duration) cubic-bezier(.18,.78,.22,1),
    opacity var(--drawer-fade-duration) ease!important;
}
#backdrop.backdrop{
  transition:opacity var(--drawer-close-fade-duration) ease!important;
}
#backdrop.backdrop.open{
  transition:opacity var(--drawer-fade-duration) ease!important;
}
body.drawer-closing .persistent-drawer-dock{
  display:grid;
}
body.drawer-closing section.drawer{
  padding-bottom:calc(74px + var(--safe-bottom))!important;
}
body.drawer-closing .drawer-body{
  padding-bottom:calc(86px + var(--safe-bottom))!important;
}

/* Keep the normal and drawer-state docks on one identical, fixed footprint. */
.dock-actions,
.persistent-drawer-dock{
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100vw!important;
  min-height:62px!important;
  margin-left:0!important;
  margin-right:0!important;
  padding:2px 4px calc(2px + var(--safe-bottom))!important;
  box-sizing:border-box!important;
}
.persistent-drawer-dock{
  transform:none!important;
  -webkit-transform:none!important;
  border:0!important;
  border-top:0!important;
  box-shadow:inset 0 1px rgba(177,139,95,.2)!important;
}
.persistent-drawer-dock::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  display:block;
  height:1px;
  background:var(--v172-metal-line)!important;
  opacity:.82;
  box-shadow:none!important;
  pointer-events:none;
  z-index:4;
}
.persistent-drawer-dock .dock-btn{
  position:relative!important;
  width:auto!important;
  min-width:0!important;
  height:54px!important;
  min-height:54px!important;
  margin:0!important;
  border:0!important;
  border-right:0!important;
}
.persistent-drawer-dock .dock-btn + .dock-btn::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:1px;
  background:rgba(216,200,171,.10);
  box-shadow:none;
  pointer-events:none;
  z-index:2;
}
.persistent-drawer-dock .dock-btn + .dock-btn{
  padding-left:3px!important;
  padding-right:2px!important;
}
html.drawer-closing,
body.drawer-closing{
  overflow:hidden!important;
}
body.drawer-closing .bottom-area,
body.drawer-closing .app-header{
  filter:none!important;
  -webkit-filter:none!important;
  visibility:visible!important;
  opacity:1!important;
}
/* Keep the fixed search controls crisp above the dimming layer, while the
   higher drawer layer still covers them until its closing edge passes. */
body.drawer-open .bottom-area,
body.drawer-closing .bottom-area{
  z-index:2147483500!important;
  filter:none!important;
  -webkit-filter:none!important;
}
/* The legacy dock and the persistent drawer dock must never render together.
   An older high-specificity drawer rule makes the legacy dock four pixels
   taller, allowing its edge and shadow to flash behind the persistent dock. */
body.drawer-open .bottom-area .dock-actions,
body.drawer-closing .bottom-area .dock-actions{
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  box-shadow:none!important;
}
/* Keep both resting and drawer-state dock transitions crisp. Earlier dock
   shadows extended upward into the search controls and drawer surface. */
.bottom-area .dock-actions{
  box-shadow:inset 0 1px rgba(177,139,95,.12)!important;
}
.bottom-area .dock-actions::before{
  box-shadow:none!important;
}
.app-header,
.bottom-area,
.persistent-drawer-dock,
section.drawer{
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  transform-style:preserve-3d;
}

@media(prefers-reduced-motion:reduce){
  .filter-window .chip{
    animation:none!important;
    transform:none!important;
    filter:none!important;
  }
  .stitched-quote-reveal{
    width:100%!important;
    animation:none!important;
  }
  .stitched-quote-reveal::after{display:none!important;}
}
