:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#2c1723;--bg-2:#1f0e18;--surface:#3c2333;--surface-2:#4b2d41;--surface-3:#5a394e;--line:#ffd6e41a;--line-strong:#ffd6e433;--text:#f9eff3;--text-dim:#d2b8c4;--text-faint:#b89aa6;--gold:#e8b857;--gold-2:#cf9530;--gold-ink:#2a1119;--lilac:#cfa9ec;--sage:#9fd6a7;--sky:#93c6ef;--coral:#f4937d;--ready:#93d49d;--ready-bg:#5abe732e;--wait:#f2b76d;--wait-bg:#f2b76d29;--error:#f4937d;--error-bg:#f4937d29;--wine-white:#d9c672;--wine-rose:#e6a39e;--wine-red:#8b1f38;--wine-sparkling:#d9c672;--wine-fortified:#6e1a30;--sh-card:0 10px 24px #00000061, 0 1px 2px #0000004d;--sh-btn:0 8px 18px #e8b8574d, 0 1px 0 #fff6 inset, 0 -1px 0 #00000026 inset;--sh-raise:0 2px 6px #00000059, 0 1px 0 #ffffff12 inset;--font-serif:"Newsreader", Georgia, serif;--font-sans:"Manrope", system-ui, sans-serif;--motion-duration:.22s}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f1ea;--bg-2:#eee4d6;--surface:#fff;--surface-2:#f7f0e6;--surface-3:#ecdfcc;--line:#2a11191a;--line-strong:#2a11192e;--text:#2a1119;--text-dim:#6b4a55;--text-faint:#9b7c86;--gold:#b9862f;--gold-2:#a06f22;--gold-ink:#2a1119;--lilac:#7a5aa0;--sage:#4f8a5c;--sky:#3e7cb1;--coral:#c85a3f;--ready:#2f7a42;--ready-bg:#2f7a421f;--wait:#a8701f;--wait-bg:#a8701f1f;--error:#b23a3a;--error-bg:#b23a3a1a;--wine-white:#b89b3a;--wine-rose:#c96f66;--wine-red:#7b1e3a;--wine-sparkling:#b89b3a;--wine-fortified:#5a1424;--sh-card:0 6px 16px #2a11191a, 0 1px 2px #2a11190f;--sh-btn:0 6px 14px #b9862f47, 0 1px 0 #ffffff80 inset;--sh-raise:0 1px 3px #2a11191a}@media (prefers-reduced-motion:reduce){:root{--motion-duration:.001ms}}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;padding:0;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}button{cursor:pointer;color:inherit;background:0 0;font-family:inherit}input,select{color:inherit;font-family:inherit}a{color:var(--sky)}button,[role=button],input,select{min-height:48px}:focus-visible{outline:2.5px solid var(--text);outline-offset:3px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.colour-dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 2px #00000040}.proef-btn{isolation:isolate;-webkit-tap-highlight-color:transparent;border:none;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-size:15px;font-weight:800;transition:transform .25s cubic-bezier(.3,.7,.4,1.4),box-shadow .25s,filter .25s;display:inline-flex;position:relative;overflow:visible}.proef-btn--full{width:100%}.proef-btn--primary{background:linear-gradient(180deg, #f7d57a 0%, #e9b854 55%, var(--gold-2) 100%);color:var(--gold-ink);box-shadow:0 8px 18px #e8b8574d,0 2px #a8731f,inset 0 1px #ffffff8c,inset 0 -2px #00000024}.proef-btn--primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.proef-btn--primary:active{filter:brightness(.94);transition-duration:34ms;transform:translateY(2px);box-shadow:0 3px 8px #e8b85738,inset 0 2px 4px #00000047}.proef-btn--primary.proef-btn--selected{background:linear-gradient(180deg, var(--surface-3), var(--surface));color:var(--gold);box-shadow:0 0 0 1.5px var(--gold), 0 6px 14px #0000004d}.proef-btn--primary:disabled{opacity:.38;filter:saturate(.55);box-shadow:none;pointer-events:none;transform:none}.proef-btn--primary:after{content:"";opacity:0;pointer-events:none;z-index:-1;background:radial-gradient(circle,#f7d57a8c 0%,#e8b85742 35%,#e8b85700 68%);border-radius:50%;width:140%;margin:-70% 0 0 -70%;padding-top:140%;transition:transform .7s cubic-bezier(.2,.7,.3,1),opacity .7s ease-out;position:absolute;top:50%;left:50%;transform:scale(1.1)}.proef-btn--primary:active:after{opacity:.9;transition:none;transform:scale(.3)}.proef-btn--secondary{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);color:var(--text);box-shadow:var(--sh-raise)}.proef-btn--secondary:active{transform:translateY(1px)}.proef-btn--secondary.proef-btn--selected{border-color:var(--gold);color:var(--text);background:#e8b8571a}.proef-btn--secondary:disabled{opacity:.45;pointer-events:none}.proef-btn--ghost{color:var(--text-dim);background:0 0;font-weight:600}.proef-btn--ghost:disabled{opacity:.45;pointer-events:none}@media (prefers-reduced-motion:reduce){.proef-btn,.proef-btn:after{transition:none!important}}.tabbar{padding:8px 8px calc(16px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg, var(--surface-2), var(--bg-2));border-top:1px solid var(--line-strong);gap:4px;display:flex;position:sticky;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #00000040}.tab{color:var(--text-faint);border-radius:14px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;min-height:52px;padding:6px 4px;font-size:10.5px;font-weight:600;display:flex}.tab--active{color:var(--gold);background:#e8b8571a}.app-shell{background:radial-gradient(130% 70% at 25% -5%, var(--surface-2) 0%, var(--bg) 50%, var(--bg-2) 100%);flex-direction:column;flex:1;min-height:100dvh;display:flex}.app-shell__body{padding:max(20px, env(safe-area-inset-top)) 20px 24px;flex:1;overflow-y:auto}.app-shell__body:focus{outline:none}.confidence{letter-spacing:.3px;border-radius:100px;flex:none;align-items:center;padding:4px 10px;font-size:10.5px;font-weight:800;display:inline-flex}.confidence--strong{background:var(--ready-bg);color:var(--ready)}.confidence--likely{color:var(--gold);background:#e8b85729}.confidence--possible{background:var(--wait-bg);color:var(--wait)}.flag{border-radius:3px;flex:none;width:16px;height:12px;display:inline-block;box-shadow:0 0 0 1px #fff3,0 1px 2px #00000073}.country-label{align-items:center;gap:6px;display:inline-flex}.candidate-card{text-align:left;background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);width:100%;box-shadow:var(--sh-card);border-radius:16px;align-items:center;gap:12px;min-height:64px;padding:12px 14px;display:flex}.candidate-card__glass{filter:drop-shadow(0 3px 4px #00000073);flex:none;width:22px;height:32px}.candidate-card__body{flex:1;min-width:0}.candidate-card__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.candidate-card__name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;overflow:hidden}.candidate-card__meta{color:var(--text-dim);flex-wrap:wrap;gap:10px;margin-top:3px;font-size:11.5px;font-weight:600;display:flex}.candidate-card__meta-item{align-items:center;gap:5px;display:inline-flex}.candidate-card__reasons{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.reason-chip{color:var(--text-dim);border:1px solid var(--line);background:#0003;border-radius:7px;padding:3px 7px;font-size:10px;font-weight:700}.error-banner{background:var(--error-bg);color:var(--error);border-radius:14px;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;font-size:12.5px;font-weight:600;display:flex}.spinner-row{color:var(--text-dim);align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.spinner{border:2.5px solid #f9eff340;border-top-color:var(--gold);border-radius:50%;flex:none;width:20px;height:20px;animation:.8s linear infinite proef-spin}@keyframes proef-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}.ladder{gap:4px;width:100%;display:flex}.ladder__step{text-align:center;min-height:44px;color:var(--text-dim);border:1px solid var(--line);background:#0003;border-radius:10px;flex:1;padding:4px 2px;font-size:11px;font-weight:700;line-height:1.2}.ladder__step--active{color:var(--gold-ink);background:linear-gradient(180deg, color-mix(in srgb, var(--gold) var(--ladder-tint), var(--surface)), var(--gold-2));box-shadow:var(--sh-raise);border-color:#0000}.aroma-picker{flex-direction:column;gap:14px;display:flex}.aroma-picker__tray{border:1px solid var(--line);background:#0000002e;border-radius:12px;flex-wrap:wrap;gap:6px;padding:10px;display:flex}.aroma-picker__cap-hint{color:var(--text-faint);margin:-6px 0 0;font-size:11px}.aroma-picker__group-title{text-transform:uppercase;letter-spacing:.6px;color:var(--gold);margin-bottom:8px;font-size:10.5px;font-weight:800}.aroma-picker__chips{flex-wrap:wrap;gap:8px;display:flex}.cluster-chip{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);color:var(--text-dim);border-radius:100px;align-items:center;gap:6px;min-height:40px;padding:9px 14px;font-size:12.5px;font-weight:700;display:inline-flex}.cluster-chip--active{border-color:var(--gold);color:var(--text);background:#e8b85724}.cluster-chip:disabled{opacity:.4;pointer-events:none}.cluster-chip__count{background:var(--gold);color:var(--gold-ink);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;display:inline-flex}.aroma-picker__descriptors{background:#0000001f;border-radius:12px;flex-wrap:wrap;gap:6px;margin-top:8px;padding:10px;display:flex}.descriptor-pill{background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);border-radius:100px;min-height:36px;padding:7px 12px;font-size:11.5px;font-weight:600}.descriptor-pill--selected{background:var(--gold);color:var(--gold-ink);border-color:#0000}.descriptor-pill:disabled{opacity:.4;pointer-events:none}.aroma-picker__wheel-btn{color:var(--lilac);border:1px solid var(--line-strong);border-radius:100px;align-self:center;padding:10px 16px;font-size:12px;font-weight:700}.sheet-overlay{z-index:50;animation:sheet-backdrop-in var(--motion-duration) ease-out;background:#0e060ab8;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.aroma-wheel-sheet{background:linear-gradient(180deg, var(--surface-2), var(--surface));border-top:1px solid var(--line-strong);width:100%;max-width:420px;animation:sheet-slide-up var(--motion-duration) ease-out;border-radius:22px 22px 0 0;flex-direction:column;align-items:center;gap:12px;padding:12px 20px 28px;display:flex;position:relative;box-shadow:0 -20px 50px #00000080}@keyframes sheet-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-slide-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.aroma-wheel-sheet__grabber{background:var(--line-strong);border-radius:2px;width:36px;height:4px}.aroma-wheel-sheet__close{color:var(--text-dim);font-size:22px;line-height:1;position:absolute;top:12px;right:16px}.aroma-wheel{width:100%;max-width:260px;height:auto}.aroma-wheel-sheet__descriptors{width:100%}.aroma-wheel-sheet__descriptors-title{margin-bottom:8px;font-size:13px;font-weight:700}.aroma-wheel-sheet__pills{flex-wrap:wrap;gap:6px;display:flex}.karaat-view{flex-direction:column;gap:2px;display:flex}.karaat-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;display:flex}.karaat-row__label{color:var(--lilac);flex:none;font-size:12px;font-weight:800}.karaat-row__value{text-align:right;font-size:13px;font-weight:600}.deduction-list{flex-direction:column;gap:10px;display:flex}.deduction-card{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);box-shadow:var(--sh-card);border-radius:14px;padding:12px 14px}.deduction-card--actual{border-color:var(--ready);background:var(--ready-bg)}.deduction-card__top{justify-content:space-between;align-items:center;display:flex}.deduction-card__grape{font-size:14px;font-weight:800}.deduction-card__markers{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.deduction-card__actual-badge{color:var(--ready);text-transform:uppercase;letter-spacing:.5px;margin-top:8px;font-size:10.5px;font-weight:800}.journal{flex-direction:column;gap:8px;display:flex}.journal__secondary{flex-wrap:wrap;justify-content:center;gap:10px;margin:-8px 0 12px;display:flex}.journal__link{color:var(--lilac);padding:8px 12px;font-size:12px;font-weight:700}.journal__list{flex-direction:column;gap:10px;margin-top:12px;display:flex}.journal__row{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);text-align:left;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.journal__row-glass{flex:none;width:20px;height:30px}.journal__row-name{font-size:13.5px;font-weight:700}.journal__row-meta{color:var(--text-dim);align-items:center;gap:6px;margin-top:3px;font-size:11.5px;display:flex}.journal__row-blind{color:var(--lilac);text-transform:uppercase;margin-left:auto;font-size:10px;font-weight:800}.scan{flex-direction:column;gap:18px;height:100%;display:flex}.scan__viewfinder{border:1px solid var(--line);background:radial-gradient(90% 70% at 50% 40%,#1a0c14 0%,#0c0508 100%);border-radius:22px;flex:1;justify-content:center;align-items:center;min-height:320px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 60px #0009}.scan__video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.scan__frame{pointer-events:none;position:absolute;inset:22px}.corner{border:3px solid var(--gold);width:38px;height:38px;position:absolute}.corner--tl{border-bottom:0;border-right:0;border-radius:10px 0 0;top:0;left:0}.corner--tr{border-bottom:0;border-left:0;border-radius:0 10px 0 0;top:0;right:0}.corner--bl{border-top:0;border-right:0;border-radius:0 0 0 10px;bottom:0;left:0}.corner--br{border-top:0;border-left:0;border-radius:0 0 10px;bottom:0;right:0}.scan__hint{text-align:center;color:var(--text-dim);text-shadow:0 1px 4px #000c;margin:0;font-size:12px;font-weight:600;position:absolute;bottom:14px;left:0;right:0}.scan__overlay{animation:sheet-backdrop-in var(--motion-duration) ease-out;background:#0c0508b8;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.scan__actions{flex-direction:column;align-items:center;gap:14px;padding-bottom:4px;display:flex}.scan__shutter{background:linear-gradient(180deg, #f7d57a, var(--gold-2));width:68px;height:68px;box-shadow:var(--sh-btn);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.scan__shutter-ring{border:3px solid var(--gold-ink);border-radius:50%;width:54px;height:54px}.scan__shutter:active{transform:scale(.94)}.scan__shutter:disabled{opacity:.4;pointer-events:none}.scan__secondary{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.scan__pill{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);color:var(--text-dim);border-radius:100px;padding:10px 16px;font-size:12.5px;font-weight:700}.scan__pill[aria-pressed=true]{border-color:var(--gold);color:var(--gold);background:#e8b8571f}.result{flex-direction:column;gap:16px;display:flex}.result__empty{color:var(--text-dim);font-size:13px}.result__read{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);box-shadow:var(--sh-card);border-radius:16px;padding:14px}.result__read-head{text-transform:uppercase;letter-spacing:.6px;color:var(--gold);justify-content:space-between;margin-bottom:10px;font-size:10.5px;font-weight:800;display:flex}.result__read-model{color:var(--text-faint);text-transform:none;letter-spacing:0;font-weight:600}.result__read-body{align-items:center;gap:12px;display:flex}.result__read-glass{flex:none;width:22px;height:32px}.result__read-name{font-size:15px;font-weight:700}.result__read-meta{color:var(--text-dim);gap:10px;margin-top:3px;font-size:12px;display:flex}.result__unresolved{color:var(--text-dim);font-size:12.5px}.result__unresolved code{color:var(--gold);font-family:ui-monospace,monospace}.result__qr-link{color:var(--sky);font-size:12px;font-weight:600}.result__section-title{margin:0 0 10px;font-size:15px;font-weight:700}.result__list{flex-direction:column;gap:10px;display:flex}.result__none{border:1px dashed var(--line-strong);text-align:center;border-radius:16px;padding:20px 16px}.result__none-sub{color:var(--text-dim);margin-top:6px;font-size:12px}.result__winery-row{flex-wrap:wrap;gap:8px;display:flex}.winery-chip{background:var(--surface-2);border:1px solid var(--line);border-radius:100px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.result__footer{flex-direction:column;gap:10px;margin-top:8px;display:flex}.resolved-card{text-align:left;background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);width:100%;box-shadow:var(--sh-card);border-radius:18px;flex-direction:column;align-items:flex-start;gap:6px;padding:18px;display:flex;position:relative}.resolved-card__badge{text-transform:uppercase;letter-spacing:.5px;color:var(--ready);background:var(--ready-bg);border-radius:7px;padding:4px 8px;font-size:10px;font-weight:800;position:absolute;top:14px;right:14px}.resolved-card__glass{width:30px;height:44px;margin-bottom:4px}.resolved-card__name{font-family:var(--font-serif);font-size:19px;font-weight:600}.resolved-card__meta{color:var(--text-dim);align-items:center;gap:8px;font-size:12.5px;display:flex}.wine-detail{flex-direction:column;gap:4px;display:flex}.wine-detail__back{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);width:38px;height:38px;box-shadow:var(--sh-raise);border-radius:12px;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.wine-detail__hero{align-items:center;gap:18px;padding-bottom:18px;display:flex}.wine-detail__bottle{filter:drop-shadow(0 10px 14px #0000008c);flex:none;width:58px;height:174px}.wine-detail__label-photo{object-fit:cover;width:96px;height:128px;box-shadow:var(--sh-card);border-radius:10px;flex:none}.wine-detail__name{font-family:var(--font-serif);margin:0;font-size:22px;font-weight:600;line-height:1.15}.wine-detail__winery{color:var(--text-dim);margin-top:4px;font-size:13px;font-weight:600}.wine-detail__meta{color:var(--text-dim);align-items:center;gap:7px;margin-top:8px;font-size:12px;display:flex}.wine-detail__field{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:13px 0;font-size:13px;display:flex}.wine-detail__field>span:first-child{color:var(--text-dim);font-weight:600}.wine-detail__field>span:last-child{text-align:right;font-weight:700}.wine-detail__field-sub{color:var(--text-faint);font-weight:600}.wine-detail__source{text-transform:capitalize;align-items:center;gap:7px;display:inline-flex}.wine-detail__colour-note{color:var(--text-dim);align-items:center;gap:8px;margin:14px 0 20px;font-size:12px;font-weight:600;display:flex}.wine-detail__colour-glass{width:16px;height:24px}.search{flex-direction:column;gap:16px;display:flex}.search__title{font-family:var(--font-serif);margin:0;font-size:22px;font-weight:600}.search__form,.search__free-form{flex-direction:column;gap:12px;display:flex}.search__free-form{flex-direction:row}.search__free-form .search__input{flex:1}.search__row{gap:12px;display:flex}.search__label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;flex-direction:column;gap:6px;font-size:11px;font-weight:700;display:flex}.search__label--half{flex:1}.search__input{border:1px solid var(--line-strong);color:var(--text);background:linear-gradient(#33192a,#2a1421);border-radius:12px;min-height:46px;padding:12px 13px;font-size:14px}:root[data-theme=light] .search__input{background:var(--surface-2)}.search__divider{color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px;border-top:1px solid var(--line);padding-top:16px;font-size:11px;font-weight:700}.search__results-title{margin:4px 0 10px;font-size:14px;font-weight:700}.search__empty{color:var(--text-dim);font-size:12.5px}.search__list{flex-direction:column;gap:10px;display:flex}.about{flex-direction:column;gap:4px;display:flex}.about__title{font-family:var(--font-serif);margin:0 0 8px;font-size:22px;font-weight:600}.about__field{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 0;font-size:13px;display:flex}.about__field>span:first-child{color:var(--text-dim);font-weight:600}.about__api-down{color:var(--error);font-weight:700}.about__toggle{gap:6px;display:flex}.about__toggle--wrap{flex-wrap:wrap}.about__pill{background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);border-radius:100px;padding:8px 12px;font-size:11.5px;font-weight:700}.about__pill--active{border-color:var(--gold);color:var(--gold);background:#e8b85724}.about__install{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);border-radius:16px;margin-top:20px;padding:16px}.about__install-title{margin-bottom:4px;font-size:13.5px;font-weight:700}.about__install-hint{color:var(--text-dim);margin:0;font-size:12px}.about__data{color:var(--text-faint);margin-top:20px;font-size:11px;line-height:1.5}.about__privacy{border-top:1px solid var(--line);margin-top:24px;padding-top:12px}.about__section-title{font-family:var(--font-serif);margin:0 0 6px;font-size:16px;font-weight:600}.about__privacy-action{margin-top:16px}.about__field-title{margin-bottom:4px;font-size:13.5px;font-weight:700}.about__privacy-hint{color:var(--text-dim);margin:0 0 10px;font-size:12px;line-height:1.5}.about__privacy-error{color:var(--error);margin:8px 0 0;font-size:12px}.note-wizard{flex-direction:column;gap:18px;padding-bottom:24px;display:flex}.note-wizard__header{align-items:center;gap:12px;display:flex}.note-wizard__back{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);width:38px;height:38px;box-shadow:var(--sh-raise);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.note-wizard__progress{flex:1;gap:5px;display:flex}.note-wizard__dot{background:var(--line-strong);border-radius:2px;flex:1;height:4px}.note-wizard__dot--done{background:var(--gold)}.note-wizard__glass{flex:none;width:20px;height:30px}.note-wizard__step{animation:note-step-in var(--motion-duration) ease-out;outline:none;flex-direction:column;gap:16px;display:flex}@keyframes note-step-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.note-wizard__title{font-family:var(--font-serif);margin:0;font-size:22px;font-weight:600}.note-wizard__section-title{color:var(--gold);margin:0;font-size:15px;font-weight:700}.note-wizard__hint{color:var(--text-dim);margin:-8px 0 0;font-size:12px}.note-wizard__hint--warn{color:var(--error);font-weight:600}.note-wizard__field{flex-direction:column;gap:8px;display:flex}.note-wizard__field-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.note-wizard__coach{color:var(--sky);background:#93c6ef1a;border-radius:10px;margin:0;padding:10px 12px;font-size:12px}.note-wizard__textarea{border:1px solid var(--line-strong);width:100%;color:var(--text);resize:vertical;background:linear-gradient(#33192a,#2a1421);border-radius:12px;padding:12px 13px;font-family:inherit;font-size:13.5px}:root[data-theme=light] .note-wizard__textarea{background:var(--surface-2)}.note-wizard__blind-guess{background:#cfa9ec1a;border:1px solid #cfa9ec4d;border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.depth-toggle{gap:8px;display:flex}.depth-toggle--wrap{flex-wrap:wrap}.note-wizard__depth-toggle{gap:8px;display:flex}.depth-pill{background:var(--surface-2);border:1px solid var(--line);min-height:44px;color:var(--text-dim);border-radius:12px;flex:1;padding:10px 14px;font-size:12.5px;font-weight:700}.depth-pill--active{border-color:var(--gold);color:var(--text);background:#e8b85729}.hue-row{flex-wrap:wrap;gap:8px;display:flex}.hue-swatch{border:2px solid var(--line-strong);width:36px;height:36px;box-shadow:var(--sh-raise);border-radius:50%}.hue-swatch--active{border-color:var(--text);box-shadow:0 0 0 2px var(--gold)}.hue-label{color:var(--text-dim);font-size:12px;font-weight:600}.criteria-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.criteria-check{border:1px solid var(--line);background:#0000002e;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:12.5px;font-weight:600;display:flex}.stepper{align-items:center;gap:14px;display:flex}.step-btn{background:linear-gradient(180deg, var(--surface-3), var(--surface-2));border:1px solid var(--line-strong);width:34px;height:34px;box-shadow:var(--sh-raise);border-radius:10px;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.action-row{gap:10px;margin:18px 0 6px;display:flex}.action-btn{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);text-align:center;min-height:48px;box-shadow:var(--sh-raise);border-radius:14px;flex:1;justify-content:center;align-items:center;gap:7px;padding:13px;font-size:12.5px;font-weight:800;display:flex}.action-btn.primary{background:linear-gradient(180deg, #f4cd6f, var(--gold-2));color:var(--gold-ink);box-shadow:var(--sh-btn);border-color:#0000}.delete-link{color:var(--text-faint);justify-content:center;align-items:center;gap:6px;min-height:32px;margin-top:14px;font-size:12px;font-weight:600;display:flex}.pill{border-radius:100px;align-self:flex-start;align-items:center;gap:5px;padding:5px 10px;font-size:10.5px;font-weight:800;display:inline-flex}.pill--ok{background:var(--ready-bg);color:var(--ready)}.pill--wait{background:var(--wait-bg);color:var(--wait)}.qty-pill{background:linear-gradient(180deg, var(--surface-3), var(--surface-2));border:1px solid var(--line-strong);color:var(--gold);box-shadow:var(--sh-raise);border-radius:100px;padding:3px 9px;font-size:10.5px;font-weight:800}.cellar-list__header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.cellar-list__count{color:var(--text-dim);margin-left:8px;font-size:12px;font-weight:600}.cellar-list__add{background:linear-gradient(180deg, #f4cd6f, var(--gold-2));width:42px;height:42px;box-shadow:var(--sh-btn);border-radius:13px;justify-content:center;align-items:center;display:flex}.cellar-list__filters{gap:8px;padding:4px 2px 12px;display:flex;overflow-x:auto}.cellar-list__filters .depth-pill{flex:none}.cellar-list__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.cellar-card{text-align:left;background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);box-shadow:var(--sh-card);border-radius:18px;flex-direction:column;gap:6px;padding:12px;display:flex}.cellar-card__top{justify-content:space-between;align-items:flex-start;height:80px;display:flex}.cellar-card__bottle{filter:drop-shadow(0 4px 6px #00000080);width:27px;height:81px}.cellar-card__name{font-size:13px;font-weight:800;line-height:1.25}.cellar-card__meta{color:var(--text-dim);align-items:center;gap:5px;font-size:10.5px;font-weight:600;display:flex}.flight-lobby{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.flight-lobby__qr{background:#fdfaf3;border-radius:12px;padding:10px}.flight-lobby__code{font-family:var(--font-serif);letter-spacing:4px;color:var(--gold);font-size:30px;font-weight:600}.flight-active{flex-direction:column;gap:12px;display:flex}.flight-active__wine{align-items:center;gap:14px;display:flex}.flight-active__bottle{flex:none;width:40px;height:120px}.flight-active__host-controls{border-top:1px solid var(--line);flex-direction:column;gap:10px;margin-top:8px;padding-top:14px;display:flex}.flight-results__wine{margin-bottom:18px}.blind-verdict{margin-left:8px;font-size:11px;font-weight:800}.blind-verdict--correct{color:var(--ready)}.blind-verdict--wrong{color:var(--error)}.tasting-detail__header{justify-content:space-between;align-items:center;display:flex}.tasting-detail__wine{align-items:center;gap:14px;margin:8px 0;display:flex}.tasting-detail__bottle{flex:none;width:32px;height:96px}.tasting-detail__wine-name{font-size:15px;font-weight:700}.tasting-detail__wine-meta{color:var(--text-dim);align-items:center;gap:6px;margin-top:3px;font-size:12px;display:flex}.tasting-detail__mystery{color:var(--lilac);background:#cfa9ec1a;border:1px dashed #cfa9ec66;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px;font-size:13px;font-weight:700;display:flex}.tasting-detail__blind-section{flex-direction:column;gap:10px;margin:8px 0;display:flex}.tasting-detail__section{margin-bottom:6px}.tasting-detail__freetext{color:var(--text-dim);white-space:pre-wrap;font-size:13px;line-height:1.5}.tasting-detail__delete{color:var(--text-faint);margin-top:18px;font-size:12px}.learn{flex-direction:column;gap:20px;display:flex}.learn__wheel-tile{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);box-shadow:var(--sh-card);color:var(--lilac);text-align:center;border-radius:16px;padding:16px;font-size:13.5px;font-weight:700}.learn__streak{background:#e8b8571a;border:1px solid #e8b8574d;border-radius:16px;align-items:baseline;gap:10px;padding:16px;display:flex}.learn__streak-value{font-family:var(--font-serif);color:var(--gold);font-size:32px;font-weight:600}.learn__streak-label{color:var(--text-dim);font-size:12px;font-weight:600}.learn__collections{flex-direction:column;gap:10px;display:flex}.collection-card{background:linear-gradient(180deg, var(--surface-2), var(--surface));border:1px solid var(--line);border-radius:14px;padding:12px 14px}.collection-card--complete{border-color:var(--ready)}.collection-card__title{margin-bottom:8px;font-size:13px;font-weight:700}.collection-card__progress-track{background:#00000040;border-radius:3px;height:6px;overflow:hidden}.collection-card__progress-fill{background:linear-gradient(90deg, var(--gold-2), var(--gold));border-radius:3px;height:100%}.collection-card__count{color:var(--text-dim);margin-top:6px;font-size:11px;font-weight:600}.learn__achievements{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.achievement-badge{background:linear-gradient(180deg, var(--surface-3), var(--surface-2));border:1px solid var(--line-strong);box-shadow:var(--sh-card);border-radius:14px;padding:12px}.achievement-badge--locked{opacity:.4;box-shadow:none}.achievement-badge__title{font-size:12px;font-weight:700}.label-print{flex-direction:column;gap:16px;display:flex}.label-preview{color:#3b1c26;background:#fdfaf3;border-radius:10px;align-items:center;gap:14px;padding:16px;font-family:Georgia,serif;display:flex;position:relative;box-shadow:0 14px 34px #0000008c,inset 0 1px #fff9}.label-preview__qr{flex:none;width:104px;height:104px}.label-preview__text{flex:1;min-width:0}.label-preview__brand{letter-spacing:1.4px;text-transform:uppercase;color:#7a2a3d;font-size:9.5px;font-weight:700}.label-preview__name{margin:3px 0 2px;font-size:15px;font-weight:700;line-height:1.15}.label-preview__meta{color:#5a3a44;font-size:10.5px}.label-preview__rule{background:#c9a24a;height:1px;margin:7px 0}.label-preview__row{font-family:var(--font-sans);color:#5a3a44;justify-content:space-between;margin-top:2px;font-size:9.5px;font-weight:700;display:flex}.label-print__actions{flex-direction:column;align-items:stretch;gap:10px;display:flex}.label-print__services{white-space:pre-wrap;word-break:break-all;color:var(--text-dim);background:#00000040;border-radius:8px;padding:10px;font-size:10px}@media print{body *{visibility:hidden}#proef-print-label,#proef-print-label *{visibility:visible}#proef-print-label{width:50mm;box-shadow:none;position:fixed;top:0;left:0}.no-print{display:none!important}}
