:root{--bg:var(--tg-theme-bg-color,#fff);--bg2:var(--tg-theme-secondary-bg-color,#f4f4f6);--text:var(--tg-theme-text-color,#111);--hint:var(--tg-theme-hint-color,#888);--accent:var(--tg-theme-button-color,#517da2);--accent-text:var(--tg-theme-button-text-color,#fff)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg2);color:var(--text);margin:0;font:15px/1.35 -apple-system,system-ui,Segoe UI,Roboto,sans-serif}button,input{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.page{max-width:560px;margin:0 auto;padding:10px 12px 24px}.h1{margin:2px 0 8px;font-size:18px;font-weight:700}.muted{color:var(--hint);font-size:13px}.center{text-align:center;padding:24px 0}.grow{flex:1;min-width:0}.tabs{z-index:5;background:var(--bg2);gap:6px;max-width:560px;margin:0 auto;padding:0 12px 6px;display:flex;position:sticky;top:0}.tab{text-align:center;background:var(--bg);border-radius:10px;flex:1;justify-content:center;align-items:center;min-height:44px;padding:0 4px;font-size:13px;display:flex}.tab.on{background:var(--accent);color:var(--accent-text)}.chips{scrollbar-width:none;gap:6px;margin:8px 0;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips-row{align-items:center;gap:8px;display:flex}.chip{background:var(--bg);border:1px solid var(--bg2);border-color:color-mix(in srgb, var(--hint) 40%, transparent);cursor:pointer;border-radius:22px;flex:none;min-height:44px;padding:0 14px}.chip.on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, var(--bg))}.input{background:var(--bg);border:1px solid #0000;border-radius:10px;outline:none;width:100%;min-height:44px;padding:0 12px}.input:focus{border-color:var(--accent)}.search{margin-bottom:10px}.row{background:var(--bg);border-radius:12px;align-items:center;gap:10px;min-height:56px;margin-bottom:8px;padding:10px;display:flex}.ph{object-fit:cover;background:#c9b7a3;border-radius:8px;flex:none;width:48px;height:48px}.badge{white-space:nowrap;color:#555;background:#e9e9ee;border-radius:8px;padding:2px 7px;font-size:12px;display:inline-block}.badge.warn{color:#8a5a00;background:#ffe8b3}.badge.ok{color:#1b5e20;background:#d8f3dc}.badge.bad{color:#9b1c1c;background:#ffd6d6}.btn{background:color-mix(in srgb, var(--hint) 18%, var(--bg));cursor:pointer;border:0;border-radius:10px;min-width:44px;min-height:44px;padding:0 12px;font-weight:600}.btn:disabled{opacity:.45;cursor:default}.btn.sq{padding:0;font-size:20px}.btn.primary{background:var(--accent);color:var(--accent-text)}.btn.full{width:100%;margin-top:10px;display:block}.titlebar{justify-content:space-between;align-items:center;gap:8px;display:flex}.titlebar .h1{margin:0}.gallery{background:#2b2b2b;border-radius:12px;margin:6px 0;position:relative;overflow:hidden}.gallery.empty{color:#bbb;justify-content:center;align-items:center;height:120px;display:flex}.gallery-track{scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.gallery-track::-webkit-scrollbar{display:none}.gallery-track img{object-fit:cover;scroll-snap-align:center;flex:none;width:100%;height:300px}.gallery-count{color:#fff;background:#0000008c;border-radius:10px;padding:2px 8px;font-size:12px;position:absolute;bottom:8px;right:8px}.price-line{justify-content:space-between;align-items:baseline;font-size:17px;display:flex}.note{color:var(--hint);margin:6px 0;font-size:13px}.section{margin:6px 0}.sz{background:var(--bg);border:2px solid #0000;border-radius:10px;grid-template-columns:34px 1fr 44px 44px auto;align-items:center;gap:6px;margin-bottom:6px;padding:6px 8px;display:grid}.sz.on{border-color:var(--accent)}.sz-info{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sz-qty{font-size:18px;font-weight:700}.sheet-backdrop{z-index:10;background:#00000073;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg2);border-radius:16px 16px 0 0;width:100%;max-width:560px;margin:0 auto;padding:14px 14px 24px}.sheet-title{margin-bottom:10px;font-weight:700}.field{background:var(--bg);border-radius:10px;margin-bottom:8px;padding:8px 10px;display:block}.field .label{color:var(--hint);margin-bottom:4px;font-size:12px;display:block}.field .input{background:var(--bg2)}.stepper{align-items:center;gap:16px;display:flex}.stepper b{text-align:center;min-width:28px;font-size:18px}.toast{z-index:20;color:#fff;text-align:center;background:#333;border-radius:12px;max-width:536px;margin:0 auto;padding:12px 14px;position:fixed;top:58px;left:12px;right:12px}.toast.error{background:#b3261e}.error{color:#b3261e;margin-top:4px;font-size:12px;display:block}.field.qty{justify-content:space-between;align-items:center;display:flex}.qty-label{font-size:16px}.card{background:var(--bg);border-radius:12px;margin-bottom:8px;padding:10px}.inline{align-items:center;gap:6px;margin-bottom:8px;display:flex}.inline .input{background:var(--bg2)}.photos{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.photo{flex:none;width:140px}.photo img{object-fit:cover;background:#c9b7a3;border-radius:10px;width:140px;height:140px;display:block}.photo-actions{justify-content:space-between;margin-top:4px;display:flex}.photo-add{text-align:center;flex:none;justify-content:center;align-items:center;width:140px;min-height:140px;display:flex}.photo-add.disabled{opacity:.45}.btn.danger{color:#b3261e}.chip:disabled{opacity:.4;cursor:default}.picker{max-height:85vh;overflow-y:auto}.picker-list{max-height:45vh;overflow-y:auto}.pick-row{text-align:left;cursor:pointer;border:0;width:100%}.ship{background:var(--bg);border-radius:12px;margin-bottom:8px;padding:10px;display:block}.ship-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.ship-line{margin-top:2px;font-size:13px}.item-row{flex-direction:column;gap:6px;display:flex}.item-actions{gap:6px;display:flex}.item-actions .btn{flex:1;padding:0 6px}.btn.big{min-height:56px;font-size:17px}.copy-line{align-items:center;gap:8px;display:flex}a.tel{color:var(--accent)}.hint-err{color:#b3261e;margin-top:4px;font-size:12px;display:block}.menu-btn{text-align:left;cursor:pointer;border:0;width:100%}.nowrap{white-space:nowrap}.badges{flex-direction:column;flex:0 auto;align-items:flex-end;gap:4px;min-width:0;max-width:45%;display:flex}.badges .badge{white-space:normal;text-align:right}.inline .btn{white-space:nowrap;flex:none}.inline .input{flex:1;min-width:0}.pending{gap:8px;margin-top:10px;display:flex;overflow-x:auto}.pending .photo{width:88px}.pending .photo img{width:88px;height:88px}.pending .btn{width:100%;margin-top:4px}.card>.label{color:var(--hint);margin-bottom:4px;font-size:12px;display:block}.auth-error p{margin:8px 0}
