@font-face{font-family:inter;src:url(/fonts/Inter-variable.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:inter-italic;src:url(/fonts/Inter-Italic-variable.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:code;src:url(/fonts/Inconsolata-variable.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:pixel;src:url(/fonts/BitcountSingle-variable.woff2) format("woff2");font-weight:100 900;font-display:swap}:root{--font-mono: code, monospace;--font-sans: inter, sans-serif;--font-sans-italic: inter-italic, sans-serif;--font-serif: pixel, serif;--radius: 8px}:root[data-theme=light]{--card: #ffffff;--ring: #D48A2E;--input: #D4D4D4;--muted: #F5F5F5;--accent: #D48A2E;--border: #E0E0E0;--chart-1: #D48A2E;--chart-2: #5A5A5A;--chart-3: #87ceeb;--chart-4: #ff99cc;--chart-5: #33cc33;--popover: #ffffff;--primary: #D48A2E;--sidebar: #F5F5F5;--secondary: #5A5A5A;--background: #F9F9FA;--foreground: #333333;--destructive: #ef4444;--sidebar-ring: #D48A2E;--sidebar-accent: #D48A2E;--sidebar-border: #E0E0E0;--card-foreground: #333333;--sidebar-primary: #D48A2E;--muted-foreground: #6e6e6e;--accent-foreground: #ffffff;--popover-foreground: #333333;--primary-foreground: #ffffff;--sidebar-foreground: #333333;--secondary-foreground: #ffffff;--destructive-foreground: #ffffff;--sidebar-accent-foreground: #ffffff;--sidebar-primary-foreground: #ffffff}:root[data-theme=dark]{--card: #2f3436;--ring: #D48A2E;--input: #444444;--muted: #444444;--accent: #D48A2E;--border: #444444;--chart-1: #D48A2E;--chart-2: #87ceeb;--chart-3: #66d9ef;--chart-4: #ff99cc;--chart-5: #ffcc00;--popover: #2f3436;--primary: #D48A2E;--sidebar: #1a1d23;--secondary: #87ceeb;--background: #1a1d23;--foreground: #e5e5e5;--destructive: #ef4444;--sidebar-ring: #D48A2E;--sidebar-accent: #D48A2E;--sidebar-border: #444444;--card-foreground: #e5e5e5;--sidebar-primary: #D48A2E;--muted-foreground: #a3a3a3;--accent-foreground: #000000;--popover-foreground: #e5e5e5;--primary-foreground: #000000;--sidebar-foreground: #e5e5e5;--secondary-foreground: #000000;--destructive-foreground: #ffffff;--sidebar-accent-foreground: #000000;--sidebar-primary-foreground: #000000}.je-theme-switcher{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:.95em}.je-theme-label{font-weight:500;color:var(--muted-foreground)}.je-theme-select{padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--foreground);font-family:inherit}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: var(--primary);--color-primary-hover: color-mix(in srgb, var(--primary) 80%, black 20%);--color-bg: var(--background);--color-surface: var(--card);--color-text: var(--foreground);--color-text-secondary: var(--muted-foreground);--color-border: var(--border);--color-sidebar-bg: var(--sidebar);--color-sidebar-text: var(--sidebar-foreground);--color-sidebar-active: var(--sidebar-primary);--sidebar-width: 260px;--header-height: 64px}html,body{height:100%;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}#app{display:flex;height:100vh}h1,h2{font-family:var(--font-serif);font-weight:300}.sidebar{width:var(--sidebar-width);background:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;transition:transform .3s ease}@media(max-width:767px){.sidebar{position:fixed;top:0;left:0;height:100vh;z-index:40;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}}.sidebar-logo{padding:20px 24px;font-size:1.25rem;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-nav{flex:1;padding:16px 0}.sidebar-nav a{display:flex;align-items:center;gap:12px;padding:10px 24px;color:var(--color-sidebar-text);text-decoration:none;font-size:.9rem;transition:background .15s,color .15s}.sidebar-nav a:hover{background:#ffffff0f;color:#fff}.sidebar-nav a.active{background:var(--color-sidebar-active);color:#fff}.sidebar-footer{padding:16px 24px;border-top:1px solid rgba(255,255,255,.1);font-size:.8rem}.main{flex:1;display:flex;flex-direction:column;min-width:0}.header{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0;position:relative;z-index:20}.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;background:transparent;border:none;cursor:pointer;padding:0;gap:5px}.hamburger-btn span{display:block;width:24px;height:2px;background:var(--color-text);border-radius:2px;transition:all .2s}.mobile-backdrop{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:30;opacity:0;pointer-events:none;transition:opacity .3s}.mobile-backdrop.visible{opacity:1;pointer-events:auto}body.mobile-drawer-open{overflow:hidden}.header-title{font-size:1.1rem;font-weight:600}.header-user{display:flex;align-items:center;gap:12px}.header-user img{width:32px;height:32px;border-radius:50%}.header-user-name{font-size:.9rem;color:var(--color-text-secondary)}.content{flex:1;padding:24px;overflow-y:auto}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn-outline:hover{background:var(--color-bg)}.lang-switcher{display:inline-flex;gap:4px}.lang-switcher button{background:transparent;border:1px solid var(--color-border);border-radius:4px;padding:4px 8px;font-size:.75rem;cursor:pointer;color:var(--color-text-secondary)}.lang-switcher button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.login-page{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--color-bg)}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:40px;width:100%;max-width:400px;text-align:center}.login-card h1{font-size:1.5rem;margin-bottom:8px}.login-card p{color:var(--color-text-secondary);margin-bottom:24px;font-size:.9rem}.login-card input{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;margin-bottom:12px}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--color-text-secondary);font-size:.8rem}.login-divider:before,.login-divider:after{content:"";flex:1;border-top:1px solid var(--color-border)}@media(max-width:767px){.hamburger-btn{display:flex}.mobile-backdrop{display:block}.header{padding:0 16px}.content{padding:16px}h1,h2{font-size:1.5rem}h3{font-size:1.1rem}.wizard-content{padding:16px}.billing-page,.gdpr-page{max-width:100%}.card{padding:16px}.btn{padding:8px 16px;font-size:.85rem}.btn-sm{padding:6px 10px;font-size:.75rem}.form-input,.form-select,.form-textarea{padding:10px 12px;font-size:.9rem}.login-card{padding:24px}.editor-controls-panel,.editor-preview-panel{padding:16px}}@media(min-width:768px)and (max-width:1023px){.content{padding:20px}.billing-current-card{grid-template-columns:repeat(2,1fr)}}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-danger{color:#dc2626;border-color:#dc2626}.btn-danger:hover{background:#dc2626;color:#fff}.btn-success{background:#16a34a!important;border-color:#16a34a!important}.stores-page{display:flex;flex-direction:column;gap:24px}.stores-table a{color:var(--color-primary);text-decoration:none}.store-platform-cell{display:inline-flex;align-items:center;gap:8px}.store-platform-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:var(--color-bg);font-size:.95rem}.stores-error-row td{padding-top:0}.stores-error-message{color:#b91c1c;font-size:.85rem}.stores-connect-section{display:flex;flex-direction:column;gap:16px}.stores-connect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.store-connect-card{display:flex;flex-direction:column;gap:16px;padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px}.store-connect-card-header{display:flex;align-items:flex-start;gap:12px}.store-connect-card-header h4{margin-bottom:4px}.product-picker{position:relative}.product-picker-input-row{display:flex;gap:8px}.product-picker-clear{white-space:nowrap}.product-picker-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:20;max-height:280px;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 16px 32px #0f172a1f}.product-picker-option{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;border:none;border-bottom:1px solid var(--color-border);background:transparent;text-align:left;cursor:pointer}.product-picker-option:last-child{border-bottom:none}.product-picker-option:hover{background:var(--color-bg)}.product-picker-thumb{width:44px;height:44px;border-radius:8px;overflow:hidden;background:var(--color-bg);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.product-picker-thumb img{width:100%;height:100%;object-fit:cover}.product-picker-meta{display:flex;flex-direction:column;gap:4px}.product-picker-title{font-weight:600}.product-picker-subtitle,.product-picker-empty{color:var(--color-text-secondary);font-size:.85rem}.product-picker-empty{padding:12px 14px}.shoppable-source-toggle{display:flex;flex-wrap:wrap;gap:8px}.shoppable-source-option{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);cursor:pointer}.shoppable-source-option input{margin:0}.feeds-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.feeds-table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.feeds-table th,.feeds-table td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--color-border);font-size:.9rem}.feeds-table th{background:var(--color-bg);font-weight:600;font-size:.8rem;text-transform:uppercase;color:var(--color-text-secondary)}.feeds-table tbody tr:hover{background:var(--color-bg)}.feeds-table tbody tr:last-child td{border-bottom:none}.feed-actions-cell{display:flex;gap:6px}.feed-status{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.8rem;font-weight:500}.status-active{background:#dcfce7;color:#16a34a}.status-inactive{background:#fee2e2;color:#dc2626}.status-disconnected{background:#e5e7eb;color:#4b5563}.status-error{background:#fef2f2;color:#b91c1c}.feeds-empty{text-align:center;padding:60px 20px;color:var(--color-text-secondary);background:var(--color-surface);border:1px dashed var(--color-border);border-radius:8px}@media(max-width:767px){.feeds-table,.analytics-table{display:block;background:transparent;border:none}.feeds-table thead,.analytics-table thead{display:none}.feeds-table tbody,.analytics-table tbody{display:block}.feeds-table tr,.analytics-table tr{display:block;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;margin-bottom:12px;padding:12px 16px}.feeds-table td,.analytics-table td{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-border);text-align:left}.feeds-table td:last-child,.analytics-table td:last-child{border-bottom:none}.feeds-table td:before,.analytics-table td:before{content:attr(data-label);font-weight:600;color:var(--color-text-secondary);font-size:.85rem;margin-right:12px}.feeds-table td[data-label=""]:before,.analytics-table td[data-label=""]:before{display:none}.feed-actions-cell{flex-direction:column;gap:8px}.feed-actions-cell .btn{width:100%}}.feed-wizard{max-width:900px;margin:0 auto}.wizard-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.wizard-header h2{margin:0}.wizard-steps{display:flex;gap:4px;margin-bottom:32px}.wizard-step{flex:1;display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:.85rem;color:var(--color-text-secondary);transition:all .2s}.wizard-step.active{border-color:var(--color-primary);color:var(--color-primary);background:#eff6ff}.wizard-step.completed{border-color:#16a34a;color:#16a34a;background:#f0fdf4}.wizard-step-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--color-border);font-size:.75rem;font-weight:700;color:var(--color-text-secondary)}.wizard-step.active .wizard-step-number{background:var(--color-primary);color:#fff}.wizard-step.completed .wizard-step-number{background:#16a34a;color:#fff}.wizard-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:32px}.wizard-nav{display:flex;justify-content:space-between;margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}.layout-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:12px}@media(max-width:599px){.layout-selector{grid-template-columns:repeat(2,1fr);gap:12px}}@media(max-width:399px){.layout-selector{grid-template-columns:1fr}}.layout-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;background:var(--color-bg);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;font-size:.9rem}.layout-option:hover{border-color:var(--color-primary)}.layout-option.selected{border-color:var(--color-primary);background:#eff6ff}.layout-preview{width:80px;height:60px;border-radius:4px}.layout-preview-grid{background:linear-gradient(to right,#94a3b8 30%,transparent 30%,transparent 35%,#94a3b8 35%,#94a3b8 65%,transparent 65%,transparent 70%,#94a3b8 70%) 0 0 / 100% 45%,linear-gradient(to right,#94a3b8 30%,transparent 30%,transparent 35%,#94a3b8 35%,#94a3b8 65%,transparent 65%,transparent 70%,#94a3b8 70%) 0 55% / 100% 45%;background-repeat:no-repeat}.layout-preview-masonry{background:linear-gradient(#94a3b8,#94a3b8) 0 0 / 30% 60%,linear-gradient(#94a3b8,#94a3b8) 35% 0 / 30% 40%,linear-gradient(#94a3b8,#94a3b8) 70% 0 / 30% 70%,linear-gradient(#94a3b8,#94a3b8) 0 65% / 30% 35%,linear-gradient(#94a3b8,#94a3b8) 35% 45% / 30% 55%;background-repeat:no-repeat}.layout-preview-carousel{background:linear-gradient(#94a3b8,#94a3b8) 0 10% / 40% 80%,linear-gradient(#94a3b8,#94a3b8) 45% 10% / 40% 80%,linear-gradient(#94a3b8,#94a3b8) 90% 10% / 15% 80%;background-repeat:no-repeat}@media(max-width:767px){.analytics-controls{flex-direction:column;align-items:stretch!important}.analytics-controls .form-input{max-width:100%!important}.analytics-controls .btn{width:100%;justify-content:center}.analytics-summary{grid-template-columns:repeat(2,1fr)!important}}.feed-editor{display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 48px)}.editor-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.editor-header h2{flex:1;margin:0;font-size:1.1rem}.editor-tabs{display:flex;gap:2px;background:var(--color-border);border-radius:8px 8px 0 0;padding:2px 2px 0}.editor-tab{flex:1;padding:10px 16px;border:none;background:var(--color-bg);font-size:.85rem;font-weight:500;cursor:pointer;color:var(--color-text-secondary);border-radius:6px 6px 0 0;transition:all .15s}.editor-tab:hover{color:var(--color-text)}.editor-tab.active{background:var(--color-surface);color:var(--color-primary)}.editor-body{flex:1;min-height:0;background:var(--color-surface);border:1px solid var(--color-border);border-top:none;border-radius:0 0 8px 8px}.editor-split{display:grid;grid-template-columns:1fr 1fr;gap:0;height:100%}.editor-controls-panel{padding:24px;overflow-y:auto;border-right:1px solid var(--color-border)}.editor-preview-panel{padding:24px;overflow-y:auto;background:var(--color-bg)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.85rem;font-weight:500;margin-bottom:6px;color:var(--color-text)}.form-input,.form-select,.form-textarea{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;font-family:var(--font-sans);background:var(--color-surface);color:var(--color-text);transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.form-textarea{resize:vertical;font-family:Menlo,Monaco,Courier New,monospace;font-size:.85rem;line-height:1.5}.form-range{width:calc(100% - 50px);vertical-align:middle}.range-value{display:inline-block;width:45px;text-align:right;font-size:.85rem;color:var(--color-text-secondary)}.form-checkbox label{display:flex;align-items:center;gap:8px;cursor:pointer}.form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.layout-selector-inline{display:flex;gap:6px}.layout-btn{flex:1;padding:8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--secondary);cursor:pointer;font-size:.85rem;transition:all .15s}.layout-btn:hover{border-color:var(--color-primary)}.layout-btn.selected{border-color:var(--color-primary);background:#eff6ff;color:var(--color-primary);font-weight:500}.style-controls,.settings-controls{max-height:calc(100vh - 280px);overflow-y:auto}.css-editor h3{margin-bottom:8px}.css-description{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:16px}.preview-panel{height:100%;display:flex;flex-direction:column}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.preview-header h3{margin:0;font-size:.95rem}.preview-devices{display:flex;gap:4px}.preview-viewport{flex:1;overflow-y:auto;transition:max-width .3s ease}.preview-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:16px;min-height:200px}.je-preview-item{overflow:hidden}.je-hover-fade:hover{opacity:.8;transition:opacity .2s}.je-hover-zoom:hover img,.je-hover-zoom:hover .je-preview-placeholder{transform:scale(1.05);transition:transform .3s}.je-preview-item img,.je-preview-item .je-preview-placeholder{transition:transform .3s,opacity .2s}.embed-code-section{max-height:calc(100vh - 280px);overflow-y:auto}.embed-description{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:20px}.embed-tabs{display:flex;gap:2px;margin-bottom:0}.embed-tab{padding:8px 16px;border:1px solid var(--color-border);border-bottom:none;border-radius:6px 6px 0 0;background:var(--color-bg);cursor:pointer;font-size:.85rem;color:var(--color-text-secondary);transition:all .15s}.embed-tab.active{background:var(--color-surface);color:var(--color-primary);border-color:var(--color-border);border-bottom-color:var(--color-surface);font-weight:500}.embed-tab-content{border:1px solid var(--color-border);border-radius:0 0 8px 8px;padding:16px;margin-bottom:20px}.embed-instructions{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:12px}.embed-code-block{position:relative;background:#1e293b;border-radius:6px;padding:16px}.embed-code-block pre{margin:0;overflow-x:auto}.embed-code-block code{color:#e2e8f0;font-family:Menlo,Monaco,Courier New,monospace;font-size:.8rem;line-height:1.6;white-space:pre-wrap;word-break:break-all}.embed-code-block .embed-copy-btn{position:absolute;top:8px;right:8px;background:#ffffff1a;color:#e2e8f0;border-color:#fff3}.embed-code-block .embed-copy-btn:hover{background:#fff3}.embed-api-key{margin-top:20px;padding:16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px}.embed-api-key label{display:block;font-size:.85rem;font-weight:500;margin-bottom:8px}.embed-key-row{display:flex;align-items:center;gap:12px}.embed-key-value{flex:1;padding:8px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-family:Menlo,Monaco,Courier New,monospace;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:599px){.wizard-steps{flex-direction:column;gap:8px}.wizard-step{width:100%}.wizard-step-label{display:inline}}.moderation-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}@media(max-width:767px){.moderation-grid{grid-template-columns:1fr}}@media(min-width:768px)and (max-width:1023px){.moderation-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.moderation-toolbar{flex-direction:column;gap:12px}.moderation-toolbar .form-select,.moderation-batch-actions{width:100%}.moderation-batch-actions .btn{flex:1}}.ig-connection-status{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--color-border);border-radius:8px;margin-bottom:16px}.ig-connection-status.ig-connected{background:#f0fdf4;border-color:#86efac}.ig-connection-status.ig-not-connected{flex-direction:column;align-items:flex-start;background:var(--color-bg)}.ig-status-dot{width:8px;height:8px;border-radius:50%;background:#16a34a;flex-shrink:0}.ig-status-text{flex:1;font-size:.9rem}.ig-error{padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.85rem;margin-bottom:16px}@media(max-width:1024px){.editor-split{grid-template-columns:1fr}.editor-preview-panel{border-top:1px solid var(--color-border);max-height:400px}.editor-controls-panel{border-right:none}}.maintenance-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px;padding:1rem 1.5rem;margin-bottom:2rem;box-shadow:0 4px 12px #667eea4d}.maintenance-banner-content{display:flex;align-items:flex-start;gap:1rem}.maintenance-banner i{font-size:1.5rem;flex-shrink:0;margin-top:.125rem}.maintenance-banner strong{display:block;font-size:1rem;margin-bottom:.25rem}.maintenance-banner p{margin:0;font-size:.875rem;opacity:.95;line-height:1.4}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s ease;padding:16px}.modal-overlay.visible{opacity:1;pointer-events:auto}.modal{background:var(--color-surface);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;transform:scale(.95);transition:transform .2s ease}.modal-overlay.visible .modal{transform:scale(1)}.modal.size-sm{max-width:400px;width:100%}.modal.size-md{max-width:600px;width:100%}.modal.size-lg{max-width:800px;width:100%}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--color-border);flex-shrink:0}.modal-title{font-size:1.25rem;font-weight:600;margin:0}.modal-close-btn{background:transparent;border:none;font-size:1.5rem;line-height:1;color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .15s}.modal-close-btn:hover{background:var(--color-bg);color:var(--color-text)}.modal-body{padding:24px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--color-border);flex-shrink:0}@media(max-width:767px){.modal-overlay{padding:8px;align-items:flex-end}.modal{max-height:95vh;border-radius:16px 16px 0 0}.modal.size-sm,.modal.size-md,.modal.size-lg{max-width:100%}.modal-header,.modal-body,.modal-footer{padding:16px}}.modal.type-settings .modal-body{display:flex;flex-direction:column;gap:24px}.settings-section{display:flex;flex-direction:column;gap:16px}.settings-section-title{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0}.settings-section-content{display:flex;flex-direction:column;gap:12px}.profile-header{display:flex;align-items:center;gap:16px}.profile-avatar{width:64px;height:64px;border-radius:50%;background:var(--color-bg);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar-placeholder{font-size:1.5rem;color:var(--color-text-secondary)}.profile-info{flex:1}.profile-name{font-weight:600;font-size:1.1rem}.profile-email{font-size:.9rem;color:var(--color-text-secondary)}.avatar-upload{display:flex;align-items:center;gap:8px}.avatar-upload input[type=file]{display:none}.avatar-upload-label{font-size:.85rem;color:var(--color-primary);cursor:pointer}.avatar-upload-label:hover{text-decoration:underline}.theme-options{display:flex;flex-direction:column;gap:8px}.theme-option{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .15s}.theme-option:hover{border-color:var(--color-primary)}.theme-option.selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent)}.theme-option input[type=radio]{accent-color:var(--color-primary)}.theme-option-label{flex:1;font-weight:500}.theme-option-desc{font-size:.85rem;color:var(--color-text-secondary)}.language-options{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:8px}.language-option{padding:8px 16px;border:2px solid var(--color-border);border-radius:6px;background:transparent;cursor:pointer;font-size:.9rem;transition:all .15s}.language-option:hover{border-color:var(--color-primary)}.language-option.selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.modal.type-alert .modal-body,.modal.type-confirm .modal-body{padding:24px;min-width:300px}.confirm-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.header-user-btn{display:flex;align-items:center;gap:12px;background:transparent;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s}.header-user-btn:hover{background:var(--color-bg)}.header-user-btn img{width:32px;height:32px;border-radius:50%}.header-user-name{font-size:.9rem;color:var(--color-text)}.modal-close-btn:focus-visible,.theme-option:focus-visible,.language-option:focus-visible,.header-user-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.modal-close-btn:focus,.theme-option:focus,.language-option:focus,.header-user-btn:focus{outline:2px solid var(--color-primary);outline-offset:2px}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.form-group label{display:block;font-size:.85rem;font-weight:600;color:var(--foreground)}.form-help{font-size:.8rem;color:var(--muted-foreground);margin-top:4px}.form-group-inline{display:flex;align-items:center;justify-content:space-between;gap:16px}.form-group-inline label{flex:1;margin-bottom:0}.form-input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;font-family:var(--font-sans);background:var(--card);color:var(--foreground);transition:all .15s ease}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}.form-input::placeholder{color:#888}.form-textarea{padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;font-family:var(--font-sans);background:var(--card);color:var(--foreground);resize:vertical;min-height:80px}.form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}.form-select{width:100%;padding:10px 36px 10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;font-family:var(--font-sans);background:var(--card);color:var(--foreground);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance: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='%235A5A5A' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius);font-size:.9rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all .15s ease;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:0 2px 4px #0000001a}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 90%,#000000);box-shadow:0 4px 8px #00000026}.btn-primary:active:not(:disabled){background:color-mix(in srgb,var(--primary) 80%,#000000);box-shadow:0 1px 2px #0000001a}.btn-outline{background:transparent;color:var(--foreground);border:1px solid var(--border);box-shadow:0 1px 2px #0000000d}.btn-outline:hover:not(:disabled){background:var(--muted);border-color:var(--secondary)}.btn-ghost{background:transparent;color:var(--foreground)}.btn-ghost:hover:not(:disabled){background:var(--muted)}.btn-sm{padding:6px 12px;font-size:.85rem}.btn-lg{padding:14px 28px;font-size:1rem}.btn-success{background:#22c55e;color:#fff}.radio-group{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:8px}.radio-option{position:relative}.radio-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.radio-option-label{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:2px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--foreground);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.radio-option-label:hover{border-color:var(--primary)}.radio-option input[type=radio]:checked+.radio-option-label{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.radio-option input[type=radio]:focus-visible+.radio-option-label{outline:2px solid var(--primary);outline-offset:2px}.radio-item{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .15s ease}.radio-item:hover{border-color:var(--primary)}.radio-item.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent)}.radio-item input[type=radio]{accent-color:var(--primary);width:18px;height:18px}.radio-item-label{flex:1;font-weight:500}.radio-item-desc{font-size:.85rem;color:var(--muted-foreground)}.segmented-group{display:inline-flex;background:var(--muted);border-radius:var(--radius);padding:4px;gap:4px}.segmented-option{position:relative}.segmented-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.segmented-option-label{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--muted-foreground);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.segmented-option input[type=radio]:checked+.segmented-option-label{background:var(--card);color:var(--foreground);box-shadow:0 1px 3px #0000001a}.segmented-option-label:hover{color:var(--foreground)}.form-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer}.form-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.form-checkbox label{cursor:pointer;-webkit-user-select:none;user-select:none}.form-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;background:var(--border);border-radius:3px;outline:none;cursor:pointer}.form-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:var(--primary);border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0003;transition:all .15s ease}.form-range::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #00000040}.form-range::-moz-range-thumb{width:18px;height:18px;background:var(--primary);border:none;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0003;transition:all .15s ease}.form-range::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #00000040}.range-value{display:inline-block;min-width:40px;text-align:center;font-size:.85rem;font-weight:500;color:var(--foreground);background:var(--muted);padding:4px 8px;border-radius:4px;margin-left:8px}
