:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#2d3748;background:#f7fafc;font-synthesis:none;--primary: #1a1a1a;--primary-hover: #333;--text: #2d3748;--muted: #718096;--subtle: #a0aec0;--surface: #fff;--surface-soft: #f7fafc;--surface-muted: #f1f5f9;--border: #e2e8f0;--border-strong: #cbd5e0;--blue: #2563eb;--blue-soft: #eff6ff;--danger: #dc2626;--danger-soft: #fef2f2;--shadow: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-lg: 0 18px 44px rgba(31, 41, 55, .12)}*{box-sizing:border-box}body{min-width:320px;margin:0;background:var(--surface-soft)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,p{margin-top:0}h1{margin-bottom:1rem;color:var(--text);font-size:clamp(2rem,4vw,3.2rem);line-height:1.08;letter-spacing:-.045em}h2{margin-bottom:.45rem;color:var(--text);font-size:clamp(1.25rem,2.5vw,1.65rem);line-height:1.2;letter-spacing:-.02em}p{color:var(--muted);line-height:1.6}.icon{display:block;flex:0 0 auto}.eyebrow{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.8rem;color:#4a5568;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.lead{max-width:38rem;margin-bottom:1.7rem;color:#4a5568;font-size:1rem}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:0 clamp(1rem,5vw,3.75rem);border-bottom:1px solid var(--border);background:var(--surface)}.brand{display:inline-flex;align-items:center;gap:.55rem;color:#1a202c;font-size:1.05rem;font-weight:700;text-decoration:none}.brand img{width:31px;height:31px;object-fit:contain}.topbar-context{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);font-size:.78rem;font-weight:600}.topbar-dot{width:7px;height:7px;border-radius:50%;background:var(--blue)}.auth-page,.app-page{min-height:100vh;background:var(--surface-soft)}.access-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.88fr);width:min(1040px,calc(100% - 2rem));min-height:540px;overflow:hidden;margin:clamp(1rem,7vh,4.75rem) auto;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-lg)}.access-panel{display:grid;align-content:center;padding:clamp(2rem,6vw,5rem)}.access-panel h1{max-width:28rem}.access-form{display:grid;gap:.8rem;max-width:430px}label{display:grid;gap:.42rem;color:var(--text);font-size:.88rem;font-weight:600}label>span{color:var(--muted);font-size:.78rem;font-weight:400}input,select{width:100%;min-height:44px;padding:9px 12px;color:var(--text);border:1px solid var(--border);border-radius:8px;outline:none;background:var(--surface);font-size:.93rem;transition:border-color .2s ease,box-shadow .2s ease}input::placeholder{color:var(--subtle)}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1a1a1a1a}select{padding-right:2.5rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a5568' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;background-size:1rem}.input-with-icon,.search-control{position:relative;display:flex;align-items:center}.input-with-icon>.icon,.search-control>.icon{position:absolute;left:.85rem;z-index:1;color:var(--muted);pointer-events:none}.input-with-icon input,.search-control input{padding-left:2.65rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:40px;padding:8px 15px;border:1px solid transparent;border-radius:6px;font-size:.88rem;font-weight:600;transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:focus-visible,.product-card:focus-visible,.icon-button:focus-visible{outline:3px solid rgba(26,26,26,.17);outline-offset:2px}.btn-primary{color:#fff;border-color:var(--primary);background:var(--primary)}.btn-primary:hover:not(:disabled){border-color:var(--primary-hover);background:var(--primary-hover)}.btn-secondary{color:var(--text);border-color:var(--border);background:var(--surface)}.btn-secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-muted)}.btn:disabled{opacity:.58}.btn-wide{width:100%;min-height:46px;margin-top:.25rem}.privacy-note{display:flex;align-items:flex-start;gap:.6rem;max-width:430px;margin-top:1.35rem;padding-top:1.1rem;color:var(--muted);border-top:1px solid var(--border);font-size:.8rem;line-height:1.5}.privacy-note .icon{margin-top:.05rem;color:var(--blue)}.access-guide{display:grid;align-content:center;padding:clamp(2rem,5vw,4rem);color:#fff;background:#1a202c}.access-guide h2{max-width:23rem;color:#fff}.access-guide p,.access-guide .eyebrow{color:#cbd5e0}.guide-list{display:grid;gap:1.15rem;margin:1.35rem 0 0;padding:0;list-style:none}.guide-list li{display:grid;grid-template-columns:30px 1fr;gap:.7rem}.guide-list li>span{color:#a0aec0;font-size:.75rem;font-weight:700}.guide-list strong,.guide-list small{display:block}.guide-list strong{margin-bottom:.1rem;color:#fff;font-size:.88rem}.guide-list small{color:#cbd5e0;font-size:.78rem;line-height:1.45}.counter-shell{width:min(1080px,calc(100% - 2rem));margin:0 auto;padding:clamp(1.5rem,4vw,3rem) 0 4rem}.empty-shell{display:grid;justify-items:start;max-width:620px;padding-top:clamp(4rem,14vh,9rem)}.empty-shell p{max-width:34rem}.empty-icon,.dialog-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:1.25rem;color:var(--text);border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.stepper{display:flex;max-width:520px;margin:0 0 2.5rem;padding:0;list-style:none}.stepper li{position:relative;display:flex;align-items:center;gap:.55rem;width:50%;color:var(--subtle)}.stepper li:not(:last-child):after{position:absolute;top:15px;left:32px;width:calc(100% - 36px);height:1px;background:var(--border);content:""}.stepper li>span{position:relative;z-index:1;display:grid;width:30px;height:30px;place-items:center;color:var(--muted);border:1px solid var(--border-strong);border-radius:50%;background:var(--surface);font-size:.75rem;font-weight:700}.stepper li strong,.stepper li small{display:block}.stepper li strong{font-size:.78rem}.stepper li small{margin-top:.08rem;font-size:.7rem}.stepper .active{color:var(--text)}.stepper .active>span,.stepper .complete>span{color:#fff;border-color:var(--primary);background:var(--primary)}.selection-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.75fr);gap:clamp(2rem,7vw,6rem);align-items:center}.selection-copy h1{max-width:35rem}.selection-points{display:grid;gap:.9rem;margin-top:1.5rem}.selection-points p{display:flex;gap:.7rem;margin:0;color:var(--muted);font-size:.83rem}.selection-points .icon{margin-top:.12rem;color:var(--blue)}.selection-points strong{display:block;margin-bottom:.1rem;color:var(--text)}.form-panel{padding:1.25rem 0 0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.panel-heading{display:flex;gap:.75rem;align-items:center;margin-bottom:1.4rem}.panel-icon,.shelf-icon{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;color:var(--text);border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.panel-heading h2{margin:0 0 .15rem;font-size:1rem}.panel-heading p,.form-help{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}.form-panel select{margin-top:.15rem}.form-panel .form-help{margin-top:.6rem}.workspace-shell{max-width:920px}.shelf-banner{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;margin-bottom:1.25rem;padding:1.1rem 0 1.35rem;border-bottom:1px solid var(--border)}.shelf-banner h1{margin:0 0 .3rem;font-size:clamp(1.55rem,3.5vw,2.35rem)}.shelf-banner .eyebrow{margin-bottom:.35rem}.shelf-banner p{margin:0;font-size:.88rem}.shelf-change{white-space:nowrap}.counting-panel{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.search-label{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-bottom:.45rem}.search-label label{font-size:.9rem}.search-label span{color:var(--muted);font-size:.75rem}.search-control input{min-height:48px;font-size:.95rem}.search-meta{display:flex;justify-content:space-between;gap:.75rem;margin-top:.6rem;color:var(--muted);font-size:.74rem}.search-meta span:first-child{color:#4a5568;font-weight:600}.search-meta i{display:inline-block;width:6px;height:6px;margin-right:.25rem;border-radius:50%;background:var(--blue);vertical-align:1px}.item-list{display:grid;gap:.6rem;margin-top:1.1rem}.product-card{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center;width:100%;min-height:68px;padding:.75rem .85rem;color:var(--text);border:1px solid var(--border);border-radius:8px;background:var(--surface);text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease}.product-card:hover{border-color:var(--border-strong);background:var(--surface-soft);transform:translateY(-1px)}.product-icon{display:grid;place-items:center;width:34px;height:34px;color:#4a5568;border-radius:6px;background:var(--surface-muted)}.product-copy strong,.product-copy small{display:block}.product-copy strong{font-size:.9rem;line-height:1.3}.product-copy small{margin-top:.18rem;color:var(--muted);font-size:.76rem}.product-card.has-count{border-color:#cbd5e0;background:#fbfdff}.product-copy em{display:inline-block;margin-left:.45rem;padding-left:.45rem;color:#334155;border-left:1px solid var(--border-strong);font-style:normal;font-weight:700}.product-card>.icon{color:var(--muted)}.no-results{display:grid;justify-items:center;gap:.45rem;padding:2rem 1rem;color:var(--muted);border:1px dashed var(--border-strong);border-radius:8px;text-align:center;font-size:.83rem}.no-results strong{color:var(--text)}.counting-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:1rem 0}.counting-footer strong,.counting-footer span{display:block}.counting-footer strong{color:var(--text);font-size:.86rem}.counting-footer span{margin-top:.15rem;color:var(--muted);font-size:.76rem}.new-location-form{display:flex;gap:.55rem;align-items:end;margin-top:.85rem}.new-location-form input{min-width:0}.new-location-form .btn{flex:0 0 auto}.location-picker{position:relative;margin-top:.15rem}.location-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:44px;padding:9px 12px;color:var(--text);border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:.93rem;font-weight:400;text-align:left;transition:border-color .2s ease,box-shadow .2s ease}.location-picker-trigger:hover,.location-picker-trigger:focus-visible{border-color:var(--border-strong)}.location-picker-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #1a1a1a1a}.location-picker-trigger .icon{color:var(--muted);transition:transform .18s ease}.location-picker:has(.location-picker-menu) .location-picker-trigger .icon{transform:rotate(180deg)}.location-picker-menu{position:absolute;z-index:10;top:calc(100% + 6px);left:0;width:100%;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--surface);box-shadow:var(--shadow-lg)}.location-picker-list{max-height:206px;overflow:auto;padding:.35rem}.location-picker-list button{display:flex;align-items:center;gap:.55rem;width:100%;min-height:38px;padding:8px 9px;color:var(--text);border:0;border-radius:6px;background:transparent;font-size:.86rem;text-align:left}.location-picker-list button:hover,.location-picker-list button.selected{background:var(--surface-muted)}.location-picker-list button.selected{font-weight:700}.product-detail-shell{max-width:980px}.product-page-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1.3rem}.back-link{display:inline-flex;align-items:center;gap:.35rem;margin:0 0 1.3rem;padding:0;color:var(--muted);border:0;background:transparent;font-size:.82rem;font-weight:600}.back-link:hover{color:var(--text)}.product-page-actions .back-link{margin:0}.product-close{min-height:34px;padding:6px 12px;font-size:.78rem}.product-detail-header{padding-bottom:1.35rem;border-bottom:1px solid var(--border)}.product-detail-header .eyebrow{margin-bottom:.35rem}.product-detail-header h1{margin-bottom:.35rem;font-size:clamp(1.55rem,3.5vw,2.35rem)}.product-detail-header p{margin:0;font-size:.86rem}.product-detail-header p span{padding:0 .2rem;color:var(--subtle)}.product-detail-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:clamp(1.5rem,4vw,3rem);margin-top:1.5rem;align-items:start}.count-form-section,.count-history{padding:1.25rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.count-form-section{display:grid;gap:.85rem}.count-location-field{display:grid;gap:.3rem;color:var(--text);font-size:.88rem;font-weight:600}.count-location-field small{margin-left:.35rem;color:var(--muted);font-size:.75rem;font-weight:400}.count-form-section h2,.count-history h2{margin:0;font-size:1.1rem}.count-form-section>p,.count-history>p{margin:-.35rem 0 .15rem;font-size:.82rem}.count-form-section .saved-count-summary{margin:-.25rem 0 0;padding:.55rem .65rem;color:#334155;border-radius:6px;background:var(--surface-muted);font-size:.78rem}.saved-count-summary strong{color:var(--text)}.count-form-section .form-help{display:flex;gap:.45rem;align-items:flex-start;margin:0}.count-form-section .form-help .icon{margin-top:.05rem;color:var(--blue)}.history-heading{display:flex;justify-content:space-between;gap:1rem;align-items:start}.history-heading .eyebrow{margin-bottom:.3rem}.history-heading>strong{padding:.35rem .55rem;color:#334155;border-radius:999px;background:var(--surface-muted);font-size:.72rem;white-space:nowrap}.history-list{display:grid;margin-top:1rem;border-top:1px solid var(--border)}.history-list article{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--border)}.history-list strong,.history-list span,.history-list b,.history-list small{display:block}.history-list strong{color:var(--text);font-size:.84rem}.history-list span,.history-list small{margin-top:.12rem;color:var(--muted);font-size:.73rem}.history-list article>div:last-child{text-align:right}.history-list b{color:var(--text);font-size:.95rem}.edit-submitted-count{margin-top:.45rem;padding:0;color:var(--blue);border:0;background:transparent;font-size:.75rem;font-weight:700}.edit-submitted-count:hover{color:var(--text);text-decoration:underline}.history-empty{padding:1rem 0 0;color:var(--muted);font-size:.82rem}.notice{margin:1rem 0 0;padding:.8rem .9rem;color:#b91c1c;border:1px solid #fecaca;border-radius:7px;background:var(--danger-soft);font-size:.84rem;line-height:1.45}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:1rem;background:#1a202c80}.dialog{position:relative;width:min(480px,100%);max-height:min(700px,92vh);overflow:auto;padding:clamp(1.25rem,5vw,2rem);border-radius:12px;background:var(--surface);box-shadow:0 24px 60px #1a202c47}.dialog-icon{width:42px;height:42px;margin-bottom:1rem}.dialog h2{margin-bottom:.35rem}.dialog p{margin-bottom:0}.icon-button{display:grid;place-items:center;width:34px;height:34px;padding:0;color:var(--muted);border:1px solid var(--border);border-radius:6px;background:var(--surface)}.icon-button:hover{color:var(--text);background:var(--surface-muted)}.close{position:absolute;top:1rem;right:1rem}.count-dialog{display:grid;gap:1rem}.count-dialog .eyebrow{margin-bottom:-.35rem}.product-reference{color:var(--muted);font-size:.84rem}.product-reference span{padding:0 .2rem;color:var(--subtle)}.dialog-divider{height:1px;background:var(--border)}.quantity-input{min-height:58px;font-size:1.45rem;font-weight:700}.count-dialog .form-help{display:flex;gap:.45rem;align-items:flex-start}.count-dialog .form-help .icon{margin-top:.05rem;color:var(--blue)}.confirm-dialog p strong{color:var(--text)}.dialog-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1.25rem}@media (max-width: 760px){.topbar{min-height:58px;padding:0 1rem}.topbar-context{font-size:.72rem}.access-shell{grid-template-columns:1fr;width:min(100% - 2rem,560px);min-height:0;margin:0 auto;border:0;border-radius:0;background:transparent;box-shadow:none}.access-panel{min-height:0;align-content:start;padding:1.5rem 0 2rem}.access-guide{display:none}.counter-shell{width:min(100% - 1.5rem,680px);padding-top:.8rem}.counter-shell .stepper,.workspace-shell .stepper{margin-bottom:.9rem}.stepper li{gap:.4rem}.stepper li>span{width:27px;height:27px;font-size:.7rem}.stepper li:not(:last-child):after{top:13px;left:29px;width:calc(100% - 33px)}.stepper li strong{font-size:.72rem}.stepper li small{display:none}.selection-layout{grid-template-columns:1fr;gap:.9rem}.selection-copy .eyebrow{margin-bottom:.45rem;font-size:.64rem}.selection-copy h1{margin-bottom:.65rem;font-size:1.7rem;line-height:1.12}.selection-copy .lead{margin-bottom:.9rem;font-size:.87rem;line-height:1.55}.selection-points{gap:.6rem;margin-top:0}.selection-points p{gap:.55rem;font-size:.75rem;line-height:1.4}.selection-points .icon{width:16px;height:16px}.form-panel{padding:.8rem 0 0;border-radius:0}.panel-heading{gap:.6rem;margin-bottom:.85rem}.panel-icon{width:34px;height:34px}.panel-heading h2{font-size:.9rem}.panel-heading p,.form-help{font-size:.72rem}.form-panel select{min-height:42px}.form-panel .form-help{margin-top:.45rem}.workspace-shell .shelf-banner{grid-template-columns:auto minmax(0,1fr) auto;gap:.65rem;margin-bottom:.8rem;padding:.15rem 0 .8rem}.workspace-shell .shelf-icon{width:34px;height:34px}.workspace-shell .shelf-banner h1{margin-bottom:.15rem;font-size:1.45rem}.workspace-shell .shelf-banner .eyebrow{margin-bottom:.18rem;font-size:.64rem}.workspace-shell .shelf-banner p{font-size:.78rem;line-height:1.4}.workspace-shell .shelf-change{grid-column:auto;width:auto;min-height:34px;padding:6px 8px;font-size:.76rem}.counting-panel{padding:0;border-radius:0}.search-label{margin-bottom:.35rem}.search-label span{display:none}.search-control input{min-height:44px;font-size:.88rem}.search-meta{flex-direction:row;align-items:center;gap:.5rem;margin-top:.45rem;font-size:.68rem}.item-list{gap:.45rem;margin-top:.8rem}.product-card{gap:.6rem;min-height:58px;padding:.6rem .7rem}.product-icon{width:30px;height:30px}.product-copy strong{font-size:.82rem}.product-copy small{margin-top:.1rem;font-size:.69rem}.product-copy em{margin-left:.3rem;padding-left:.3rem}.counting-footer{align-items:stretch;flex-direction:column}.counting-footer .btn{width:100%}.new-location-form{align-items:stretch;flex-direction:column}.new-location-form .btn{width:100%}.product-detail-shell{padding-top:.8rem}.product-page-actions{margin-bottom:.9rem}.product-detail-layout{grid-template-columns:1fr;gap:.9rem;margin-top:.9rem}.count-form-section,.count-history{padding:1rem}.dialog{align-self:end;max-height:92vh;border-radius:12px 12px 0 0}.dialog-actions{display:grid}.dialog-actions .btn{width:100%}}@media (max-width: 390px){.brand img{width:27px;height:27px}.topbar-context,.stepper li div{display:none}.stepper li{width:auto;flex:1}.stepper li:not(:last-child):after{width:calc(100% - 31px)}}
