.modal-backdrop{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-panel{background:#fff;border-radius:12px;width:100%;max-width:960px;max-height:calc(100vh - 48px);padding:28px;position:relative;overflow-y:auto}.modal-close{color:#444b54;cursor:pointer;background:#f0f2f5;border:none;border-radius:50%;place-items:center;width:32px;height:32px;font-size:18px;line-height:1;display:grid;position:absolute;top:14px;right:14px}.modal-close:hover{background:#e4e7eb}.modal-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:28px;display:grid}@media (width<=720px){.modal-columns{grid-template-columns:1fr}.modal-panel{padding:20px}}.modal-gallery{flex-direction:column;gap:12px;display:flex}.gallery-main{aspect-ratio:4/3;object-fit:contain;background:#fafbfc;border:1px solid #e3e6ea;border-radius:8px;width:100%;display:block}.modal-gallery .img-placeholder{aspect-ratio:4/3;background:#fafbfc;border:1px dashed #d6dae0;border-radius:8px;justify-content:center;align-items:center;display:flex}.modal-gallery .img-placeholder svg{opacity:.55;width:26%;max-width:110px;height:auto}.gallery-thumbs{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.gallery-thumb-item{margin:0}.gallery-thumb{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:8px;padding:2px;line-height:0;display:block}.gallery-thumb img,.gallery-thumb .img-placeholder{object-fit:cover;border:1px solid #e3e6ea;border-radius:6px;width:64px;height:64px;display:block}.gallery-thumb[aria-current=true]{border-color:#2f6be0}.modal-info h2{margin:0 44px 12px 0;font-size:20px;line-height:1.3}.modal-lead{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.modal-price{font-size:22px;font-weight:700}.status-badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.status-badge.is-active{color:#1a7f4b;background:#e6f5ec}.status-badge.is-inactive{color:#b3372e;background:#fbeaea}.modal-facts{margin:0 0 20px}.fact-row{gap:12px;padding:3px 0;font-size:14px;display:flex}.fact-row dt{color:#5c6672;flex-shrink:0;min-width:96px}.fact-row dd{overflow-wrap:anywhere;min-width:0;margin:0}.modal-section{margin-top:20px}.modal-section h3{letter-spacing:.08em;text-transform:uppercase;color:#69737e;margin:0 0 8px;font-size:12px}.modal-description{overflow-wrap:anywhere;font-size:14px;line-height:1.55}.feature-table{border-collapse:collapse;width:100%;font-size:14px}.feature-table td{vertical-align:top;border-bottom:1px solid #eceef1;padding:7px 16px 7px 0}.feature-table tr:last-child td{border-bottom:none}.feature-table td:first-child{color:#5c6672;width:38%}.tag-list{flex-wrap:wrap;gap:6px;margin:0;list-style:none;display:flex}.category-tag{color:#3c4650;background:#eef1f5;border-radius:999px;padding:3px 10px;font-size:12px}.shop{color:#1c1e21;background:#f5f6f8;min-height:100vh;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.shop-header{background:#fff;border-bottom:1px solid #e3e5e8;padding:12px 20px}.shop-header-row{flex-wrap:wrap;align-items:center;gap:14px;max-width:1400px;margin:0 auto;display:flex}.shop-header-row h1{margin:0;font-size:18px}.shop-header-count{color:#5f6672;white-space:nowrap;font-size:13px}.shop-search{min-width:200px;max-width:420px;font:inherit;border:1px solid #d0d4d9;border-radius:8px;flex:1;padding:8px 12px}.shop-search:focus{outline-offset:-1px;outline:2px solid #1a56db}.btn-primary,.btn-ghost{font:inherit;cursor:pointer;border:none;border-radius:8px;padding:8px 14px;font-size:14px}.btn-primary{color:#fff;background:#1a56db}.btn-ghost{color:#1a56db;background:0 0;border:1px solid #c6d4f3}.btn-ghost:hover{background:#eef2fc}.shop-layout{align-items:flex-start;gap:16px;max-width:1400px;margin:0 auto;padding:16px 20px;display:flex}.shop-sidebar{background:#fff;border-radius:10px;flex-shrink:0;width:260px;max-height:calc(100vh - 32px);padding:16px;font-size:14px;position:sticky;top:16px;overflow-y:auto;box-shadow:0 1px 3px #00000014}.filter-section{border-bottom:1px solid #eceff2;padding:10px 0}.filter-section:last-child{border-bottom:none}.filter-section h3{text-transform:uppercase;letter-spacing:.05em;color:#5f6672;margin:0 0 8px;font-size:12px}.filter-option{cursor:pointer;align-items:center;gap:6px;padding:2px 0;display:flex}.feature-facet h4{margin:10px 0 4px;font-size:13px}.price-inputs{gap:8px;display:flex}.price-inputs input{width:100%;font:inherit;border:1px solid #d0d4d9;border-radius:6px;padding:6px 8px}.filter-search-input{box-sizing:border-box;width:100%;font:inherit;border:1px solid #d0d4d9;border-radius:6px;padding:6px 8px}.filter-search-input:focus{outline-offset:-1px;outline:2px solid #1a56db}.category-tree,.category-children{margin:0;padding:0;list-style:none}.category-children{border-left:1px solid #eceff2;margin-left:9px;padding-left:12px}.category-node{align-items:center;gap:2px;display:flex}.category-chevron{cursor:pointer;color:#5f6672;background:0 0;border:none;justify-content:center;align-items:center;width:20px;height:22px;transition:transform .15s;display:inline-flex}.category-chevron-open{transform:rotate(90deg)}.category-chevron-hidden{visibility:hidden}.category-label{cursor:pointer;text-align:left;font:inherit;color:inherit;background:0 0;border:none;border-radius:6px;flex:1;justify-content:space-between;align-items:baseline;gap:6px;padding:3px 6px;display:flex}.category-label:hover{background:#f0f2f5}.category-selected{color:#1a56db;background:#eef2fc;font-weight:600}.category-count{color:#98a0ab;font-size:12px}.category-selected .category-count{color:inherit}.product-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;display:grid}.grid-empty{text-align:center;color:#5f6672;background:#fff;border-radius:10px;margin:0;padding:40px 20px;box-shadow:0 1px 3px #00000014}.product-card{text-align:left;cursor:pointer;font:inherit;color:inherit;background:#fff;border:none;border-radius:10px;flex-direction:column;align-items:stretch;gap:8px;padding:12px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 1px 3px #00000014}.product-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.product-card:focus-visible{outline-offset:2px;outline:2px solid #1a56db}.product-card-media{aspect-ratio:1;background:#fafbfc;border-radius:6px;justify-content:center;align-items:center;display:flex;overflow:hidden}.product-card-image,.img-placeholder{width:100%;height:100%}.product-card-image{object-fit:contain}.img-placeholder{background:#eceff2;justify-content:center;align-items:center;display:flex}.img-placeholder svg{width:42px;height:42px}.badge{border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:11px;font-weight:600}.badge-active{color:#137333;background:#e6f4ea}.badge-inactive{color:#c5221f;background:#fce8e6}.product-card-name{margin:0;font-size:14px;line-height:1.35}.product-card-meta{flex-direction:column;gap:2px;margin:0;display:flex}.product-card-meta span{color:#5f6672;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.product-card-price{margin:auto 0 0;font-size:15px;font-weight:600}.shop-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.shop-file{color:#5f6672;font-size:13px}.shop-sort{align-items:center;gap:6px;font-size:14px;display:flex}.shop-sort select{font:inherit;cursor:pointer;border:1px solid #d0d4d9;border-radius:6px;padding:6px 8px}.pagination{justify-content:center;align-items:center;gap:12px;margin:16px 0;display:flex}.pagination button{font:inherit;cursor:pointer;background:#fff;border:1px solid #d0d4d9;border-radius:8px;padding:7px 14px}.pagination button:disabled{opacity:.45;cursor:default}:root{color:#1c1e21;background:#f5f6f8;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{margin:0}#root{min-height:100vh}.app-loading{color:#5f6672;place-items:center;min-height:100vh;font-size:18px;display:grid}.import-screen{outline-offset:-28px;text-align:center;border-radius:4px;outline:3px dashed #c3cddc;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;padding:24px;display:flex}.import-screen.drag-over{background:#eef3fe;outline-color:#1a56db}.import-screen h1{margin:0;font-size:32px}.import-screen p{color:#5f6672;max-width:480px;margin:0}.import-button{color:#fff;cursor:pointer;background:#1a56db;border:none;border-radius:10px;padding:14px 30px;font-size:17px}.import-button:hover{background:#1447b8}
