:root{--background-primary:#0a0a0b;--background-secondary:#1d1d1f;--background-tertiary:#2c2c2e;--fill-primary-translucent:#1c1c1eeb;--fill-secondary-translucent:#1c1c1eb8;--fill-tertiary-translucent:#1c1c1e70;--text-primary:#fff;--text-secondary:#d0d0d4;--text-tertiary:#b2b2b8;--text-red:#d20909;--text-red-hover:#ff0a0a;--text-orange:#ff9808;--text-dark:#111;--accent-blue:#007aff;--accent-blue-dark:#0056b3;--accent-blue-hover:#005bb5;--accent-green:#34c759;--accent-green-hover:#28a745;--accent-red:#dc3545;--accent-red-hover:#ff4d5b;--accent-orange:#8a6518;--accent-orange-hover:#ffb347;--border-primary:#d2d2d6eb;--border-secondary:#ffffff24;--border-translucent:#ffffff3d;--border-success:#34c759;--border-blue:#007aff;--border-error:#dc3545;--border-error-touch:#ff3b30;--border-orange:#ff9800;--font-family:"Space Grotesk", "Avenir Next", "Segoe UI", sans-serif;--line-height-tight:1.2;--line-height-body:1.6;--font-size-hero:clamp(2.35rem, 5.4vw, 3.85rem);--font-size-headline:clamp(1.75rem, 3.3vw, 2.55rem);--font-size-title:clamp(1.45rem, 2.35vw, 2rem);--font-size-title2:clamp(1.3rem, 2vw, 1.75rem);--font-size-subtitle:clamp(1.08rem, 1.5vw, 1.3rem);--font-size-body:.95rem;--font-size-caption:.82rem;--font-size-price:clamp(1.32rem, 2vw, 1.68rem);--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--max-width:1200px;--border-radius-small:7px;--border-radius-medium:10px;--border-radius-large:14px;--border-radius-xlarge:17px;--border-radius-card:20px;--border-radius-hero:28px;--border-radius-round:50%;--spacing-section:clamp(34px, 4.8vw, 58px);--spacing-container:clamp(16px, 3.4vw, 50px);--space-2xs:3px;--space-xs:6px;--space-sm:10px;--space-md:14px;--space-lg:18px;--space-xl:22px;--space-2xl:28px;--space-3xl:34px;--space-4xl:40px;--space-5xl:50px;--shadow-sm:0 3px 10px #0003;--shadow-md:0 8px 22px #00000052;--shadow-lg:0 14px 30px #0000006b;--shadow-xl:0 18px 42px #00000085;--shadow-accent-blue:0 4px 16px #007bff66;--shadow-accent-green:0 4px 16px #34c75966;--shadow-accent-red:0 4px 16px #f30b0b66;--shadow-accent-orange:0 4px 16px #e1950066;--shadow-input-error-focus:0 0 0 3px #80808066;--shadow-input-error-focus-touch:0 0 0 3px #e1950066;--blur-sm:8px;--blur-md:12px;--blur-lg:20px;--transition-fast:.16s ease;--transition-normal:.24s ease;--transition-smooth:.4s cubic-bezier(.25, 1, .5, 1);--hover-lift:translateY(-4px);--hover-lift-scale:translateY(-4px) scale(1.015);--hover-scale:scale(1.015);--hover-scale-sm:scale(1.02);--hover-scale-button:scale(1.06);--color-notification:#ff3b30;--color-notification-text:#fff;--color-notification-shadow:#ff3b301f;--header-height:60px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-rendering:optimizelegibility}body{background:radial-gradient(circle at top right, #18181b 0%, var(--background-primary) 48%, #060607 100%);color:var(--text-primary);font-family:var(--font-family);line-height:var(--line-height-body);margin:0}#root{flex-direction:column;min-height:100vh;display:flex}.main-content{padding-top:var(--header-height);flex-grow:1}section{--gutter:var(--spacing-container);grid-template-columns:[full-start] minmax(var(--gutter), 1fr) [content] minmax(0, min(var(--max-width), calc(100% - 2 * var(--gutter)))) minmax(var(--gutter), 1fr) [full-end];padding-block:var(--spacing-section);display:grid}section>*{grid-column:content}h1,h2{line-height:var(--line-height-tight)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);letter-spacing:-.02rem;color:var(--text-primary);margin:0}h3,h4,h5,h6{color:var(--text-secondary)}p{color:var(--text-tertiary);font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0}a{color:var(--accent-blue);transition:color var(--transition-fast), opacity var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-blue-hover);opacity:1}a:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}@keyframes fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes entry-fade-slide{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes puls-scale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animation-entry{animation:1s cubic-bezier(.25,1,.5,1) .2s backwards entry-fade-slide}.animation-fade{animation:1.5s ease-out forwards fade-in}.hover-lift{transition:transform var(--transition-normal), box-shadow var(--transition-normal)}.hover-lift:hover{transform:var(--hover-lift);box-shadow:var(--shadow-lg)}.hover-lift-scale{transition:transform var(--transition-normal), box-shadow var(--transition-normal)}.hover-lift-scale:hover{transform:var(--hover-lift-scale);box-shadow:var(--shadow-xl)}.glass{background:var(--fill-primary-translucent);-webkit-backdrop-filter:blur(var(--blur-lg));backdrop-filter:blur(var(--blur-lg));border:1px solid var(--border-translucent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=768px){:root{--font-size-hero:clamp(2.2rem, 7vw, 3.2rem);--font-size-headline:clamp(1.7rem, 5vw, 2.25rem);--font-size-title:clamp(1.4rem, 3.8vw, 1.85rem);--spacing-section:clamp(34px, 8vw, 50px);--spacing-container:clamp(16px, 5vw, 32px)}}@media (width<=480px){:root{--font-size-hero:clamp(1.95rem, 9vw, 2.45rem);--font-size-headline:clamp(1.5rem, 7vw, 1.9rem);--font-size-body:.98rem;--spacing-container:16px}}code[class*=language-],pre[class*=language-]{color:#ccc;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;tab-size:4;-webkit-hyphens:none;hyphens:none;background:0 0;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;line-height:1.5}pre[class*=language-]{margin:.5em 0;padding:1em;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{white-space:normal;border-radius:.3em;padding:.1em}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.html-editor-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.html-editor-modal{background:var(--bg-secondary,#1e1e1e);border:1px solid var(--border-color,#333);border-radius:12px;flex-direction:column;width:90vw;max-width:1200px;height:85vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.html-editor-header{border-bottom:1px solid var(--border-color,#333);background:var(--bg-tertiary,#252525);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.html-editor-header h3{color:var(--text-primary,#fff);margin:0;font-size:16px;font-weight:600}.html-editor-actions{gap:8px;display:flex}.html-editor-tabs{background:var(--bg-tertiary,#252525);border-bottom:1px solid var(--border-color,#333);gap:4px;padding:8px 16px;display:flex}.html-editor-tab{color:var(--text-secondary,#888);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.html-editor-tab:hover:not(:disabled){background:var(--bg-hover,#333);color:var(--text-primary,#fff)}.html-editor-tab.active{background:var(--accent-color,#0078d4);color:#fff}.html-editor-tab:disabled{opacity:.4;cursor:not-allowed}.html-editor-tab-icon{width:14px;height:14px}.html-editor-toolbar{background:var(--bg-secondary,#1e1e1e);border-bottom:1px solid var(--border-color,#333);align-items:center;gap:8px;padding:8px 16px;display:flex}.html-editor-toolbar-group{gap:2px;display:flex}.html-editor-toolbar-btn{width:32px;height:32px;color:var(--text-secondary,#888);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.html-editor-toolbar-btn:hover{background:var(--bg-hover,#333);color:var(--text-primary,#fff)}.html-editor-toolbar-btn svg{width:16px;height:16px}.html-editor-toolbar-divider{background:var(--border-color,#333);width:1px;height:24px;margin:0 4px}.html-editor-hint{color:var(--text-tertiary,#666);margin-left:8px;font-size:12px}.html-editor-body{flex:1;display:flex;overflow:hidden}.html-editor-body.split-view{grid-template-columns:1fr 1fr;display:grid}.html-editor-pane{flex-direction:column;flex:1;display:flex;overflow:hidden}.html-editor-pane.hidden{display:none}.html-editor-code-pane{background:#1e1e1e}.html-editor-code-container{flex:1;position:relative;overflow:auto}.html-editor-code{min-height:100%;background:0 0!important}.html-editor-code textarea,.html-editor-code pre{white-space:pre!important;word-wrap:normal!important;overflow-wrap:normal!important;outline:none!important}.html-editor-textarea{caret-color:#fff!important}.html-editor-pre{pointer-events:none}.html-editor-preview-pane{border-left:1px solid var(--border-color,#333);background:#fff}.html-editor-preview-iframe{border:none;width:100%;height:100%}.html-editor-statusbar{background:var(--bg-tertiary,#252525);border-top:1px solid var(--border-color,#333);color:var(--text-tertiary,#666);justify-content:space-between;align-items:center;padding:6px 16px;font-size:12px;display:flex}.html-editor-statusbar-left,.html-editor-statusbar-right{gap:16px;display:flex}.html-editor-statusbar-item{align-items:center;gap:4px;display:flex}.html-editor-code code[class*=language-],.html-editor-code pre[class*=language-]{color:#d4d4d4;text-shadow:none;background:0 0}.html-editor-code .token.comment,.html-editor-code .token.prolog,.html-editor-code .token.doctype,.html-editor-code .token.cdata{color:#6a9955}.html-editor-code .token.punctuation{color:gray}.html-editor-code .token.property,.html-editor-code .token.tag,.html-editor-code .token.boolean,.html-editor-code .token.number,.html-editor-code .token.constant,.html-editor-code .token.symbol,.html-editor-code .token.deleted{color:#569cd6}.html-editor-code .token.selector,.html-editor-code .token.attr-name,.html-editor-code .token.string,.html-editor-code .token.char,.html-editor-code .token.builtin,.html-editor-code .token.inserted{color:#ce9178}.html-editor-code .token.operator,.html-editor-code .token.entity,.html-editor-code .token.url,.html-editor-code .language-css .token.string,.html-editor-code .style .token.string{color:#d4d4d4}.html-editor-code .token.atrule,.html-editor-code .token.attr-value,.html-editor-code .token.keyword{color:#c586c0}.html-editor-code .token.function,.html-editor-code .token.class-name{color:#dcdcaa}.html-editor-code .token.regex,.html-editor-code .token.important,.html-editor-code .token.variable{color:#d16969}.html-editor-code-container::-webkit-scrollbar{width:14px;height:14px}.html-editor-code-container::-webkit-scrollbar-track{background:0 0}.html-editor-code-container::-webkit-scrollbar-thumb{background:#fff3 padding-box padding-box;border:3px solid #0000;border-radius:7px}.html-editor-code-container::-webkit-scrollbar-thumb:hover{background:#ffffff4d padding-box padding-box;border:3px solid #0000}.html-editor-code-container::-webkit-scrollbar-corner{background:0 0}.jn-button{appearance:none;border-radius:var(--border-radius-large);justify-content:center;align-items:center;gap:var(--space-xs);padding:0 var(--space-lg);min-height:44px;font-family:var(--font-family);font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);background:0 0;border:1px solid #0000;line-height:1;display:inline-flex}.jn-button svg{margin:0 5px;display:inline-block}.jn-button:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.jn-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.jn-button--full{width:100%}.jn-button--tone-primary{--btn-bg:var(--accent-blue);--btn-bg-hover:var(--accent-blue-hover);--btn-border:var(--accent-blue);--btn-text-solid:var(--text-primary);--btn-soft-bg:#007aff26;--btn-soft-hover:#007aff40;--btn-soft-text:var(--accent-blue);--btn-shadow:var(--shadow-accent-blue)}.jn-button--tone-success{--btn-bg:var(--accent-green);--btn-bg-hover:var(--accent-green-hover);--btn-border:var(--accent-green);--btn-text-solid:var(--text-primary);--btn-soft-bg:#34c75926;--btn-soft-hover:#34c75940;--btn-soft-text:var(--accent-green);--btn-shadow:var(--shadow-accent-green)}.jn-button--tone-danger{--btn-bg:var(--accent-red);--btn-bg-hover:var(--accent-red-hover);--btn-border:var(--accent-red);--btn-text-solid:var(--text-primary);--btn-soft-bg:#dc354526;--btn-soft-hover:#dc354540;--btn-soft-text:var(--accent-red);--btn-shadow:var(--shadow-accent-red)}.jn-button--tone-warning{--btn-bg:var(--accent-orange);--btn-bg-hover:var(--accent-orange-hover);--btn-border:var(--accent-orange);--btn-text-solid:var(--text-dark);--btn-soft-bg:#ff950026;--btn-soft-hover:#e1950040;--btn-soft-text:var(--accent-orange);--btn-shadow:var(--shadow-accent-orange)}.jn-button--tone-neutral{--btn-bg:var(--background-tertiary);--btn-bg-hover:var(--background-secondary);--btn-border:var(--border-secondary);--btn-text-solid:var(--text-primary);--btn-soft-bg:#fffc;--btn-soft-hover:#ffffff26;--btn-soft-text:var(--text-primary);--btn-shadow:var(--shadow-sm)}.jn-button--filled{background:var(--btn-bg,var(--accent-blue));border-color:var(--btn-border,transparent);color:var(--btn-text-solid);box-shadow:var(--btn-shadow)}.jn-button--filled:hover:not(:disabled){background:var(--btn-bg-hover,var(--btn-bg));transform:var(--hover-lift)}.jn-button--outlined{color:var(--btn-soft-text,var(--btn-bg,var(--accent-blue)));border-color:var(--btn-border,currentColor);background:0 0}.jn-button--outlined:hover:not(:disabled){background:var(--btn-soft-bg)}.jn-button--soft{background:var(--btn-soft-bg);color:var(--btn-soft-text,var(--text-primary));box-shadow:none;border-color:#0000}.jn-button--soft:hover:not(:disabled){background:var(--btn-soft-hover)}.jn-button--ghost{color:var(--btn-soft-text,var(--text-primary));box-shadow:none;background:0 0;border-color:#0000}.jn-button--ghost:hover:not(:disabled){background:#ffffff0a}.jn-button--link{min-height:auto;color:var(--btn-soft-text,var(--accent-blue));font-weight:var(--font-weight-medium);gap:var(--space-2xs);box-shadow:none;background:0 0;border:none;padding:0}.jn-button--link:hover{text-decoration:underline}.jn-button-icon{justify-content:center;align-items:center;font-size:1.1em;display:inline-flex}.jn-button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.6s linear infinite jn-button-spin}.jn-button--loading .jn-button-label,.jn-button--loading .jn-button-icon{opacity:.85}@keyframes jn-button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.jn-text-field{gap:var(--space-xs,8px);flex-direction:column;display:flex}.jn-text-field--full{width:100%}.jn-text-field-label{align-items:center;gap:var(--space-2xs,4px);font-size:var(--font-size-body,1rem);font-weight:var(--font-weight-medium,500);color:var(--text-secondary,#c2c2c6);display:flex}.jn-text-field-required{color:var(--accent-red,#dc3545);font-weight:var(--font-weight-semibold,600)}.jn-text-field-control{align-items:center;gap:var(--space-sm,8px);border:1px solid var(--border-secondary,#ffffff1a);background:var(--background-primary,#1c1c1e);transition:border-color var(--transition-fast,.2s ease), box-shadow var(--transition-fast,.2s ease), background var(--transition-fast,.2s ease);border-radius:6px;padding-inline:12px;display:flex}.jn-text-field-input{color:var(--text-primary,#fff);font-family:var(--font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);min-height:inherit;background:0 0;border:none;flex:1;padding-block:8px;font-size:.9rem;line-height:1.5}.jn-text-field-input::placeholder{color:var(--text-tertiary,#a1a1a6)}.jn-text-field-input:focus{outline:none}.jn-text-field-control:focus-within{border-color:var(--accent-blue,#007aff);background:var(--background-secondary,#1d1d1f);box-shadow:0 0 0 3px #007aff26}.jn-text-field--error .jn-text-field-control{border-color:var(--border-error,#dc3545);box-shadow:0 0 0 3px #dc35452e}.jn-text-field--error .jn-text-field-input::placeholder{color:#dc354599}.jn-text-field--disabled .jn-text-field-control{opacity:.5;cursor:not-allowed}.jn-text-field--disabled .jn-text-field-input,.jn-text-field--disabled .jn-text-field-icon{cursor:not-allowed}.jn-text-field-icon{color:var(--text-secondary,#c2c2c6);justify-content:center;align-items:center;font-size:1.1em;display:inline-flex}.jn-text-field-support{color:var(--text-tertiary,#a1a1a6);align-items:flex-start;gap:var(--space-2xs,4px);margin:0;font-size:.85rem;display:flex}.jn-text-field-support--error{color:var(--accent-red,#dc3545)}.jn-text-field--sm .jn-text-field-control{min-height:36px;padding-inline:var(--space-md,16px)}.jn-text-field--sm .jn-text-field-input{padding-block:var(--space-2xs,6px);font-size:.95rem}.jn-text-field--lg .jn-text-field-control{min-height:56px;padding-inline:var(--space-xl,24px)}.jn-text-field--lg .jn-text-field-input{padding-block:var(--space-md,16px);font-size:1.1rem}.toast-container{bottom:var(--spacing-xl);right:var(--spacing-xl);gap:var(--spacing-sm);z-index:1000;flex-direction:column;max-width:400px;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--background-secondary);border:1px solid var(--border-secondary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-xl);min-width:300px;animation:ease-out .4 slideInRight;display:flex}.toast-success{border-left:4px solid var(--border-success)}.toast-error{border-left:4px solid var(--border-error)}.toast-warning{border-left:4px solid var(--border-orange)}.toast-info{border-left:4px solid var(--border-blue)}.toast-success .toast-icon{color:var(--accent-green)}.toast-error .toast-icon{color:var(--accent-red)}.toast-warning .toast-icon{color:var(--accent-orange)}.toast-info .toast-icon{color:var(--accent-blue)}.toast-icon{flex-shrink:0;margin-top:2px}.toast-content{flex:1;min-width:0}.toast-title{color:var(--text-primary);margin-bottom:2px;font-size:.875rem;font-weight:600}.toast-message{color:var(--text-secondary);font-size:.813rem}.toast-close{width:24px;height:24px;color:var(--text-secondary);border-radius:var(--border-radius-small);transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-close:hover{background:var(--background-secondary);color:var(--text-primary)}.dialog-box-component .overlay-backdrop{z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog-box-component .dialog-box{background:var(--background-secondary);border-radius:var(--border-radius-large);width:90%;max-width:500px;box-shadow:0 20px 60px #00000080}.dialog-box-component .dialog-box .dialog-header{padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--border-secondary)}.dialog-box-component .dialog-box .dialog-header h2{font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.dialog-box-component .dialog-box .dialog-content{padding:var(--space-xl)}.dialog-box-component .dialog-box .dialog-footer{padding:var(--space-sm);border-top:1px solid var(--border-secondary);justify-content:flex-end;gap:var(--space-md);display:flex}.quantity-selector{gap:var(--space-xs,8px);flex-direction:column;width:100%;display:flex}.quantity-selector.disabled{cursor:not-allowed}.quantity-label{font-size:var(--font-size-body,1rem);font-weight:var(--font-weight-semibold,600);color:var(--text-secondary,#c2c2c6);letter-spacing:.02em}.quantity-select-required{color:var(--accent-red,#dc3545);font-weight:var(--font-weight-semibold,600)}.custom-dropdown{-webkit-user-select:none;user-select:none;background:var(--background-primary,#1c1c1e);border:1px solid var(--border-secondary,#ffffff14);color:var(--text-primary,#fff);font-size:.9rem;font-weight:var(--font-weight-medium,500);cursor:pointer;transition:border-color var(--transition-fast,.2s ease), box-shadow var(--transition-fast,.2s ease), background var(--transition-fast,.2s ease);justify-content:space-between;align-items:center;gap:var(--space-sm,8px);border-radius:6px;outline:none;min-width:90px;min-height:38px;padding:0 12px;display:flex;position:relative}.custom-dropdown.open,.custom-dropdown:focus,.custom-dropdown:focus-visible{border-color:var(--accent-blue,#007aff);background:var(--background-secondary,#1d1d1f);box-shadow:0 0 0 3px #007aff2e}.custom-dropdown.disabled{opacity:.5;cursor:not-allowed;background:var(--background-tertiary,#2c2c2e);pointer-events:none}.quantity-select-value{text-align:left;font-size:1rem;font-weight:var(--font-weight-semibold,600);letter-spacing:.01em;flex:1;padding-right:4px}.quantity-dropdown-list{background:var(--background-primary,#1c1c1e);border:1px solid var(--border-secondary,#ffffff14);width:100%;box-shadow:var(--shadow-sm,0 4px 12px #00000026);z-index:200;scrollbar-width:thin;border-radius:6px;flex-direction:column;gap:1px;max-height:240px;padding:4px;animation:.18s fade-in;display:flex;position:absolute;left:0;overflow-y:auto}.quantity-dropdown-list.below{top:calc(100% + 4px)}.quantity-dropdown-list.above{bottom:calc(100% + 4px)}.quantity-dropdown-item{cursor:pointer;color:var(--text-primary,#fff);transition:background var(--transition-fast,.2s ease), color var(--transition-fast,.2s ease);text-align:left;background:0 0;border:none;border-radius:4px;outline:none;margin:0;padding:8px 12px;font-size:.9rem;position:relative}.quantity-dropdown-item:hover,.quantity-dropdown-item:focus{color:var(--text-primary,#fff);background:#ffffff1a}.quantity-dropdown-item.selected{background:var(--accent-blue,#007aff);color:#fff;font-weight:var(--font-weight-medium,500)}.quantity-select-arrow{pointer-events:none;color:var(--text-tertiary,#a1a1a6);transition:transform var(--transition-fast,.2s ease), color var(--transition-fast,.2s ease);font-size:.8rem;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.quantity-select-wrapper:hover .quantity-select-arrow{color:var(--accent-blue,#007aff)}.quantity-select-wrapper.open .quantity-select-arrow{transform:translateY(-50%)rotate(180deg)}.quantity-select-wrapper.disabled .quantity-select-arrow{opacity:.4}.jn-checkbox{gap:var(--space-xs,8px);flex-direction:column;display:flex}.jn-checkbox-control{align-items:center;display:flex}.jn-checkbox-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.jn-checkbox-label{align-items:center;gap:var(--space-sm,12px);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.jn-checkbox-box{border:2px solid var(--border-secondary,#ffffff1a);background:var(--background-primary,#1c1c1e);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:all .2s;display:flex;position:relative}.jn-checkbox-checkmark{color:#fff;opacity:0;width:12px;height:12px;transition:all .15s;transform:scale(.5)}.jn-checkbox-input:checked+.jn-checkbox-label .jn-checkbox-box{background:var(--accent-blue,#007aff);border-color:var(--accent-blue,#007aff)}.jn-checkbox-input:checked+.jn-checkbox-label .jn-checkbox-checkmark{opacity:1;transform:scale(1)}.jn-checkbox-input:focus-visible+.jn-checkbox-label .jn-checkbox-box{outline:2px solid var(--accent-blue,#007aff);outline-offset:2px}.jn-checkbox-label:hover .jn-checkbox-box{border-color:var(--accent-blue,#007aff);background:var(--background-secondary,#1d1d1f)}.jn-checkbox-input:checked+.jn-checkbox-label:hover .jn-checkbox-box{background:var(--accent-blue-hover,#0051d5);border-color:var(--accent-blue-hover,#0051d5)}.jn-checkbox-text{font-size:var(--font-size-body,1rem);font-weight:var(--font-weight-medium,500);color:var(--text-primary,#fff)}.jn-checkbox-error{font-size:var(--font-size-small,.875rem);color:var(--accent-red,#dc3545);margin-left:32px}.jn-checkbox-hint{font-size:var(--font-size-small,.875rem);color:var(--text-tertiary,#a1a1a6);margin-left:32px}.jn-checkbox--error .jn-checkbox-box{border-color:var(--border-error,#dc3545)}.jn-checkbox--disabled .jn-checkbox-label{opacity:.5;cursor:not-allowed}.jn-checkbox--disabled .jn-checkbox-box{cursor:not-allowed}.jn-date-picker{gap:var(--space-xs,8px);flex-direction:column;display:flex;position:relative}.jn-date-picker--full{width:100%}.jn-date-picker-label{align-items:center;gap:var(--space-2xs,4px);font-size:var(--font-size-body,1rem);font-weight:var(--font-weight-medium,500);color:var(--text-secondary,#c2c2c6);display:flex}.jn-date-picker-required{color:var(--accent-red,#dc3545);font-weight:var(--font-weight-semibold,600)}.jn-date-picker-control{align-items:center;gap:var(--space-sm,8px);border:1px solid var(--border-secondary,#ffffff1a);background:var(--background-primary,#1c1c1e);cursor:pointer;transition:border-color var(--transition-fast,.2s ease), box-shadow var(--transition-fast,.2s ease), background var(--transition-fast,.2s ease);border-radius:6px;padding-inline:12px;display:flex}.jn-date-picker-control:hover{border-color:var(--border-tertiary,#fff3)}.jn-date-picker-input{color:var(--text-primary,#fff);font-family:var(--font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);min-height:inherit;cursor:pointer;background:0 0;border:none;flex:1;padding-block:8px;font-size:.9rem;line-height:1.5}.jn-date-picker-input::placeholder{color:var(--text-tertiary,#a1a1a6)}.jn-date-picker-input:focus{outline:none}.jn-date-picker-control:focus-within{border-color:var(--accent-blue,#007aff);background:var(--background-secondary,#1d1d1f);box-shadow:0 0 0 3px #007aff26}.jn-date-picker--error .jn-date-picker-control{border-color:var(--border-error,#dc3545);box-shadow:0 0 0 3px #dc35452e}.jn-date-picker--disabled .jn-date-picker-control{opacity:.5;cursor:not-allowed}.jn-date-picker--disabled .jn-date-picker-input,.jn-date-picker--disabled .jn-date-picker-icon{cursor:not-allowed}.jn-date-picker-icon{color:var(--text-secondary,#c2c2c6);justify-content:center;align-items:center;font-size:.9em;display:inline-flex}.jn-date-picker-dropdown{z-index:300;background:var(--background-secondary,#2c2c2e);border:1px solid var(--border-secondary,#ffffff1a);min-width:280px;padding:var(--space-md,16px);border-radius:12px;animation:.15s ease-out datePickerSlideIn;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 8px 32px #0006}.jn-date-picker-dropdown.jn-date-picker-dropdown--above{animation:.15s ease-out datePickerSlideInAbove;top:auto;bottom:calc(100% + 8px)}@keyframes datePickerSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes datePickerSlideInAbove{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.jn-date-picker-header{justify-content:space-between;align-items:center;gap:var(--space-xs,8px);margin-bottom:var(--space-md,16px);display:flex}.jn-date-picker-nav{width:28px;height:28px;color:var(--text-secondary,#c2c2c6);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;gap:-2px;font-size:.65rem;transition:all .15s;display:flex}.jn-date-picker-nav:hover{background:var(--background-tertiary,#ffffff0d);color:var(--text-primary,#fff)}.jn-date-picker-nav:active{transform:scale(.95)}.jn-date-picker-month-year{text-align:center;font-weight:var(--font-weight-semibold,600);color:var(--text-primary,#fff);flex:1;font-size:.95rem}.jn-date-picker-weekdays{margin-bottom:var(--space-xs,8px);grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.jn-date-picker-weekday{text-align:center;font-size:.75rem;font-weight:var(--font-weight-medium,500);color:var(--text-tertiary,#a1a1a6);padding:var(--space-xs,8px) 0}.jn-date-picker-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.jn-date-picker-day{aspect-ratio:1;width:100%;min-width:32px;color:var(--text-primary,#fff);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:flex}.jn-date-picker-day:hover:not(:disabled){background:var(--background-tertiary,#ffffff14)}.jn-date-picker-day--other{color:var(--text-tertiary,#a1a1a6);opacity:.5}.jn-date-picker-day--disabled{color:var(--text-tertiary,#a1a1a6);opacity:.3;cursor:not-allowed}.jn-date-picker-day--today{font-weight:var(--font-weight-semibold,600);color:var(--accent-blue,#007aff);position:relative}.jn-date-picker-day--today:after{content:"";background:var(--accent-blue,#007aff);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.jn-date-picker-day--selected{font-weight:var(--font-weight-semibold,600);background:var(--accent-blue,#007aff)!important;color:#fff!important}.jn-date-picker-day--selected:after{display:none}.jn-date-picker-footer{margin-top:var(--space-md,16px);padding-top:var(--space-sm,12px);border-top:1px solid var(--border-secondary,#ffffff1a);justify-content:center;display:flex}.jn-date-picker-today-btn{color:var(--accent-blue,#007aff);font-size:.85rem;font-weight:var(--font-weight-medium,500);cursor:pointer;padding:var(--space-xs,8px) var(--space-md,16px);background:0 0;border:none;border-radius:6px;transition:all .15s}.jn-date-picker-today-btn:hover{background:#007aff1a}.jn-date-picker-support{color:var(--text-tertiary,#a1a1a6);align-items:flex-start;gap:var(--space-2xs,4px);margin:0;font-size:.85rem;display:flex}.jn-date-picker-support--error{color:var(--accent-red,#dc3545)}.jn-date-picker--sm .jn-date-picker-control{min-height:36px;padding-inline:var(--space-md,16px)}.jn-date-picker--sm .jn-date-picker-input{padding-block:var(--space-2xs,6px);font-size:.85rem}.jn-date-picker--lg .jn-date-picker-control{min-height:56px;padding-inline:var(--space-xl,24px)}.jn-date-picker--lg .jn-date-picker-input{padding-block:var(--space-md,16px);font-size:1.1rem}.hint-box{padding:var(--space-sm) var(--space-md);border-radius:var(--border-radius-medium);margin-bottom:var(--space-md);align-items:flex-start;gap:var(--space-sm);font-size:.85rem;line-height:1.5;display:flex}.hint-box-icon{flex-shrink:0;margin-top:2px}.hint-box-text{flex:1}.hint-box-info{border-left:3px solid var(--accent-blue);color:var(--text-primary);background:#007bff14}.hint-box-info .hint-box-icon{color:var(--accent-blue)}.hint-box-warning{background:var(--warning-secondary);border-left:3px solid var(--warning-primary);color:var(--text-primary)}.hint-box-warning .hint-box-icon{color:var(--warning-primary)}.hint-box-success{color:var(--text-primary);background:#22c55e14;border-left:3px solid #22c55e}.hint-box-success .hint-box-icon{color:#22c55e}.category-sidebar{background-color:var(--background-secondary);border-right:1px solid var(--border-secondary);flex-direction:column;flex-shrink:0;min-width:200px;max-width:600px;height:100%;display:flex;position:relative}.category-sidebar .sidebar-header{padding:var(--space-md);border-bottom:1px solid var(--border-secondary);margin-bottom:var(--space-xs);justify-content:space-between;align-items:center;height:30px;display:flex}.category-sidebar .sidebar-header h3{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.category-sidebar .sidebar-header button{color:var(--text-primary);cursor:pointer;transition:opacity var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;border-radius:50%;width:42px;min-height:42px;padding:0;font-size:16px;position:relative}.category-sidebar .category-search-box{padding:var(--space-xs);flex-direction:row;display:flex;position:relative}.category-sidebar .category-search-box .jn-text-field-control{background:var(--background-tertiary);border-radius:var(--border-radius-large);height:20px}.category-sidebar .category-search-box button{color:var(--text-secondary);cursor:pointer;transition:opacity var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;justify-content:center;margin-left:5px;padding:0;font-size:16px}.category-sidebar .category-search-box button:hover{color:var(--text-primary);background:0 0}.category-sidebar .tree-container{padding:var(--space-xs);margin:var(--space-xs);background-color:var(--background-tertiary);border:1px solid var(--border-secondary);border-radius:var(--border-radius-large);flex:1;overflow-y:auto}.category-sidebar .tree-container .loading-container{padding:var(--space-xxl);justify-content:center;align-items:center;gap:var(--space-md);color:var(--text-secondary);flex-direction:column;display:flex}.category-sidebar .tree-container .loading-container .loading-spinner{border:3px solid var(--border-secondary);border-top-color:var(--accent-blue);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.category-sidebar .tree-container .no-result{color:var(--text-secondary)}.category-sidebar .tree-container .loading-error{padding:var(--space-xl);color:var(--text-primary);background:var(--background-secondary);border-radius:var(--border-radius-large);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.category-sidebar .tree-container .loading-error h2{font-size:var(--font-size-body)}.category-sidebar .tree-container .loading-error p{color:var(--text-secondary);font-style:italic}.category-sidebar .tree-container .tree-node{position:relative}.category-sidebar .tree-container .tree-children{border-left:1px solid var(--border-secondary);margin-left:20px;padding-left:10px;position:relative}.category-sidebar .tree-container .tree-item{cursor:pointer;border-radius:var(--border-radius-medium);color:var(--text-secondary);-webkit-user-select:none;user-select:none;align-items:center;height:28px;margin-top:4px;padding:4px 8px;font-size:.95rem;transition:background-color .15s,color .15s;display:flex;position:relative}.category-sidebar .tree-container .tree-children .tree-item:before{content:"";background-color:var(--border-secondary);width:10px;height:1px;position:absolute;top:50%;left:-10px}.category-sidebar .tree-container .tree-item:hover{background-color:var(--fill-secondary-translucent);color:var(--text-primary)}.category-sidebar .tree-container .tree-item.selected{background-color:var(--accent-blue);color:#fff;font-weight:var(--font-weight-medium)}.category-sidebar .tree-container .empty-tag{background-color:var(--fill-secondary);color:var(--text-tertiary);border-radius:4px;margin-left:auto;padding:2px 6px;font-size:.75rem;line-height:1}.category-sidebar .tree-container .tree-item.selected .empty-tag{color:#fff;background-color:#fff3}.category-sidebar .tree-container .expand-icon{opacity:.7;justify-content:center;align-items:center;width:20px;min-width:20px;height:20px;margin-right:2px;font-size:.7rem;transition:opacity .15s,transform .15s;display:flex}.category-sidebar .tree-container .expand-icon.visible{opacity:1;cursor:pointer}.category-sidebar .tree-container .expand-icon.visible:hover{opacity:1;transform:scale(1.2)}.category-sidebar .tree-container .expand-icon:not(.visible){cursor:default;opacity:0}.category-sidebar .tree-container .folder-icon{color:var(--text-tertiary);align-items:center;min-width:18px;margin-right:6px;font-size:.9rem;transition:color .15s;display:flex}.category-sidebar .tree-container .tree-item:hover .folder-icon{color:var(--text-secondary)}.category-sidebar .tree-container .tree-item.selected .folder-icon{color:#ffffffe6}.category-sidebar .tree-container .node-name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.95rem;overflow:hidden}.tree-children{position:relative}.category-sidebar .sidebar-resizer{cursor:col-resize;z-index:10;width:4px;height:100%;transition:background-color .2s;position:absolute;top:0;right:-4px}.category-sidebar .sidebar-resizer:hover,.category-sidebar .sidebar-resizer:active{background-color:var(--border-secondary)}.confirmation-dialog-box-component .overlay-backdrop{z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirmation-dialog-box-component .confirmation-dialog-box{background:var(--background-secondary);border-radius:var(--border-radius-large);width:90%;max-width:500px;box-shadow:0 20px 60px #00000080}.confirmation-dialog-box-component .confirmation-dialog-box .dialog-header{padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--border-secondary)}.confirmation-dialog-box-component .confirmation-dialog-box .dialog-header h2{font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.confirmation-dialog-box-component .confirmation-dialog-box .dialog-content{padding:var(--space-xl)}.confirmation-dialog-box-component .confirmation-dialog-box .dialog-footer{padding:var(--space-sm);border-top:1px solid var(--border-secondary);justify-content:center;gap:var(--space-xl);display:flex}.product-table-container{background-color:var(--background-secondary);border:1px solid var(--border-secondary);border-radius:var(--border-radius-large);flex-direction:column;flex:1;display:flex;overflow:auto}.products-table{border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:100%;font-size:.9rem}.products-table th{z-index:1;background-color:var(--background-tertiary);color:var(--text-secondary);font-weight:var(--font-weight-medium);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;border-bottom:1px solid var(--border-secondary);padding:12px 16px;transition:background-color .2s;position:relative;top:0}.products-table td{text-align:left;border-bottom:1px solid var(--border-secondary);color:var(--text-primary);padding:12px 16px}.products-table tbody tr:nth-child(2n){background-color:var(--background-tertiary)}.products-table tbody tr:hover{background-color:var(--fill-secondary-translucent)}.products-table .th-resizer{cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;z-index:2;width:4px;height:100%;position:absolute;top:0;right:0}.products-table .th-resizer:hover,.products-table th:hover .th-resizer{background-color:var(--border-secondary);opacity:.5}.products-table-header-context-menu{background-color:var(--background-secondary);border:1px solid var(--border-secondary);border-radius:var(--border-radius-medium);z-index:1000;flex-direction:column;gap:2px;min-width:160px;padding:4px;display:flex;position:fixed;box-shadow:0 4px 12px #0003}.products-table-header-context-menu .context-menu-header{color:var(--text-tertiary);text-transform:uppercase;border-bottom:1px solid var(--border-secondary);margin-bottom:4px;padding:8px 12px;font-size:.8rem;font-weight:600}.products-table-header-context-menu .context-menu-item{cursor:pointer;border-radius:var(--border-radius-small);color:var(--text-primary);align-items:center;gap:8px;padding:4px 12px;transition:background-color .1s;display:flex}.products-page{box-sizing:border-box;background-color:var(--background-primary);height:100vh;padding-top:70px;display:flex;overflow:hidden}.products-page .context-menu{background-color:var(--background-secondary);border:1px solid var(--border-secondary);border-radius:var(--border-radius-medium);z-index:1000;flex-direction:column;gap:2px;min-width:160px;padding:4px;display:flex;position:fixed;box-shadow:0 4px 12px #0003}.products-page .context-menu .context-menu-item{cursor:pointer;border-radius:var(--border-radius-small);color:var(--text-primary);align-items:center;gap:8px;padding:8px 12px;font-size:.9rem;transition:background-color .1s;display:flex}.products-page .context-menu .context-menu-item:hover{background-color:var(--fill-secondary-translucent)}.products-page .context-menu .context-menu-divider{background-color:var(--border-secondary);height:1px;margin:4px 8px}.products-page .content-area{background-color:var(--background-primary);flex-direction:column;flex:1;display:flex;overflow:hidden}.products-page .content-area .content-header{padding:var(--space-md) var(--space-2xl);border-bottom:1px solid var(--border-secondary);background:var(--background-secondary);flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;height:30px;display:flex}.products-page .content-area .content-header .header-left{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex;overflow:hidden}.products-page .content-area .content-header .header-left span{font-size:clamp(1rem, 1.5rem - var(--font-weight-bold), var(--font-size-title2));font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.products-page .content-area .content-header .header-actions{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.products-page .content-area .content-header .region-selector{min-width:160px}.products-page .content-area .content-wrapper{flex-direction:row;flex:auto;width:100%;min-height:0;display:flex;overflow:hidden}.products-page .content-area .content-wrapper.layout-bottom{flex-direction:column}.products-page .content-area .content-body{min-width:0;padding:var(--space-xl);height:calc(100vh - 70px - 63px - 2 * var(--space-xl));min-width:0;padding:var(--space-xl);height:calc(100vh - 70px - 63px - 2 * var(--space-xl));flex-direction:column;flex:1;display:flex;overflow:auto}.products-page .content-area .content-body .products-toolbar{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;gap:var(--space-md);background:var(--background-secondary);border-radius:var(--border-radius-large);flex-shrink:0;padding:10px;display:flex}.products-page .content-area .content-body .products-toolbar .search-group{flex-direction:row;display:flex}.products-page .content-area .content-body .products-toolbar .search-group .search-bar{flex-direction:row;margin-right:20px;display:flex}.products-page .content-area .content-body .products-toolbar .search-group .search-bar .jn-text-field--sm .jn-text-field-control{background:var(--background-tertiary);border-radius:var(--border-radius-large);height:20px}.products-page .content-area .content-body .products-toolbar .search-group .search-bar button{color:var(--text-secondary);cursor:pointer;transition:opacity var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;justify-content:center;margin-left:5px;padding:0;font-size:16px}.products-page .content-area .content-body .products-toolbar .search-group .search-bar button:hover{color:var(--text-primary)}.products-page .content-area .content-body .products-toolbar .search-group .filter-button-wrapper{position:relative}.products-page .content-area .content-body .products-toolbar .search-group .filter-button-wrapper .filter-badge{background:var(--accent-red,#dc3545);border:2px solid var(--background-primary);border-radius:50%;width:8px;height:8px;position:absolute;top:-4px;right:-4px}.products-page .content-area .content-body .products-toolbar .search-group .filter-button-wrapper .filter-menu{margin-top:var(--space-md);z-index:1000;background:var(--background-secondary);border:1px solid var(--border-secondary);border-radius:var(--border-radius-medium);padding:var(--space-lg) 5px var(--space-lg) var(--space-lg);min-width:320px;max-width:450px;position:absolute;top:100%;left:0;box-shadow:0 8px 24px #0000004d}.products-page .content-area .content-body .products-toolbar .search-group .filter-button-wrapper .filter-menu .filter-menu-header{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-secondary);flex-direction:row;justify-content:space-between;align-items:center;display:flex}.products-page .content-area .content-body .products-toolbar .search-group .filter-button-wrapper .filter-menu .filter-menu-header h3{font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.products-page .content-area .content-body .products-toolbar .search-group .filter-button-wrapper .filter-menu .filter-menu-content{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-height:700px;padding-right:15px;display:grid;overflow-y:scroll}.products-page .content-area .content-body .products-toolbar .toolbar-info{align-items:center;gap:var(--space-sm);color:var(--text-tertiary);font-size:.85rem;display:flex}.products-page .content-area .content-body .products-toolbar .toolbar-info .products-count{color:var(--text-secondary)}.products-page .content-area .content-body .products-toolbar .toolbar-info .loading-text{color:var(--accent-blue)}.products-page .content-area .content-body .products-toolbar .toolbar-info .error-text{color:var(--danger-text)}.products-page .content-area .content-body .loading-container{padding:var(--space-xxl);justify-content:center;align-items:center;gap:var(--space-md);color:var(--text-secondary);flex-direction:column;display:flex}.products-page .content-area .content-body .loading-container .loading-spinner{border:3px solid var(--border-secondary);border-top-color:var(--accent-blue);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.products-page .content-area .content-body .error-container{padding:var(--space-xl);color:var(--text-primary);background:var(--background-secondary);border-radius:var(--radius-large);flex-direction:column;justify-content:center;align-items:center;display:flex}.products-page .content-area .content-body .error-container .error-text{text-align:center;margin-bottom:20px}.products-page .content-area .content-body .error-container p{color:var(--text-secondary);margin:0;padding:0;font-style:italic}.products-page .content-area .content-body .error-container h2{margin:0;padding:0}.image-upload-dialog{flex-direction:column;gap:16px;display:flex}.image-upload-dialog .file-input-wrapper{align-items:center;gap:12px;display:flex}.image-upload-dialog .file-input-label{background-color:var(--fill-primary);color:var(--text-on-primary);border-radius:var(--radius-medium);cursor:pointer;padding:10px 16px;font-weight:500;transition:background-color .2s;display:inline-block}.image-upload-dialog .file-input-label:hover{background-color:var(--fill-primary-hover)}.image-upload-dialog .selected-file-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:.9rem;overflow:hidden}.image-upload-dialog .image-preview-container{background-color:var(--background-secondary);border-radius:var(--radius-medium);border:1px solid var(--border-secondary);justify-content:center;padding:16px;display:flex}.image-upload-dialog .image-preview{object-fit:contain;border-radius:var(--radius-small);max-width:100%;max-height:200px}
