:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0b0c11;background:#eef0f4;font-synthesis:none;text-rendering:optimizeLegibility;--blue: #0b55f5;--blue-dark: #0846d0;--coral: #ff5c52;--ink: #0b0c11;--muted: #6f7380;--line: #dfe2e9;--soft: #f5f6f8;--safe-bottom: max(16px, env(safe-area-inset-bottom))}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 35%,transparent);outline-offset:2px}.wordmark{color:var(--ink);font-size:29px;font-weight:900;letter-spacing:.055em;line-height:1;text-decoration:none}.catalog-shell{height:100dvh;max-width:520px;margin:0 auto;position:relative;overflow:hidden;background:#fff;box-shadow:0 0 44px #0d183124}.catalog-header{height:76px;padding:max(18px,env(safe-area-inset-top)) 22px 14px;display:flex;align-items:flex-end;justify-content:space-between;background:#fff;position:absolute;z-index:20;inset:0 0 auto;border-bottom:1px solid rgb(11 12 17 / 7%)}.filter-wrap{position:relative}.filter-button{min-height:44px;border:0;background:transparent;color:var(--blue);display:flex;gap:7px;align-items:center;font-size:17px;font-weight:650;padding:8px 0 5px 14px}.filter-button svg{width:20px;height:20px}.filter-menu{position:absolute;right:-8px;top:calc(100% + 7px);background:#fff;border:1px solid var(--line);border-radius:14px;padding:5px;min-width:150px;box-shadow:0 14px 32px #0d183126;display:grid}.filter-menu button{min-height:44px;padding:0 14px;border:0;border-radius:9px;background:transparent;text-align:left;font-size:15px}.filter-menu button[aria-checked=true]{color:var(--blue);background:#eef4ff;font-weight:700}.feed{height:100dvh;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:none}.feed::-webkit-scrollbar{display:none}.feed>div{height:100dvh;scroll-snap-align:start;scroll-snap-stop:always}.product-panel{height:100%;padding-top:76px;position:relative;overflow:hidden;background:#ddd}.product-photo{width:100%;height:calc(100% - 230px);display:block;object-fit:cover;object-position:center 28%;background:#e9e5de}.defect-photo-button{position:absolute;z-index:4;right:24px;bottom:244px;min-height:48px;border:1px solid #ffaaa5;border-radius:999px;padding:0 18px;background:#fff3f2f5;color:#b62d25;box-shadow:0 7px 20px #00000029;font-size:14px;font-weight:800}.product-sheet{position:absolute;z-index:3;inset:auto 0 0;height:256px;background:#fff;border-radius:24px 24px 0 0;padding:19px 24px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -8px 25px #0f182817}.sheet-handle{width:38px;height:4px;border-radius:2px;background:#c9cbd1;margin:0 auto 18px}.product-heading-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:15px}.product-code{color:var(--muted);font-size:14px;letter-spacing:.025em;margin:0 0 4px}.product-heading-row h2{margin:0;font-size:31px;letter-spacing:-.035em;line-height:1}.product-description{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.25}.product-price-block{display:grid;justify-items:end;gap:7px}.product-price-block strong{font-size:27px;line-height:1;white-space:nowrap}.defect-label{color:var(--coral);border:1px solid #ffaaa5;border-radius:10px;padding:6px 13px;background:#fff3f2;font-weight:750;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.stock-section{padding-top:14px}.stock-section>p{margin:0 0 11px;color:#3d4048;font-size:14px;font-weight:600}.stock-list{display:flex;gap:9px;overflow-x:auto;scrollbar-width:none}.stock-item{min-width:94px;height:52px;border:1px solid var(--line);border-radius:12px;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--soft)}.stock-item b,.stock-item span{text-align:center;font-size:17px}.stock-item b{border-right:1px solid var(--line)}.stock-item span{color:var(--blue);font-weight:700}.stock-empty{opacity:.45}.feed-progress{position:absolute;z-index:6;top:118px;right:13px;display:grid;gap:7px}.feed-progress span{width:4px;height:30px;background:#ffffffa6;border-radius:3px;box-shadow:0 1px 4px #0000001a}.feed-progress span.active{background:var(--blue)}.feed-counter{position:absolute;z-index:7;top:85px;right:10px;min-width:46px;border-radius:999px;padding:5px 8px;color:#fff;background:#0b0c119e;text-align:center;font-size:11px;font-weight:750;letter-spacing:.03em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.swipe-guide{position:absolute;z-index:8;left:50%;bottom:306px;transform:translate(-50%);width:max-content;max-width:calc(100% - 36px);min-height:48px;border:1px solid rgb(255 255 255 / 32%);border-radius:999px;padding:0 16px 0 12px;display:flex;align-items:center;gap:9px;color:#fff;background:#0b0c11b8;box-shadow:0 8px 24px #00000038;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:13px;font-weight:750}.swipe-guide-icon{width:27px;height:27px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:#ffffff2e;font-size:18px;animation:swipe-guide-up 1.35s ease-in-out infinite}@keyframes swipe-guide-up{0%,to{transform:translateY(3px)}50%{transform:translateY(-3px)}}.admin-shortcut{position:absolute;z-index:9;left:12px;bottom:calc(9px + env(safe-area-inset-bottom));color:transparent;width:38px;height:26px;overflow:hidden}.catalog-state{min-height:100dvh;display:grid;place-content:center;justify-items:center;gap:14px;background:#fff;color:var(--muted);padding:30px;text-align:center}.catalog-state button{min-height:44px;border:0;border-radius:10px;padding:0 18px;background:var(--blue);color:#fff;font-weight:700}.loading-mark{width:30px;aspect-ratio:1;border:3px solid #dfe6f5;border-top-color:var(--blue);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.detail-modal{position:absolute;z-index:40;inset:0;background:#0a0b0f;display:grid;grid-template-rows:1fr auto;color:#fff}.detail-modal>button{position:absolute;z-index:2;top:max(17px,env(safe-area-inset-top));right:16px;width:48px;height:48px;border:0;border-radius:50%;display:grid;place-items:center;background:#0000008a;color:#fff}.detail-modal>button svg{width:25px}.detail-modal img{width:100%;height:100%;object-fit:contain;min-height:0}.detail-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px var(--safe-bottom)}.detail-footer>div{display:grid;gap:3px}.detail-footer>button{min-height:44px;border:1px solid rgb(255 255 255 / 35%);border-radius:999px;padding:0 15px;background:transparent;color:#fff;font-size:14px;font-weight:750;white-space:nowrap}.detail-modal span{color:#aaaeba}.admin-shell,.login-shell{min-height:100dvh;max-width:720px;margin:0 auto;background:#fff;box-shadow:0 0 44px #0d18311a}.admin-header{height:64px;position:sticky;z-index:20;top:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:max(8px,env(safe-area-inset-top)) 18px 7px;border-bottom:1px solid var(--line);background:#fffffff2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.admin-header h1{margin:0;font-size:20px;line-height:1}.admin-header>button{justify-self:end;width:44px;height:44px;border:0;background:transparent;display:grid;place-items:center}.admin-header>button svg{width:26px}.admin-menu{position:absolute;right:12px;top:calc(100% + 6px);min-width:190px;padding:6px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 14px 32px #0d183126;display:grid}.admin-menu button,.admin-menu a{min-height:44px;border:0;background:transparent;border-radius:9px;display:flex;align-items:center;padding:0 13px;text-decoration:none;color:var(--ink);font-size:14px;text-align:left}.admin-menu button:hover,.admin-menu a:hover{background:var(--soft)}.product-form{padding:9px 18px 88px}.photo-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(118px,1fr);gap:10px;height:172px;margin-bottom:8px}.photo-capture{position:relative;min-width:0;overflow:hidden;border:1.5px dashed #bdc2cd;border-radius:15px;background:linear-gradient(145deg,#fafbfc,#f3f4f7);display:grid;place-items:center;align-content:center;gap:10px;color:#777c88}.photo-capture:first-child{border-style:solid}.photo-capture input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.photo-capture>svg{width:37px}.photo-capture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-capture button{position:relative;z-index:2;min-height:44px;border:0;border-radius:10px;padding:0 12px;background:transparent;color:inherit;font-size:13px;font-weight:650}.photo-capture.has-photo button{position:absolute;top:10px;left:10px;background:#fffffff0;color:var(--ink);box-shadow:0 4px 14px #00000021}.form-group{margin:0 0 7px;padding:0;border:0;display:grid;gap:3px;color:var(--ink);font-weight:750;font-size:14px}.segmented>div{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid #cfd3dc;border-radius:12px;overflow:hidden}.segmented button{min-height:44px;border:0;border-right:1px solid #cfd3dc;background:#fff;font-size:15px;font-weight:600}.segmented button:last-child{border-right:0}.segmented button.selected{color:#fff;background:var(--blue)}.segmented.coral button:last-child{color:var(--coral)}.segmented.coral button.selected{color:#fff;background:var(--blue)}.segmented.coral button:last-child.selected{background:var(--coral)}.select-group select{width:100%;height:44px;border:1px solid #cfd3dc;border-radius:12px;padding:0 15px;background:#fff;color:var(--ink);font-weight:550}.description-group>span{display:flex;justify-content:space-between;align-items:center}.description-group small{color:var(--muted);font-size:11px;font-weight:550}.description-group textarea{width:100%;min-height:60px;resize:vertical;border:1px solid #cfd3dc;border-radius:12px;padding:10px 13px;background:#fff;color:var(--ink);font-weight:500;line-height:1.35}.stock-steppers>div{display:grid;gap:3px}.stock-stepper{height:46px;border:1px solid #d9dce3;border-radius:12px;display:flex;align-items:center;justify-content:space-between;padding:1px 5px 1px 13px}.stock-stepper>span{font-size:17px}.stock-stepper>div{display:flex;align-items:center;gap:6px}.stock-stepper button{width:44px;height:44px;border:0;border-radius:9px;background:var(--soft);display:grid;place-items:center}.stock-stepper button svg{width:19px}.stock-stepper input{width:42px;height:44px;border:0;background:transparent;text-align:center;font-weight:700;font-size:17px;appearance:textfield}.code-preview{min-height:46px;border:1px solid #b8ccff;border-radius:12px;background:#f4f7ff;color:var(--muted);padding:6px 13px;display:flex;align-items:center;gap:8px}.code-preview svg{width:24px;flex:0 0 auto}.code-preview strong{color:var(--blue);font-size:17px;margin-left:2px}.form-message{min-height:44px;margin:12px 0 0;border-radius:10px;display:flex;align-items:center;gap:8px;padding:10px 13px;font-size:14px;font-weight:650}.form-message svg{width:20px}.form-message.error{color:#a82a23;background:#fff1f0}.form-message.success{color:#14653e;background:#eaf8f0}.save-bar{position:fixed;z-index:12;left:50%;bottom:0;transform:translate(-50%);width:min(720px,100%);padding:10px 18px var(--safe-bottom);background:#fffffff5;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.primary-button{width:100%;min-height:54px;border:0;border-radius:11px;color:#fff;background:var(--blue);display:flex;align-items:center;justify-content:center;gap:10px;font-size:17px;font-weight:750;box-shadow:0 8px 22px #0b55f533}.primary-button:hover{background:var(--blue-dark)}.primary-button:disabled{background:#aeb7ca;box-shadow:none;cursor:not-allowed}.primary-button svg{width:23px}.login-shell{padding:max(28px,env(safe-area-inset-top)) 22px 32px}.login-form{min-height:calc(100dvh - 90px);display:grid;align-content:center;gap:19px;max-width:390px;margin:0 auto}.login-form h1{margin:0 0 7px;font-size:31px;letter-spacing:-.04em}.login-form p{margin:0;color:var(--muted)}.login-form label{display:grid;gap:8px;font-size:14px;font-weight:700}.login-form input{height:52px;border:1px solid #cfd3dc;border-radius:11px;padding:0 14px}.drawer-backdrop{position:fixed;z-index:80;inset:0;background:#0b0c1161;display:flex;justify-content:center;align-items:flex-end}.brand-drawer{width:min(720px,100%);max-height:82dvh;overflow:auto;background:#fff;border-radius:24px 24px 0 0;padding:19px 18px var(--safe-bottom);box-shadow:0 -16px 50px #0000002b}.brand-drawer header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:23px}.brand-drawer header p{margin:0 0 3px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.brand-drawer h2{margin:0;font-size:26px}.brand-drawer header button{width:44px;height:44px;border:0;border-radius:50%;background:var(--soft);display:grid;place-items:center}.brand-drawer header svg{width:21px}.brand-drawer form{display:grid;gap:8px;margin-bottom:18px}.brand-drawer form>label{font-size:14px;font-weight:700}.brand-drawer form>div{display:flex;gap:8px}.brand-drawer input{min-width:0;flex:1;height:50px;border:1px solid #cfd3dc;border-radius:11px;padding:0 13px}.brand-drawer form button{min-width:100px;border:0;border-radius:11px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;gap:5px;font-weight:700}.brand-drawer form svg{width:18px}.brand-drawer ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.brand-drawer li{min-height:58px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand-drawer li button{min-width:65px;min-height:38px;border:0;border-radius:9px;background:var(--soft);color:var(--muted);font-size:13px;font-weight:700}.brand-drawer li button.active{background:#eaf8f0;color:#14653e}.product-drawer{width:min(720px,100%);max-height:90dvh;overflow:auto;background:#fff;border-radius:24px 24px 0 0;padding:19px 18px var(--safe-bottom);box-shadow:0 -16px 50px #0000002b}.product-drawer>header{position:sticky;z-index:2;top:-19px;display:flex;align-items:flex-start;justify-content:space-between;margin:-19px -18px 12px;padding:19px 18px 12px;background:#fffffff5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.product-drawer header p{margin:0 0 3px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.product-drawer h2{margin:0;font-size:26px}.product-drawer header button{width:44px;height:44px;border:0;border-radius:50%;background:var(--soft);display:grid;place-items:center}.product-drawer header svg{width:21px}.product-manager-message{min-height:42px;margin:0 0 10px;padding:10px 12px;border-radius:10px;color:#14653e;background:#eaf8f0;font-size:13px;font-weight:650}.product-manager-state{margin:26px 0;color:var(--muted);text-align:center}.product-control-list{list-style:none;display:grid;gap:10px;padding:0;margin:0}.product-control-list>li{border:1px solid var(--line);border-radius:15px;padding:10px;background:#fff}.product-control-summary{min-width:0;display:grid;grid-template-columns:72px minmax(0,1fr);gap:11px;align-items:center}.product-control-summary img,.product-control-placeholder{width:72px;height:84px;border-radius:10px;object-fit:cover;background:var(--soft)}.product-control-summary>div{min-width:0;display:grid;gap:5px}.product-control-summary strong{font-size:17px;letter-spacing:.01em}.product-control-summary span{overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.product-control-summary b{color:var(--blue);font-size:14px}.product-control-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.product-control-actions button{min-height:44px;border:0;border-radius:10px;background:var(--soft);font-size:14px;font-weight:750}.product-control-actions .sold-button{color:#b42d25;background:#fff0ef}.product-control-actions button:disabled{opacity:.55}.product-quick-edit{display:grid;gap:10px;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}.product-quick-edit label,.product-quick-edit fieldset{min-width:0;margin:0;padding:0;border:0;display:grid;gap:5px;font-size:13px;font-weight:700}.product-quick-edit select{width:100%;height:44px;border:1px solid #cfd3dc;border-radius:10px;padding:0 12px;background:#fff}.product-quick-edit textarea{width:100%;min-height:72px;resize:vertical;border:1px solid #cfd3dc;border-radius:10px;padding:9px 11px;background:#fff;font-weight:500;line-height:1.35}.quick-price-buttons,.quick-condition-buttons{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid #cfd3dc;border-radius:10px;overflow:hidden}.quick-price-buttons button,.quick-condition-buttons button{min-height:44px;border:0;border-right:1px solid #cfd3dc;background:#fff;font-weight:650}.quick-price-buttons button:last-child,.quick-condition-buttons button:last-child{border-right:0}.quick-price-buttons button.selected,.quick-condition-buttons button.selected{color:#fff;background:var(--blue)}.quick-condition-buttons button.selected.defect{background:var(--coral)}.quick-edit-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px}.quick-edit-actions button{min-height:46px;border:0;border-radius:10px;background:var(--soft);font-weight:750}.quick-edit-actions button[type=submit]{color:#fff;background:var(--blue);display:flex;align-items:center;justify-content:center;gap:7px}.quick-edit-actions button[type=submit]:disabled{background:#aeb7ca}.quick-edit-actions svg{width:19px}@media(min-width:721px){.product-form{padding-inline:28px}.photo-row{height:280px;grid-template-columns:2fr 1fr}.admin-header{padding-inline:28px}}@media(max-width:370px){.product-sheet{padding-inline:18px}.product-heading-row h2{font-size:27px}.product-price-block strong{font-size:24px}.stock-item{min-width:82px}.photo-row{height:190px}.product-form{padding-inline:12px}.segmented button{font-size:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
