:root{--wine:#6b1f2a;--wine-dark:#4d141d;--paper:#f6f0e4;--card:#fffdf8;--ink:#2b2222;--muted:#7a6e68;--line:#e4dccd;--ok:#2f6b3f;--warn:#9a6a00;--bad:#b3261e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--paper);font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,.button{font:inherit;touch-action:manipulation}input,select{border:1px solid var(--line);background:var(--card);border-radius:10px;width:100%;padding:.7rem .8rem}button,.button{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:10px;padding:.65rem .9rem;text-decoration:none}button.primary{background:var(--wine);border-color:var(--wine);color:#fff}button.big{width:100%;margin-top:.8rem;padding:1rem;font-size:1.15rem}button.link{color:var(--wine);background:0 0;border:none;padding:.3rem}button.danger{color:var(--bad)}label{color:var(--muted);margin:.7rem 0;font-size:.9rem;display:block}label>input,label>select{color:var(--ink);margin-top:.3rem;font-size:1rem}label.check{color:var(--ink);align-items:center;gap:.6rem;font-size:1rem;display:flex}label.check input{width:auto}.muted{color:var(--muted);font-size:.9em}.error{color:var(--bad)}.warn{color:var(--warn);font-size:.9rem}.loading{text-align:center;color:var(--muted);padding:2rem}.screen{flex-direction:column;min-height:100dvh;display:flex}header{z-index:2;padding:calc(env(safe-area-inset-top) + .6rem) 1rem .6rem;background:var(--wine);color:#fff;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}main{flex:1;width:100%;max-width:40rem;margin:0 auto;padding:1rem 1rem 5rem}nav{z-index:2;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}nav a{text-align:center;color:var(--muted);flex:1;padding:.9rem 0;text-decoration:none}nav a.active{color:var(--wine);font-weight:600}.badge{color:#fff;background:#ffffff2e;border-radius:99px;padding:.25rem .6rem;font-size:.8rem;text-decoration:none}.badge.offline{background:#8a6d1d}.badge.error{background:var(--bad)}.banner{background:#fff3cd;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.row{align-items:center;gap:.5rem;display:flex}.row>input{flex:1}.between{justify-content:space-between}.segmented{border:1px solid var(--line);border-radius:10px;margin-bottom:1rem;display:flex;overflow:hidden}.segmented button{border:none;border-radius:0;flex:1}.segmented button.active{background:var(--wine);color:#fff}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chips button{border-radius:99px}.list{margin:.5rem 0;padding:0;list-style:none}.list>li{border-bottom:1px solid var(--line)}.list>li>button{text-align:left;background:0 0;border:none;border-radius:0;width:100%;padding:.75rem .2rem}.list>li.row{padding:.6rem .2rem}.detail{margin:0;padding:0 0 .6rem .8rem;font-size:.92rem;list-style:none}.detail li{padding:.25rem 0}.negative,.negative span{color:var(--bad)}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1rem}.stepper{align-items:center;display:flex}.stepper button{width:3rem;height:3rem;padding:0;font-size:1.4rem}.stepper input{text-align:center;width:4rem;margin:0 .3rem}input.narrow{text-align:right;flex:none;width:6rem}.toast{left:1rem;right:1rem;bottom:calc(4.5rem + env(safe-area-inset-bottom));z-index:3;background:var(--ink);color:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex;position:fixed}.toast button{color:#fff;background:0 0;border-color:#fff6}.setup,.measure{max-width:28rem;margin:0 auto;padding:2rem 1rem}.setup h1,.measure h1{color:var(--wine)}h2{margin:1.2rem 0 .3rem;font-size:1.05rem}h3{color:var(--muted);margin:1rem 0 .4rem;font-size:.95rem}.status table,.measure table{border-collapse:collapse;width:100%}.status th,.status td,.measure th,.measure td{text-align:left;border-bottom:1px solid var(--line);padding:.45rem .2rem;font-weight:400}.status th,.measure th{color:var(--muted)}.buttons{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.scanner{z-index:10;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.scanner video{object-fit:cover;flex:1;width:100%}.scanline{background:#ff4d4d;height:2px;position:absolute;top:45%;left:10%;right:10%;box-shadow:0 0 12px #ff4d4d}.scanbar{padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));color:#fff;background:#111;flex-direction:column;gap:.5rem;display:flex}.counted{color:var(--ok);font-size:.9em}.auth{max-width:25rem;padding:calc(env(safe-area-inset-top) + 2rem) 1rem 2rem;flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.auth .card{margin-top:1rem}.auth h1{color:var(--wine);align-items:center;gap:.7rem;margin:0;font-size:1.6rem;display:flex}.auth h1 img{border-radius:10px;width:44px;height:44px}.auth h2{margin-top:0}.auth .tagline{margin:.3rem 0 0}.auth form>button.primary,.auth .wide{width:100%;margin-top:.6rem}.auth .or{text-align:center;border-top:1px solid var(--line);margin:1.2rem 0 .6rem;padding-top:1rem}.auth .center{text-align:center}.auth footer{text-align:center;margin-top:auto;padding-top:2rem}.hint{color:var(--muted);margin:.25rem 0 0;font-size:.85rem}.notice{background:#fff3cd;border-radius:10px;padding:.7rem .9rem;font-size:.92rem}.error-box{color:var(--bad);background:#fde8e6;border-radius:10px;margin-top:.6rem;padding:.7rem .9rem}.choice{gap:.5rem;display:flex}.choice label{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;flex:1;margin:0;padding:.7rem;font-size:.95rem}.choice label.on{border-color:var(--wine);box-shadow:0 0 0 1px var(--wine)}.choice input{width:auto;margin:0 .4rem 0 0}.account section{margin-bottom:1.4rem}.account .card+.card{margin-top:.8rem}.account .row>button{flex:none}.ok-text{color:var(--ok);font-size:.9rem}details summary{cursor:pointer;color:var(--wine);padding:.4rem 0}.chips button.active{background:var(--wine);border-color:var(--wine);color:#fff}.filters{margin:.7rem 0 .2rem}.wines h2{margin-top:.4rem}.wines .card{margin:.8rem 0}.button.primary{background:var(--wine);border-color:var(--wine);color:#fff}table.facts{border-collapse:collapse;width:100%;margin:.6rem 0}table.facts th,table.facts td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.45rem .2rem;font-weight:400}table.facts th{color:var(--muted);width:40%}.wine-form .card{margin:.7rem 0;padding:.5rem 1rem}.group-head{background:0 0;border:none;justify-content:space-between;width:100%;padding:.6rem 0;display:flex}.packs{flex-wrap:wrap;align-items:center;gap:0 1.2rem;margin:.5rem 0;display:flex}.packs label{margin:.3rem 0}label .chips{margin-top:.4rem}label .chips button{padding:.35rem .7rem;font-size:.85rem}nav a{font-size:.92rem}.team .member{flex-direction:column;gap:.4rem;padding:.7rem .2rem;display:flex}.team .actions{flex-wrap:wrap;gap:.4rem;display:flex}.team .actions button{padding:.4rem .6rem;font-size:.85rem}.tag{background:var(--wine);color:#fff;border-radius:99px;padding:.1rem .5rem;font-size:.75rem}.small{font-size:.85rem}.linkbox{background:#f3ece0;border-radius:12px;margin:.8rem 0;padding:.8rem}.linkbox input{margin:.5rem 0;font-size:.85rem}.import .upload{margin:1rem 0 .3rem;display:block}.import .upload .button{display:inline-block}.summary{grid-template-columns:1fr 1fr;gap:.3rem 1rem;padding:0;list-style:none;display:grid}.problems li{padding:.4rem 0;font-size:.9rem}.list>li.entry{align-items:flex-start;gap:.8rem;padding:.6rem .2rem;display:flex}.entry-text{flex:1;min-width:0}.list>li.entry>.entry-action{text-align:right;white-space:nowrap;flex:none;width:auto;padding:0 .2rem}.places .card{margin:.8rem 0}button.rename{text-align:left;background:0 0;border:none;width:100%;padding:.3rem 0}.list>li.entry>.entry-action:disabled{color:var(--muted);opacity:.6}.places form.row{margin-top:.5rem}.count-input{flex:none;gap:.3rem;display:flex}.count-input select.unit{width:auto;max-width:8.5rem;padding:.7rem .4rem}.count-default{gap:.6rem;margin:.4rem 0}.count-default select{width:auto}.count-input input.narrow{width:4.5rem}.named{text-align:left;grid-template-columns:2.6rem 1fr;align-items:center;gap:.5rem;display:grid}.named .no{text-align:center}.named .name{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.chips.favorites{flex-direction:column}.chips.favorites button{border-radius:14px;width:100%}.listno{background:var(--wine);color:#fff;text-align:center;border-radius:6px;min-width:1.9em;padding:0 .3em;font-size:.85em;font-weight:600;display:inline-block}.side{text-align:left;flex-direction:column;flex:none;align-items:flex-start;width:7.5rem;font-size:.9rem;display:flex}.side.boxed{align-items:center}.side.boxed>.stack{flex-direction:column;align-items:flex-start;width:4.4rem;display:flex}
