@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#4a90d9;--color-primary-hover:#3a7bc8;--color-primary-light:#ebf2fa;--color-background:#f5f5f5;--color-surface:#fff;--color-border:#e0e0e0;--color-border-dashed:#ccc;--color-backdrop:#00000080;--color-text:#333;--color-text-secondary:#666;--color-text-muted:#999;--color-error:#e53e3e;--color-success:#38a169;--color-white:#fff;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-sm:12px;--font-size-base:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:24px;--font-size-xxl:28px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:700;--border-radius:8px;--border-radius-lg:12px;--shadow-card:0 1px 3px #00000014;--shadow-card-hover:0 2px 8px #0000001f;--shadow-modal:0 4px 24px #00000026;--shadow-dropdown:0 2px 12px #0000001f}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}.header{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:100;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.header-left{align-items:center;gap:var(--spacing-sm);display:flex;position:relative}.header-icon-btn{border-radius:var(--border-radius);width:36px;height:36px;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s;display:flex}.header-icon-btn:hover{background:var(--color-background)}.header-hamburger-btn{display:none}.header-logo{align-items:center;gap:var(--spacing-sm);display:flex}.header-logo-img{width:auto;height:32px;display:block}.header-right{align-items:center;gap:var(--spacing-sm);display:flex;position:relative}.header-user-id{font-size:var(--font-size-base);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:220px;padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;border-radius:var(--border-radius);background:0 0;border:none;overflow:hidden}.header-user-id:hover{color:var(--color-text)}.header-avatar{background:var(--color-background);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.header-avatar:hover{background:var(--color-border)}.header-avatar-dropdown{left:auto;right:0}.header-dropdown{top:calc(100% + var(--spacing-sm));background:var(--color-surface);border-radius:var(--border-radius);box-shadow:var(--shadow-dropdown);min-width:200px;padding:var(--spacing-xs) 0;z-index:200;position:absolute;left:0}.header-dropdown-item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);color:var(--color-text);text-align:left;background:0 0;border:none;transition:background .15s;display:flex}.header-dropdown-item:hover{background:var(--color-background)}.header-dropdown-item.active{background:var(--color-primary-light);border-left:3px solid var(--color-primary);color:var(--color-primary);padding-left:calc(var(--spacing-md) - 3px)}.header-dropdown-icon{align-items:center;display:flex}@media (width<=768px){.header{padding:var(--spacing-sm) var(--spacing-md)}.header-grid-btn{display:none}.header-hamburger-btn{display:flex}.header-logo-img{height:24px}.header-user-id{max-width:120px;font-size:var(--font-size-sm)}}.modal-backdrop{background:var(--color-backdrop);z-index:1000;padding:var(--spacing-md);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-modal);padding:var(--spacing-xl) var(--spacing-xxl);text-align:center;width:100%;max-width:680px}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);margin-bottom:var(--spacing-lg)}.modal-options{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex}.modal-option{align-items:center;gap:var(--spacing-sm);min-width:0;padding:var(--spacing-lg) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);cursor:pointer;overflow-wrap:anywhere;flex-direction:column;flex:1 1 0;transition:border-color .15s,box-shadow .15s;display:flex}.modal-option:hover{border-color:var(--color-primary)}.modal-option.selected{border-color:var(--color-primary);box-shadow:var(--shadow-card-hover)}.modal-option-icon{color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.modal-option.selected .modal-option-icon{color:var(--color-primary)}.modal-option-title{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text)}.modal-option-desc{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.4}.modal-continue-btn{background:var(--color-primary);color:var(--color-white);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border:none;transition:background .15s}.modal-continue-btn:hover{background:var(--color-primary-hover)}@media (width<=768px){.modal-card{padding:var(--spacing-lg) var(--spacing-md)}.modal-options{flex-direction:column}}.image-upload{gap:var(--spacing-md);flex-direction:column;display:flex}.upload-section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text)}.upload-dropzone{border:2px dashed var(--color-border-dashed);border-radius:var(--border-radius);padding:var(--spacing-md) var(--spacing-md);cursor:pointer;flex-direction:column;align-items:center;gap:2px;transition:border-color .15s,background .15s;display:flex}.upload-dropzone:hover,.upload-dropzone.drag-over{border-color:var(--color-primary);background:var(--color-primary-light)}.upload-icon{color:var(--color-text-muted)}.upload-text-primary{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text)}.upload-text-secondary{font-size:var(--font-size-base);color:var(--color-text-muted)}.upload-thumbnails{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.thumbnail{border:1px solid var(--color-border);border-radius:6px;width:64px;height:64px;position:relative;overflow:hidden}.thumbnail img{object-fit:cover;width:100%;height:100%}.thumbnail-remove{width:20px;height:20px;color:var(--color-white);cursor:pointer;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:2px;right:2px}.thumbnail-remove:hover{background:#000000b3}.upload-reference{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;justify-content:space-between;align-items:center;transition:border-color .15s;display:flex}.upload-reference:hover{border-color:var(--color-primary)}.reference-text{font-size:var(--font-size-base);color:var(--color-text-muted)}.upload-reference svg{color:var(--color-text-muted)}.reference-preview{align-items:center;gap:var(--spacing-sm);width:100%;display:flex}.reference-thumb{object-fit:cover;border-radius:4px;width:36px;height:36px}.reference-name{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.reference-remove{flex-shrink:0;position:static}.product-info{gap:var(--spacing-md);flex-direction:column;display:flex}.product-info-field{gap:var(--spacing-xs);flex-direction:column;display:flex}.product-info-label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text)}.product-info-input,.product-info-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-surface);outline:none;transition:border-color .15s}.product-info-input:focus,.product-info-textarea:focus{border-color:var(--color-primary)}.product-info-textarea{resize:vertical}.card-type-selector{gap:var(--spacing-xs);flex-direction:column;display:flex;position:relative}.card-type-label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text)}.card-type-input{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);cursor:pointer;min-height:38px;transition:border-color .15s;display:flex}.card-type-input:hover{border-color:var(--color-primary)}.card-type-tags{flex-wrap:wrap;flex:1;gap:4px;min-width:0;display:flex}.card-type-placeholder{color:var(--color-text-muted);font-size:var(--font-size-base)}.card-type-tag{background:var(--color-primary-light);color:var(--color-primary);font-size:var(--font-size-sm);white-space:nowrap;border-radius:4px;align-items:center;gap:2px;padding:2px 6px;display:inline-flex}.card-type-tag-remove{color:var(--color-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;margin-left:2px;padding:0;display:flex}.card-type-tag-remove:hover{color:var(--color-error)}.card-type-chevron{color:var(--color-text-muted);flex-shrink:0}.card-type-dropdown{margin-top:var(--spacing-xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-dropdown);z-index:50;max-height:220px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.card-type-dropdown-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);color:var(--color-text);cursor:pointer;transition:background .1s;display:flex}.card-type-dropdown-item:hover{background:var(--color-background)}.card-type-dropdown-item.selected{background:var(--color-primary-light)}.card-type-dropdown-item input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;width:16px;height:16px}.progress-bar{margin-bottom:var(--spacing-lg);justify-content:center;align-items:flex-start;display:flex}.progress-step-wrapper{flex:1;align-items:flex-start;display:flex}.progress-step-wrapper:first-child{flex:0}.progress-line{background:var(--color-border);flex:1;min-width:40px;height:3px;margin-top:14px}.progress-line.completed{background:var(--color-success)}.progress-step{align-items:center;gap:var(--spacing-xs);flex-direction:column;display:flex}.progress-circle{border:2px solid var(--color-border);background:var(--color-surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.progress-step.completed .progress-circle{background:var(--color-success);border-color:var(--color-success);color:var(--color-white)}.progress-step.active .progress-circle{border-color:var(--color-primary)}.progress-label{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;max-width:90px}.progress-step.completed .progress-label{color:var(--color-success)}.progress-step.active .progress-label{color:var(--color-primary)}.progress-spinner{border:2px solid var(--color-primary-light);border-top-color:var(--color-primary);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.card-results-grid{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);display:grid}.card-item{background:var(--color-surface);border-radius:var(--border-radius);border:1px solid var(--color-border);flex-direction:column;display:flex;position:relative;overflow:hidden}.card-loading-overlay{z-index:10;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-primary);background:#fffc;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.card-item-header{padding:var(--spacing-sm) var(--spacing-md);justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.card-item-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.card-version-select{font-size:var(--font-size-sm);padding:2px var(--spacing-xs);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;border-radius:4px;flex-shrink:0}.card-image-wrapper{cursor:pointer;position:relative}.card-item-image{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.card-image-hover{opacity:0;color:var(--color-white);background:#0006;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.card-image-wrapper:hover .card-image-hover{opacity:1}.lightbox-backdrop{z-index:2000;padding:var(--spacing-lg);background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-toolbar{top:var(--spacing-md);right:var(--spacing-md);gap:var(--spacing-sm);display:flex;position:absolute}.lightbox-btn{width:40px;height:40px;color:var(--color-white);cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:background .15s;display:flex}.lightbox-btn:hover{background:#fff6}.lightbox-image{object-fit:contain;border-radius:var(--border-radius);max-width:90vw;max-height:90vh}.edit-modal-backdrop{background:var(--color-backdrop);z-index:1000;padding:var(--spacing-md);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.edit-modal{background:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-modal);padding:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;width:100%;max-width:440px;display:flex}.edit-modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text);margin:0}.edit-modal-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);color:var(--color-text);resize:vertical;outline:none;font-family:inherit;transition:border-color .15s}.edit-modal-input:focus{border-color:var(--color-primary)}.edit-modal-actions{justify-content:flex-end;gap:var(--spacing-sm);display:flex}.edit-modal-cancel{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-base);transition:border-color .15s}.edit-modal-cancel:hover{border-color:var(--color-text-muted)}.edit-modal-submit{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius);background:var(--color-primary);color:var(--color-white);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);border:none;transition:background .15s}.edit-modal-submit:hover:not(:disabled){background:var(--color-primary-hover)}.edit-modal-submit:disabled{opacity:.5;cursor:not-allowed}.card-item-actions{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-xs);flex-direction:column;display:flex}.card-action-btn{justify-content:center;align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:border-color .15s,color .15s;display:flex}.card-action-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.card-action-btn:disabled{opacity:.5;cursor:not-allowed}.card-download-link{width:calc(100% - 2 * var(--spacing-md));text-align:center;padding:var(--spacing-xs) var(--spacing-sm);margin:0 var(--spacing-md) var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--border-radius);cursor:pointer;background:0 0;font-family:inherit;transition:background .15s;display:block}.card-download-link:hover{background:var(--color-primary-light)}@media (width<=1024px){.card-results-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.card-results-grid{grid-template-columns:1fr}}.seo-field{gap:var(--spacing-xs);flex-direction:column;display:flex}.seo-label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text)}.seo-required{color:var(--color-error)}.seo-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.seo-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-surface);outline:none;transition:border-color .15s}.seo-input:focus{border-color:var(--color-primary)}.seo-field-error{font-size:var(--font-size-sm);color:var(--color-error)}.seo-url-row{align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);display:flex}.seo-url-index{font-size:var(--font-size-base);color:var(--color-text-secondary);padding-top:var(--spacing-sm)}.seo-url-input-wrap{gap:var(--spacing-xs);flex-direction:column;flex:1;min-width:0;display:flex}.seo-result-header{justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap;display:flex}.seo-result-actions{gap:var(--spacing-sm);display:flex}.seo-action-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-surface);color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background .15s,opacity .15s}.seo-action-btn:hover:not(:disabled){background:var(--color-primary-light)}.seo-action-btn:disabled{opacity:.4;cursor:not-allowed}.seo-result-textarea{width:100%;min-height:320px;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-surface);resize:vertical;line-height:1.6;font-family:var(--font-family,inherit);outline:none;transition:border-color .15s}.seo-result-textarea:focus{border-color:var(--color-primary)}.seo-char-count{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:right}@media (width<=768px){.layout-two-col .layout-right.seo-result-col{display:block}.seo-result-actions{width:100%}.seo-action-btn{flex:1}}.video-lightbox-backdrop{z-index:1000;background:#000000eb;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.video-lightbox-toolbar{top:var(--spacing-md);right:var(--spacing-md);gap:var(--spacing-sm);z-index:2;display:flex;position:absolute}.video-lightbox-btn{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s;display:flex}.video-lightbox-btn:hover{background:#ffffff38}.video-lightbox-stage{justify-content:center;align-items:center;max-width:90vw;max-height:80vh;display:flex;position:relative}.video-lightbox-video{border-radius:var(--border-radius);cursor:pointer;background:#000;max-width:90vw;max-height:80vh;display:block}.video-lightbox-play-overlay{color:#fffffff2;cursor:pointer;background:#00000080;border:none;border-radius:999px;justify-content:center;align-items:center;width:96px;height:96px;transition:background .15s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-lightbox-play-overlay:hover{background:#000000b3}.video-lightbox-timeline{bottom:var(--spacing-lg);align-items:center;gap:var(--spacing-md);color:#ffffffe6;width:min(90vw,760px);font-size:var(--font-size-sm);-webkit-user-select:none;user-select:none;display:flex;position:absolute;left:50%;transform:translate(-50%)}.video-lightbox-track{cursor:pointer;background:#fff3;border-radius:3px;flex:1;height:6px;position:relative}.video-lightbox-progress{background:var(--color-primary);border-radius:3px;height:100%;position:absolute;top:0;left:0}.video-lightbox-thumb{background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #0006}.video-lightbox-time{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;min-width:80px}@media (width<=768px){.video-lightbox-video{max-height:70vh}.video-lightbox-timeline{bottom:var(--spacing-md);gap:var(--spacing-sm)}.video-lightbox-play-overlay{width:72px;height:72px}}.video-item{gap:var(--spacing-sm);flex-direction:column;align-items:stretch;max-width:100%;display:flex}.video-item-version{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);font-size:var(--font-size-sm);color:var(--color-text);align-self:flex-start}.video-item-stage{border-radius:var(--border-radius);cursor:zoom-in;background:#000;width:100%;position:relative;overflow:hidden}.video-item-video{width:100%;height:auto;display:block}.video-item-empty{aspect-ratio:3/4;color:var(--color-text-secondary);background:var(--color-background);justify-content:center;align-items:center;display:flex}.video-item-overlay{color:#fff;justify-content:center;align-items:center;gap:var(--spacing-sm);background:#0000008c;flex-direction:column;display:flex;position:absolute;inset:0}.video-item-overlay-text{font-size:var(--font-size-base)}.video-item-spinner{border:3px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:36px;height:36px;animation:.9s linear infinite video-item-spin}@keyframes video-item-spin{to{transform:rotate(360deg)}}.video-item-actions{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.video-source-drop{width:100%;min-height:140px;padding:var(--spacing-sm);border:1px dashed var(--color-border-dashed,#ccc);border-radius:var(--border-radius);background:var(--color-background);cursor:pointer;justify-content:center;align-items:center;transition:border-color .15s;display:flex;position:relative}.video-source-drop:hover{border-color:var(--color-primary)}.video-source-drop.has-preview{cursor:default}.video-source-empty{text-align:center;color:var(--color-text-secondary);padding:var(--spacing-lg)}.video-source-or{font-size:var(--font-size-sm);color:var(--color-text-muted,#999);margin-top:var(--spacing-xs)}.video-source-preview{object-fit:contain;background:var(--color-surface);width:auto;max-width:100%;height:auto;max-height:200px;display:block}.video-source-clear{top:var(--spacing-sm);right:var(--spacing-sm);color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;line-height:1;display:flex;position:absolute}.video-char-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:right}.video-result-col .video-item{max-width:420px}.video-result-empty{min-height:240px;color:var(--color-text-secondary);background:var(--color-background);border-radius:var(--border-radius);justify-content:center;align-items:center;display:flex}.video-progress{justify-content:center;align-items:center;gap:var(--spacing-sm);min-height:240px;color:var(--color-text-secondary);flex-direction:column;display:flex}.video-progress-text{font-weight:var(--font-weight-medium);color:var(--color-text)}.video-progress-hint{font-size:var(--font-size-sm)}@media (width<=768px){.layout-two-col .layout-right.video-result-col{display:block}}.history-container{padding:var(--spacing-md,16px);gap:var(--spacing-lg,24px);flex-direction:column;display:flex}.history-container.is-loading{opacity:.6;pointer-events:none}.history-loading,.history-empty,.history-error{padding:var(--spacing-xl,32px);text-align:center;color:var(--color-text-muted,#888)}.history-error{color:var(--color-error,#c33)}.history-list{gap:var(--spacing-md,16px);flex-direction:column;display:flex}.history-row{gap:var(--spacing-md,16px);padding:var(--spacing-md,16px);background:var(--color-surface,#fff);border:1px solid var(--color-border,#e5e5e5);border-radius:8px;flex-direction:column;display:flex}.history-row-meta{gap:var(--spacing-xs,6px);flex-direction:column;flex:none;display:flex}.history-meta-item{flex-direction:column;gap:2px;display:flex}.history-meta-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted,#888);font-size:.75rem}.history-meta-value{color:var(--color-text,#222);word-break:break-word;font-size:.95rem}.history-status-completed{color:var(--color-success,#2a8a2a)}.history-status-error{color:var(--color-error,#c33)}.history-status-processing_images,.history-status-generating_prompts,.history-status-generating_cards{color:var(--color-warning,#c80)}.history-row-cards{gap:var(--spacing-md,16px);padding-bottom:4px;display:flex;overflow-x:auto}.history-cards-empty{color:var(--color-text-muted,#888);align-self:center}.history-row-cards .card-item{flex:0 0 260px;width:260px}.history-pagination{justify-content:center;align-items:center;gap:var(--spacing-md,16px);display:flex}.history-page-btn{border:1px solid var(--color-border,#ddd);background:var(--color-surface,#fff);cursor:pointer;border-radius:6px;padding:8px 16px;font-size:.9rem}.history-page-btn:disabled{opacity:.4;cursor:not-allowed}.history-page-indicator{color:var(--color-text-muted,#666);font-size:.9rem}@media (width>=768px){.history-row{flex-direction:row;align-items:stretch}.history-row-meta{border-right:1px solid var(--color-border,#eee);padding-right:var(--spacing-md,16px);flex:0 0 30%}.history-row-cards{flex:auto}}.history-kind-chip{font-size:.8rem;font-weight:var(--font-weight-medium,500);margin-bottom:var(--spacing-xs,4px);background:var(--color-primary-light,#ebf2fa);color:var(--color-primary,#4a90d9);border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.history-kind-chip.history-kind-video{color:#7b3fbf;background:#f1e9fa}.history-kind-icon{display:inline-flex}.history-row-cards .history-video-wrap{flex:0 0 260px;width:260px}.app{flex-direction:column;min-height:100vh;display:flex}.app-main{padding:var(--spacing-lg);flex:1}.layout-two-col{gap:var(--spacing-lg);max-width:1200px;margin:0 auto;display:flex}.layout-left{gap:var(--spacing-lg);background:var(--color-surface);border-radius:var(--border-radius-lg);min-width:0;box-shadow:var(--shadow-card);padding:var(--spacing-lg);flex-direction:column;flex:0 0 34%;display:flex}.layout-right{background:var(--color-surface);border-radius:var(--border-radius-lg);min-width:0;box-shadow:var(--shadow-card);padding:var(--spacing-lg);flex:1}.generate-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:var(--color-white);border-radius:var(--border-radius);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);border:none;transition:background .15s}.generate-btn:hover:not(:disabled){background:var(--color-primary-hover)}.generate-btn:disabled{opacity:.5;cursor:not-allowed}.error-message{color:var(--color-error);font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);background:#fee2e2}.placeholder-screen{min-height:300px;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.placeholder-screen h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:var(--spacing-sm)}.progress-bar-mobile{display:none}.progress-bar-desktop{display:block}@media (width<=768px){.app-main{padding:var(--spacing-md)}.layout-two-col{flex-direction:column}.layout-left{flex:none}.progress-bar-mobile{display:block}.progress-bar-desktop,.layout-right:not(.has-cards){display:none}}.auth-loading{min-height:100vh}.login-page{min-height:100vh;padding:var(--spacing-lg);justify-content:center;align-items:center;display:flex}.login-card{background:var(--color-surface);border-radius:var(--border-radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-card);padding:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;display:flex}.auth-tabs{gap:var(--spacing-sm);border-bottom:1px solid var(--color-border,#e5e5e5);display:flex}.auth-tab{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;color:var(--color-text-secondary,#666);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;font-size:1rem}.auth-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.auth-form{gap:var(--spacing-md);flex-direction:column;display:flex}.auth-form label{gap:var(--spacing-xs,4px);flex-direction:column;font-size:.9rem;display:flex}.auth-form input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border,#e5e5e5);border-radius:var(--border-radius-md,8px);font-size:1rem}.auth-form button[type=submit]{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:#fff;border-radius:var(--border-radius-md,8px);cursor:pointer;border:none;font-size:1rem}.auth-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.link-button{color:var(--color-primary);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.9rem}.auth-error-badge{color:#c33;padding:var(--spacing-sm);border-radius:var(--border-radius-md,8px);background:#fee;border:1px solid #fcc;font-size:.9rem}.auth-divider{text-align:center;color:var(--color-text-secondary,#888);margin:var(--spacing-sm) 0;font-size:.85rem;position:relative}.auth-oauth{gap:var(--spacing-sm);flex-direction:column;display:flex}.oauth-button{padding:var(--spacing-sm) var(--spacing-md);text-align:center;border-radius:var(--border-radius-md,8px);border:1px solid var(--color-border,#e5e5e5);color:var(--color-text,#222);font-size:.95rem;text-decoration:none}.oauth-yandex{color:#000;background:#ffdb4d;border-color:#ffdb4d}.oauth-vk{color:#fff;background:#07f;border-color:#07f}.code-input-row{gap:var(--spacing-sm);justify-content:center;display:flex}.code-digit{text-align:center;font-variant-numeric:tabular-nums;border:1px solid var(--color-border,#e5e5e5);border-radius:var(--border-radius-md,8px);box-sizing:border-box;width:2.75rem;height:3.25rem;padding:0;font-size:1.5rem;line-height:1}.modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;width:90%;max-width:400px;display:flex}
