:root{--ink:#153832;--muted:#687c78;--brand:#174d43;--brand2:#267a68;--soft:#edf7f3;--bg:#f5f8f7;--line:#d9e4e1;--danger:#aa403e;--warn:#fff4df;--shadow:0 18px 50px rgba(26,63,55,.1)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,#d8eee7,transparent 36%),linear-gradient(145deg,#f8fbfa,#edf4f2)}.auth-card{width:min(450px,100%);padding:34px;background:white;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.auth-card h1{margin:12px 0 6px}.auth-card>p{margin:0 0 24px;color:var(--muted)}.auth-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:var(--brand);color:white;font-size:30px;font-weight:900}.stack{display:grid;gap:13px}.stack label{display:grid;gap:6px;font-size:12px;font-weight:800;color:var(--muted)}input,select{height:44px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:0 12px;color:var(--ink);outline:none}input:focus,select:focus{border-color:var(--brand2);box-shadow:0 0 0 3px rgba(38,122,104,.12)}button{border:0;border-radius:11px;min-height:42px;padding:0 14px;font-weight:800}.primary{background:var(--brand);color:white}.secondary{background:white;border:1px solid var(--line);color:var(--ink)}.ghost{background:transparent;color:var(--muted)}.danger{background:#fff0ef;color:var(--danger);border:1px solid #f0cfcc}.full{width:100%;margin-top:10px}.app{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:26px 15px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{font-size:22px;font-weight:900;display:flex;align-items:center;gap:10px;padding:0 10px 24px}.brand span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--brand);color:white}.nav{display:grid;gap:6px}.nav button{display:grid;grid-template-columns:24px 1fr auto;align-items:center;text-align:left;background:transparent;color:var(--muted);padding:0 12px}.nav button.active{background:var(--soft);color:var(--brand)}.nav em{font-style:normal;background:var(--brand);color:white;border-radius:99px;padding:2px 7px;font-size:11px}.sync-state{margin-top:auto;padding:14px 10px;color:var(--muted);font-size:11px;display:flex;gap:8px;align-items:center}.sync-state span{width:9px;height:9px;border-radius:50%;background:#35a77b}.sync-state span.busy{background:#e6a63c}.sync-state span.offline{background:#cc514b}.workspace{min-width:0}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:20}.list-control,.profile{display:flex;align-items:center;gap:9px}.list-control small{color:var(--muted);font-weight:800}.list-control select{min-width:170px;border:0;background:var(--soft);font-weight:850}.list-control button,.profile>button:not(.ghost){width:42px;padding:0;background:#f5f8f7;border:1px solid var(--line)}.profile span{font-weight:800}.offline{padding:10px 24px;background:var(--warn);color:#795b20;font-size:13px}.content{padding:28px;max-width:1400px;margin:auto}.view{display:none}.view.active{display:block}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:22px}.page-head h1{font-size:clamp(28px,4vw,48px);line-height:1;margin:0 0 8px;letter-spacing:-.04em}.page-head p{margin:0;color:var(--muted)}.stat{background:#fff;border:1px solid var(--line);padding:12px 17px;border-radius:14px;min-width:150px}.stat strong,.stat span{display:block}.stat strong{font-size:20px}.stat span{color:var(--muted);font-size:11px}.search-panel,.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 4px 20px rgba(26,63,55,.035)}.search-line{display:grid;grid-template-columns:minmax(260px,1fr) 105px 120px;gap:10px}.search-line label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:800}.search-box{height:50px;border:1px solid var(--line);border-radius:13px;padding:0 15px;display:flex;align-items:center;gap:10px;font-size:24px}.search-box input{border:0;box-shadow:none;width:100%;padding:0;font-size:15px}.search-panel>small{display:block;color:var(--muted);margin-top:10px}.search-results{margin-top:12px;border-top:1px solid var(--line);max-height:430px;overflow:auto}.suggestion{width:100%;display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;text-align:left;padding:10px;background:white;border-bottom:1px solid #edf1f0;border-radius:0}.suggestion:hover{background:#f7faf9}.thumb,.product-icon{width:46px;height:46px;border-radius:12px;background:var(--soft);display:grid;place-items:center;overflow:hidden;font-size:22px}.thumb img,.product-icon img{width:100%;height:100%;object-fit:contain;background:white}.suggestion small,.meta{display:block;color:var(--muted);font-size:11px}.retailer{font-size:10px;padding:4px 7px;border-radius:99px;background:#f2f4f3;color:var(--muted)}.section-title{display:flex;justify-content:space-between;align-items:center;margin:22px 0 10px}.section-title h2{margin:0}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{min-height:32px;background:#fff;border:1px solid var(--line);font-size:11px}.filters button.active{background:var(--brand);color:white}.course-list{display:grid;gap:8px}.course-row,.supply-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:15px;padding:11px}.stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:white}.stepper button{min-height:36px;border-radius:0;background:#f6f9f8;padding:0 11px}.stepper span{min-width:75px;text-align:center;font-weight:850;font-size:12px}.buy{width:42px;padding:0;border-radius:50%;background:var(--brand);color:white;font-size:20px}.empty{padding:48px 20px;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:18px}.toolbar{display:flex;gap:10px;margin-bottom:15px}.toolbar input{flex:1}.stock-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.stock-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px;display:grid;gap:12px}.stock-card.low{border-color:#e9ba6a;background:#fffdfa}.stock-head{display:flex;gap:10px;align-items:center}.stock-head strong{display:block}.stock-card .stepper{justify-self:stretch}.stock-card .stepper span{flex:1}.stock-settings{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stock-settings label{font-size:10px;color:var(--muted);display:grid;gap:4px}.stock-settings input,.stock-settings select{height:38px}.card-actions{display:flex;justify-content:space-between;gap:8px}.card-actions button{background:transparent;color:var(--brand);font-size:11px;padding:0}.card-actions .delete{color:var(--danger)}.supply-list{display:grid;gap:9px}.supply-row{grid-template-columns:48px minmax(0,1fr) auto}.two-cols{display:grid;grid-template-columns:1.4fr .6fr;gap:16px}.panel h2{margin:0 0 15px}.user-list{display:grid;gap:8px}.user-row{display:grid;grid-template-columns:40px minmax(0,1fr) 170px auto auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:13px}.avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--soft);font-weight:900}.user-row small{display:block;color:var(--muted)}.user-row select{height:38px}.mini{min-height:36px;background:#f5f8f7;color:var(--brand);font-size:10px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-grid .wide{grid-column:1/-1}.catalog-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.catalog-stats div{padding:16px;background:#f6f9f8;border-radius:14px}.catalog-stats strong,.catalog-stats span{display:block}.catalog-stats strong{font-size:26px}.catalog-stats span{color:var(--muted);font-size:11px}.progress{margin-top:14px}.progress>div{height:9px;background:#e7eeec;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:var(--brand2);width:0}.progress small{display:block;margin-top:7px;color:var(--muted)}.inline{display:flex;gap:8px}.inline input{flex:1}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.chips button{min-height:32px;background:var(--soft);color:var(--brand);font-size:11px}.chips button span{color:var(--danger);margin-left:5px}.bottom-nav{display:none}.toast{position:fixed;left:50%;bottom:26px;z-index:100;transform:translate(-50%,120px);opacity:0;background:#173d36;color:white;padding:11px 18px;border-radius:99px;font-weight:750;font-size:12px;transition:.25s}.toast.show{transform:translate(-50%,0);opacity:1}[hidden]{display:none!important}@media(max-width:1000px){.app{grid-template-columns:195px 1fr}.stock-grid{grid-template-columns:repeat(2,1fr)}.two-cols{grid-template-columns:1fr}.profile span{display:none}}@media(max-width:720px){body{padding-bottom:72px}.app{display:block}.sidebar{display:none}.topbar{height:auto;min-height:70px;padding:10px 13px;gap:8px}.list-control{min-width:0}.list-control small{display:none}.list-control select{min-width:0;max-width:145px}.profile .ghost{font-size:0;width:42px;padding:0}.profile .ghost:after{content:'↪';font-size:19px}.content{padding:20px 13px}.page-head{align-items:flex-start}.page-head h1{font-size:32px}.stat{display:none}.search-line{grid-template-columns:1fr 92px}.search-line label:last-child{grid-column:1/-1}.stock-grid{grid-template-columns:1fr}.course-row{grid-template-columns:44px minmax(0,1fr) auto}.course-row .stepper{grid-column:2/3}.buy{grid-column:3;grid-row:1/3}.section-title{align-items:flex-start;display:block}.filters{margin-top:10px}.user-row{grid-template-columns:38px 1fr auto}.user-row select{grid-column:2/4;width:100%}.admin-grid{grid-template-columns:1fr}.catalog-stats{grid-template-columns:repeat(2,1fr)}.bottom-nav{position:fixed;display:flex;left:0;right:0;bottom:0;z-index:50;background:#fff;border-top:1px solid var(--line);padding:7px max(7px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom));justify-content:space-around}.bottom-nav button{background:transparent;color:var(--muted);min-width:52px;padding:3px 6px;font-size:18px}.bottom-nav button span{display:block;font-size:9px}.bottom-nav button.active{color:var(--brand);background:var(--soft)}.auth-card{padding:25px 20px}.toast{bottom:90px;white-space:nowrap;max-width:90%;overflow:hidden;text-overflow:ellipsis}}
