:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#17212b;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}.App,.product-page{animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) svg{width:100%;height:100%;object-fit:contain;transform-origin:center;fill:currentColor;pointer-events:none}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset, 4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset, 50%);right:auto;margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset, 4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset, 4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}:root{--bg: #ffffff;--text: #000000;--secondary-bg: #f5f5f5;--section-bg: #ffffff;--separator: #e1e1e1;--hint: #999999;--button: #2481cc;--button-text: #ffffff;--link: #2481cc}.product-page{width:100%;max-width:100vw;min-height:100vh;background:var(--bg);color:var(--text);box-sizing:border-box;margin:0;padding:0 0 140px;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.product-swiper{width:100%;max-width:100%;margin:0 0 24px;padding:0 16px 40px;aspect-ratio:4 / 3;min-height:240px;max-height:400px;background:var(--secondary-bg);border-radius:16px}.swiper{width:100%;max-width:100%}.swiper-wrapper{width:100%}.swiper-slide{width:100%;max-width:100%;display:flex;justify-content:center;align-items:center;flex-shrink:0}.swiper-slide-wrapper{position:relative;width:100%;max-width:100%;height:100%;display:flex;justify-content:center;align-items:center;margin-top:12px;padding:8px}.gallery-image{width:100%;max-width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center;display:block;opacity:0;transition:opacity .3s ease-in-out;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.gallery-image.loaded{opacity:1}.image-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--hint);font-size:14px;font-weight:500;pointer-events:none;animation:pulse 1.5s infinite;white-space:nowrap}.gallery-video{width:100%;height:100%;min-height:200px;object-fit:contain;object-position:center;display:block}.swiper-slide,.swiper-slide-wrapper,.gallery-video{position:relative;z-index:2;transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.gallery-video.loaded{opacity:1}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.swiper-pagination{bottom:8px!important}.swiper-pagination-bullet{width:8px;height:8px;background:#0000004d;opacity:1;transition:all .2s}.swiper-pagination-bullet-active{background:var(--button);width:20px;border-radius:4px}.swiper-button-prev,.swiper-button-next{color:var(--text)!important;--swiper-navigation-size: 24px;opacity:.4;transition:opacity .2s;background:#232d3b;width:24px;height:24px;border-radius:20%;margin:0 4px}.swiper-button-prev:after,.swiper-button-next:after{font-size:18px!important;font-weight:700}.swiper-button-prev:hover,.swiper-button-next:hover{opacity:1;background:#5584c1}.product-title{font-size:22px;font-weight:700;line-height:1.3;padding:0 16px 12px;margin:0;width:100%;max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.accordion-container{padding:0 16px;margin-bottom:16px;width:100%;max-width:100%}.accordion-item{width:100%;max-width:100%;background:#232d3b;border-radius:10px;margin-bottom:12px;overflow:hidden;border:1px solid var(--separator);box-shadow:0 2px 4px #00000005}.accordion-header{width:100%;padding:16px;background:transparent;border:none;font-size:17px;font-weight:600;color:var(--text);text-align:left;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .25s ease,color .25s ease}.accordion-header:active,.accordion-header.open{background:#5288c1}.accordion-icon{transition:transform .25s ease;font-size:14px;opacity:.6;display:flex;align-items:center;flex-shrink:0}.accordion-icon.open{transform:rotate(180deg)}.accordion-content{padding:0 16px 16px;font-size:15px;line-height:1.5;color:var(--text);width:100%;overflow-x:hidden;word-wrap:break-word}.accordion-text{margin:8px 0 0;color:var(--text);opacity:.9;word-wrap:break-word}.specs-table{width:100%;max-width:100%;border-collapse:collapse;font-size:14px;margin-top:8px;table-layout:fixed}.specs-table th,.specs-table td{padding:10px 0;border-bottom:1px solid var(--separator);text-align:left;vertical-align:top;word-wrap:break-word;overflow-wrap:break-word}.specs-table tr:last-child td{border-bottom:none}.specs-key{color:var(--hint);width:45%;padding-right:16px;font-weight:400;word-wrap:break-word}.specs-value{font-weight:500;color:var(--text);word-wrap:break-word}.specs-table thead tr{background:var(--secondary-bg)}.specs-table thead th{font-weight:600;padding:12px 0}.files-block,.firmware-list{padding:0 16px;margin:24px 0;width:100%;max-width:100%}.files-title{font-size:18px;font-weight:600;margin:0 0 12px;padding-left:4px;word-wrap:break-word}.file-link,.firmware-item{display:flex;align-items:center;gap:12px;padding:14px;background:var(--section-bg);border-radius:12px;margin-bottom:10px;text-decoration:none;color:var(--text);font-size:15px;border:1px solid var(--separator);transition:all .2s;width:100%;max-width:100%;box-sizing:border-box}.file-link{background:#232d3b}.firmware-item{justify-content:space-between}.file-link:active,.firmware-item:active{background:var(--secondary-bg);transform:scale(.99)}.file-icon{font-size:20px;flex-shrink:0}.file-name{flex:1;font-weight:500;min-width:0;word-wrap:break-word}.file-type{font-size:12px;color:var(--hint);background:var(--secondary-bg);padding:4px 8px;border-radius:6px;text-transform:uppercase;font-weight:600;flex-shrink:0}.firmware-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.firmware-name{font-weight:500;word-wrap:break-word}.firmware-version{font-size:13px;color:var(--button);font-weight:500}.firmware-date{font-size:12px;color:var(--hint)}.firmware-download{font-size:20px;opacity:.7;padding:4px 8px;flex-shrink:0}.price-block{position:fixed;bottom:0;left:0;right:0;width:100%;max-width:100vw;background:var(--bg);padding:12px 16px 20px;border-top:1px solid var(--separator);box-shadow:0 -4px 20px #00000014;z-index:100;padding-bottom:max(20px,env(safe-area-inset-bottom))}.price-box{width:100%;background:var(--section-bg);border-radius:14px;border:1px solid var(--separator);padding:14px 16px;margin-bottom:12px;text-align:center;font-size:24px;font-weight:800;color:var(--text);letter-spacing:-.5px;box-sizing:border-box;pointer-events:none;-webkit-user-select:text;user-select:text}.price-value{font-size:24px;font-weight:800;color:var(--text);text-align:center;margin:0;letter-spacing:-.5px;word-wrap:break-word}.price-buttons{display:flex;gap:12px;width:100%}.bttn{flex:1;padding:14px 12px;border-radius:14px;font-size:15px;font-weight:600;text-align:center;text-decoration:none;transition:all .15s ease;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;word-wrap:break-word}.bttn:active{transform:scale(.98);filter:brightness(.95)}.btn-prim{background:#5584c1;color:var(--button-text);box-shadow:0 4px 12px #5584c1}.btn-sec{background:var(--secondary-bg);color:var(--text);border:1px solid var(--separator)}.product-footer{text-align:center;padding:24px 16px 32px;color:var(--hint);font-size:13px;opacity:.8;line-height:1.4;width:100%;max-width:100%}.product-page.loading,.product-page.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:20px;width:100%}.spinner{width:32px;height:32px;border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:var(--button);animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.no-images{text-align:center;padding:40px 20px;color:var(--hint);font-size:14px;background:var(--secondary-bg);border-radius:12px;margin:0 16px 24px;width:auto;word-wrap:break-word}@media(max-width:360px){.product-swiper{margin:0 12px 20px;min-height:200px}.product-title{font-size:20px;padding:0 12px 12px}.accordion-container,.files-block,.firmware-list{padding:0 12px}.price-block{padding:12px 12px 20px}.price-value{font-size:22px}.btn{font-size:14px;padding:12px 8px}.specs-key{width:40%}}@media(max-width:320px){.product-swiper{margin:0 8px 16px;aspect-ratio:16 / 10}.product-title{font-size:18px}.accordion-header{font-size:16px;padding:14px}}html,body,.product-page{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar,.product-page::-webkit-scrollbar{display:none;width:0;background:transparent}.no-scrollbar{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}*,*:before,*:after{box-sizing:border-box}:root{--bg: #ffffff;--text: #000000;--secondary-bg: #f5f5f5;--section-bg: #ffffff;--separator: #e1e1e1;--hint: #999999;--button: #2481cc;--button-text: #ffffff;--link: #2481cc;--success: #28a745;--danger: #dc3545;--warning: #ffc107;--info: #17a2b8}html,body{margin:0;padding:0;width:100%;overflow-x:hidden;max-width:100vw}.admin-page{padding:1.5rem;max-width:900px;margin:0 auto;background:#17212b;min-height:100vh}.admin-header{margin-bottom:2rem;text-align:center}.admin-header h1{margin:0 0 .5rem;font-size:1.8rem;color:var(--text)}.admin-type{margin:0;color:var(--hint);font-size:.95rem}.admin-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:2.5rem}.admin-btn{padding:1rem 1.2rem;font-size:1.05rem;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .18s ease;color:#fff;min-height:68px}.admin-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001f}.admin-btn:active{transform:translateY(0)}.admin-btn--add{background:var(--success)}.admin-btn--delete{background:var(--danger)}.admin-btn--category-create{background:#99e047}.admin-btn--category-delete{background:#e83e8c}.admin-btn--media{background:#6f42c1}.admin-btn--media-delete{background:#c14a6f}.admin-btn--file{background:#fd7e14}.admin-btn--file-delete{background:#e83e8c}.admin-btn--firmware{background:#20c997}.admin-btn--firmware-delete{background:#6610f2}.admin-footer{text-align:center;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--separator)}.btn-logout{padding:.8rem 2rem;font-size:1.1rem;background:#5584c1;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.btn-logout:hover{background:#5584c1}@media(max-width:600px){.admin-actions-grid{grid-template-columns:1fr}.admin-page{padding:1rem}}.loading{display:flex;justify-content:center;align-items:center;min-height:60vh;font-size:1.2rem;color:var(--hint)}.add-product-page{padding:0 8px;overflow-x:hidden;max-width:100vw;width:100%;margin:0 auto;box-sizing:border-box}.product-form{display:grid;gap:1.4rem;max-width:100%;width:100%;overflow-x:hidden;padding:0 8px;box-sizing:border-box}input,textarea,select{padding:.7rem 1rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;box-sizing:border-box;max-width:100%;width:100%;min-width:0;background:#232d3b;cursor:pointer}select:focus{outline:none;border-color:#2481cc;box-shadow:0 0 0 3px #2481cc1a}.dynamic-row{display:flex;gap:.8rem;align-items:center}.dynamic-row input{flex:1}.btn-add,.btn-remove{padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.95rem;white-space:nowrap}.btn-add{background:#28a745;color:#fff;border:none}.btn-add:hover{background:#218838}.btn-remove{background:#dc3545;color:#fff;border:none}.btn-remove:hover{background:#c82333}.btn-submit{padding:1rem 2rem;background:#2481cc;color:#fff;border:none;border-radius:8px;font-size:1.1rem;cursor:pointer;margin-top:1.5rem}fieldset{border:1px solid #e1e1e1;border-radius:8px;padding:1.2rem}legend{font-weight:600;padding:0 .8rem}.delete-product-page{padding:0 8px;max-width:100vw;width:100%;overflow-x:hidden;margin:0 auto;box-sizing:border-box}.product-item{padding:1rem;background:#232d3b;border-radius:8px;border:1px solid #dee2e6;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .15s}.product-item:hover{background:#232d3b}.product-id{font-size:.85rem;color:#6c757d;font-weight:500}.product-title{font-weight:500}.media-add-page{padding:0 8px;max-width:100vw;width:100%;margin:0 auto;box-sizing:border-box;overflow-x:hidden}.alert-success{padding:.8rem;background:#d4edda;color:#155724;border-radius:6px;margin-bottom:1rem}.upload-container{max-width:500px;margin:2rem auto;text-align:center}.file-label{cursor:pointer;display:block}.file-drop-area{border:2px dashed #4a5568;border-radius:12px;padding:2.5rem 1.5rem;background:#1e2836;transition:border-color .2s}.file-drop-area:hover{border-color:#63b3ed}.file-icon{font-size:3.5rem;margin-bottom:1rem;color:#a0aec0}.file-drop-area p{margin:.5rem 0;font-size:1.1rem}.file-drop-area small{color:#718096}.selected-file-info{margin:1.5rem 0;padding:1rem;background:#283240;border-radius:8px;text-align:left}.selected-file-info div{margin:.4rem 0}.btn-upload{padding:.9rem 2rem;background:#3182ce;color:#fff;border:none;border-radius:8px;font-size:1.1rem;cursor:pointer;min-width:220px;margin-top:1.5rem}.btn-upload:hover:not(:disabled){background:#2b6cb0}.btn-upload:disabled{opacity:.6;cursor:not-allowed}.progress-container{margin-top:1.2rem;background:#283240;border-radius:8px;height:24px;position:relative;overflow:hidden;border:1px solid #4a5568}.progress-bar{height:100%;background:linear-gradient(90deg,#3182ce,#63b3ed);transition:width .2s ease}.progress-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:500;font-size:.95rem;text-shadow:0 0 4px rgba(0,0,0,.7)}.file-drop-area.disabled{opacity:.6;cursor:not-allowed;border-color:#4a5568}.btn-upload:disabled{opacity:.65;cursor:not-allowed}.media-delete-page{padding:0,8;max-width:100vw;width:100%;margin:0 auto;overflow-x:hidden;box-sizing:border-box}.loading,.empty{text-align:center;padding:2rem 0;color:#aaa}.product-list{display:flex;flex-direction:column;gap:.75rem}.product-item{padding:1rem;background:#232d3b;border-radius:8px;border:1px solid #4a5568;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .2s}.product-info{display:flex;flex-direction:column;gap:.25rem}.select-hint{color:#63b3ed;font-weight:500;font-size:.95rem}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;margin-top:1rem}.media-item{background:#1e2836;border-radius:10px;overflow:hidden;border:1px solid #4a5568;transition:transform .15s,box-shadow .15s}.media-item:hover{transform:translateY(-4px);box-shadow:0 10px 20px #0000004d}.media-preview{height:180px;background:#1a202c;display:flex;align-items:center;justify-content:center;overflow:hidden}.media-preview img,.media-preview video{width:100%;height:100%;object-fit:contain}.file-placeholder{text-align:center;color:#aaa;padding:1rem}.media-info{padding:.75rem;display:flex;flex-direction:column;gap:.5rem;align-items:center}.media-filename{font-size:.9rem;text-align:center;word-break:break-all;color:#e2e8f0}.btn-delete-media{padding:.5rem 1rem;background:#e53e3e;color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;width:100%}.btn-delete-media:hover:not(:disabled){background:#c53030}.btn-delete-media:disabled{opacity:.6;cursor:not-allowed}.files-add-page{padding:0 8px;max-width:100vw;width:100%;margin:0 auto;overflow-x:hidden;box-sizing:border-box}h2{margin:0;font-size:1.6rem;color:#e2e8f0}.upload-box{max-width:600px;margin:0 auto;background:#1f2937;padding:2rem;border-radius:12px;border:1px solid #374151}.drop-zone{border:2px dashed #4b5563;border-radius:12px;padding:3rem 1.5rem;text-align:center;cursor:pointer;transition:all .25s}.icon{font-size:3.5rem;margin-bottom:1rem;color:#9ca3af}.file-preview{margin:1.5rem 0;padding:1rem;background:#111827;border-radius:8px;text-align:center;color:#d1d5db}.btn-primary{width:100%;padding:.9rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:1.05rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#2563eb}.progress-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);transition:width .25s ease}.progress-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem;text-shadow:0 1px 3px rgba(0,0,0,.7)}.files-delete-page,.firmwares-delete-page{padding:0 8px;max-width:100vw;width:100%;overflow-x:hidden;box-sizing:border-box;margin:0 auto}.btn-back{padding:.5rem 1rem;background:#5584c1;color:#fff;border:none;border-radius:6px;cursor:pointer}.firmware-add-page{padding:0 8px;max-width:100vw;margin:0 auto;width:100%;overflow-x:hidden;box-sizing:border-box}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}h1{margin:0;font-size:1.8rem;color:#e2e8f0}.btn-back{padding:.6rem 1.2rem;background:#6b7280;color:#fff;border:none;border-radius:6px;font-size:.95rem;cursor:pointer;transition:background .2s}.btn-back:hover{background:#4b5563}.alert-error{padding:1rem;background:#7f1d1d;color:#fecaca;border-radius:8px;margin-bottom:1.5rem}.alert-success{padding:1rem;background:#14532d;color:#bbf7d0;border-radius:8px;margin-bottom:1.5rem}.loading,.empty{text-align:center;padding:3rem 1rem;color:#9ca3af;font-size:1.1rem}.product-list{display:flex;flex-direction:column;gap:.9rem}.product-item{padding:1.2rem;background:#1f2937;border:1px solid #374151;border-radius:10px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s}.product-item:hover{background:#374151;transform:translateY(-2px)}.product-info{display:flex;flex-direction:column;gap:.4rem}.product-id{font-size:.9rem;color:#9ca3af}.product-title{font-weight:500;color:#e5e7eb}.select-hint{color:#60a5fa;font-weight:500}.product-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.firmware-form{max-width:620px;margin:0 auto;background:#1f2937;padding:2rem;border-radius:12px;border:1px solid #374151;display:flex;flex-direction:column;gap:1.6rem}.form-row{display:flex;flex-direction:column;gap:.6rem}.form-row label{font-weight:500;color:#e2e8f0;font-size:1.05rem}.form-row input{padding:.8rem 1rem;background:#111827;border:1px solid #4b5563;border-radius:8px;color:#fff;font-size:1rem}.form-row input:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.form-row input:disabled{opacity:.65;cursor:not-allowed}.auto-date-hint{font-size:.85rem;color:#9ca3af;margin-top:.4rem}.file-row .file-label{cursor:pointer}.drop-zone{border:2px dashed #4b5563;border-radius:12px;padding:2.5rem 1.5rem;text-align:center;transition:all .25s}.drop-zone:hover{border-color:#60a5fa;background:#111827}.drop-zone.uploading{opacity:.6;cursor:not-allowed}.file-preview{margin-top:1rem;padding:1rem;background:#111827;border-radius:8px;text-align:center;color:#d1d5db}.btn-primary{margin-top:1rem;width:100%;padding:.95rem;background:#10b981;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#059669}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.progress-bar-container{margin-top:1.5rem;height:28px;background:#111827;border-radius:8px;overflow:hidden;position:relative;border:1px solid #374151}.files-delete-page,.firmwares-delete-page{padding:0 8px;max-width:100vw;width:100%;overflow-x:hidden;margin:0 auto;box-sizing:border-box}.header,.product-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}h1,h2{margin:0;font-size:1.5rem}.btn-back{padding:.5rem 1rem;background:#6c757d;color:#fff;border:none;border-radius:6px;cursor:pointer}.loading,.empty{text-align:center;padding:2rem;color:#aaa}.product-list{display:flex;flex-direction:column;gap:.8rem}.product-item{padding:1rem;background:#232d3b;border-radius:8px;border:1px solid #4a5568;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.product-item:hover{background:#2d3745}.product-info{display:flex;flex-direction:column;gap:.3rem}.product-id{font-size:.85rem;color:#a0aec0}.select-hint{color:#63b3ed;font-weight:500}.files-list,.firmwares-list{display:flex;flex-direction:column;gap:1rem}.file-item,.firmware-item{padding:1rem;background:#1e2836;border-radius:8px;border:1px solid #4a5568;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.file-info,.firmware-info{display:flex;flex-direction:column;gap:.4rem;flex:1}.file-name,.firmware-name{font-weight:500;word-break:break-all}.file-type,.firmware-version,.firmware-date,.firmware-type{font-size:.9rem;color:#a0aec0}.file-link{color:#63b3ed;text-decoration:underline;font-size:.9rem}.btn-delete{padding:.6rem 1.2rem;background:#e53e3e;color:#fff;border:none;border-radius:6px;cursor:pointer;min-width:110px;font-weight:500}.btn-delete:hover:not(:disabled){background:#c53030}.btn-delete:disabled{opacity:.6;cursor:not-allowed}.add-category-page{padding:0 8px;max-width:100vw;width:100%;margin:0 auto;box-sizing:border-box}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.btn-back{padding:.6rem 1.2rem;background:#6c757d;color:#fff;border:none;border-radius:6px;cursor:pointer}.btn-back:hover{background:#5a6268}.alert{padding:1rem;margin-bottom:1.5rem;border-radius:6px}.alert-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.category-form{display:grid;gap:1.4rem;max-width:100%;width:100%;overflow-x:hidden;padding:0 8px;box-sizing:border-box}label{display:flex;flex-direction:column;gap:.4rem;font-weight:500}input,textarea{padding:.7rem 1rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;box-sizing:border-box;max-width:100%;width:100%;min-width:0;background:#232d3b}textarea{resize:vertical}.required{color:#dc3545}.form-actions{margin-top:1.5rem}.btn-submit{padding:1rem 2rem;background:#2481cc;color:#fff;border:none;border-radius:8px;font-size:1.1rem;cursor:pointer}.btn-submit:hover:not(:disabled){background:#1e6ab3}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.delete-category-page{padding:0 8px;max-width:100vw;width:100%;overflow-x:hidden;box-sizing:border-box;margin:0 auto}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}h1{margin:0;font-size:1.5rem}.btn-back{padding:.5rem 1rem;background:#5584c1;color:#fff;border:none;border-radius:6px;font-size:.95rem;cursor:pointer}.btn-back:hover{background:#5584c1}.alert-error{padding:.8rem;background:#f8d7da;color:#721c24;border-radius:6px;margin-bottom:1rem}.loading,.empty{text-align:center;padding:2rem 0;color:#666}.category-list{display:flex;flex-direction:column;gap:.75rem}.category-item{padding:1rem;background:#232d3b;border-radius:8px;border:1px solid #dee2e6;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .15s}.category-item:hover{background:#2d3745}.category-info{display:flex;flex-direction:column;gap:.25rem}.category-id{font-size:.85rem;color:#6c757d;font-weight:500}.category-name{font-weight:500}.product-count{font-size:.85rem;color:#28a745}.warning-text{color:#ffc107;font-size:.85rem}.delete-hint{color:#dc3545;font-size:.9rem;font-weight:500}.deleting{color:#6c757d;font-style:italic}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem;box-sizing:border-box}.modal{background:#232d3b;border-radius:12px;padding:1.5rem;width:100%;max-width:360px;box-shadow:0 10px 25px #00000040}.modal h3{margin:0 0 1rem;text-align:center}.modal p{margin:0 0 1.5rem;text-align:center;word-break:break-word}.modal-buttons{display:flex;gap:1rem;justify-content:center}.btn-yes,.btn-no{padding:.7rem 1.5rem;border:none;border-radius:8px;font-size:1rem;cursor:pointer;min-width:100px}.btn-yes{background:#dc3545;color:#fff}.btn-yes:hover{background:#c82333}.btn-no{background:#6c757d;color:#fff}.btn-no:hover{background:#5a6268}.btn-yes:disabled,.btn-no:disabled{opacity:.6;cursor:not-allowed}:root{--spacing-xs: 8px;--spacing-sm: 10px;--spacing-md: 14px;--spacing-lg: 18px;--font-size-base: 14px;--font-size-sm: 13px;--font-size-title: 16px;--font-size-h1: 19px;--border-radius: 12px;--border-radius-sm: 10px}:root,.app-container.browser{--bg: rgb(23, 33, 43);--text: #000000;--hint: #8e8e93;--link: #3390ec;--button: #2481cc;--button-text: #ffffff;--secondary-bg: rgb(23, 33, 43);--section-bg: #f5f5f5;--separator: rgba(60, 60, 67, .18);--card-bg: #232d3b}@media(prefers-color-scheme:dark){:root:not(.app-container.telegram):not(.app-container.vk),.app-container.browser{--bg: rgb(23, 33, 43);--text: #ffffff;--hint: #aaaaaa;--link: #70aaff;--button: #3a8cff;--button-text: #ffffff;--secondary-bg: rgb(23, 33, 43);--section-bg: #1c1c1e;--separator: rgba(255, 255, 255, .12);--card-bg: #232d3b}}.app-container.telegram{--bg: var(--tg-theme-bg-color, rgb(23, 33, 43));--text: var(--tg-theme-text-color, #ffffff);--hint: var(--tg-theme-hint-color, #8e8e93);--link: var(--tg-theme-link-color, #3390ec);--button: var(--tg-theme-button-color, #2481cc);--button-text: var(--tg-theme-button-text-color, #ffffff);--secondary-bg: var(--tg-theme-secondary-bg-color, #f0f0f5);--section-bg: var(--tg-theme-section-bg-color, #f5f5f5);--separator: var(--tg-theme-section-separator-color, rgba(60,60,67,.18));--card-bg: var(--tg-theme-bg-color, #ffffff)}.app-container.vk{--bg: #ffffff;--text: #000000;--hint: #818c99;--link: #0077ff;--button: #0077ff;--button-text: #ffffff;--secondary-bg: #f5f6f8;--section-bg: #fafbfc;--separator: rgba(0, 0, 0, .08);--card-bg: #ffffff}.app-container.vk[scheme=client_dark],.app-container.vk.dark{--bg: #19191a;--text: #e1e1e1;--hint: #818c99;--link: #71aaeb;--button: #0077ff;--button-text: #ffffff;--secondary-bg: #222224;--section-bg: #19191a;--separator: rgba(255, 255, 255, .08);--card-bg: #222224}body,#root,.App,.app-container{background:#17212b;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:var(--font-size-base);line-height:1.4;margin:0 auto;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;max-width:100vw;width:100%;overflow-x:hidden;display:block}h1,h2,h3,h4{margin:0 0 0 12px;font-weight:600;color:var(--text)}.search-container{padding:var(--spacing-md) var(--spacing-md) var(--spacing-sm);background:#17212b;position:fixed;width:100%;top:0;z-index:10;border-bottom:1px solid var(--separator);overflow-x:hidden;box-sizing:border-box;margin:0 auto;left:0}.search-input{width:100%;padding:10px 12px 10px 36px;font-size:var(--font-size-base);background:#232d3b;color:var(--text);border:none;border-radius:var(--border-radius);outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238e8e93' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px center;background-size:16px;box-sizing:border-box}.search-input::placeholder{color:var(--hint)}.search-input:focus{background-color:var(--section-bg);box-shadow:0 0 0 2px var(--link)}.logo-container{padding:0,8px;text-align:center;background:#17212b}.company-logo{max-width:340px;max-height:100px;width:auto;height:auto;display:block;margin:0 auto;object-fit:contain}.products-grid{padding-top:var(--spacing-sm);display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:var(--spacing-sm);padding:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) + 80px);background:#17212b}.product-card{background:#232d3b;border-radius:var(--border-radius);overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 2px 4px #0000000f;transition:transform .15s ease,box-shadow .15s ease;display:flex;flex-direction:column}.description,.price,.empty{margin-left:12px}.product-title{font-size:19px}.search-spacer{height:10vh;visibility:hidden}.admin-button{position:fixed;bottom:5px;left:50%;transform:translate(-50%);background:var(--button);color:var(--button-text);border:none;padding:12px 24px;border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:600;cursor:pointer;box-shadow:0 4px 12px #0003;z-index:100;transition:transform .2s ease,box-shadow .2s ease}.admin-button:hover{transform:translate(-50%) scale(1.05);box-shadow:0 6px 16px #0000004d}.admin-button:active{transform:translate(-50%) scale(.98)}.modal-overlay{position:fixed;inset:0;background:#17212b;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#17212b;padding:24px;border-radius:var(--border-radius);width:90%;max-width:320px;box-shadow:0 8px 32px #0000004d;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content h2{margin:0 0 8px;font-size:var(--font-size-h1);color:var(--text);text-align:center}.modal-hint{margin:0 0 16px;font-size:var(--font-size-sm);color:var(--hint);text-align:center}.password-input{width:100%;padding:12px;font-size:var(--font-size-base);background:var(--secondary-bg);color:var(--text);border:1px solid var(--separator);border-radius:var(--border-radius);outline:none;margin-bottom:12px;box-sizing:border-box}.password-input:focus{border-color:var(--link);box-shadow:0 0 0 2px #3390ec33}.error-message{color:#ff3b30;font-size:var(--font-size-sm);margin:0 0 12px;text-align:center}.modal-buttons{display:flex;gap:12px;justify-content:flex-end}.btn-cancel,.btn-confirm{padding:10px 20px;border-radius:var(--border-radius-sm);font-size:var(--font-size-base);font-weight:500;cursor:pointer;border:none;transition:opacity .2s ease}.btn-cancel{background:var(--secondary-bg);color:var(--text)}.btn-confirm{background:var(--button);color:var(--button-text)}.btn-cancel:hover,.btn-confirm:hover{opacity:.8}.btn-confirm:disabled{opacity:.5;cursor:not-allowed}.catalog-page{padding-bottom:80px}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--hint);font-size:var(--font-size-base)}
