.tbpos-stocktake-root{--mint:#6DBCA1;--purple:#5F3D84;--dark:#251f29;--paper:#f5f3f6;--danger:#df615d;position:relative;width:100%;height:var(--tbpos-stocktake-height,100dvh);min-height:620px;overflow:hidden;background:#ebe7ed;color:#1d1a1e;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.tbpos-stocktake-root *{box-sizing:border-box}.tbpos-stocktake-root button,.tbpos-stocktake-root input,.tbpos-stocktake-root select,.tbpos-stocktake-root textarea{font:inherit}.tbpos-stocktake-loading{height:100%;display:grid;place-items:center;align-content:center;gap:12px;background:linear-gradient(145deg,#251f29,#5f3d84);color:#fff}.tbpos-stocktake-loading span{width:42px;height:42px;border:4px solid #ffffff3d;border-top-color:var(--mint);border-radius:50%;animation:stspin .8s linear infinite}@keyframes stspin{to{transform:rotate(360deg)}}.st-shell{height:100%;display:grid;grid-template-rows:68px minmax(0,1fr)}.st-shell>header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--dark);color:#fff;border-bottom:4px solid var(--mint)}.st-shell>header>div{display:flex;align-items:center;gap:12px}.st-shell>header strong{font-size:18px}.st-shell>header span{color:#cdbfd2;font-size:12px;letter-spacing:.15em}.st-shell>header button{border:1px solid #ffffff35;border-radius:999px;background:#ffffff0d;color:#fff;padding:9px 13px}.eyebrow{margin:0;color:var(--purple);font-size:11px;font-weight:950;letter-spacing:.16em}.st-login,.st-home,.st-error{overflow:auto;padding:clamp(22px,5vw,60px);display:grid;align-content:center;justify-items:center}.st-login h1,.st-home h1,.st-error h1{margin:5px 0 8px;font-size:clamp(36px,6vw,64px);line-height:1}.st-login>p,.st-home>p,.st-error>p{max-width:700px;text-align:center;color:#6e6572}.st-employee-grid{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;width:min(800px,100%);margin:18px 0}.st-employee-grid button{min-height:110px;border:2px solid transparent;border-radius:14px;background:#fff;padding:12px;display:grid;justify-items:center;gap:3px}.st-employee-grid button.active{border-color:var(--mint);box-shadow:0 0 0 3px #6dbca125}.st-employee-grid b{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#eee4f0;color:var(--purple)}.st-employee-grid small{color:#827887}.st-pin{width:min(420px,100%);display:grid;gap:9px}.st-pin output{height:55px;display:grid;place-items:center;background:#fff;border-radius:10px;font-size:24px;letter-spacing:.18em}.st-pin>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.st-pin>div button{height:58px;border:0;border-radius:10px;background:#fff;font-size:22px;font-weight:850}.primary,.st-title button{min-height:52px;border:0;border-radius:10px;padding:10px 15px;background:var(--mint);color:#10281f;font-weight:950}.primary:disabled{opacity:.45}.st-home .start{width:min(450px,100%);margin:18px 0;font-size:18px}.st-home section{width:min(850px,100%)}.st-history{display:grid;gap:7px}.st-history>div{display:flex;justify-content:space-between;gap:12px;background:#fff;border-radius:10px;padding:12px}.st-history span{color:#756c79;font-size:12px}.st-active{min-height:0;overflow:hidden;padding:12px;display:grid;grid-template-rows:auto 34px minmax(0,1fr)}.st-title{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border-radius:13px;padding:13px 16px;margin-bottom:8px}.st-title h1{margin:3px 0;font-size:28px}.st-title p{margin:0;color:#756d79}.st-title>div:last-child{display:flex;gap:7px}.st-title button{background:#ded4e2;color:#3d3042}.st-title button.complete{background:var(--mint);color:#10281f}.st-count-head,.st-row{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(100px,.7fr) minmax(190px,1fr) minmax(90px,.6fr) minmax(150px,1fr);gap:8px;align-items:center}.st-count-head{padding:0 10px;font-size:10px;font-weight:950;letter-spacing:.09em;color:#766e79}.st-counts{min-height:0;overflow:auto;display:grid;align-content:start;gap:5px}.st-row{background:#fff;border-radius:10px;padding:8px 10px}.st-row input,.st-row select{width:100%;min-height:46px;border:1px solid #d4cad7;border-radius:8px;background:#fff;padding:7px}.st-row .expected{display:flex;gap:5px;align-items:baseline}.st-row .expected span{font-weight:900;font-size:18px}.st-row .counted{display:grid;grid-template-columns:1fr 70px;gap:5px}.variance{font-weight:950;font-variant-numeric:tabular-nums}.variance.negative{color:#b33434}.variance.positive{color:#267346}.st-modal-host:empty{display:none}.backdrop{position:absolute;inset:0;z-index:20;background:#0008}.st-modal{position:absolute;z-index:21;left:50%;top:50%;transform:translate(-50%,-50%);width:min(600px,92vw);background:#fff;border-radius:16px;padding:24px;box-shadow:0 25px 75px #0005}.st-modal .x{position:absolute;right:10px;top:10px;width:38px;height:38px;border:0;border-radius:50%;font-size:23px}.st-modal h2{font-size:30px;margin:5px 0 12px}.st-modal label{display:grid;gap:5px;margin:10px 0;font-weight:800}.st-modal input,.st-modal textarea{width:100%;border:1px solid #d4cad7;border-radius:9px;padding:10px;min-height:48px}.st-modal textarea{min-height:100px}.st-modal .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.st-modal .actions button{min-height:52px;border:0;border-radius:10px;font-weight:950}.st-modal .danger{background:var(--danger);color:#fff}.st-toast{position:absolute;z-index:30;left:50%;bottom:20px;transform:translate(-50%,10px);opacity:0;pointer-events:none;padding:10px 14px;border-radius:9px;background:#26202a;color:#fff;transition:.2s}.st-toast.show{opacity:1;transform:translate(-50%,0)}.st-toast.error{background:#772b2b}.st-toast.success{background:#1f6032}.st-error .primary{width:min(380px,100%)}
@media(max-width:800px){.st-employee-grid{grid-template-columns:repeat(2,1fr)}.st-active{overflow:auto;grid-template-rows:auto auto auto}.st-title{align-items:stretch;flex-direction:column}.st-title>div:last-child{display:grid;grid-template-columns:1fr 1fr}.st-count-head{display:none}.st-counts{overflow:visible}.st-row{grid-template-columns:1fr 1fr;gap:8px}.st-row>div:first-child{grid-column:1/-1}.st-row>div:last-child{grid-column:1/-1}.st-row .variance:before{content:'Variance ';font-weight:600;color:#777}.st-modal .actions{grid-template-columns:1fr}}
.st-group{display:grid;gap:5px;margin-bottom:10px}.st-group-title{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:10px;background:#e4dce7;box-shadow:0 2px 6px #1d1a1e12}.st-group-title>div{display:flex;align-items:center;gap:9px}.st-group-title strong{font-size:12px;color:#625967}.st-group-title small{color:#736a77;font-size:11px}.st-category-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;background:#fff;font-size:10px;font-weight:950;letter-spacing:.08em}.st-category-badge.meat{background:#f3d6d3;color:#6f2722}.st-category-badge.fridge{background:#d8edf4;color:#225767}.st-category-badge.freezer{background:#dce6f7;color:#274b79}.st-category-badge.fruit_veg{background:#daf0d8;color:#2c6629}.st-category-badge.ambient{background:#eee4cc;color:#6b5420}.st-location{display:block;margin-top:3px;color:#827887;font-size:11px;font-weight:650}
@media(max-width:800px){.st-group-title{position:static;align-items:flex-start;flex-direction:column}.st-group-title>div{width:100%;justify-content:space-between}.st-group-title small{display:none}}
.st-classification{display:block;margin-top:4px;font-size:.66rem;font-weight:800;letter-spacing:.035em;opacity:.68}

.st-rolling-note{margin-top:8px!important;padding:7px 10px;border-radius:7px;background:#173d31;color:#baf7df!important;font-size:11px!important;font-weight:800;letter-spacing:.03em}
.st-row[data-saved="1"]{box-shadow:inset 3px 0 #5dcc8a}
.st-login-credentials{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(540px,100%);margin:18px 0}.st-login-credentials label{display:grid;gap:6px;font-size:11px;font-weight:900;letter-spacing:.08em;color:#665d6a}.st-login-credentials input{width:100%;height:54px;border:1px solid #d4cad7;border-radius:10px;background:#fff;padding:0 12px;font-size:18px;font-weight:900;text-transform:uppercase}.st-login-credentials .st-pin-input{text-transform:none;letter-spacing:.16em}.st-login-credentials input:focus{outline:2px solid var(--mint);outline-offset:1px}@media(max-width:620px){.st-login-credentials{grid-template-columns:1fr}}
/* v1.14.3 — login credentials use the shared on-focus numeric-entry bubble. */
.st-login .st-login-submit{width:min(540px,100%);margin-top:2px}
