/* Sits on top of the preview's base.css and nav.css so every page looks like the approved previews. */
:root{--acc:var(--wine);--mute:var(--muted);--bg:var(--ivory);--card:var(--paper)}
html,body{background:var(--ivory)}
[hidden]{display:none!important}
.link{all:unset;cursor:pointer;color:var(--wine);text-decoration:underline;font-weight:600}
.muted{color:var(--muted);font-size:13.5px}
.fine{font-size:12.5px;color:var(--muted);line-height:1.45}
h1{font:600 34px/1.1 var(--display);margin:0}

/* sign-in, as in the preview */
.signin{min-height:100vh;background:var(--wine);display:flex;flex-direction:column;align-items:center;padding:40px 16px 24px;gap:22px}
.s-head{text-align:center;color:#fff;display:grid;justify-items:center;gap:4px}
.s-logo{width:64px;height:64px;border-radius:14px;border:2px solid rgba(255,255,255,.35)}
.s-name{font-size:20px;font-weight:700;margin-top:6px}.s-sub{color:#f0d5dd;font-size:14px}
.s-card{width:100%;max-width:460px;background:#f6efe9;border-radius:16px;padding:26px 24px;box-shadow:0 20px 50px rgba(30,5,12,.25);display:grid;gap:14px}
.s-card h1{font:600 36px/1.1 var(--display);margin:0}
.s-lead{margin:-6px 0 0;color:var(--muted)}
.s-tabs{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px;gap:4px}
.s-tabs button{font:inherit;border:0;background:none;padding:10px;border-radius:9px;color:var(--muted);cursor:pointer}
.s-tabs button[aria-selected=true]{background:var(--wine);color:#fff;font-weight:600}
.s-form{display:grid;gap:6px}.s-form label{font-size:13px;color:var(--muted)}
.s-form input{font:inherit;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}
.s-form .btn{margin-top:10px}
.s-note{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;line-height:1.45}
.s-foot{color:#f0d5dd;font-size:12.5px;margin:0;text-align:center}
.err{color:var(--bad);font-size:13.5px;margin:0}

/* dashboard */
.cards2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px}
.card h3{margin:0 0 10px;font-size:16px}
.chk{display:flex;gap:10px;align-items:flex-start;padding:7px 0;border-bottom:1px solid #f1e9e3;font-size:14px}.chk:last-child{border-bottom:0}
.chk i{font-style:normal;width:20px;height:20px;border-radius:50%;border:2px solid var(--line);flex:none;display:grid;place-items:center;font-size:12px}
.chk.done i{background:var(--ok);border-color:var(--ok);color:#fff}.chk.now i{border-color:var(--wine)}
.chk small{display:block;color:var(--muted);font-size:12.5px}
a.kpi{text-decoration:none;color:inherit}
.soon{max-width:560px;margin:60px auto;text-align:center}.soon h1{margin-bottom:10px}.soon p{color:var(--muted);line-height:1.5}

/* menu extras */
.snav .sb-foot button.out{all:unset;cursor:pointer;color:#e6c9d1;font-size:12px;text-decoration:underline}
.snav nav a.later{opacity:.55}

/* inventory extras */
.place3{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,64px);gap:6px;align-items:center;font-size:14px;padding:6px 0;border-bottom:1px solid #f1e9e3}.place3:last-child{border-bottom:0}
.place3.h{font-size:12px;color:var(--muted);font-weight:600}.place3>span:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.place3 small{display:block;color:var(--muted);font-size:12px}
.hrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;font-size:13.5px;padding:7px 0;border-bottom:1px solid #f1e9e3}.hrow:last-child{border-bottom:0}.hrow small{color:var(--muted);font-size:12px}.hrow b.up{color:var(--ok)}.hrow b.dn{color:var(--bad)}
.f input,.f select{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;min-width:0;width:100%;box-sizing:border-box}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.loading{padding:30px;text-align:center;color:var(--muted)}

.frow.fl{gap:8px;flex-wrap:wrap}.frow.fl .pick{flex:0 1 auto;min-width:0}
@media (max-width:640px){.frow.fl .pick{flex:1 1 45%}}
.ck.tog{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:7px 12px;background:#fff;font-size:13.5px;cursor:pointer}
.ck.tog input{width:16px;height:16px;accent-color:var(--wine)}
.f input[type=radio],.f input[type=checkbox]{width:18px;height:18px;padding:0;flex:none;accent-color:var(--wine)}
.f .ck{display:flex;gap:10px;align-items:flex-start;text-align:left}

.optv{display:flex;align-items:center;gap:8px;min-width:0}.optv>span{min-width:0}
.oth{width:36px;height:36px;border-radius:8px;object-fit:cover;background:#efe7df;flex:none;display:inline-block}
.eo .optv input{flex:1;min-width:0}
.flag.bad{background:var(--bad-soft);color:var(--bad)}.flag.bad li{margin:2px 0}
.row small.isl{color:var(--bad);white-space:normal;margin-top:2px}
