@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&display=swap";@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,500;8..60,600;8..60,700&display=swap";.age-gate{z-index:100000;-webkit-backdrop-filter:blur(14px);background:#fcf9f359;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.age-gate__card{text-align:center;background:#fff;border-radius:28px;width:min(520px,100%);padding:40px 36px 32px;box-shadow:0 24px 60px #28140f2e}.age-gate__title{color:#1a1a1a;letter-spacing:.02em;margin:0 0 18px;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(2.6rem,6vw,3.4rem);font-weight:700;line-height:1}.age-gate__text{color:#2b1a16;max-width:34em;margin:0 auto 28px;font-size:1.02rem;line-height:1.55}.age-gate__link{color:var(--brand,#8b1d2c);font-weight:600;text-decoration:none}.age-gate__link:hover{text-decoration:underline}.age-gate__btn{background:var(--brand,#8b1d2c);color:#fff;cursor:pointer;border:none;border-radius:999px;width:100%;max-width:360px;margin:0 auto;padding:14px 28px;font-size:1.05rem;font-weight:600;transition:background .15s,transform .12s;display:block}.age-gate__btn:hover{background:#6f1522}.age-gate__btn:active{transform:scale(.99)}@media (width<=520px){.age-gate__card{border-radius:22px;padding:32px 22px 24px}.age-gate__text{font-size:.95rem}}.site-access-gate{z-index:100001;-webkit-backdrop-filter:blur(16px);background:#fcf9f38c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.site-access-gate--loading{color:#7a655d;background:#fcf9f3;font-size:1rem}.site-access-gate__card{text-align:center;background:#fff;border-radius:28px;width:min(420px,100%);padding:40px 36px 32px;box-shadow:0 24px 60px #28140f2e}.site-access-gate__title{color:#1a1a1a;margin:0 0 14px;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(2rem,5vw,2.6rem);font-weight:700;line-height:1.1}.site-access-gate__text{color:#2b1a16;max-width:28em;margin:0 auto 22px;font-size:1rem;line-height:1.5}.site-access-gate__label{text-align:left;gap:6px;max-width:320px;margin:0 auto 16px;display:grid}.site-access-gate__label-text{color:#7a655d;font-size:.85rem;font-weight:600}.site-access-gate__input{box-sizing:border-box;color:#2b1a16;background:#fffaf5;border:1px solid #e4d5c8;border-radius:12px;width:100%;padding:12px 14px;font-size:1rem}.site-access-gate__input:focus{border-color:#8b1d2c;outline:2px solid #8b1d2c59}.site-access-gate__error{color:#8b1d2c;max-width:320px;margin:0 auto 12px;font-size:.92rem;font-weight:600}.site-access-gate__btn{background:var(--brand,#8b1d2c);color:#fff;cursor:pointer;border:none;border-radius:999px;width:100%;max-width:320px;margin:8px auto 0;padding:14px 28px;font-size:1.05rem;font-weight:600;transition:background .15s,transform .12s;display:block}.site-access-gate__btn:hover:not(:disabled){background:#6f1522}.site-access-gate__btn:disabled{opacity:.7;cursor:wait}.site-access-gate__btn:active:not(:disabled){transform:scale(.99)}.site-access-gate__actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.site-access-gate__btn--ghost{color:#5b433c;background:0 0;border:1px solid #e4d5c8}.site-access-gate__btn--ghost:hover:not(:disabled){color:#2b1a16;background:#f7f0e8}.site-access-gate__card--inline{text-align:center;margin:0}.site-access-gate__actions .site-access-gate__btn{width:auto;min-width:140px;margin:0}@media (width<=520px){.site-access-gate__card{border-radius:22px;padding:32px 22px 24px}}.scan-settings-gear{z-index:5;color:#5b433c;cursor:pointer;background:#fffcf8eb;border:none;border-radius:12px;place-items:center;width:44px;height:44px;transition:transform .15s,background .15s,color .15s;display:grid;position:absolute;top:0;right:0;box-shadow:0 8px 24px #46281e1f}.scan-settings-gear--header{z-index:auto;width:40px;height:40px;box-shadow:none;color:#5b433c;background:0 0;border-radius:999px;flex:none;position:static;top:auto;right:auto}@media (width<=768px){.scan-settings-gear:not(.scan-settings-gear--header){width:40px;height:40px}}.scan-settings-gear:hover{color:#8b1d2c;background:#fff;transform:rotate(28deg)}.scan-settings-gear--header:hover{color:#8b1d2c;background:#8b1d2c14;transform:none}.scan-settings-overlay{z-index:20000;box-sizing:border-box;background:#28161059;justify-content:center;align-items:center;padding:5vh 20px;display:flex;position:fixed;inset:0}.scan-settings{box-sizing:border-box;background:#fffaf5;border-radius:18px;width:min(760px,100%);height:90vh;max-height:90vh;padding:18px 22px 22px;position:relative;overflow:hidden auto;box-shadow:0 24px 60px #28140f47}.scan-settings__head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.scan-settings__head h2{color:#2b1a16;margin:0;font-size:1.15rem}.scan-settings__readonly-hint{color:#5b433c;background:0 0;border-radius:0;flex:auto;margin:0;padding:0;font-size:.82rem;line-height:1.4}.scan-settings__unlock-bar{background:#5b433c0f;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 12px;padding:10px 12px;display:flex}.scan-settings__unlock-btn{color:#fff;cursor:pointer;background:#8b1d2c;border:0;border-radius:10px;flex:none;padding:8px 14px;font-size:.85rem;font-weight:600}.scan-settings__unlock-btn:hover:not(:disabled){background:#6f1522}.scan-settings__unlock-btn:disabled{opacity:.7;cursor:wait}.scan-settings__edit-ok{color:#2f6b3a;margin:0 0 10px;font-size:.8rem;font-weight:600}.scan-settings-password{z-index:2;border-radius:inherit;background:#28161073;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.scan-settings__admin-fields{border:0;min-width:0;margin:0;padding:0}.scan-settings__admin-fields:disabled{opacity:.78}.scan-settings__close{color:#6d574f;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.6rem;line-height:1}.scan-settings__tabs{background:#46281e0f;border-radius:12px;gap:6px;margin-bottom:14px;padding:4px;display:flex}.scan-settings__tab{color:#6d574f;cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:8px;font-size:.84rem;font-weight:600}.scan-settings__tab.is-active{color:#2b1a16;background:#fff;box-shadow:0 2px 8px #46281e14}.scan-settings__section{margin-top:16px}.scan-settings__section h3{color:#2b1a16;margin:0 0 6px;font-size:.98rem}.scan-settings__hint{color:#6d574f;margin:0 0 12px;font-size:.82rem;line-height:1.4}.scan-settings__checks,.scan-settings__sliders{gap:8px;margin:0;padding:0;list-style:none;display:grid}.scan-settings__checks label{cursor:pointer;color:#2b1a16;background:#fff;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:.9rem;display:flex;box-shadow:0 2px 10px #46281e0d}.scan-settings__select-row{cursor:default;justify-content:space-between;gap:16px;width:100%;align-items:center!important;display:flex!important}.scan-settings__select-row>span{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.scan-settings__select-row select{color:#2b1a16;background:#fffaf5;border:1px solid #46281e2e;border-radius:8px;flex:none;min-width:4.5rem;padding:6px 10px;font-size:.95rem;font-weight:600}.scan-settings__bottle-conf{justify-content:space-between;margin-top:6px}.scan-settings__bottle-conf input{width:72px;font:inherit;border:1px solid #e4d4cc;border-radius:8px;padding:6px 8px}.scan-settings__checks label small{color:#8a736a;font-size:.75rem;display:block}.scan-settings__final-method{color:#2b1a16;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:8px 10px;font-size:.9rem;display:flex;box-shadow:0 2px 10px #46281e0d}.scan-settings__final-method select{min-width:220px;font:inherit;background:#fff;border:1px solid #e4d4cc;border-radius:8px;padding:6px 8px}.scan-settings__letter{color:#fff;border-radius:5px;flex:none;place-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:inline-grid}.scan-settings__letter.is-ocr-A{background:#1f9d6a}.scan-settings__letter.is-ocr-B{background:#2f6fdb}.scan-settings__letter.is-ocr-C{background:#d97706}.scan-settings__letter.is-ocr-D{background:#7c3aed}.scan-settings__checks label:has(input:disabled){opacity:.55;cursor:not-allowed}.scan-settings__sliders li{background:#fff;border-radius:10px;padding:8px 10px;box-shadow:0 2px 10px #46281e0d}.scan-settings__slider-head{color:#2b1a16;justify-content:space-between;gap:10px;margin-bottom:4px;font-size:.88rem;display:flex}.scan-settings__slider-head strong{font-variant-numeric:tabular-nums}.scan-settings__sliders input[type=range]{accent-color:#8b1d2c;width:100%}.scan-settings__method-rows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.scan-settings__method-row{background:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;display:flex;box-shadow:0 2px 10px #46281e0d}.scan-settings__method-row.is-clef-group-start{margin-top:8px}.scan-settings__method-enable{color:#2b1a16;flex:10rem;align-items:center;gap:8px;min-width:11rem;font-size:.88rem;display:flex}.scan-settings__method-enable small{color:#6d574f;font-size:.75rem;font-weight:400;display:block}.scan-settings__thr{flex-wrap:wrap;flex:2 16rem;align-items:center;gap:6px 8px;display:flex}.scan-settings__thr--solo{margin-top:4px}.scan-settings__thr--inline{flex:none;margin-top:0}.scan-settings__hsv-row{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:6px;display:flex}.scan-settings__hsv-check{cursor:pointer;color:#2b1a16;flex:16rem;align-items:flex-start;gap:8px;font-size:.88rem;line-height:1.35;display:flex}.scan-settings__hsv-check input{flex-shrink:0;margin-top:3px}.scan-settings__thr-lab{color:#6d574f;white-space:nowrap;font-size:.78rem}.scan-settings__stepper{background:#fff;border:1px solid #c4b0a6;border-radius:8px;align-items:stretch;display:inline-flex;overflow:hidden}.scan-settings__stepper input[type=number]{font-variant-numeric:tabular-nums;text-align:center;color:#2b1a16;appearance:textfield;background:0 0;border:0;width:3.6rem;padding:4px 6px;font-size:.85rem}.scan-settings__stepper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.scan-settings__stepper input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.scan-settings__stepper input[type=number]:disabled{opacity:.5}.scan-settings__stepper-btns{border-left:1px solid #c4b0a6;flex-direction:column;display:flex}.scan-settings__stepper-btns button{color:#5a4038;cursor:pointer;background:#f7f1ec;border:0;padding:2px 6px;font-size:.55rem;line-height:1}.scan-settings__stepper-btns button:hover:not(:disabled){background:#efe4dc}.scan-settings__stepper-btns button:disabled{opacity:.4;cursor:not-allowed}.scan-settings__final-radio{color:#2b1a16;white-space:nowrap;cursor:pointer;align-items:center;gap:6px;margin-left:auto;font-size:.82rem;display:flex}.scan-settings__final-radio input:disabled+span{opacity:.5}.scan-settings__error{color:#b42318;margin:0 0 8px;font-size:.88rem}.scan-settings__rules{color:#3d2a24;margin:0 0 10px;padding-left:1.25rem;font-size:.82rem;line-height:1.45}.scan-settings__rules li+li{margin-top:4px}.scan-settings__rules--mutex{background:#fff;border-radius:10px;padding:8px 10px 8px 1.6rem;list-style:outside;box-shadow:0 2px 10px #46281e0d}.scan-settings__warn{color:#9b1c1c;background:#fff1f0;border-radius:10px;margin:0 0 10px;padding:8px 10px;font-size:.82rem;line-height:1.4}.scan-settings__hint--live{font-variant-numeric:tabular-nums;background:#fff;border-radius:10px;margin-top:8px;padding:8px 10px;box-shadow:0 2px 10px #46281e0d}.scan-settings__method-row.is-final{background:#fff8f6;outline:1px solid #8b1d2c59}.scan-settings__loading,.scan-settings__saving{color:#6d574f;margin:8px 0 0;font-size:.85rem}.site-header{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fcf9f3eb;border-bottom:1px solid #50302814;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:20px;max-width:1280px;margin:0 auto;padding:14px 24px;display:flex}.site-logo{color:#2b1a16;flex:none;align-items:center;gap:12px;text-decoration:none;display:flex}.site-logo strong{font-family:"Source Serif 4",Georgia,serif;font-size:1.15rem;line-height:1.1;display:block}.site-logo small{color:#7a655d;font-size:.75rem;display:block}.site-logo small.site-logo__tagline-mobile{display:none}.site-header__mobile-actions{flex:none;align-items:center;gap:10px;margin-left:auto;display:none}.site-header__search{color:#8b1d2c;border-radius:999px;place-items:center;width:40px;height:40px;text-decoration:none;display:grid}.site-scan-nav{flex-wrap:wrap;flex:auto;justify-content:center;align-items:center;gap:10px 18px;min-width:0;display:flex}.site-scan-nav__link{color:#5b433c;white-space:nowrap;border-bottom:1px solid #0000;padding:2px 0;font-size:.88rem;text-decoration:none}.site-scan-nav__link:hover{color:#8b1d2c;border-bottom-color:#8b1d2c59}.site-scan-nav__link.is-disabled{color:#b5a49c;cursor:not-allowed;pointer-events:none;border-bottom-color:#0000}.site-nav--desktop{flex:none;align-items:center;gap:28px;display:flex}.site-nav--desktop a{color:#4a342e;border-bottom:2px solid #0000;padding-bottom:4px;font-size:.98rem;text-decoration:none}.site-nav--desktop a.is-active{color:#8b1d2c;border-bottom-color:#8b1d2c}.site-burger{cursor:pointer;background:#fffcf8eb;border:none;border-radius:12px;flex-direction:column;flex:none;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;display:none;box-shadow:0 4px 14px #46281e1a}.site-burger span{background:#403029;border-radius:2px;width:100%;height:2px;transition:transform .18s,opacity .18s;display:block}.site-burger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.site-burger.is-open span:nth-child(2){opacity:0}.site-burger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-menu-overlay,.site-nav-drawer{display:none}@media (width<=720px){.site-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#f7f1e8;border-bottom:none}.site-header__inner{flex-direction:row;align-items:center;gap:12px;padding:12px 16px}.site-logo small.site-logo__tagline-desktop{display:none}.site-logo small.site-logo__tagline-mobile{color:#8a736a;font-size:.72rem;display:block}.site-scan-nav,.site-nav--desktop{display:none}.site-header__mobile-actions{display:flex}.site-burger{width:44px;height:44px;box-shadow:none;background:#8b1d2c;border-radius:999px;gap:5px;padding:12px;display:flex}.site-burger span{background:#fff}.site-burger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.site-burger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-menu-overlay{z-index:30;background:#28161047;display:block;position:fixed;inset:0}.site-nav-drawer{z-index:40;opacity:0;visibility:hidden;pointer-events:none;background:#fffaf5;border-radius:16px;flex-direction:column;gap:4px;width:min(280px,100vw - 24px);height:auto;max-height:calc(100vh - 80px);padding:12px;transition:transform .18s,opacity .18s,visibility .18s;display:flex;position:fixed;top:64px;right:12px;overflow:auto;transform:translateY(-6px);box-shadow:0 12px 40px #28140f2e}.site-nav-drawer.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.site-nav-drawer__links{flex-direction:column;gap:4px;display:flex}.site-nav-drawer a{color:#2b1a16;border-radius:12px;padding:14px 12px;font-size:1.05rem;font-weight:500;text-decoration:none;display:block}.site-nav-drawer a.is-active{color:#8b1d2c;background:#8b1d2c14}.site-nav-drawer__settings{color:#2b1a16;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;width:100%;margin:0;padding:14px 12px;font-size:1.05rem;font-weight:500;display:flex}.site-nav-drawer__settings:hover{color:#8b1d2c;background:#8b1d2c14}.site-nav-drawer__settings svg{flex:none;display:block}}.home-page{max-width:min(1480px,100%);position:relative}.dropzone{cursor:pointer;background:#ffffffb8;border:2px dashed #8b1d2c59;border-radius:24px;place-items:center;min-height:360px;margin-top:0;padding:24px;transition:border-color .2s,background .2s,transform .2s;display:grid;position:relative}.scan-hero{grid-template-columns:1fr;align-items:stretch;gap:16px;margin-top:28px;display:grid}.scan-hero--with-winner{grid-template-rows:auto auto;grid-template-columns:minmax(220px,340px) minmax(0,1fr);align-items:stretch}.scan-hero--with-winner .dropzone{place-items:unset;flex-direction:column;flex:auto;justify-content:center;align-items:stretch;height:100%;min-height:0;max-height:none;padding:12px;display:flex}.scan-hero--with-winner .dropzone.has-thumbs{flex-direction:row;align-items:stretch;min-height:0;max-height:none;display:flex}.scan-hero--with-winner .dropzone__preview{object-fit:contain;flex:auto;max-width:100%;height:auto;min-height:0;max-height:none}.scan-hero--with-winner .dropzone.has-thumbs .dropzone__preview{max-height:min(52vh,420px)}.scan-hero--with-winner .dropzone__main{flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:6px;width:100%;min-height:0;display:flex}.scan-hero--with-winner .dropzone.has-preview .dropzone__main{height:100%}.scan-hero--with-winner .dropzone.has-preview .dropzone__preview{max-height:calc(100% - 1.6rem)}.scan-hero__query-col{flex-direction:column;gap:10px;min-width:0;display:flex}.scan-hero--with-winner>.scan-hero__query-col{grid-area:1/1/-1;align-self:stretch;height:auto;min-height:100%}.scan-hero__query-footer{flex-direction:column;align-items:stretch;gap:10px;width:100%;min-width:0;display:flex}.scan-hero__query-hint-row{justify-content:space-between;align-items:center;gap:16px;width:100%;min-width:0;display:flex}.scan-hero__query-hint-row .dropzone__change-hint{text-align:left;flex:auto;min-width:0;margin:0}.scan-show-details{color:#5c4a42;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:8px;margin:0 0 0 auto;font-size:.85rem;font-weight:500;display:inline-flex}.scan-show-details input{accent-color:#8b1d2c;flex-shrink:0;width:16px;height:16px}.scan-show-details--under-query{align-self:flex-start;margin:2px 0 4px}.scan-show-details--under-winner{align-self:flex-start;margin-top:2px}.scan-hero--with-winner .scan-hero__query-footer{grid-area:2/2;place-self:end stretch;width:100%;padding-top:4px}.scan-hero__query-footer .dropzone__change-hint{text-align:left;margin:0}.scan-hero__query-footer .scan-actions{justify-content:flex-start;margin-top:0}.scan-hero__winner-col{flex-direction:column;gap:12px;min-width:0;display:flex}.scan-hero--with-winner>.scan-hero__winner-col{display:contents}@media (width<=980px){.scan-hero--with-winner{grid-template-rows:auto;grid-template-columns:1fr}.scan-hero--with-winner>.scan-hero__query-col{grid-area:auto}.scan-hero--with-winner>.scan-hero__winner-col{display:flex}.scan-hero--with-winner .scan-hero__query-footer{grid-area:auto;align-self:start}}.dropzone.has-thumbs{align-items:stretch;gap:10px;place-items:unset;min-height:280px;padding:12px;display:flex}.dropzone__main{flex:auto;align-content:center;place-items:center;min-width:0;display:grid}.dropzone.has-thumbs .dropzone__preview{max-height:340px}.dropzone__thumbs{flex-direction:column;flex:0 0 100px;align-self:stretch;gap:8px;min-width:0;max-width:100px;display:flex}.dropzone__thumbs figure{background:#f7f2ec;border:1px solid #efe5dc;border-radius:10px;flex-direction:column;flex:1 1 0;gap:3px;min-height:0;margin:0;padding:5px;display:flex}.dropzone__thumbs figcaption{color:#6d574f;text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.6rem;line-height:1.15;overflow:hidden}.dropzone__thumbs img{object-fit:contain;background:#fff;border-radius:6px;flex:auto;width:100%;min-height:0;max-height:150px;display:block}.dropzone-thumb-popup{z-index:10050;pointer-events:auto;background:#fffcf8fa;border:1px solid #c4b0a68c;border-radius:14px;flex-direction:column;gap:8px;padding:12px;display:flex;position:fixed;box-shadow:0 24px 60px #28140f52}.dropzone-thumb-popup__cap{color:#6d574f;text-align:center;flex:none;margin:0;font-size:.8rem}.dropzone-thumb-popup img{object-fit:contain;background:#f7f2ec;border-radius:8px;width:auto;max-width:min(72vw,99.999vh);height:66.666vh;display:block}.scan-analogs{background:#fff;border-radius:20px;margin-top:16px;padding:14px;box-shadow:0 10px 30px #3c141414}.scan-analogs__head h2{color:#8b1d2c;margin:0 0 6px;font-size:1rem}.scan-analogs__criteria{flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;font-size:.72rem;list-style:none;display:flex}.scan-analogs__criteria li{color:#5b433c;background:#f7f2ec;border-radius:999px;padding:3px 8px}.scan-analogs__criteria li.is-found{font-weight:600}.scan-analogs__criteria li.is-missing{color:#a8958d}.scan-analogs__criteria li.is-winery.is-found{color:#8a5a28;background:#d9770624}.scan-analogs__criteria li.is-category.is-found{color:#8b4545;background:#dc26261f}.scan-analogs__criteria li.is-type.is-found{color:#3d5a8a;background:#2563eb1a}.scan-analogs__criteria li.is-grape.is-found{color:#3d6b4a;background:#16a34a1f}.scan-analogs__criteria span{font-weight:600}.scan-analogs__empty{color:#5b433c;background:#f7f2ec;border-radius:12px;margin:0;padding:12px;font-size:.8rem}.analog-card__rating-row{justify-content:space-between;align-items:center;gap:6px;min-width:0;margin-bottom:6px;display:flex}.folk-rating{color:#2b1a16;font-variant-numeric:tabular-nums;cursor:default;background:#f9f5e8;border:1px solid #b4a08259;border-radius:999px;align-items:center;gap:4px;padding:2px 10px 2px 4px;font-size:.78rem;font-weight:600;line-height:1;display:inline-flex}.folk-rating__glass{object-fit:contain;flex:none;width:18px;height:20px;display:block}.folk-rating em{font-style:normal;font-weight:600}.analog-card__reviews-link{color:#8b1d2c;text-underline-offset:2px;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:.72rem;font-weight:600;text-decoration:underline}.analog-card__reviews-link:hover{color:#6f1522}.analog-card__photo{position:relative}.analog-card__photo-link{color:inherit;cursor:pointer;text-decoration:none;display:block}.analog-card__photo-link:hover .cand-card__media{outline-offset:2px;outline:2px solid #8b1d2c59}.analog-card__score{z-index:2;color:#fff;font-variant-numeric:tabular-nums;pointer-events:none;background:#8b1d2ce6;border-radius:999px;padding:1px 6px;font-size:.68rem;font-weight:700;position:absolute;top:6px;right:6px}.analog-card__buy{z-index:3;color:#8b1d2c;cursor:pointer;background:#fffffff2;border:1px solid #8b1d2c2e;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;transition:background .12s,color .12s,transform .12s;display:inline-flex;position:absolute;bottom:6px;right:6px;box-shadow:0 2px 8px #46281e29}.analog-card__buy:hover{color:#fff;background:#8b1d2c;transform:scale(1.05)}.analog-card__crit{color:#5b433c;flex-direction:column;gap:2px;margin:4px 0 0;padding:0;font-size:.68rem;line-height:1.3;list-style:none;display:flex}.analog-card__crit li{overflow-wrap:anywhere;min-width:0;margin:0}.analog-card__crit .is-hit,.analog-card__crit li.is-hit,.analog-card__crit li.is-partial{border-radius:4px;place-self:start;width:fit-content;max-width:100%;padding:0 3px;font-weight:600}.analog-card__crit .is-winery.is-hit,.analog-card__crit .is-winery.is-partial{color:#8a5a28;background:#d9770624}.analog-card__crit .is-category.is-hit{color:#8b4545;background:#dc26261f}.analog-card__crit .is-type.is-hit,.analog-card__crit .is-type.is-partial{color:#3d5a8a;background:#2563eb1a}.analog-card__crit .is-grape .is-hit{color:#3d6b4a;background:#16a34a1f}.analog-card__crit li.is-miss{color:#a8958d}.analog-where-buy{z-index:100050;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#28181273;justify-content:center;align-items:center;padding:20px 12px;display:flex;position:fixed;inset:0}.analog-where-buy__panel{background:#fff;border-radius:14px;flex-direction:column;width:min(680px,100%);max-height:min(78vh,620px);display:flex;overflow:hidden;box-shadow:0 18px 48px #00000047}.analog-where-buy__head{border-bottom:1px solid #8b1d2c1a;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.analog-where-buy__head h3{color:#3a241e;margin:0;font-size:1.05rem}.analog-where-buy__close{color:#8a7468;cursor:pointer;background:0 0;border:0;padding:2px 6px;font-size:1.4rem;line-height:1}.analog-where-buy__close:hover{color:#8b1d2c}.analog-where-buy__map-wrap{background:#f6f1ec;padding:10px 12px 14px;overflow:auto}.analog-where-buy__map{border:1px solid #8b1d2c14;border-radius:8px;width:100%;height:auto;display:block}.analog-reviews{z-index:100050;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#28181273;place-items:center;padding:20px 12px;display:grid;position:fixed;inset:0}.analog-reviews__panel{background:#faf7f2;border-radius:20px;flex-direction:column;width:min(720px,100%);max-height:min(86vh,640px);display:flex;overflow:hidden;box-shadow:0 24px 60px #28140f47}.analog-reviews__head{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 4px;display:flex}.analog-reviews__head h3{color:#2b1a16;margin:0;font-size:1.1rem}.analog-reviews__close{color:#5b433c;cursor:pointer;background:#efe8e0;border:0;border-radius:999px;width:32px;height:32px;font-size:1.35rem;line-height:1}.analog-reviews__hint{color:#8a736a;margin:0;padding:0 16px 8px;font-size:.78rem}.analog-reviews__track-wrap{flex:1;min-height:0;position:relative}.analog-reviews__track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:12px;padding:8px 48px 20px;display:flex;overflow:auto hidden}.analog-reviews__fade{z-index:2;pointer-events:none;width:40px;position:absolute;top:0;bottom:12px}.analog-reviews__fade--left{background:linear-gradient(90deg,#faf7f2 20%,#0000);left:0}.analog-reviews__fade--right{background:linear-gradient(270deg,#faf7f2 20%,#0000);right:0}.analog-reviews__card{scroll-snap-align:center;background:#fff;border:1px solid #e8e0d6;border-radius:18px;flex-direction:column;flex:0 0 min(300px,78vw);gap:10px;padding:14px 14px 12px;display:flex;box-shadow:0 4px 14px #3c281e0f}.analog-reviews__user{align-items:center;gap:10px;display:flex}.analog-reviews__avatar{color:#fff;background:#d9d4cd;border-radius:999px;flex:none;place-items:center;width:40px;height:40px;font-size:.78rem;font-weight:700;display:grid}.analog-reviews__name{color:#1a1a1a;margin:0;font-size:.95rem;font-weight:700}.analog-reviews__stars{letter-spacing:.04em;color:#8b1d2c;margin:2px 0 0;font-size:.78rem;line-height:1}.analog-reviews__stars .is-empty{color:#e0d6cc}.analog-reviews__text{color:#403029;flex:1;margin:0;font-size:.82rem;line-height:1.4}.analog-reviews__foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.analog-reviews__react{align-items:center;gap:6px;display:flex}.analog-reviews__react>span{color:#5b433c;background:#f0ebe4;border-radius:999px;align-items:center;gap:3px;padding:4px 8px;font-size:.72rem;display:inline-flex}.analog-reviews__comment{justify-content:center;width:28px;height:28px;border-radius:999px!important;padding:0!important}.analog-reviews__foot time{color:#a8958d;white-space:nowrap;font-size:.72rem}.scan-gantt__extra{margin-top:14px}.scan-winner{background:#fff;border:1px solid #8b1d2c1f;border-radius:20px;grid-template-columns:minmax(140px,200px) 1fr;gap:12px;min-height:360px;padding:14px;display:grid;box-shadow:0 10px 28px #46281e14}@media (width<=640px){.scan-winner{grid-template-columns:1fr}}.scan-winner__card-col{flex-direction:column;gap:10px;min-width:0;display:flex}.scan-winner__card-row{align-items:flex-start;gap:10px;min-width:0;display:flex}.scan-winner__card{color:inherit;flex:auto;min-width:0;max-width:180px;text-decoration:none;display:block}.scan-winner__photo-link{color:inherit;cursor:pointer;text-decoration:none;display:block}.scan-winner__photo-link:hover .cand-card__media{outline-offset:2px;outline:2px solid #8b1d2c59}.scan-winner__eval{flex-direction:column;flex:none;gap:8px;padding-top:4px;display:flex}.scan-winner__check{color:#5b433c;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;font-size:.7rem;display:flex}.scan-winner__check input{margin:0}.scan-winner__card .cand-card__media{aspect-ratio:3/4}.scan-winner__winery{color:#7a655d;margin:0;font-size:.75rem}.scan-winner--simple{grid-template-columns:unset;box-sizing:border-box;border:1px solid #8b1d2c1a;min-height:0;padding:14px 16px;display:block}.scan-winner--simple.scan-winner--empty{align-self:start;height:auto;min-height:0;padding:14px 16px}.scan-winner__simple{grid-template-columns:minmax(0,1fr) minmax(120px,170px);align-items:stretch;gap:14px 18px;display:grid}.scan-winner__simple-info{align-content:start;align-self:start;gap:10px;min-width:0;display:grid}.scan-winner__simple-title{color:#2b1a16;margin:0;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(1.2rem,2vw,1.55rem);font-weight:700;line-height:1.2}.scan-winner__confidence{letter-spacing:.01em;color:#7a6358;white-space:nowrap;font-family:Segoe UI,system-ui,sans-serif;font-size:.58em;font-weight:500}.scan-winner__simple-title a{color:inherit;text-decoration:none}.scan-winner__simple-title a:hover{text-decoration:underline}.scan-winner__simple-name{color:#2b1a16;margin:0;font-size:1.12rem;font-weight:600;line-height:1.25}.scan-winner__simple-name a{color:inherit;text-decoration:none}.scan-winner__simple-name a:hover{text-decoration:underline}.scan-winner__simple-winery{color:#8b1d2c;margin:0;font-size:1rem}.scan-winner__simple-winery a{color:inherit;text-decoration:none}.scan-winner__simple-winery a:hover{text-decoration:underline}.scan-winner__simple-fields{gap:10px;margin-top:4px;display:grid}.scan-winner__field{gap:2px;min-width:0;display:grid}.scan-winner__field-label{color:#8a736a;font-size:.82rem}.scan-winner__field-label.is-link{cursor:pointer;text-decoration:none}.scan-winner__field-label.is-link:hover{text-decoration:underline}.scan-winner__field-value{color:#2b1a16;font-size:.98rem;font-weight:600;line-height:1.35}a.scan-winner__field-value.is-link{cursor:pointer;text-decoration:none}a.scan-winner__field-value.is-link:hover{text-decoration:underline}.scan-winner__simple-desc{color:#4a372f;max-height:7.5em;margin:6px 0 0;font-size:.86rem;line-height:1.45;overflow:auto}.scan-winner__simple-photo-wrap{box-sizing:border-box;flex-direction:column;place-self:stretch end;gap:6px;width:100%;min-width:0;max-width:170px;min-height:0;display:flex}.scan-winner__simple-rating-row{flex:none;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.scan-winner__simple-reviews{color:#8b1d2c;text-underline-offset:2px;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:.78rem;font-weight:600;text-decoration:underline}.scan-winner__simple-reviews:hover{color:#6f1522}.scan-winner__simple-photo{width:100%;height:auto;min-height:0;color:inherit;box-sizing:border-box;background:#f4eee4;border-radius:14px;flex:1 1 0;justify-content:center;align-items:center;padding:8px;text-decoration:none;display:flex;position:relative;overflow:hidden}.scan-winner__simple-photo img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:100%;max-height:100%;display:block}.scan-winner__simple-photo:hover{outline-offset:2px;outline:2px solid #8b1d2c4d}.scan-winner__simple-badge{z-index:2;color:#fff;letter-spacing:.02em;pointer-events:none;background:#dc2626;border-radius:4px;padding:3px 6px;font-size:.62rem;font-weight:700;line-height:1;position:absolute;top:8px;left:8px}.scan-winner__simple-buy{color:#8b1d2c;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-self:center;align-items:center;gap:8px;padding:4px 2px;font-size:.82rem;font-weight:600;text-decoration:underline;display:inline-flex}.scan-winner__simple-buy:hover{color:#6f1522}.scan-winner__simple-buy svg{flex:none;display:block}@media (width<=720px){.scan-winner__simple{grid-template-columns:1fr}.scan-winner__simple-photo-wrap{order:-1;place-self:start center;max-width:180px;height:auto;margin:0 auto}.scan-winner__simple-photo{flex:none;height:180px;min-height:180px}}.scan-winner__empty{color:#5b433c;background:#f7f2ec;border-radius:12px;gap:6px;padding:16px 12px;font-size:.85rem;display:grid}.scan-winner--simple.scan-winner--empty .scan-winner__empty{background:0 0;border-radius:0;padding:0}.scan-winner__empty strong{color:#8b1d2c}.scan-winner__scores{font-variant-numeric:tabular-nums;color:#5b433c;gap:3px;font-size:.72rem;display:grid}.scan-winner__scores p{justify-content:space-between;gap:8px;margin:0;display:flex}.scan-winner__scores em{font-style:normal;font-weight:600}.scan-winner__ch{font-style:normal;font-weight:700}.scan-winner__ch.is-best-channel{text-underline-offset:2px;font-weight:900;text-decoration:underline}.scan-winner__ch.is-ocr-google_vision{color:#4285f4}.scan-winner__ch.is-ocr-yandex{color:#dc2626}.scan-winner__ch.is-ocr-gemini{color:#0f766e}.scan-winner__ch.is-ocr-openai{color:#7c3aed}.scan-winner__ch.is-ocr-deepseek{color:#0369a1}.scan-winner__ch.is-ocr-qwen{color:#b45309}.scan-winner__legend{flex-wrap:wrap;flex:none;align-self:start;align-items:center;gap:6px;margin-top:4px;font-size:.65rem;display:flex}.scan-winner__legend span{border-radius:4px;flex:none;align-self:center;padding:2px 6px;line-height:1.2}.scan-winner__legend .is-ex-category{color:#7f1d1d;background:#dc262647}.scan-winner__legend .is-ex-type{color:#1e3a8a;background:#2563eb38}.scan-winner__legend .is-ex-grape{color:#14532d;background:#16a34a47}.scan-winner__legend .is-ex-winery{color:#78350f;background:#d9770652}.scan-winner__texts{flex-direction:column;gap:10px;min-width:0;min-height:0;display:flex}.cand-popup__label-cols{grid-template-columns:1fr 1fr;align-items:stretch;gap:10px;min-width:0;min-height:0;display:grid}.scan-winner__texts .cand-popup__label-text pre{min-height:200px;max-height:min(52vh,420px)}@media (width<=640px){.cand-popup__label-cols{grid-template-columns:1fr}}.dropzone.is-dragging,.dropzone:hover{background:#fff;border-color:#8b1d2c;transform:translateY(-2px)}.dropzone.is-busy{opacity:1;pointer-events:none}.dropzone.is-busy .dropzone__preview{filter:brightness(1.55)contrast(.92)saturate(.75);opacity:.72}.dropzone__searching{z-index:5;border-radius:inherit;color:#5b433c;text-align:center;background:#fffcf89e;place-content:center;justify-items:center;gap:10px;padding:24px;display:grid;position:absolute;inset:0}.dropzone__searching strong{color:#8b1d2c;text-shadow:0 0 10px #fffcf8,0 1px 2px #fffcf8f2;font-size:1.05rem}.dropzone__searching span:last-child{opacity:.95;text-shadow:0 0 10px #fffcf8,0 1px 2px #fffcf8f2;font-size:.9rem}.search-spinner{filter:drop-shadow(0 0 6px #fffcf8)drop-shadow(0 1px 3px #5b433c59);border:4px solid #8b1d2c33;border-top-color:#8b1d2c;border-radius:50%;width:48px;height:48px;animation:.75s linear infinite search-spin}.search-spinner--btn{border-width:2px;flex-shrink:0;width:16px;height:16px}@keyframes search-spin{to{transform:rotate(360deg)}}.dropzone__hint{text-align:center;color:#5b433c;gap:8px;display:grid}.dropzone__icon{color:#fff;background:#8b1d2c;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 8px;font-size:2rem;display:grid}.dropzone__preview{object-fit:contain;border-radius:12px;max-width:100%;max-height:420px}.image-file-meta{text-align:center;color:#7a655d;letter-spacing:.01em;margin-top:8px;font-size:.8rem;line-height:1.35}.scan-artifacts__item .image-file-meta{margin-top:10px}.dropzone__change-hint{text-align:center;color:#7a655d;margin:12px 0 0;font-size:.92rem}.scan-cpu-note{text-align:center;color:#7a655d;margin:28px 0 8px;font-size:.86rem;line-height:1.4}.linkish{color:#8b1d2c;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.scan-results{gap:16px;margin-top:22px;display:grid}.scan-results--triple{grid-template-columns:1fr;align-items:stretch}@media (width<=960px){.scan-results--triple{grid-template-columns:1fr}}.scan-timings{background:#fff;border-radius:14px;min-width:0;padding:16px 18px;box-shadow:0 8px 24px #46281e0f}.scan-timings__head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.scan-timings h2{color:#2b1a16;margin:0;font-size:1.05rem}.scan-timings__algo{color:#7a655d;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.78rem}.scan-timings__hint{color:#8a746a;margin:0 0 10px;font-size:.78rem;line-height:1.35}.scan-gantt__axis{color:#9a857c;font-variant-numeric:tabular-nums;justify-content:space-between;margin:0 0 6px;padding-left:118px;padding-right:9.5rem;font-size:.7rem;display:flex}.scan-gantt__rows{gap:5px;margin:0;padding:0;list-style:none;display:grid}.scan-gantt__row{color:#5b433c;grid-template-columns:110px minmax(0,1fr) 9.5rem;align-items:center;gap:8px;font-size:.78rem;display:grid}.scan-gantt__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scan-gantt__track{background:#5030280f;border-radius:4px;height:14px;position:relative;overflow:hidden}.scan-gantt__bar{opacity:.92;border-radius:4px;min-width:2px;position:absolute;top:0;bottom:0}.scan-gantt__meta{font-variant-numeric:tabular-nums;white-space:nowrap;grid-template-columns:5.75rem 3.25rem;place-items:baseline end;column-gap:.5rem;display:grid}.scan-gantt__ms{text-align:right;color:#2b1a16}.scan-gantt__pct{text-align:right;color:#8a746a;font-weight:500}.scan-gantt__total{color:#2b1a16;border-top:1px solid #5030281a;justify-content:space-between;margin-top:10px;padding-top:10px;font-size:.92rem;font-weight:700;display:flex}.scan-gantt__total strong{font-variant-numeric:tabular-nums}.scan-status{color:#403029;background:#fff;border-radius:14px;margin-top:18px;padding:16px 18px;box-shadow:0 8px 24px #46281e0f}.scan-status p{margin:0}.scan-status p+p{margin-top:6px}.scan-actions{justify-content:center;margin-top:18px;display:flex}.scan-mobile-fab{right:max(16px, env(safe-area-inset-right));bottom:max(20px, env(safe-area-inset-bottom));z-index:11000;color:#fff;cursor:pointer;background:#8b1d2c;border:0;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;padding:0;display:inline-flex;position:fixed;box-shadow:0 10px 28px #461e1959}.scan-mobile-fab:hover:not(:disabled){background:#6f1522}.scan-mobile-fab:disabled{opacity:.55;cursor:not-allowed}.scan-mobile-fab svg{display:block}.scan-search-btn{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-width:180px;padding:12px 28px;font-weight:600;transition:opacity .15s,transform .15s;display:inline-flex}.scan-search-btn__camera{display:none}.scan-search-btn:hover:not(:disabled){transform:translateY(-1px)}.scan-search-btn:disabled{opacity:.45;cursor:not-allowed}@media (width<=720px){.home-page--mobile{padding-bottom:88px}.home-page--mobile-landing{padding-top:8px}.home-page .page__lead,.scan-hero.is-hidden-mobile{display:none}.mobile-scan-landing{text-align:center;flex-direction:column;align-items:center;padding:0 4px;display:flex}.mobile-scan-intro{text-align:center;flex-direction:column;align-items:center;padding:8px 4px 0;display:flex}.mobile-scan-landing__title{color:#1a1a1a;margin:12px 0 10px;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(2rem,8vw,2.6rem);font-weight:600;line-height:1.15}.mobile-scan-landing__lead{color:#2b1a16;max-width:20em;margin:0 0 22px;font-size:.98rem;line-height:1.45}.home-page--mobile:not(.home-page--mobile-landing) .mobile-scan-landing__lead{margin-bottom:14px}.home-page--mobile:not(.home-page--mobile-landing) .scan-hero{margin-top:0}.mobile-scan-card{background:#f0e6d8;border-radius:28px;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:360px;padding:24px 22px 22px;display:flex;overflow:visible}.mobile-scan-card__art{box-sizing:border-box;background:#f0e6d8;justify-content:center;align-items:center;width:100%;padding:0;line-height:0;display:flex;overflow:visible}.mobile-scan-card__img{object-fit:contain;object-position:center top;width:min(296px,100%);max-width:100%;height:auto;display:block}.mobile-scan-card__scan{color:#fff;cursor:pointer;background:#8b1d2c;border:0;border-radius:14px;justify-content:center;align-items:center;width:100%;height:56px;display:inline-flex}.mobile-scan-card__scan svg{flex:none;width:28px;height:28px;display:block;overflow:visible}.mobile-scan-card__scan:disabled{opacity:.5;cursor:not-allowed}.dropzone{min-height:220px;margin-top:16px}.dropzone__hint-text,.dropzone__icon--desktop,.dropzone__change-hint,.scan-actions{display:none}.home-page--mobile .scan-hero--with-winner:has(.scan-winner--empty){align-items:start}.home-page--mobile .scan-winner--simple.scan-winner--empty{align-self:start;height:auto;min-height:0}}.scan-source-overlay{z-index:12000;padding:16px 16px max(20px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1e120e73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.scan-source-sheet{background:#fff;border-radius:28px;flex-direction:column;width:min(420px,100%);padding:10px 8px;display:flex;box-shadow:0 18px 50px #28140f47}.scan-source-sheet__item{color:#1a1a1a;text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;border-radius:20px;align-items:center;gap:16px;margin:0;padding:16px 18px;display:flex}.scan-source-sheet__item:hover,.scan-source-sheet__item:focus-visible{background:#f7f2ec;outline:none}.scan-source-sheet__icon{color:#8b1d2c;flex:none;place-items:center;width:32px;height:32px;display:grid}.scan-source-sheet__text{flex-direction:column;gap:4px;min-width:0;display:flex}.scan-source-sheet__text strong{color:#1a1a1a;font-size:1.05rem;font-weight:600}.scan-source-sheet__text em{color:#8a7a72;font-size:.82rem;font-style:normal}@media (width>=721px){.mobile-scan-landing,.mobile-scan-intro{display:none}}.scan-artifacts__item{background:#fff;border-radius:14px;min-width:0;margin:0;padding:14px;box-shadow:0 8px 24px #46281e0f}.scan-artifacts__item figcaption{color:#6d574f;word-break:break-all;margin-bottom:10px;font-size:.85rem}.scan-artifacts__img{object-fit:contain;background:#f7f2ec;border-radius:10px;width:100%;max-height:360px;display:block}.cand-block{background:#fffcf88c;border:2px solid #c4b0a6;border-radius:16px;margin-top:28px;padding:16px 18px 18px}.cand-block__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:12px;display:flex}.cand-block h2{color:#2b1a16;margin:0;font-size:1.15rem}.cand-sort{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cand-sort__label{color:#6d574f;margin-right:2px;font-size:.8rem}.cand-sort__btn{color:#403029;cursor:pointer;background:#fff;border:1px solid #c4b0a6;border-radius:8px;padding:4px 10px;font-size:.78rem;transition:background .12s,border-color .12s,color .12s}.cand-sort__btn:hover{color:#8b1d2c;border-color:#8b1d2c}.cand-sort__btn.is-active{color:#fff;background:#8b1d2c;border-color:#8b1d2c}.cand-sort__btn.is-xgb{color:#15803d;border-color:#15803d73}.cand-sort__btn.is-xgb:hover{color:#166534;border-color:#15803d}.cand-sort__btn.is-xgb.is-active{color:#fff;background:#15803d;border-color:#15803d}.cand-sort__btn.is-crenc{color:#1d4ed8;border-color:#1d4ed873}.cand-sort__btn.is-crenc:hover{color:#1e40af;border-color:#1d4ed8}.cand-sort__btn.is-crenc.is-active{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.cand-sort__btn.is-llm-txt{color:#0d9488;border-color:#0d948873}.cand-sort__btn.is-llm-txt:hover{color:#0f766e;border-color:#0d9488}.cand-sort__btn.is-llm-txt.is-active{color:#fff;background:#0d9488;border-color:#0d9488}.cand-card__sim-val.is-sort-active,.cand-card__geom.is-sort-active,.cand-card__xgb>span.is-sort-active,.cand-card__crenc>span.is-sort-active,.cand-card__llm-txt.is-sort-active,.cand-card__ocr-score.is-sort-active{color:#fff;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#8b1d2c;border-radius:4px;padding:1px 5px}.cand-card__sim-val.is-sort-active,.cand-card__geom.is-sort-active{width:fit-content;max-width:100%;display:inline-block}.cand-card__xgb>span.is-sort-xgb{color:#fff;background:#15803d}.cand-card__xgb>span.is-sort-xgb em{color:#fff}.cand-card__crenc>span.is-sort-crenc{color:#fff;background:#1d4ed8}.cand-card__crenc>span.is-sort-crenc em{color:#fff}.cand-card__llm-txt.is-sort-llm-txt{color:#fff;background:#0d9488}.cand-card__llm-txt.is-sort-llm-txt em{color:#fff}.cand-row{grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}@media (width<=1100px){.cand-row{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=720px){.cand-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.cand-card{min-width:0;color:inherit;cursor:pointer;z-index:1;background:#fff;border:2px solid #0000;border-radius:10px;padding:6px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:block;position:relative;overflow:visible;box-shadow:0 4px 14px #46281e0f}.cand-card.is-final-winner{outline-offset:2px;z-index:3;outline:3px solid #dc2626}.cand-card.is-similar-band{outline-offset:3px;border-spacing:8px;z-index:2;background-image:repeating-linear-gradient(-45deg,#0000,#0000 6px,#dc26260f 6px 8px);border:2px dashed #dc26268c;outline:2px dashed #dc2626}.cand-card.is-final-winner:after{content:"Final";z-index:4;color:#fff;letter-spacing:.02em;background:#dc2626;border-radius:0 0 4px 4px;padding:3px 5px;font-size:.62rem;font-weight:700;line-height:1;position:absolute;top:-2px;left:6px}.cand-card.is-xgb-winner{outline-offset:2px;z-index:3;outline:3px solid #15803d}.cand-card.is-final-winner.is-xgb-winner{outline:3px solid #15803d;box-shadow:0 0 0 3px #dc2626}.cand-card.is-xgb-winner:before{content:"XGB";z-index:4;color:#fff;letter-spacing:.02em;background:#15803d;border-radius:0 0 4px 4px;padding:3px 5px;font-size:.62rem;font-weight:700;line-height:1;position:absolute;top:-2px;right:6px}.cand-card.is-manual-match .cand-card__media{outline-offset:3px;outline:4px solid #eab308;box-shadow:0 0 0 1px #ca8a04}.cand-card__manual{color:#a16207;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;margin:6px 0 0;font-size:.72rem;font-weight:600;display:flex}.cand-card__manual input{accent-color:#ca8a04;cursor:pointer;width:14px;height:14px}.cand-card__xgb{font-variant-numeric:tabular-nums;color:#15803d;flex-wrap:wrap;gap:6px 10px;margin:2px 0 0;font-size:.72rem;font-weight:600;display:flex}.cand-card__xgb em{font-style:normal;font-weight:700}.cand-card__xgb-fin-ghost{color:#9ca3af;font-weight:500}.cand-card__xgb-fin-ghost em{color:#9ca3af;font-weight:600}.cand-popup__xgb-fin-ghost{color:#9ca3af;font-weight:500}.cand-card__crenc{font-variant-numeric:tabular-nums;color:#1d4ed8;flex-wrap:wrap;gap:6px 10px;margin:2px 0 0;font-size:.72rem;font-weight:600;display:flex}.cand-card__crenc em{font-style:normal;font-weight:700}.cand-card__llm-txt{font-variant-numeric:tabular-nums;color:#0d9488;margin:2px 0 0;font-size:.72rem;font-weight:600}.cand-card__llm-txt em{font-style:normal;font-weight:700}.scan-winner__xgb,.scan-winner__xgb em{color:#15803d}.scan-winner__crenc,.scan-winner__crenc em{color:#1d4ed8}.cand-card__ocr-marks{z-index:2;gap:3px;display:flex;position:absolute;top:4px;right:4px}.cand-card__ocr-mark{color:#fff;border-radius:4px;place-items:center;width:18px;height:18px;font-size:.65rem;font-weight:700;line-height:1;display:grid}.cand-card__ocr-mark.is-ocr-A,.ocr-legend__item.is-ocr-A,.ocr-variant-group__letter.is-ocr-A{background:#1f9d6a}.cand-card__ocr-mark.is-ocr-B,.ocr-legend__item.is-ocr-B,.ocr-variant-group__letter.is-ocr-B{background:#2f6fdb}.cand-card__ocr-mark.is-ocr-C,.ocr-legend__item.is-ocr-C,.ocr-variant-group__letter.is-ocr-C{background:#d97706}.cand-card__ocr-mark.is-ocr-D,.ocr-legend__item.is-ocr-D,.ocr-variant-group__letter.is-ocr-D{background:#7c3aed}.cand-card__ocr-mark.is-ocr-gemini,.ocr-legend__item.is-ocr-gemini,.ocr-variant-group__letter.is-ocr-gemini{background:#0f766e}.cand-card__ocr-mark.is-ocr-openai,.ocr-legend__item.is-ocr-openai,.ocr-variant-group__letter.is-ocr-openai{background:#7c3aed}.cand-card__ocr-mark.is-ocr-deepseek,.ocr-legend__item.is-ocr-deepseek,.ocr-variant-group__letter.is-ocr-deepseek{background:#0369a1}.cand-card__ocr-mark.is-ocr-qwen,.ocr-legend__item.is-ocr-qwen,.ocr-variant-group__letter.is-ocr-qwen{background:#b45309}.cand-card__ocr-mark.is-ocr-yandex,.ocr-legend__item.is-ocr-yandex,.ocr-variant-group__letter.is-ocr-yandex{color:#fff;background:#dc2626}.cand-card__ocr-mark.is-ocr-google_vision,.ocr-legend__item.is-ocr-google_vision,.ocr-variant-group__letter.is-ocr-google_vision{color:#fff;background:#4285f4}.ocr-legend__item.is-ocr-openai-txt,.ocr-variant-group__letter.is-ocr-openai-txt{color:#fff;background:#0d9488}.cand-card.is-ocr-A{border-color:#1f9d6a;box-shadow:0 4px 14px #1f9d6a47}.cand-card.is-ocr-B{border-color:#2f6fdb;box-shadow:0 4px 14px #2f6fdb47}.cand-card.is-ocr-C{border-color:#d97706;box-shadow:0 4px 14px #d9770647}.cand-card.is-ocr-D{border-color:#7c3aed;box-shadow:0 4px 14px #7c3aed47}.cand-card:hover,.cand-card.is-hovered{z-index:20;transform:translateY(-2px);box-shadow:0 8px 20px #46281e1f}.cand-card__media{aspect-ratio:3/4;background:#f7f2ec;border-radius:8px;position:relative;overflow:hidden}.cand-card__rank{z-index:5;color:#fff;letter-spacing:0;pointer-events:none;background:#1c1917d1;border-radius:4px;justify-content:center;align-items:center;min-width:1.35rem;height:1.35rem;padding:0 5px;font-size:.78rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;bottom:6px;left:6px;box-shadow:0 1px 3px #00000040}.cand-card.is-from-previous-search{outline-offset:1px;outline:2px solid #8b1d2c73}.cand-card__reuse-badge{z-index:5;color:#fff;text-align:center;pointer-events:none;background:#8b1d2ceb;border-radius:4px;padding:3px 6px;font-size:.65rem;font-weight:700;line-height:1.2;position:absolute;top:6px;left:6px;right:6px;box-shadow:0 1px 3px #0003}.cand-popup__reuse-badge{color:#8b1d2c;background:#8b1d2c1a;border:1px solid #8b1d2c59;border-radius:8px;grid-column:1/-1;margin:0;padding:8px 12px;font-size:.85rem;font-weight:700}.cand-card__media img{object-fit:contain;width:100%;height:100%;display:block}.cand-card__placeholder{background:linear-gradient(145deg,#efe8e0,#f7f2ec);width:100%;height:100%;min-height:80px}.cand-card__meta{color:#403029;margin-top:6px;font-size:.68rem;line-height:1.25}.cand-card__meta p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.cand-card__sim{font-variant-numeric:tabular-nums;color:#6d574f;text-overflow:clip;justify-content:space-between;align-items:baseline;gap:6px;font-size:.72rem;font-weight:600;display:flex;overflow:visible;margin:1px 0 0!important}.cand-card__sim em{font-style:normal;font-weight:700}.cand-card__sim-val.is-coef-max,.cand-card__hsv.is-coef-max,.cand-card__color-delta.is-coef-max,.cand-card__fin2.is-coef-max,.cand-card__llm-txt.is-coef-max,.cand-card__clef.is-coef-max,.cand-card__geom.is-coef-max,.cand-card__xgb>span.is-coef-max,.cand-card__crenc>span.is-coef-max,.cand-card__ocr-score.is-coef-max{box-sizing:border-box;vertical-align:baseline;border-radius:2px;width:fit-content;max-width:100%;padding:0 3px;line-height:1.15;display:inline-block;box-shadow:inset 0 0 0 1px}.cand-card__hard-x{color:#dc2626;flex-shrink:0;margin-left:auto;font-size:.78rem;font-weight:800;line-height:1}.cand-card__clef{font-variant-numeric:tabular-nums;color:#1d4ed8;font-size:.72rem;font-weight:600;margin:1px 0 0!important}.cand-card__clef em{font-style:normal;font-weight:700}.scan-winner__clef{color:#1d4ed8}.cand-card__geom{font-variant-numeric:tabular-nums;color:#4a6b5a;font-size:.62rem;margin:1px 0 0!important}.cand-card__hsv{font-variant-numeric:tabular-nums;color:#be185d;font-size:.72rem;font-weight:600;margin:1px 0 0!important}.cand-card__hsv em{font-style:normal;font-weight:700}.scan-winner__hsv,.scan-winner__hsv em{color:#be185d}.cand-card__ocr-scores{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:2px 4px;font-size:.62rem;line-height:1.2;display:flex;white-space:normal!important;text-overflow:unset!important;margin:2px 0 0!important;overflow:visible!important}.cand-card__ocr-scores--f1{opacity:.92}.cand-card__ocr-row-label{color:#7a5c52;flex:none;margin-right:2px;font-weight:700}.cand-card__ocr-score{color:#5b433c;align-items:baseline;gap:1px;display:inline-flex}.cand-card__ocr-score em{margin-right:1px;font-style:normal;font-weight:700}.cand-card__ocr-score.is-final-ocr em,.cand-card__ocr-score em.is-best-channel{text-underline-offset:2px;font-weight:900;text-decoration:underline}.scan-winner__scores p.is-final-ocr{font-weight:600}.cand-popup__ocr-letter.is-best-channel{font-weight:900;box-shadow:inset 0 0 0 1px #00000047}.cand-card__ocr-score.is-ocr-A em{color:#1f9d6a}.cand-card__ocr-score.is-ocr-B em{color:#2f6fdb}.cand-card__ocr-score.is-ocr-C em{color:#d97706}.cand-card__ocr-score.is-ocr-D em{color:#7c3aed}.cand-card__ocr-score.is-ocr-gemini em{color:#0f766e}.cand-card__ocr-score.is-ocr-openai em{color:#7c3aed}.cand-card__ocr-score.is-ocr-deepseek em{color:#0369a1}.cand-card__ocr-score.is-ocr-qwen em{color:#b45309}.cand-card__ocr-score.is-ocr-yandex em{color:#dc2626}.cand-card__ocr-score.is-ocr-google_vision em{color:#4285f4}.cand-card__ocr-score.is-coef-max.is-ocr-A{box-shadow:inset 0 0 0 1px #1f9d6a}.cand-card__ocr-score.is-coef-max.is-ocr-B{box-shadow:inset 0 0 0 1px #2f6fdb}.cand-card__ocr-score.is-coef-max.is-ocr-C{box-shadow:inset 0 0 0 1px #d97706}.cand-card__ocr-score.is-coef-max.is-ocr-D{box-shadow:inset 0 0 0 1px #7c3aed}.cand-card__ocr-score.is-coef-max.is-ocr-gemini{box-shadow:inset 0 0 0 1px #0f766e}.cand-card__ocr-score.is-coef-max.is-ocr-openai{box-shadow:inset 0 0 0 1px #7c3aed}.cand-card__ocr-score.is-coef-max.is-ocr-deepseek{box-shadow:inset 0 0 0 1px #0369a1}.cand-card__ocr-score.is-coef-max.is-ocr-qwen{box-shadow:inset 0 0 0 1px #b45309}.cand-card__ocr-score.is-coef-max.is-ocr-yandex{box-shadow:inset 0 0 0 1px #dc2626}.cand-card__ocr-score.is-coef-max.is-ocr-google_vision{box-shadow:inset 0 0 0 1px #4285f4}.cand-card__ocr-score.is-sort-active em,.cand-card__ocr-score.is-sort-active em.is-best-channel{color:#fff}.cand-card__name{font-weight:600}.cand-card__shop{color:#5a6570;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;padding:0 1px;font-size:.62rem;font-weight:600;line-height:1.2;overflow:hidden}.scan-winner__card .cand-card__shop{margin:.15rem 0 0;font-size:.78rem;font-weight:500}.cand-card__meta.is-overlap-text,.cand-card__meta.is-overlap-text p{color:#c00c1a}.cand-card__meta.is-overlap-text .is-sort-active,.cand-card__meta.is-overlap-text .is-sort-active em{color:#fff}.cand-card.is-overlap .cand-card__meta,.cand-card.is-overlap .cand-card__meta p{color:#c00c1a}.cand-popup{z-index:10000;pointer-events:auto;width:min(72vw,920px);max-height:min(78vh,640px);position:fixed}.cand-popup__inner{background:#fffcf8fa;border-radius:16px;grid-template-columns:1.15fr 1fr;gap:18px;height:100%;max-height:min(78vh,640px);padding:18px;display:grid;overflow:auto;box-shadow:0 24px 60px #28140f47}@media (width<=800px){.cand-popup__inner{grid-template-columns:1fr}}.cand-popup__left{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.cand-popup__photos{flex:none;grid-template-columns:1fr 1fr;gap:10px;min-height:0;display:grid}.cand-popup__texts{flex-direction:column;flex:auto;gap:10px;min-height:0;margin-top:0;display:flex}.cand-popup__texts .cand-popup__label-cols{flex:auto;min-height:0}.cand-popup__texts .scan-winner__legend{margin-top:0}.cand-popup__photo{grid-template-rows:auto 1fr;gap:6px;min-height:0;display:grid}.cand-popup__photo span{color:#6d574f;font-size:.8rem}.cand-popup__photo img,.cand-popup__photo .cand-card__placeholder{object-fit:contain;background:#f7f2ec;border-radius:10px;width:100%;height:100%;min-height:220px;max-height:48vh}.cand-popup__info{color:#2b1a16;font-size:.95rem}.cand-popup__info p{margin:0 0 8px}.cand-popup__hard-reject{color:#7f1d1d;background:#fde8e8;border:1px solid #e8a0a0;border-radius:8px;margin:0 0 14px;padding:10px 12px}.cand-popup__hard-reject>strong{margin-bottom:6px;font-size:.92rem;display:block}.cand-popup__hard-reject ul{gap:4px;margin:0;padding:0 0 0 1.1em;font-size:.88rem;line-height:1.35;display:grid}.cand-popup__scores{margin:0 0 14px}.cand-popup__scores>strong{margin-bottom:6px;display:block}.cand-popup__scores ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.cand-popup__scores li{background:#f7f2ec;border-radius:8px;justify-content:space-between;align-items:baseline;gap:12px;padding:4px 8px;font-size:.88rem;display:flex}.cand-popup__scores li.is-current{background:#efe6dc;font-weight:600}.cand-popup__scores li em{font-variant-numeric:tabular-nums;color:#2b1a16;font-style:normal;font-weight:600}.cand-popup__scores li.is-xgb-fin-ghost{color:#9ca3af;background:#f3f4f6}.cand-popup__scores li.is-xgb-fin-ghost em{color:#9ca3af}.cand-popup__scores li span{color:#5b433c;align-items:center;gap:6px;min-width:0;display:inline-flex}.cand-popup__ocr-letter{color:#fff;border-radius:4px;flex:none;place-items:center;width:18px;height:18px;font-size:.7rem;font-style:normal;font-weight:700;display:inline-grid}.cand-popup__ocr-letter.is-ocr-A{background:#1f9d6a}.cand-popup__ocr-letter.is-ocr-B{background:#2f6fdb}.cand-popup__ocr-letter.is-ocr-C{background:#d97706}.cand-popup__ocr-letter.is-ocr-D{background:#7c3aed}.cand-popup__ocr-letter.is-ocr-gemini{background:#0f766e}.cand-popup__ocr-letter.is-ocr-openai{background:#7c3aed}.cand-popup__ocr-letter.is-ocr-deepseek{background:#0369a1}.cand-popup__ocr-letter.is-ocr-qwen{background:#b45309}.cand-popup__ocr-letter.is-ocr-yandex{background:#dc2626}.cand-popup__ocr-letter.is-ocr-google_vision{background:#4285f4}.cand-popup__label-text{flex-direction:column;min-width:0;min-height:0;margin-top:0;display:flex}.cand-popup__label-text>strong{color:#5b433c;margin-bottom:6px;font-size:.82rem;display:block}.cand-popup__label-text pre{white-space:pre-wrap;word-break:break-word;background:#f7f2ec;border-radius:10px;flex:auto;min-height:120px;max-height:28vh;margin:0;padding:12px;font-size:.82rem;line-height:1.4;overflow:auto}.cand-popup__line{display:block}.cand-popup__line--exclusive-category{color:#7f1d1d;background:#dc262647;border-radius:3px;margin:0 -4px;padding:0 4px}.cand-popup__line--exclusive-type{color:#1e3a8a;background:#2563eb38;border-radius:3px;margin:0 -4px;padding:0 4px}.cand-popup__line--exclusive-grape{color:#14532d;background:#16a34a47;border-radius:3px;margin:0 -4px;padding:0 4px}.cand-popup__line--exclusive-winery{color:#78350f;background:#d9770652;border-radius:3px;margin:0 -4px;padding:0 4px}.cand-popup__match{color:inherit;background:#ffe566;border-radius:2px;padding:0 1px}.ocr-block{margin-top:28px}.ocr-block h2{margin:0 0 10px;font-size:1.15rem}.ocr-block__best{color:#5b433c;margin:0 0 14px;font-size:.95rem}.ocr-groups{gap:16px;display:grid}.ocr-variant-group{background:#fffcf88c;border:2px solid #c4b0a6;border-radius:16px;padding:14px 16px 16px}.ocr-variant-group h3{color:#2b1a16;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 14px;margin:0 0 12px;font-size:1rem;display:flex}.ocr-legend{color:#5b433c;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;font-size:.88rem;display:flex}.ocr-legend__item{color:#fff;border-radius:5px;place-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:inline-grid}.ocr-variant-group__letter{color:#fff;border-radius:5px;flex:none;place-items:center;width:22px;height:22px;margin-right:4px;font-size:.75rem;font-weight:700;display:inline-grid}.ocr-variant-group__best{font-size:.82rem;font-weight:600}.ocr-variant-group__best.is-ocr-A{color:#147a50}.ocr-variant-group__best.is-ocr-B{color:#1d4fad}.ocr-variant-group__best.is-ocr-C{color:#b45309}.ocr-variant-group__best.is-ocr-D{color:#5b21b6}.ocr-variant-group__best.is-ocr-gemini{color:#0f766e}.ocr-variant-group__best.is-ocr-openai{color:#7c3aed}.ocr-variant-group__best.is-ocr-deepseek{color:#0369a1}.ocr-variant-group__best.is-ocr-qwen{color:#b45309}.ocr-variant-group__best.is-ocr-yandex{color:#dc2626}.ocr-variant-group__best.is-ocr-google_vision{color:#4285f4}.ocr-variant-group__best.is-ocr-openai-txt{color:#0d9488}.ocr-card.is-best.is-ocr-A{background:#eefbf4;border:2px solid #1f9d6a;box-shadow:0 8px 24px #1f9d6a33}.ocr-card.is-best.is-ocr-A header strong{color:#147a50}.ocr-card.is-best.is-ocr-B{background:#eef3fc;border:2px solid #2f6fdb;box-shadow:0 8px 24px #2f6fdb33}.ocr-card.is-best.is-ocr-B header strong{color:#1d4fad}.ocr-card.is-best.is-ocr-C{background:#fff7ed;border:2px solid #d97706;box-shadow:0 8px 24px #d9770633}.ocr-card.is-best.is-ocr-C header strong{color:#b45309}.ocr-card.is-best.is-ocr-D{background:#f5f0ff;border:2px solid #7c3aed;box-shadow:0 8px 24px #7c3aed33}.ocr-card.is-best.is-ocr-D header strong{color:#5b21b6}.ocr-card.is-best.is-ocr-gemini{background:#ecfdf8;border:2px solid #0f766e;box-shadow:0 8px 24px #0f766e33}.ocr-card.is-best.is-ocr-gemini header strong{color:#0f766e}.ocr-card.is-best.is-ocr-openai{background:#f5f3ff;border:2px solid #7c3aed;box-shadow:0 8px 24px #7c3aed33}.ocr-card.is-best.is-ocr-openai header strong{color:#7c3aed}.ocr-card.is-best.is-ocr-deepseek{background:#f0f9ff;border:2px solid #0369a1;box-shadow:0 8px 24px #0369a133}.ocr-card.is-best.is-ocr-deepseek header strong{color:#0369a1}.ocr-card.is-best.is-ocr-qwen{background:#fffbeb;border:2px solid #b45309;box-shadow:0 8px 24px #b4530933}.ocr-card.is-best.is-ocr-qwen header strong{color:#b45309}.ocr-card.is-best.is-ocr-yandex{background:#fef2f2;border:2px solid #dc2626;box-shadow:0 8px 24px #dc262633}.ocr-card.is-best.is-ocr-yandex header strong{color:#dc2626}.ocr-card.is-best.is-ocr-google_vision{background:#eff6ff;border:2px solid #4285f4;box-shadow:0 8px 24px #4285f433}.ocr-card.is-best.is-ocr-google_vision header strong{color:#4285f4}.ocr-card.is-best.is-ocr-openai-txt{background:#f0fdfa;border:2px solid #0d9488;box-shadow:0 8px 24px #0d948833}.ocr-card.is-best.is-ocr-openai-txt header strong{color:#0d9488}.ocr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=900px){.ocr-grid{grid-template-columns:1fr}}.ocr-card{background:#fff;border-radius:14px;min-width:0;padding:14px;box-shadow:0 8px 24px #46281e0f}.ocr-card header{color:#6d574f;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:.85rem;display:flex}.ocr-card pre{white-space:pre-wrap;word-break:break-word;background:#f7f2ec;border-radius:10px;max-height:180px;margin:0;padding:10px;font-size:.8rem;line-height:1.35;overflow:auto}.ocr-explain{color:#5b433c;background:#fff;border:1px solid #eadfd6;border-radius:12px;margin:0 0 14px;padding:10px 14px;font-size:.88rem;box-shadow:0 6px 18px #46281e0d}.ocr-explain:not(.is-open){box-shadow:none;background:0 0;border:0;padding:0}.ocr-explain__toggle{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:baseline;gap:0;margin:0;padding:0;display:inline-flex}.ocr-explain__toggle:hover{color:#3d2a24}.ocr-explain__chev{letter-spacing:.02em;white-space:pre;font-weight:600}.ocr-explain__body{border-top:1px solid #eadfd6;margin-top:10px;padding-top:10px}.ocr-explain__body>p:first-child,.ocr-explain__body>ul:first-child{margin-top:0}.ocr-explain p{margin:0 0 8px}.ocr-explain__fin{margin:0 0 10px;padding-left:1.1rem}.ocr-explain__fin li{margin-bottom:8px}.ocr-explain__fin code{color:#3d2a24;background:#f4ebe3;border-radius:4px;padding:1px 5px;font-size:.82em;display:inline}.ocr-explain__weights{font-variant-numeric:tabular-nums}.ocr-explain ul{margin:0;padding-left:1.1rem}.ocr-explain li{margin-bottom:4px}.ocr-card__entities{color:#7a655d;word-break:break-word;margin:8px 0 0;font-size:.75rem}.ocr-card__json{background:#f7f2ec;border-radius:6px;max-height:180px;margin:8px 0 0;padding:6px 8px;font-size:.68rem;overflow:auto}.ocr-card__llm-scores{color:#5b433c;font-variant-numeric:tabular-nums;margin:10px 0 0;padding:0;font-size:.78rem;list-style:none}.ocr-card__llm-scores li{margin:2px 0}.ocr-card__match{color:#5b433c;margin:10px 0 0;font-size:.78rem}.ocr-wine-id{color:#8b1d2c;text-underline-offset:2px;cursor:help;font-weight:700;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline}.ocr-wine-id.is-missing{color:inherit;font-weight:inherit;cursor:default;text-decoration:none}.ocr-block__ensemble{color:#403029;margin:12px 0 0;font-size:.9rem}.error-page{box-sizing:border-box;text-align:center;color:#000;background:#fff;justify-content:center;align-items:center;min-height:100vh;font-family:system-ui,-apple-system,sans-serif;display:flex}.error-page__content{max-width:600px;padding:48px 24px}.error-page__code{color:#000;margin:0 0 24px;font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:96px;font-weight:700;line-height:1}.error-page__message{color:#666;word-break:break-word;margin:0 0 32px;font-size:24px;font-weight:400;line-height:1.35}.error-page__btn{box-sizing:border-box;color:#fff;cursor:pointer;background-color:#8f3d42;border:2px solid #8f3d42;border-radius:16px;justify-content:center;align-items:center;height:56px;margin:0 auto;padding:0 16px;font-family:system-ui,-apple-system,sans-serif;font-size:16px;font-weight:600;line-height:20px;text-decoration:none;transition:background-color .3s ease-in,border-color .3s ease-in,transform .2s linear;display:inline-flex}.error-page__btn:hover{background-color:#ab494f;border-color:#ab494f}.error-page__btn:active{background-color:#723135;border-color:#723135;transform:scale(.98)}.history-page{max-width:min(1680px,100%)}.history-error{color:#c00c1a;margin:0 0 12px}.history-filters{background:#fff;border:1px solid #8b1d2c1a;border-radius:12px;flex-wrap:nowrap;align-items:center;gap:10px 14px;margin:0 0 14px;padding:10px 12px;display:flex;overflow-x:auto;box-shadow:0 6px 18px #46281e0d}.history-filters__flags{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:8px 12px;display:flex}.history-filters__check{color:#5b433c;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:5px;font-size:.78rem;display:flex}.history-filters__check input{margin:0}.history-filters__check--latest{white-space:normal;align-items:flex-start;max-width:13.5rem;line-height:1.25}.history-filters__check--latest input{margin-top:2px}.history-filters__ids{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:8px 12px;margin-left:auto;display:flex}.history-filters__field{color:#7a655d;white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.history-filters__field span{flex-shrink:0;min-width:0}.history-filters__field input{width:8rem;min-width:6rem;font:inherit;color:#5b433c;background:#faf7f3;border:1px solid #5030282e;border-radius:8px;padding:5px 8px}.history-filters__field input[type=number]{appearance:textfield;width:6.5rem}.history-filters__field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.history-filters__field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.history-filters__btn{color:#fff;font:inherit;cursor:pointer;white-space:nowrap;background:#8b1d2c;border:0;border-radius:8px;flex-shrink:0;padding:5px 10px;font-size:.75rem;font-weight:600}.history-filters__btn:hover{background:#6f1623}.history-filters__btn--ghost{color:#8b1d2c;background:0 0;border:1px solid #8b1d2c59}.history-filters__btn--report{color:#fff;background:#8b1d2c;border:1px solid #8b1d2c}.history-filters__btn--report:hover:not(:disabled){background:#6e1522}.history-filters__btn--report:disabled{opacity:.65;cursor:default}.history-report-modal{z-index:80;background:#1e100c73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.history-report-modal__panel{background:#fff;border-radius:14px;width:min(440px,100%);padding:18px 18px 16px;box-shadow:0 18px 48px #28140e40}.history-report-modal__panel h2{color:#2b1a16;margin:0 0 8px;font-size:1.15rem}.history-report-modal__hint{color:#6b534a;margin:0 0 14px;font-size:.82rem;line-height:1.4}.history-report-modal__fields{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.history-report-modal__fields label{color:#5b433c;flex-direction:column;gap:4px;font-size:.8rem;display:flex}.history-report-modal__fields input{border:1px solid #8b1d2c33;border-radius:8px;padding:8px 10px;font-size:.95rem}.history-report-modal__actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.history-report-modal__saved{border-top:1px solid #8b1d2c1a;margin-top:16px;padding-top:12px}.history-report-modal__saved strong{color:#6b534a;margin-bottom:6px;font-size:.8rem;display:block}.history-report-modal__saved ul{max-height:160px;margin:0;padding:0;list-style:none;overflow:auto}.history-report-modal__saved li{padding:4px 0;font-size:.84rem}.history-report-modal__saved a{color:#8b1d2c;text-decoration:none}.history-report-modal__saved a:hover{text-decoration:underline}.history-filters__btn--ghost:hover{background:#8b1d2c0f}.history-row.is-highlight{outline-offset:-2px;background:#15803d1a;outline:2px solid #15803d73}.history-table-wrap{background:#fff;border-radius:14px;overflow:auto;box-shadow:0 8px 24px #46281e0f}.history-table{border-collapse:collapse;width:100%;font-size:.82rem}.history-table th,.history-table td{vertical-align:top;text-align:left;border-bottom:1px solid #50302814;padding:8px 10px}.history-table thead th{z-index:2;color:#5b433c;white-space:nowrap;background:#f7f2ec;font-weight:600;position:sticky;top:0}.history-row{cursor:pointer}.history-row:hover{background:#8b1d2c0a}.history-table .num{font-variant-numeric:tabular-nums;white-space:nowrap}.history-table .col-photo{width:120px}.history-table .col-found{width:auto;min-width:220px}.history-table .col-nomatch{vertical-align:top;width:auto;min-width:420px}.history-nomatch{align-items:flex-start;gap:10px;display:flex}.history-nomatch__ocr{flex:0 0 180px;min-width:140px;max-width:220px}.history-nomatch__ocr>strong{color:#7a655d;margin-bottom:4px;font-size:.7rem;display:block}.history-nomatch__ocr pre{white-space:pre-wrap;word-break:break-word;color:#403029;max-height:140px;margin:0;font-size:.72rem;line-height:1.35;overflow:auto}.history-nomatch__cands{flex:auto;min-width:0}.history-xgb-top{flex-wrap:wrap;align-items:flex-start;gap:6px;display:flex}.history-xgb-top--7{flex-wrap:wrap}.history-xgb-card{flex:none;width:72px}.history-xgb-card.is-manual{outline-offset:1px;border-radius:8px;outline:2px solid #8b1d2c}.history-xgb-card__media{cursor:pointer;background:#f7f2ec;border:0;border-radius:6px;width:72px;height:96px;padding:0;display:block;overflow:hidden}.history-xgb-card__media img{object-fit:contain;width:100%;height:100%;display:block}.history-xgb-card__placeholder{background:#efe8e0;width:100%;height:100%}.history-xgb-card__meta{color:#5b433c;margin-top:3px;font-size:.62rem;line-height:1.2}.history-xgb-card__score{font-variant-numeric:tabular-nums;margin:0}.history-xgb-card__score--cos{justify-content:space-between;align-items:baseline;gap:4px;display:flex}.history-xgb-card__score em{font-style:normal;font-weight:600}.history-xgb-card__clef{font-variant-numeric:tabular-nums;color:#1d4ed8;margin:1px 0 0;font-weight:600}.history-xgb-card__clef em{font-style:normal;font-weight:700}.history-xgb-card__score>span.is-coef-max,.history-xgb-card__clef.is-coef-max{box-sizing:border-box;vertical-align:baseline;border-radius:2px;width:fit-content;max-width:100%;padding:0 3px;line-height:1.15;display:inline-block;box-shadow:inset 0 0 0 1px}.history-hard-x{color:#dc2626;flex-shrink:0;margin-left:auto;font-size:.78rem;font-weight:800;line-height:1}.history-xgb-card__id{color:#7a655d;margin:1px 0 0}.history-xgb-card__manual{color:#8b1d2c;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:3px;margin-top:3px;font-size:.6rem;font-weight:600;display:flex}.history-xgb-card__manual input{accent-color:#8b1d2c;width:12px;height:12px;margin:0}.history-cand-popup{z-index:1200;pointer-events:auto;position:fixed}.history-cand-popup__inner{background:#fffaf5;border:1px solid #e4d5c8;border-radius:12px;grid-template-columns:minmax(0,1.4fr) minmax(220px,.7fr);gap:14px;width:min(92vw,920px);max-height:min(78vh,640px);padding:14px;display:grid;overflow:auto;box-shadow:0 16px 40px #321e1438}.history-cand-popup__left{flex-direction:column;gap:10px;min-width:0;display:flex}.history-cand-popup__photos{grid-template-columns:1fr 1fr;gap:10px;display:grid}.history-cand-popup__photo{min-width:0}.history-cand-popup__photo span{color:#7a655d;margin-bottom:4px;font-size:.72rem;font-weight:600;display:block}.history-cand-popup__photo img,.history-cand-popup__photo .history-cand-popup__placeholder{aspect-ratio:3/4;object-fit:contain;background:#f3ebe3;border-radius:8px;width:100%;display:block}.history-cand-popup__texts{min-width:0}.history-cand-popup__label-cols{grid-template-columns:1fr 1fr;gap:10px;display:grid}.history-cand-popup__label-text{min-width:0}.history-cand-popup__label-text>strong{color:#7a655d;margin-bottom:4px;font-size:.72rem;display:block}.history-cand-popup__label-text pre{white-space:pre-wrap;word-break:break-word;color:#5b433c;max-height:160px;margin:0;font-size:.72rem;line-height:1.3;overflow:auto}.history-cand-popup__info{color:#5b433c;min-width:0;font-size:.82rem}.history-cand-popup__info p{margin:0 0 6px}.history-cand-popup__scores{margin-top:10px}.history-cand-popup__scores>strong{color:#7a655d;margin-bottom:4px;font-size:.75rem;display:block}.history-cand-popup__scores ul{margin:0;padding:0;list-style:none}.history-cand-popup__scores li{font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;padding:2px 0;display:flex}.history-cand-popup__cos-row{align-items:baseline}.history-cand-popup__cos-row .history-hard-x{margin-left:8px}.history-cand-popup__scores li em{font-style:normal;font-weight:600}@media (width<=720px){.history-cand-popup__inner,.history-cand-popup__label-cols{grid-template-columns:1fr}}.history-table .col-ocr{min-width:320px;max-width:520px}.history-table .col-score{cursor:default;min-width:200px;max-width:280px}.history-scores{font-variant-numeric:tabular-nums;color:#5b433c;white-space:normal;font-size:.72rem;line-height:1.35}.history-scores__meta{color:#7a655d;margin-bottom:4px;font-weight:600}.history-scores div+div{margin-top:2px}.history-scores__wine{text-align:left;word-break:break-word;color:#5b433c;cursor:default;font-weight:inherit;margin-top:6px;text-decoration:none;display:block}.history-scores__xgb{color:#15803d;font-weight:600}.history-scores__crenc,.history-scores__clef{color:#1d4ed8;font-weight:600}.history-scores__cos-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.history-scores__eval{flex-flow:wrap;align-items:center;gap:10px 14px;margin-top:8px;display:flex}.history-scores__check{color:#5b433c;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;font-size:.7rem;display:flex}.history-scores__check input{margin:0}.history-thumb,.history-thumb-btn .history-thumb{object-fit:contain;background:#f7f2ec;border-radius:8px;width:108px;height:140px;display:block}.history-thumb--empty{background:#efe8e0;border-radius:8px;width:108px;height:140px}.history-thumb-btn{cursor:pointer;background:0 0;border:0;padding:0}.history-ocr{grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}.history-ocr__cell{background:0 0;border:0;min-width:0}.history-ocr__cell>strong{color:#7a655d;margin-bottom:4px;font-size:.72rem;font-weight:600;display:block}.history-ocr__cell pre{white-space:pre-wrap;word-break:break-word;color:#5b433c;background:0 0;border:0;max-height:140px;margin:0;padding:0;font-size:.7rem;line-height:1.25;overflow:auto}.history-ocr__match{color:inherit;background:#ffe566;border-radius:2px;padding:0 1px}.sort-btn{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.history-table .linkish{color:#8b1d2c;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.history-sentinel{text-align:center;color:#7a655d;min-height:24px;margin:16px 0 32px;font-size:.9rem}@media (width<=900px){.history-ocr{grid-template-columns:1fr}}@media (width<=720px){.history-table thead{display:none}.history-table,.history-table tbody{width:100%;display:block}.history-row{border-bottom:1px solid #50302814;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:8px 10px;padding:12px 10px;display:grid}.history-table th,.history-table td{border:none;padding:0}.history-row>.col-photo:not(.col-found){grid-area:1/1;width:auto}.history-row>.col-found{grid-area:1/2;width:auto;min-width:0}.history-row>.col-ocr{grid-area:2/1/auto/-1;min-width:0;max-width:none}.history-row>.col-nomatch{grid-area:2/1/auto/-1;width:auto;min-width:0}.history-row>.col-score{grid-area:3/1/auto/-1;min-width:0;max-width:none}.history-thumb,.history-thumb-btn .history-thumb,.history-thumb--empty{aspect-ratio:108/140;width:100%;max-width:160px;height:auto;margin:0 auto}.history-nomatch{flex-direction:column}.history-nomatch__ocr{flex:none;width:100%;max-width:none}}.eval-report-page{max-width:min(1100px,100%)}.eval-report__back{margin:0 0 6px;font-size:.9rem}.eval-report__back a{color:#8b1d2c;text-decoration:none}.eval-report__back a:hover{text-decoration:underline}.eval-report__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px;display:grid}.eval-report__stat{text-align:center;background:#fff;border:1px solid #8b1d2c1f;border-radius:12px;padding:14px 12px}.eval-report__stat strong{color:#2b1a16;font-size:1.6rem;line-height:1.1;display:block}.eval-report__stat span{color:#6b534a;margin-top:4px;font-size:.78rem;display:block}.eval-report__stat.is-tp strong{color:#2f7d4a}.eval-report__stat.is-fp strong{color:#c00c1a}.eval-report__stat.is-fn strong{color:#c47a12}.eval-report__grid{grid-template-columns:1fr 1.2fr;gap:14px;margin-bottom:14px;display:grid}.eval-report__grid--timing{grid-template-columns:1.2fr 1fr;align-items:start}.eval-report__grid>.eval-report__card{margin-bottom:0}.eval-report__card,.eval-report__section{background:#fff;border:1px solid #8b1d2c1a;border-radius:12px;margin-bottom:14px;padding:14px 16px;box-shadow:0 6px 18px #46281e0a}.eval-report__timing-summary{color:#4a342c;margin:-4px 0 12px;font-size:.88rem;line-height:1.4}.eval-report__timing-chart{padding-bottom:2px;overflow-x:auto}.eval-report__timing-bars{min-height:160px;min-width:min(100%, max(280px, calc(var(--timing-cols,8) * 36px)));align-items:flex-end;gap:4px;display:flex}.eval-report__timing-col{flex-direction:column;flex:28px;align-items:center;gap:4px;min-width:28px;max-width:48px;display:flex}.eval-report__timing-top{flex-direction:column;justify-content:flex-end;align-items:center;min-height:2.4em;line-height:1.15;display:flex}.eval-report__timing-n{font-variant-numeric:tabular-nums;color:#2b1a16;font-size:.72rem;font-weight:600}.eval-report__timing-n.is-zero{color:#cbb8b0;font-weight:400}.eval-report__timing-pct{font-variant-numeric:tabular-nums;color:#8a7468;font-size:.65rem}.eval-report__timing-track{background:#f3ebe7;border-radius:4px 4px 0 0;align-items:flex-end;width:100%;height:110px;display:flex;overflow:hidden}.eval-report__timing-fill{background:#8b1d2c;border-radius:3px 3px 0 0;width:100%;min-height:0;transition:height .2s}.eval-report__timing-fill.is-zero{background:0 0;min-height:0}.eval-report__timing-x{font-variant-numeric:tabular-nums;color:#6b534a;font-size:.7rem}.eval-report__timing-axis{color:#8a7468;text-align:right;margin-top:4px;font-size:.72rem}.eval-report__card h2,.eval-report__section h2{color:#3a241e;margin:0 0 12px;font-size:1rem}.eval-report__metrics{border-collapse:collapse;width:100%;font-size:.9rem}.eval-report__metrics th{text-align:left;color:#6b534a;padding:5px 8px 5px 0;font-weight:500}.eval-report__metrics td{text-align:right;font-variant-numeric:tabular-nums;color:#2b1a16;padding:5px 0}.eval-report__pie-wrap{align-items:center;gap:18px;margin-bottom:14px;display:flex}.eval-report__pie{border-radius:50%;flex-shrink:0;width:120px;height:120px}.eval-report__pie-legend{color:#4a342c;margin:0;padding:0;font-size:.85rem;list-style:none}.eval-report__pie-legend li{align-items:center;gap:8px;margin:4px 0;display:flex}.eval-report__pie-legend i{border-radius:2px;width:10px;height:10px;display:inline-block}.eval-report__pie-legend i.is-tp,.eval-report__bar-fill.is-tp{background:#2f7d4a}.eval-report__pie-legend i.is-fp,.eval-report__bar-fill.is-fp{background:#c00c1a}.eval-report__pie-legend i.is-tn,.eval-report__bar-fill.is-tn{background:#8a7468}.eval-report__pie-legend i.is-fn,.eval-report__bar-fill.is-fn{background:#c47a12}.eval-report__bars{flex-direction:column;gap:8px;display:flex}.eval-report__bar-row{grid-template-columns:120px 1fr 36px;align-items:center;gap:8px;font-size:.8rem;display:grid}.eval-report__bar-label{color:#6b534a}.eval-report__bar-track{background:#f0e8e3;border-radius:999px;height:10px;overflow:hidden}.eval-report__bar-fill{border-radius:999px;min-width:0;height:100%}.eval-report__bar-value{text-align:right;font-variant-numeric:tabular-nums;color:#2b1a16}.eval-report__rules ol{color:#5b433c;margin:0;padding-left:1.2rem;font-size:.88rem;line-height:1.45}.eval-report__dist-hint{color:#6b534a;margin:-4px 0 12px;font-size:.82rem;line-height:1.4}.eval-report__dist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.eval-report__dist-card{background:#faf7f5;border:1px solid #8b1d2c1a;border-radius:10px;padding:10px 12px}.eval-report__dist-card h3{color:#3a241e;margin:0 0 8px;font-size:.95rem}.eval-report__dist-n{color:#8a7468;font-size:.8rem;font-weight:500}.eval-report__dist-table{border-collapse:collapse;width:100%;font-size:.8rem}.eval-report__dist-table th,.eval-report__dist-table td{text-align:left;border-bottom:1px solid #8b1d2c0f;padding:3px 4px}.eval-report__dist-table th:nth-child(2),.eval-report__dist-table td:nth-child(2),.eval-report__dist-table th:nth-child(3),.eval-report__dist-table td:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}.eval-report__dist-table tr.is-zero td{color:#b5a49c}.eval-report__dist-stats{color:#6b534a;margin:8px 0 0;font-size:.75rem;line-height:1.35}@media (width<=800px){.eval-report__dist-grid{grid-template-columns:1fr}}.eval-report__empty{color:#8a7468;margin:0;font-size:.9rem}.eval-report__table-wrap{overflow-x:auto}.eval-report__table{border-collapse:collapse;width:100%;font-size:.86rem}.eval-report__table th,.eval-report__table td{text-align:left;border-bottom:1px solid #8b1d2c14;padding:7px 8px}.eval-report__table th{color:#6b534a;font-weight:500}.eval-report__table a{color:#8b1d2c;font-weight:600;text-decoration:none}.eval-report__table a:hover{text-decoration:underline}.eval-report__table.is-fp tbody tr:hover{background:#c00c1a0a}.eval-report__table.is-fn tbody tr:hover{background:#c47a120f}.eval-report__saved{margin:0;padding:0;list-style:none}.eval-report__saved li{border-bottom:1px solid #8b1d2c0f;align-items:center;gap:12px;padding:6px 0;font-size:.9rem;display:flex}.eval-report__saved a{color:#8b1d2c;text-decoration:none}.eval-report__saved a:hover{text-decoration:underline}.eval-report__del{color:#8a7468;cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:.8rem}.eval-report__del:hover{color:#c00c1a}@media (width<=800px){.eval-report__stats{grid-template-columns:1fr 1fr}.eval-report__grid,.eval-report__grid--timing{grid-template-columns:1fr}.eval-report__bar-row{grid-template-columns:1fr;gap:4px}}.wine-detail__hero{grid-template-columns:1fr minmax(180px,280px) 1fr;align-items:start;gap:28px;margin-top:18px;display:grid}.wine-detail__left h1{color:#2b1a16;margin:0 0 10px;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.15}.wine-detail__winery{color:#8b1d2c;margin:0 0 24px;font-size:1.05rem}.wine-detail__link{color:inherit;cursor:pointer;text-decoration:none}.wine-detail__link:hover{text-decoration:underline}.wine-detail__link--label{color:#8a736a;font-size:.85rem}.wine-detail__link--value{color:#2b1a16;font-weight:600}.wine-detail__winery .wine-detail__link--value{color:#8b1d2c;font-weight:inherit}.wine-detail__stack{gap:14px;display:grid}.wine-detail__field{gap:4px;display:grid}.wine-detail__field span{color:#8a736a;font-size:.85rem}.wine-detail__field strong{color:#2b1a16;font-weight:600}.wine-detail__photo{background:#f4eee4;border-radius:24px;place-items:center;min-height:420px;padding:24px;display:grid}.wine-detail__photo img{object-fit:contain;max-width:100%;max-height:480px}.wine-detail__placeholder{opacity:.4;background:linear-gradient(#c9b6a8 0%,#8b1d2c 55%,#4a1420 100%);border-radius:10px 10px 6px 6px;width:90px;height:260px}.wine-detail__card{background:#fff;border-radius:18px;gap:14px;padding:22px;display:grid;box-shadow:0 10px 30px #46281e0f}.wine-detail__card-title{justify-content:space-between;align-items:baseline;gap:12px;margin:0;font-size:1.1rem;display:flex}.wine-detail__card-id{white-space:nowrap;font-size:.95em;font-weight:500}.wine-detail__desc{background:#fff;border-radius:18px;margin-top:36px;padding:28px;box-shadow:0 10px 30px #46281e0d}.wine-detail__desc h2{margin:0 0 12px;font-family:"Source Serif 4",Georgia,serif}.wine-detail__desc p{color:#403029;white-space:pre-wrap;margin:0;line-height:1.65}.wine-detail__label{background:#fff;border-radius:18px;margin-top:36px;padding:28px;box-shadow:0 10px 30px #46281e0d}.wine-detail__label h2{margin:0 0 16px;font-family:"Source Serif 4",Georgia,serif}.wine-detail__label-grid{grid-template-columns:minmax(180px,320px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.wine-detail__label-grid img{object-fit:contain;background:#f4eee4;border-radius:12px;width:100%;max-height:420px}.wine-detail__label-grid pre{white-space:pre-wrap;color:#403029;margin:0;font-family:Manrope,system-ui,sans-serif;font-size:.95rem;line-height:1.55}.wine-detail__label-ocr{white-space:pre;color:#2b1a16;background:#f7f3ec;border:1px solid #5030281a;border-radius:12px;max-height:520px;margin:0;padding:16px 18px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.45;overflow:auto}@media (width<=960px){.wine-detail__hero{grid-template-columns:1fr}.wine-detail__photo{order:-1}.wine-detail__label-grid{grid-template-columns:1fr}}.filters{background:#fff;border-radius:18px;max-height:calc(100vh - 110px);padding:8px 0;position:sticky;top:88px;overflow:auto;box-shadow:0 10px 30px #46281e0f}.filters__top-search{border-bottom:1px solid #50302814;padding:14px 18px 10px}.filters__top-search label{color:#2b1a16;margin-bottom:8px;font-size:.95rem;font-weight:600;display:block}.filters__search--main{background:#fff;border-color:#8b1d2c40;margin-bottom:0}.filters__search--main:focus{border-color:#8b1d2c;outline:2px solid #8b1d2c40}.filters__mobile-toggle{width:100%;font:inherit;color:#8b1d2c;text-align:left;cursor:pointer;background:0 0;border:0;padding:14px 18px;font-weight:600;display:none}.filters--collapsed{padding:0}@media (width<=900px){.filters__mobile-toggle{display:block}.filters--collapsed .filters__mobile-toggle{border-radius:18px}}.filters__group+.filters__group{border-top:1px solid #50302814}.filters__title{width:100%;font:inherit;color:#2b1a16;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:16px 18px;font-weight:600;display:flex}.filters__body{padding:0 18px 16px}.filters__search{background:#faf7f2;border:1px solid #50302824;border-radius:10px;width:100%;margin-bottom:10px;padding:10px 12px}.filters ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.filters label{color:#403029;cursor:pointer;grid-template-columns:18px 1fr auto;align-items:start;gap:10px;font-size:.92rem;display:grid}.filters em{color:#9a847b;font-size:.8rem;font-style:normal}.filters__more{color:#8b1d2c;cursor:pointer;font:inherit;background:0 0;border:0;margin-top:10px;padding:0}.wine-card{color:inherit;z-index:1;background:#f4eee4;border-radius:18px;flex-direction:column;min-height:320px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:visible}.wine-card:hover{z-index:5;transform:translateY(-3px);box-shadow:0 14px 28px #46281e1a}.wine-card__media{border-radius:18px 18px 0 0;grid-template-columns:1fr 1fr;align-items:center;gap:8px;height:220px;min-height:220px;padding:14px 10px 0;display:grid;overflow:hidden}.wine-card__half{justify-content:center;align-items:center;min-width:0;height:200px;display:flex}.wine-card__half img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:200px}.wine-card__placeholder{opacity:.35;background:linear-gradient(#c9b6a8 0%,#8b1d2c 55%,#4a1420 100%);border-radius:8px}.wine-card__placeholder--bottle{border-radius:8px 8px 4px 4px;width:48px;height:160px}.wine-card__placeholder--label{border-radius:6px;width:70%;height:120px}.wine-card__meta{padding:14px 16px 18px}.wine-card__meta h2{color:#2b1a16;margin:0 0 6px;font-size:1rem;line-height:1.3}.wine-card__meta p{color:#7a655d;margin:0;font-size:.9rem}.wine-card__meta strong{color:#2b1a16;font-weight:700}.wine-card__extra{margin-top:4px!important;font-size:.8rem!important}.wine-card__popup{z-index:20;pointer-events:none;background:#fff;border-radius:14px;width:min(320px,42vw);max-height:420px;padding:12px;position:absolute;top:12px;left:calc(100% + 12px);overflow:auto;box-shadow:0 16px 40px #321e1438}.wine-card__label-text{white-space:pre-wrap;color:#403029;margin:0;font-family:Manrope,system-ui,sans-serif;font-size:.82rem;line-height:1.45}.wines-grid>.wine-card:nth-child(4n) .wine-card__popup,.wines-grid>.wine-card:nth-child(4n-1) .wine-card__popup{left:auto;right:calc(100% + 12px)}@media (width<=1100px){.wines-grid>.wine-card:nth-child(4n) .wine-card__popup,.wines-grid>.wine-card:nth-child(4n-1) .wine-card__popup{left:calc(100% + 12px);right:auto}.wines-grid>.wine-card:nth-child(3n) .wine-card__popup{left:auto;right:calc(100% + 12px)}}.wines-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:28px;display:grid}.wines-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.wines-page__count{color:#7a655d;margin:10px 0 0}.wines-sentinel{height:1px}.page-loading,.page-empty,.page-error{color:#5b433c;margin-top:18px}.page-error{color:#8b1d2c}@media (width<=1100px){.wines-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.wines-layout{grid-template-columns:1fr}.filters{max-height:none;position:static}}@media (width<=700px){.wines-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{color:#2b1a16;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand:#8b1d2c;--bg:#fcf9f3;--ink:#2b1a16;background:#fcf9f3;font-family:Manrope,system-ui,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(circle at 8% 20%, #8b1d2c0d, transparent 28%), radial-gradient(circle at 92% 10%, #785a3c0f, transparent 24%), var(--bg)}button,input{font:inherit}.app-shell{min-height:100vh}.page{max-width:1280px;margin:0 auto;padding:28px 24px 64px}.page__intro{text-align:center;margin-bottom:28px}.page__intro h1{color:var(--ink);margin:8px 0 10px;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:600}.page__lead{color:#6d574f;margin:0;font-size:1.05rem}.breadcrumbs{color:#9a847b;margin:0;font-size:.9rem}
