:root{--bg-page:#f9fafb;--bg-card:#fff;--bg-muted:#f3f4f6;--bg-hover:#f9fafb;--bg-header:linear-gradient(135deg,#000,#1a1a1a);--bg-sidebar:linear-gradient(180deg,#000,#1a1a1a);--text-primary:#1f2937;--text-secondary:#6b7280;--text-muted:#9ca3af;--border-default:#f3f4f6;--border-medium:#e5e7eb;--border-strong:#d1d5db;--color-primary:#000;--color-primary-hover:#1a1a1a;--color-success:#10b981;--color-success-bg:#d1fae5;--color-success-text:#065f46;--color-warning:#f59e0b;--color-warning-bg:#fef3c7;--color-warning-text:#92400e;--color-danger:#ef4444;--color-danger-bg:#fee2e2;--color-danger-text:#991b1b;--color-blue:#3b82f6;--color-blue-bg:#dbeafe;--color-blue-text:#1e40af;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-card:0 1px 3px #0000000d;--shadow-card-hover:0 4px 12px #00000014;--transition-fast:0.2s cubic-bezier(0.4,0,0.2,1)}*{-webkit-text-size-adjust:100%;box-sizing:border-box}html{scroll-behavior:smooth}body,html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f9fafb;background:var(--bg-page);color:#1f2937;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}img{height:auto;max-width:100%}a,button,input[type=button],input[type=submit]{min-height:44px}input,select,textarea{font-size:16px}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid #111827;outline-offset:2px}:focus:not(:focus-visible){outline:none}a,button,input,select,textarea{transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.main-content{background:#f9fafb;background:var(--bg-page);margin-left:260px;min-height:100vh}@media (max-width:768px){body{font-size:16px;line-height:1.5}.main-content{margin-left:0;padding-top:calc(60px + env(safe-area-inset-top, 0))}.modal-open{overflow:hidden;position:fixed;width:100%}}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom,0)}.login-container{align-items:center;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);display:flex;justify-content:center;min-height:100vh;padding:24px}.login-card{background:#fff;border-radius:24px;box-shadow:0 24px 64px #0006,0 8px 16px #0003;max-width:420px;padding:48px;transition:all var(--transition-fast);width:100%}.login-header{margin-bottom:32px;text-align:center}.login-logo{display:block;height:64px;margin:0 auto 16px;object-fit:contain;width:64px}.login-title{color:var(--text-primary);font-size:32px;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.login-subtitle{color:var(--text-secondary);font-size:14px;letter-spacing:.01em;margin:0}.login-form{display:flex;flex-direction:column;gap:24px}.form-input{background:#fff}.forgot-password-link{margin-bottom:8px;margin-top:8px;text-align:right;width:100%}.link-button{background:none!important;border:none!important;color:var(--color-blue)!important;cursor:pointer;font-family:inherit;font-size:14px!important;font-weight:500!important;letter-spacing:.01em;padding:4px 0!important;text-decoration:underline!important;transition:color var(--transition-fast)}.link-button:hover:not(:disabled){color:var(--color-blue-text)!important;text-decoration:underline!important}.link-button:disabled{cursor:not-allowed;opacity:.5}.form-help-text{font-size:12px;margin-top:4px}.login-button{background:var(--color-primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.01em;margin-top:8px;padding:16px 32px;transition:all var(--transition-fast);width:100%}.login-button:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-card-hover)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.login-container{padding:max(16px,env(safe-area-inset-top,16px)) 16px max(16px,env(safe-area-inset-bottom,16px))}.login-card{border-radius:20px;padding:24px}.login-header{margin-bottom:24px}.login-title{font-size:28px}.login-form{gap:20px}.form-input{font-size:16px;padding:14px 16px}.login-button{min-height:52px;padding:16px 24px}}@media (max-width:480px){.login-card{border-radius:var(--radius-lg);padding:20px}.login-title{font-size:24px}.login-subtitle{font-size:13px}}.sidebar{background:var(--bg-sidebar);color:#fff;display:flex;flex-direction:column;height:100vh;left:0;padding-top:env(safe-area-inset-top,0);position:fixed;top:0;width:260px;z-index:1000}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:24px}.sidebar-logo-container{align-items:center;display:flex;flex:1 1;gap:12px}.sidebar-logo{height:32px;object-fit:contain;width:32px}.sidebar-title{color:#fff;font-size:20px;font-weight:500;letter-spacing:-.02em;margin:0}.sidebar-close{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:none;font-size:24px;justify-content:center;min-height:44px;min-width:44px;padding:8px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 0 calc(16px + env(safe-area-inset-bottom, 0))}.sidebar-section{margin-bottom:24px}.sidebar-category{color:#ffffff80;font-size:11px;font-weight:600;letter-spacing:.08em;margin-bottom:8px;padding:8px 24px;text-transform:uppercase}.sidebar-item{align-items:center;color:#fff9;display:flex;font-size:14px;gap:12px;letter-spacing:.01em;min-height:44px;padding:12px 24px;text-decoration:none;transition:all var(--transition-fast)}.sidebar-item:hover{background:#ffffff14;color:#fff}.sidebar-item.active{background:#ffffff1f;border-left:3px solid #fff;color:#fff;font-weight:500}.sidebar-item svg{flex-shrink:0}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:#0000}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.mobile-header{align-items:center;background:#000;border-bottom:1px solid #ffffff1a;display:none;height:60px;justify-content:space-between;left:0;padding:env(safe-area-inset-top,0) 16px 0;position:fixed;right:0;top:0;z-index:999}.mobile-header-title{color:#fff;font-size:18px;font-weight:500;margin:0}.mobile-menu-button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:24px;justify-content:center;min-height:44px;min-width:44px;padding:8px}.sidebar-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}.sidebar-overlay.open{display:block}@media (max-width:768px){.sidebar{left:-280px;transition:left .3s ease;width:280px}.sidebar.open{left:0}.mobile-header,.sidebar-close{display:flex}.main-content{margin-left:0!important;padding-top:calc(60px + env(safe-area-inset-top, 0))!important}.sidebar-item{font-size:15px;padding:14px 24px}.sidebar-category{font-size:12px;padding:10px 24px}}@media (max-width:480px){.sidebar{left:-100%;width:100%}.sidebar.open{left:0}}.stat-card-analytics{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:1.25rem;transition:all var(--transition-fast)}.stat-card-analytics:hover{box-shadow:var(--shadow-card-hover)}.stat-card-analytics.success{border-left:3px solid var(--color-success)}.stat-card-analytics.warning{border-left:3px solid var(--color-warning)}.stat-card-analytics.danger{border-left:3px solid var(--color-danger)}.stat-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.stat-card-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.stat-card-icon{font-size:1.25rem;opacity:.7}.stat-card-value{color:var(--text-primary);font-size:2rem;font-weight:700;line-height:1;margin-bottom:.5rem;overflow-wrap:break-word;word-break:break-word}.stat-card-change{align-items:center;display:flex;font-size:.875rem;gap:.25rem}.stat-card-change.positive{color:var(--color-success)}.stat-card-change.negative{color:var(--color-danger)}.stat-card-change.neutral{color:var(--text-muted)}.change-arrow,.change-value{font-weight:600}.change-label{color:var(--text-secondary);margin-left:.25rem}.chart-container{min-height:200px;width:100%}.chart-container .recharts-wrapper{font-family:inherit}.table-container{border-radius:var(--radius-sm);overflow-x:auto}.analytics-table{border-collapse:collapse;font-size:.875rem;width:100%}.analytics-table th{background:var(--bg-muted);border-bottom:1px solid var(--border-medium);color:var(--text-secondary);font-weight:500;padding:.75rem 1rem;text-align:left}.analytics-table td{border-bottom:1px solid var(--border-default);color:var(--text-primary);padding:.75rem 1rem}.analytics-table tbody tr:hover{background:var(--bg-hover)}.brand-cell{align-items:center;display:flex;gap:.5rem}.brand-name{font-weight:500}.verified-badge{background:var(--color-success-bg);color:var(--color-success-text);font-size:.625rem;padding:.125rem .375rem}.rate-badge,.verified-badge{border-radius:9999px;font-weight:600}.rate-badge{display:inline-block;font-size:.75rem;padding:.25rem .5rem}.rate-badge.good{background:var(--color-success-bg);color:var(--color-success-text)}.rate-badge.warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.rate-badge.danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.status-badge{border-radius:9999px;padding:.25rem .5rem}.status-badge.inactive{background:var(--bg-muted);color:var(--text-muted)}.alerts-list{gap:.75rem}.alerts-empty,.alerts-list{display:flex;flex-direction:column}.alerts-empty{align-items:center;color:var(--text-secondary);justify-content:center;padding:2rem}.alerts-empty-icon{font-size:2rem;margin-bottom:.5rem}.alert-item{align-items:center;background:var(--bg-card);border:1px solid var(--border-default);border-left:3px solid #0000;border-radius:var(--radius-sm);display:flex;gap:.75rem;padding:.75rem}.alert-item.critical{background:var(--color-danger-bg);border-left-color:var(--color-danger)}.alert-item.high{background:#fff7ed;border-left-color:#f97316}.alert-item.medium{background:var(--color-warning-bg);border-left-color:var(--color-warning)}.alert-item.low{background:var(--color-blue-bg);border-left-color:var(--color-blue)}.alert-icon{flex-shrink:0;font-size:1.25rem}.alert-content{flex:1 1;min-width:0}.alert-message{color:var(--text-primary);font-size:.875rem;line-height:1.4;margin:0}.alert-time{color:var(--text-secondary);font-size:.75rem}.severity-badge{border-radius:9999px;flex-shrink:0;font-size:.625rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.severity-badge.critical{background:var(--color-danger-bg);color:var(--color-danger-text)}.severity-badge.high{background:#ffedd5;color:#9a3412}.severity-badge.medium{background:var(--color-warning-bg);color:var(--color-warning-text)}.severity-badge.low{background:var(--color-blue-bg);color:var(--color-blue-text)}.activity-feed{display:flex;flex-direction:column;gap:.5rem}.activity-empty{color:var(--text-secondary);justify-content:center;padding:2rem}.activity-empty,.activity-item{align-items:center;display:flex}.activity-item{border-radius:6px;gap:.75rem;padding:.625rem;transition:background .15s ease}.activity-item:hover{background:var(--bg-hover)}.activity-item.counterfeit{background:#ef44440d}.activity-icon{flex-shrink:0;font-size:1rem}.activity-content{flex:1 1;min-width:0}.activity-message{color:var(--text-primary);font-size:.875rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-time{color:var(--text-secondary);font-size:.75rem}.top-products-list{display:flex;flex-direction:column;gap:.75rem}.products-empty{color:var(--text-secondary);justify-content:center;padding:2rem}.product-item,.products-empty{align-items:center;display:flex}.product-item{background:var(--bg-muted);border-radius:var(--radius-sm);gap:.75rem;padding:.75rem}.product-rank{color:var(--text-primary);font-size:.875rem;font-weight:700;min-width:2rem}.product-info{flex:1 1;min-width:0}.product-name{color:var(--text-primary);font-size:.875rem;font-weight:500;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-variant{color:var(--text-secondary);font-size:.75rem}.product-stats{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:.125rem}.verification-count{color:var(--text-muted);font-size:.75rem}.auth-rate{border-radius:4px;font-size:.75rem;font-weight:600;padding:.125rem .375rem}.auth-rate.good{background:var(--color-success-bg);color:var(--color-success-text)}.auth-rate.warning{background:var(--color-warning-bg);color:var(--color-warning-text)}@media (max-width:768px){.stat-card-analytics{padding:1rem}.stat-card-value{font-size:1.5rem}.analytics-table{font-size:.813rem}.analytics-table td,.analytics-table th{padding:.5rem .75rem}.alert-item,.product-item{padding:.625rem}}.app-layout,.dashboard-loading{background:var(--bg-page);display:flex;min-height:100vh}.dashboard-loading{align-items:center;justify-content:center}.loading-text{color:var(--text-muted);font-size:1.125rem}.dashboard-container{background:var(--bg-page);flex:1 1;margin-left:260px;min-height:100vh;padding-bottom:3rem}.dashboard-header{background:var(--bg-header);border-bottom-left-radius:32px;border-bottom-right-radius:32px;padding:1.5rem 2rem}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.welcome-text{color:#ffffffb3;font-size:.875rem;margin:0 0 .25rem}.user-name{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.header-actions{align-items:center;gap:1rem}.avatar-button{background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;padding:.625rem;transition:all var(--transition-fast)}.avatar-button:hover{background:#fff3}.dashboard-content{margin:0 auto;max-width:1400px;padding:1.5rem 2rem}.section-subtitle{color:var(--text-muted);font-size:.875rem}.api-url{font-size:.813rem;opacity:.7}.charts-row{grid-template-columns:2fr 1fr}.chart-card.large{min-height:340px}.chart-empty,.chart-loading{color:var(--text-secondary)}.quick-actions{display:flex;flex-direction:column;gap:.75rem}.quick-action-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.875rem 1rem;text-decoration:none;transition:all var(--transition-fast)}.quick-action-btn:hover{background:var(--bg-hover);border-color:var(--border-medium);transform:translateX(4px)}.quick-action-btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.quick-action-btn.primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.action-icon{font-size:1.25rem}.content-section{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-card);margin-top:1.5rem;padding:1.25rem}@media (max-width:1024px){.charts-row{grid-template-columns:1fr}}@media (max-width:768px){.dashboard-container{margin-left:0;padding-top:calc(60px + env(safe-area-inset-top, 0))}.dashboard-header{padding:1rem 1.25rem}.header-content{align-items:flex-start;flex-direction:column;gap:1rem}.header-actions{justify-content:space-between;width:100%}.user-name{font-size:1.25rem}.dashboard-content{padding:1rem 1.25rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.chart-card{padding:1rem}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.header-actions{flex-wrap:wrap;gap:.75rem}}.date-range-selector{background:var(--bg-muted);border-radius:var(--radius-sm);display:flex;gap:.5rem;padding:.25rem}.range-btn{background:#0000;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all var(--transition-fast)}.range-btn:hover{background:var(--bg-card);color:var(--text-primary)}.range-btn.active{background:var(--color-primary);color:#fff}.analytics-section{margin-bottom:2rem}.section-title{margin:0 0 1rem}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.charts-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.chart-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:1.25rem}.chart-card.full-width{grid-column:span 2;margin-bottom:1.5rem}.chart-title{border-bottom:1px solid var(--border-default);color:var(--text-primary);font-size:.938rem;font-weight:600;margin:0 0 1rem;padding-bottom:.75rem}.chart-empty,.chart-loading{align-items:center;color:var(--text-muted);display:flex;font-size:.875rem;justify-content:center;min-height:150px;padding:1rem;text-align:center}.chart-card{overflow-x:auto;overflow-y:visible}.error-banner{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem 1.25rem}.error-banner button{background:var(--color-danger);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.813rem;font-weight:500;padding:.5rem 1rem;transition:background var(--transition-fast)}.error-banner button:hover{background:#dc2626}.error-banner-actions{align-items:center;display:flex;gap:.75rem}.error-banner-actions .btn-primary{background:var(--color-primary);color:#fff}.error-banner-actions .btn-primary:hover{background:var(--color-primary-hover)}@media (max-width:1024px){.charts-row{grid-template-columns:1fr}.chart-card.full-width{grid-column:span 1}}@media (max-width:768px){.date-range-selector{justify-content:center;margin-top:1rem;width:100%}.stats-grid{gap:.75rem;grid-template-columns:repeat(2,1fr)}.chart-card{padding:1rem}.charts-row{gap:1rem}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.range-btn{font-size:.813rem;padding:.375rem .75rem}}.page-container{background:var(--bg-page);flex:1 1;margin-left:260px;min-height:100vh}.page-header{background:var(--bg-header);border-bottom-left-radius:32px;border-bottom-right-radius:32px;color:#fff;padding:60px 32px 32px}.page-title{color:#fff;font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.page-subtitle{color:#ffffffb3;font-size:14px;letter-spacing:.01em;margin:0}.page-content{padding:24px}.card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:24px;padding:16px;transition:box-shadow var(--transition-fast)}.card:hover{box-shadow:var(--shadow-card-hover)}.card-title{color:var(--text-primary);font-size:20px;font-weight:600;letter-spacing:-.01em;margin:0 0 20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:14px;letter-spacing:.01em}.form-input,.form-label{color:var(--text-primary)}.form-input{border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:16px;padding:14px 18px;transition:all var(--transition-fast)}.form-input,.form-input:focus{background:var(--bg-card)}.form-textarea{border:1px solid var(--border-medium);border-radius:var(--radius-md);color:var(--text-primary);font-family:Monaco,Menlo,Courier New,monospace;font-size:14px;padding:12px 16px;resize:vertical;transition:all var(--transition-fast)}.form-textarea:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-textarea:disabled{background:var(--bg-muted);cursor:not-allowed}.btn{border-radius:var(--radius-md);letter-spacing:.01em;padding:12px 24px}.btn-secondary{background:var(--bg-hover)}.btn-secondary:hover:not(:disabled){background:var(--bg-muted)}.submit-button{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;letter-spacing:.01em;margin-top:8px;padding:16px 32px;transition:all var(--transition-fast)}.submit-button:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-card-hover)}.submit-button:disabled{cursor:not-allowed;opacity:.6}.submit-button .spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.error-message{background:var(--color-danger-bg);border:1px solid #fecaca;border-radius:var(--radius-md)}.error-message,.success-message{font-size:14px;margin-top:16px;padding:12px 16px}.success-message{border:1px solid #a7f3d0}.empty-state,.loading-state{color:var(--text-secondary);font-size:16px;padding:40px;text-align:center}@media (max-width:768px){.page-container{margin-left:0;padding-top:calc(60px + env(safe-area-inset-top, 0))}.page-header{border-radius:0 0 24px 24px;padding:24px 16px}.page-title{font-size:24px}.page-subtitle{font-size:13px}.card,.page-content{padding:16px}.card{border-radius:var(--radius-md)}.card,.card-title{margin-bottom:16px}.card-title{font-size:18px}.form-input,.form-textarea{font-size:16px;padding:14px 16px}.btn{min-height:44px;padding:12px 20px}.submit-button{padding:16px 24px;width:100%}.empty-state,.loading-state{padding:24px}}@media (max-width:480px){.page-header{padding:20px 12px}.page-title{font-size:20px}.page-content{padding:12px}.card{padding:14px}}.search-input:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #3b82f61a}.card-header{margin-bottom:24px}.metadata-content{gap:20px}.metadata-content,.metadata-item{display:flex;flex-direction:column}.metadata-item{gap:8px}.metadata-label{color:#374151;font-size:14px;font-weight:600}.metadata-text{color:var(--text-primary);font-size:15px}.image-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-top:8px}.image-container{background:var(--bg-hover);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:8px;overflow:hidden;padding:8px}.product-image{background:#fff;border-radius:6px;cursor:pointer;height:auto;max-height:300px;object-fit:contain;transition:transform var(--transition-fast);width:100%}.product-image:hover{transform:scale(1.02)}.image-link{background:#fff;border-radius:4px;color:var(--color-blue);font-size:12px;padding:6px;text-align:center;text-decoration:none;transition:background var(--transition-fast)}.image-link:hover{background:var(--bg-muted);text-decoration:underline}.metadata-json{background:var(--bg-hover);border:1px solid var(--border-medium);border-radius:var(--radius-sm);color:var(--text-primary);font-family:Monaco,Menlo,Courier New,monospace;font-size:13px;margin:0;overflow-x:auto;padding:16px}@media (max-width:768px){.search-form{gap:16px}.search-actions{flex-direction:column}.btn{justify-content:center;min-height:48px;padding:14px 20px;width:100%}.card-header{align-items:flex-start;flex-direction:column;gap:12px}.detail-grid{grid-template-columns:1fr}.detail-value.mono{font-size:12px}.metadata-json{font-size:11px;padding:12px}.empty-state{padding:40px 16px}.empty-icon{font-size:48px}.empty-state h3{font-size:18px}.empty-state p{font-size:14px}}.error-icon{font-size:24px}.error-title{color:var(--color-danger-text);font-size:18px;font-weight:600;margin:0}.error-message{color:#7f1d1d;line-height:1.5;margin-bottom:12px}.error-details{background:#fff;border-radius:var(--radius-sm);font-size:14px;margin-top:12px;padding:12px}.error-details ul{margin:8px 0 0 20px;padding:0}.error-details li{color:#7f1d1d;margin:4px 0}.retry-button{margin-top:12px}.verify-form{display:flex;flex-direction:column;gap:20px}.form-actions{gap:8px;margin-top:8px}.verification-status{border-bottom:1px solid var(--border-medium);display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding-bottom:24px}.result-badge{border-radius:var(--radius-md);font-size:20px;font-weight:600;padding:16px 24px;text-align:center}.result-badge.authentic{background:var(--color-success-bg);color:var(--color-success-text)}.result-badge.suspicious{background:var(--color-warning-bg);color:var(--color-warning-text)}.result-badge.counterfeit{background:var(--color-danger-bg);color:var(--color-danger-text)}.confidence-badge{color:var(--text-secondary);font-size:14px;font-weight:500;text-align:center}.detail-section{margin-bottom:32px}.section-title{border-bottom:1px solid var(--border-medium);font-size:18px;margin-bottom:16px;padding-bottom:8px}.detail-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.detail-item{gap:4px}.detail-item.full-width{grid-column:1/-1}.detail-label{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-value{font-size:16px}.detail-value.mono{background:var(--bg-hover);border-radius:6px;font-family:Monaco,Menlo,Courier New,monospace;font-size:14px;padding:8px 12px;word-break:break-all}.status-badge{font-size:12px;font-weight:500;padding:4px 12px}.status-badge.registered{background:var(--color-blue-bg);color:var(--color-blue-text)}.status-badge.revoked{background:var(--color-danger-bg);color:var(--color-danger-text)}.anomalies-list{color:var(--color-danger-text);margin:8px 0 0 20px;padding:0}.anomalies-list li{margin:4px 0}.empty-state h3{color:var(--text-primary);font-size:20px;font-weight:600;margin-bottom:8px}.empty-state p{color:var(--text-secondary);font-size:16px}.product-image{align-items:center;display:flex;grid-column:1/-1;justify-content:center;margin-top:16px}.product-image img{border:1px solid var(--border-medium);border-radius:var(--radius-md);box-shadow:var(--shadow-card-hover);display:block;margin:0 auto;max-height:400px;max-width:320px;object-fit:contain}.info-content{padding:24px 0}.info-content p{color:#374151;font-size:16px;line-height:1.6;margin-bottom:16px}.info-steps{display:flex;flex-direction:column;gap:24px;margin:32px 0}.step{align-items:start;gap:20px}.step-number{background:var(--color-primary);color:#fff;flex-shrink:0;font-size:18px}.step-content h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 8px}.step-content p{color:var(--text-secondary);font-size:15px;margin:0}.action-section{border-top:1px solid var(--border-medium);display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;padding-top:24px}.read-only-notice{margin-top:1rem;width:100%}.transfer-form{display:flex;flex-direction:column;gap:20px}.form-hint{font-style:italic}.success-card{background:var(--color-success-bg);border:1px solid #a7f3d0;border-radius:var(--radius-md);margin-top:20px;padding:20px}.success-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.success-icon{font-size:24px}.success-icon,.success-title{color:var(--color-success-text)}.success-title{font-size:18px;font-weight:600;margin:0}.success-details{display:flex;flex-direction:column;gap:12px}.success-details .detail-row{align-items:center;border-bottom:1px solid #065f461a;display:flex;justify-content:space-between;padding:8px 0}.success-details .detail-row:last-child{border-bottom:none}.success-details .detail-label{color:var(--color-success-text);font-size:14px;font-weight:500}.success-details .detail-value{color:#047857;font-size:14px;font-weight:500}.success-details .detail-value.mono{font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;word-break:break-all}.external-link{font-size:14px}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center}.loading-spinner .spinner{animation:spin .6s linear infinite;border:3px solid #0000001a;border-radius:50%;border-top:3px solid var(--color-primary)}.loading-spinner.sm .spinner{border-width:2px;height:20px;width:20px}.loading-spinner.md .spinner{border-width:3px;height:40px;width:40px}.loading-spinner.lg .spinner{border-width:4px;height:60px;width:60px}.loading-text{color:var(--text-secondary);font-size:14px;margin:0}.loading-overlay{align-items:center;background:#ffffffe6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.empty-state{color:var(--text-secondary)}.empty-icon{font-size:64px;margin-bottom:16px}.empty-title{color:var(--text-primary);font-size:20px;font-weight:600;margin-bottom:8px}.empty-message{color:var(--text-secondary);font-size:16px;margin-bottom:24px}.empty-action{margin-top:16px}.search-form{display:flex;flex-direction:column;gap:12px}.search-input{border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:16px;padding:12px 16px;transition:border-color var(--transition-fast);width:100%}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #0000000d;outline:none}.search-input:disabled{background:var(--bg-muted);cursor:not-allowed}.search-actions{display:flex;gap:8px}.btn{font-size:14px;gap:8px;padding:10px 20px}.spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:14px;width:14px}@keyframes spin{to{transform:rotate(1turn)}}.card-header{align-items:center;border-bottom:1px solid var(--border-medium);display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.header-actions-group{align-items:center;display:flex;gap:1rem}.view-mode-toggle{background:var(--bg-muted);border-radius:var(--radius-sm);display:flex;gap:.5rem;padding:4px}.products-hierarchy{display:flex;flex-direction:column;gap:1rem}.product-group{background:var(--bg-hover);border:1px solid var(--border-medium);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.product-group:hover{box-shadow:var(--shadow-card-hover)}.product-group-header{align-items:center;background:#fff;border-bottom:1px solid var(--border-medium);cursor:pointer;display:flex;justify-content:space-between;padding:1.25rem 1.5rem;transition:background var(--transition-fast)}.product-group-header:hover{background:var(--bg-hover)}.product-group-title{align-items:center;display:flex;flex:1 1;gap:1rem}.expand-icon{color:var(--text-secondary);font-size:.875rem;min-width:16px;transition:transform var(--transition-fast)}.product-group-title h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.variant-count{background:var(--color-blue-bg);border-radius:12px;color:var(--color-blue-text);font-size:.875rem;font-weight:500;padding:.25rem .75rem}.product-category-badge{background:var(--bg-muted);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem;font-weight:500;padding:.5rem 1rem}.variants-list{display:flex;flex-direction:column;gap:.75rem;padding:1rem}.variant-card{align-items:center;background:#fff;border:1px solid var(--border-medium);border-radius:10px;display:flex;gap:1rem;padding:1rem;transition:all var(--transition-fast)}.variant-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0000000f}.variant-image{align-items:center;background:var(--bg-muted);border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:80px;justify-content:center;overflow:hidden;width:80px}.variant-image img{height:100%;object-fit:contain;width:100%}.variant-content{flex:1 1;min-width:0}.variant-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.variant-header h4{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.product-breadcrumb{color:var(--text-secondary);font-size:.75rem;font-weight:500;margin-bottom:.25rem}.variant-info{display:flex;flex-direction:column;gap:.5rem}.info-item{color:var(--text-secondary);font-size:.875rem}.attributes{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.attribute-tag{background:var(--color-blue-bg);border-radius:6px;color:var(--color-blue-text);font-size:.75rem;font-weight:500;padding:.25rem .5rem}.variant-actions{display:flex;flex-shrink:0;gap:.5rem}.variants-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.variants-grid .variant-card{align-items:stretch;flex-direction:column;padding:1.5rem}.variants-grid .variant-image{height:200px;margin-bottom:1rem;width:100%}.variants-grid .variant-actions{justify-content:flex-end;margin-top:1rem}.status-badge{border-radius:12px;font-size:.75rem;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.detail-image{align-items:center;background:var(--bg-hover);border:1px solid var(--border-medium);border-radius:var(--radius-md);display:flex;justify-content:center;margin:0 auto 2rem;max-width:400px;overflow:hidden;width:100%}.detail-image img{display:block;height:auto;max-height:400px;object-fit:contain;width:100%}.detail-section{border-bottom:1px solid var(--border-medium);margin-bottom:2rem;padding-bottom:2rem}.detail-section:last-child{border-bottom:none}.section-title{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.detail-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.detail-value{color:var(--text-primary);font-size:1rem;font-weight:500}.mono{font-family:Monaco,Menlo,Courier New,monospace;font-size:.875rem}.metadata-text{color:#374151;line-height:1.6;margin:0}.external-link{color:var(--color-blue);text-decoration:none;word-break:break-all}.external-link:hover{text-decoration:underline}.attributes-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.attribute-item{background:var(--bg-hover);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem}.attribute-key{color:var(--text-secondary);font-size:.875rem;font-weight:500;text-transform:capitalize}.attribute-value{color:var(--text-primary);font-size:1rem;font-weight:500}.variant-id-row{align-items:center;display:inline-flex!important;gap:.375rem}.variant-id-value{background:var(--bg-muted);border-radius:4px;color:#374151;font-family:Monaco,Menlo,Courier New,monospace;font-size:.75rem;padding:.125rem .375rem}.variant-id-detail{align-items:center;display:flex;gap:.5rem}.variant-id-detail code{background:var(--bg-muted);border-radius:6px;color:#374151;font-size:.813rem;padding:.25rem .5rem;word-break:break-all}.btn-copy-id{background:var(--color-blue-bg);border:none;border-radius:4px;color:var(--color-blue-text);cursor:pointer;font-size:.688rem;font-weight:600;padding:.125rem .5rem;transition:all var(--transition-fast);white-space:nowrap}.btn-copy-id:hover{background:#c7d2fe}.header-actions{display:flex;gap:.5rem}@media (max-width:768px){.card-header{align-items:flex-start;flex-direction:column;gap:1rem}.header-actions-group{justify-content:space-between;width:100%}.variants-grid{grid-template-columns:1fr}.variant-card{flex-direction:column}.variant-actions{justify-content:flex-end;width:100%}}.error-card{background:var(--color-danger-bg);border:1px solid #fecaca;border-radius:var(--radius-md);margin-top:20px;padding:20px}.error-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.error-message{color:var(--color-danger-text);font-weight:500}.error-actions{display:flex;gap:8px;margin-top:16px}.empty-state{background:#fff;border:2px dashed var(--border-medium);border-radius:var(--radius-md);padding:60px 20px;text-align:center}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state-title{color:var(--text-primary);font-size:24px;font-weight:600;margin-bottom:8px}.empty-state-message{color:var(--text-secondary);margin-bottom:24px;margin-left:auto;margin-right:auto;max-width:400px}.empty-state-action{display:inline-block}.key-value-input{gap:12px}.key-value-input,.key-value-pairs{display:flex;flex-direction:column}.key-value-pairs{gap:8px}.empty-pairs{background:var(--bg-hover);border:2px dashed var(--border-medium);border-radius:var(--radius-md);padding:24px;text-align:center}.empty-text{color:var(--text-secondary);font-size:14px;margin:0 0 12px}.key-value-row{align-items:center;display:flex;gap:8px}.key-input,.value-input{border:1px solid var(--border-medium);border-radius:var(--radius-md);color:var(--text-primary);flex:1 1;font-size:14px;padding:10px 12px;transition:all var(--transition-fast)}.key-input:focus,.value-input:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #3b82f61a;outline:none}.key-input:disabled,.value-input:disabled{background:var(--bg-muted);cursor:not-allowed}.key-input{flex:0 0 250px;min-width:200px}.value-input{flex:1 1}.remove-button{align-items:center;background:var(--color-danger-bg);border:1px solid #fecaca;border-radius:var(--radius-sm);color:var(--color-danger-text);cursor:pointer;display:flex;flex:0 0 32px;font-size:20px;font-weight:700;height:32px;justify-content:center;line-height:1;padding:0;transition:all var(--transition-fast);width:32px}.remove-button:hover:not(:disabled){background:#fecaca;border-color:#fca5a5}.remove-button:disabled{cursor:not-allowed;opacity:.5}.add-button{align-self:flex-start}.btn-sm{font-size:12px;padding:6px 12px}.step-indicator{background:var(--bg-hover);border-radius:var(--radius-md);justify-content:center;margin-bottom:2rem;padding:1.5rem}.step,.step-indicator{align-items:center;display:flex}.step{flex-direction:column;gap:.5rem}.step-number{align-items:center;background:var(--border-medium);border-radius:50%;color:var(--text-secondary);display:flex;font-size:1.1rem;font-weight:600;height:40px;justify-content:center;transition:all .3s ease;width:40px}.step.active .step-number{background:var(--color-primary);box-shadow:0 4px 12px #00000026;color:#fff}.step.completed .step-number{background:var(--color-success);color:#fff}.step-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.step.active .step-label{color:var(--text-primary);font-weight:600}.step-divider{background:var(--border-medium);height:2px;margin:-20px 1rem 0;width:80px}.products-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:2rem}.product-card-selectable{align-items:center;background:#fff;border:2px solid var(--border-medium);border-radius:var(--radius-md);cursor:pointer;display:flex;justify-content:space-between;padding:1.5rem;transition:all var(--transition-fast)}.product-card-selectable:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #00000014}.product-card-content h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.product-category{color:var(--text-secondary);font-size:.875rem;margin:0}.product-card-arrow{color:var(--text-muted);font-size:1.5rem;transition:all var(--transition-fast)}.product-card-selectable:hover .product-card-arrow{color:var(--color-primary);transform:translateX(4px)}.create-new-section{border-top:1px solid var(--border-medium);margin-top:2rem;padding-top:2rem;text-align:center}.create-product-form{background:var(--bg-hover);border-radius:var(--radius-md);margin-bottom:2rem;padding:2rem}.create-product-form h3{color:var(--text-primary);margin-bottom:1.5rem;margin-top:0}.breadcrumb-nav{margin-bottom:1.5rem}.btn-link{align-items:center;background:none;border:none;color:var(--color-blue);cursor:pointer;display:inline-flex;font-size:.875rem;gap:.25rem;padding:.5rem 0;transition:color var(--transition-fast)}.btn-link:hover{color:var(--color-blue-text);text-decoration:underline}.form-actions{gap:1rem;margin-top:2rem;padding-top:2rem}.btn{font-size:1rem}.btn-outline{background:#fff;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background:var(--bg-hover)}.empty-state-message,.loading-state{color:var(--text-secondary);padding:3rem;text-align:center}.card-description{color:var(--text-secondary);line-height:1.6;margin-bottom:2rem}.success-message{border:1px solid #86efac;border-radius:var(--radius-md);margin-top:2rem;padding:2rem}.success-message h3{color:var(--color-success-text);margin-bottom:1rem;margin-top:0}.success-actions{display:flex;gap:1rem;margin-top:1.5rem}@media (max-width:768px){.step-indicator{padding:1rem}.step-divider{width:40px}.products-list{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%}}.create-form{display:flex;flex-direction:column;gap:24px}.image-preview{align-items:center;background:var(--bg-hover);border:1px solid var(--border-medium);border-radius:var(--radius-md);display:flex;justify-content:center;margin-top:12px;padding:12px}.image-preview img{border-radius:var(--radius-sm);display:block;margin:0 auto;max-height:300px;max-width:300px;object-fit:contain}.form-actions{border-top:1px solid var(--border-medium);gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px}.form-hint{color:var(--text-secondary);display:block;font-size:12px;margin-top:4px}.brand-page-form{display:flex;flex-direction:column;gap:24px}.read-only-notice{background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-sm);color:var(--color-warning-text);margin-bottom:1rem;padding:1rem}.read-only-notice p{font-size:.875rem;margin:0}.preview-card{margin-bottom:24px}.brand-page-preview{background:var(--bg-hover);flex-direction:column;gap:20px;padding:24px}.brand-page-preview,.brand-photo-preview{border-radius:var(--radius-md);display:flex}.brand-photo-preview{align-items:center;background:#fff;box-shadow:var(--shadow-card);height:300px;justify-content:center;max-width:400px;overflow:hidden;width:100%}.brand-photo-preview img{display:block;height:100%;object-fit:contain;width:100%}.brand-info-preview{display:flex;flex-direction:column;gap:12px}.brand-name{color:var(--text-primary);font-size:32px;font-weight:700;margin:0}.company-name{color:var(--text-secondary);font-size:18px;margin:0}.brand-description{color:#374151;font-size:16px;line-height:1.6;margin:0}.brand-website{color:var(--color-blue);font-size:16px;font-weight:500;text-decoration:none}.brand-website:hover{text-decoration:underline}.brand-info-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.info-item{display:flex;font-size:15px;gap:12px}.info-key{color:var(--text-secondary);font-weight:600;min-width:120px}.info-value{color:var(--text-primary)}.success-message{background:var(--color-success-bg);border:1px solid var(--color-success);border-radius:var(--radius-sm);color:var(--color-success-text);font-weight:500;margin-bottom:24px;padding:16px}.team-members-list{overflow-x:auto}.team-table{border-collapse:collapse;margin-top:1rem;width:100%}.team-table thead{background:var(--bg-hover)}.team-table th{border-bottom:2px solid var(--border-medium);color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:1rem;text-align:left;text-transform:uppercase}.team-table td{border-bottom:1px solid var(--border-medium);color:var(--text-primary);font-size:.938rem;padding:1rem}.team-table tr:hover{background:var(--bg-hover)}.team-table tr.inactive{opacity:.6}.team-table .empty-state{color:var(--text-muted);font-size:.938rem;padding:3rem;text-align:center}.role-badge{border-radius:var(--radius-sm);display:inline-block;font-size:.813rem;font-weight:600;letter-spacing:.025em;padding:.375rem .75rem}.role-badge.role-owner{background:var(--color-warning-bg);color:var(--color-warning-text)}.role-badge.role-administrator{background:var(--color-success-bg);color:var(--color-success-text)}.role-badge.role-brand_manager{background:var(--color-blue-bg);color:var(--color-blue-text)}.role-badge.role-operations{background:#ffedd5;color:#9a3412}.role-badge.role-support{background:#f3e8ff;color:#6b21a8}.role-badge.role-member{background:var(--bg-muted);color:var(--text-secondary)}.status-badge{font-size:.813rem;padding:.375rem .75rem}.status-badge.active{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge.inactive{background:var(--color-danger-bg);color:var(--color-danger-text)}.mfa-badge{border-radius:var(--radius-sm);display:inline-block;font-size:.813rem;font-weight:600;padding:.375rem .75rem}.mfa-badge.enabled{background:var(--color-success-bg);color:var(--color-success-text)}.mfa-badge.disabled{background:var(--bg-muted);color:var(--text-secondary)}.team-table .actions{display:flex;gap:.5rem}.btn{align-items:center;display:inline-flex;font-weight:600;gap:.5rem;padding:.625rem 1.25rem}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-card-hover)}.btn-secondary{border:1px solid var(--border-medium)}.btn-secondary:hover:not(:disabled){border-color:var(--border-strong)}.btn-danger{background:var(--color-danger)}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-sm{font-size:.813rem;padding:.375rem .75rem}.btn:disabled{transform:none!important}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:500px;overflow-y:auto;padding:0;width:90%}.modal-header{align-items:center;border-bottom:1px solid var(--border-medium);display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{font-size:1.5rem;margin:0}.modal-close{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;font-size:2rem;height:2rem;justify-content:center;padding:0;width:2rem}.modal-close:hover{color:var(--text-primary)}.modal-content form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select{border:1px solid var(--border-medium);border-radius:var(--radius-sm);font-size:.938rem;padding:.75rem 1rem;transition:all var(--transition-fast);width:100%}.form-group input:focus,.form-group select:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group input:disabled{background:var(--bg-muted);cursor:not-allowed}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.alert{margin-bottom:1rem}.alert-error{background:var(--color-danger-bg)}.error,.loading{color:var(--text-secondary);padding:3rem;text-align:center}.error{color:var(--color-danger-text)}@media (max-width:768px){.team-members-list{-webkit-overflow-scrolling:touch;overflow-x:auto}.team-table{font-size:.813rem;min-width:600px}.team-table td,.team-table th{padding:.75rem .5rem}.team-table .actions{flex-direction:column;gap:.375rem}.btn-sm{justify-content:center;width:100%}.page-header{flex-wrap:wrap}.page-header .btn{justify-content:center;margin-top:1rem;width:100%}.modal-content{margin:1rem;width:95%}}.mfa-status{margin-bottom:2rem}.status-indicator{margin-bottom:1rem}.status-badge{border-radius:var(--radius-sm);display:inline-block;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.status-badge.enabled{background-color:var(--color-success-bg);color:var(--color-success-text)}.status-badge.disabled{background-color:var(--color-danger-bg);color:var(--color-danger-text)}.status-description{color:var(--text-secondary);margin-top:.5rem}.mfa-actions{display:flex;gap:1rem;margin-top:1.5rem}.mfa-setup{border-top:1px solid var(--border-medium);margin-top:2rem;padding-top:2rem}.setup-steps{list-style:decimal;margin-top:1rem;padding-left:1.5rem}.setup-steps li{line-height:1.6;margin-bottom:1.5rem}.secret-key-display{align-items:center;background-color:var(--bg-muted);border-radius:var(--radius-sm);display:flex;gap:.5rem;margin-bottom:1rem;margin-top:.5rem;padding:.75rem}.secret-key-display code{flex:1 1;font-family:Courier New,monospace;font-size:.9rem;word-break:break-all}.btn-copy{background-color:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.85rem;padding:.25rem .75rem}.btn-copy:hover{background-color:var(--color-primary-hover)}.qr-code-container{display:flex;justify-content:center;margin:1rem 0}.qr-code{background-color:#fff;border:1px solid var(--border-medium);border-radius:var(--radius-sm);padding:1rem}.verification-input-group{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem;margin-top:.5rem}.verification-code-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:1.2rem;letter-spacing:.2rem;padding:.5rem;text-align:center;width:120px}.verification-code-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #0000001a;outline:none}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover{background-color:#dc2626}.alert{border-radius:var(--radius-sm);margin-bottom:1.5rem;padding:1rem}.alert-error{background-color:var(--color-danger-bg);border:1px solid #fecaca;color:var(--color-danger-text)}.alert-success{background-color:var(--color-success-bg);border:1px solid #a7f3d0;color:var(--color-success-text)}.settings-section{background:var(--bg-card);border:1px solid var(--border-medium);border-radius:var(--radius-md);margin-bottom:1.5rem;padding:1.5rem}.settings-section-title{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.settings-section-description{color:var(--text-secondary);font-size:.875rem;margin:0 0 1.5rem}.settings-form{max-width:500px}.settings-actions{display:flex;flex-wrap:wrap;gap:1rem}.error-banner{background:var(--color-danger-bg);border:1px solid #fecaca;border-radius:var(--radius-sm);margin-bottom:1rem;padding:.75rem 1rem}.error-banner p{color:var(--color-danger-text);font-size:.875rem;margin:0}.success-banner{background:var(--color-success-bg);border:1px solid #a7f3d0;border-radius:var(--radius-sm);margin-bottom:1rem;padding:.75rem 1rem}.success-banner p{color:var(--color-success-text);font-size:.875rem;margin:0}.form-group{margin-bottom:1.25rem}.form-label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:.875rem;padding:.75rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-input:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-input:disabled{background:var(--bg-muted);cursor:not-allowed}.form-help-text{color:var(--text-secondary);font-size:.75rem;margin-top:.25rem}.form-actions{display:flex;gap:.75rem;margin-top:1.5rem}.btn{border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all var(--transition-fast)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--bg-muted);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--border-medium)}@media (max-width:768px){.settings-section{padding:1rem}.settings-form{max-width:100%}.form-actions{flex-direction:column}.btn{width:100%}}.api-keys-list{overflow-x:auto}.api-keys-table{border-collapse:collapse;margin-top:1rem;width:100%}.api-keys-table thead{background:var(--bg-hover)}.api-keys-table th{border-bottom:2px solid var(--border-medium);color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:1rem;text-align:left;text-transform:uppercase}.api-keys-table td{border-bottom:1px solid var(--border-medium);color:var(--text-primary);font-size:.938rem;padding:1rem}.api-keys-table tr:hover{background:var(--bg-hover)}.api-keys-table.revoked{opacity:.7}.api-keys-table .empty-state{color:var(--text-muted);font-size:.938rem;padding:3rem;text-align:center}.api-keys-table .actions{display:flex;gap:.5rem}.key-name{font-weight:500}.key-prefix{background:var(--bg-muted);border-radius:6px;color:#374151;font-family:SF Mono,Fira Code,Fira Mono,Menlo,monospace;font-size:.813rem;padding:.25rem .5rem}.key-reveal-modal{max-width:600px}.key-reveal-body{padding:1.5rem}.key-warning{background:var(--color-warning-bg);border:1px solid var(--color-warning);color:var(--color-warning-text);font-size:.875rem;font-weight:500;margin-bottom:1.5rem;padding:.75rem 1rem}.key-display,.key-warning{border-radius:var(--radius-sm)}.key-display{align-items:center;background:#1e293b;display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem}.key-value{color:#e2e8f0;flex:1 1;font-family:SF Mono,Fira Code,Fira Mono,Menlo,monospace;font-size:.813rem;line-height:1.5;word-break:break-all}.copy-btn{flex-shrink:0;white-space:nowrap}.key-meta{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem}.api-keys-help p{color:#4b5563;font-size:.938rem;line-height:1.6;margin:0 0 1rem}.api-keys-help code{background:var(--bg-muted);border-radius:4px;color:#374151;padding:.125rem .375rem}.api-keys-help code,.code-block{font-family:SF Mono,Fira Code,Fira Mono,Menlo,monospace;font-size:.813rem}.code-block{background:#1e293b;border-radius:var(--radius-sm);color:#e2e8f0;line-height:1.6;margin:0 0 1rem;overflow-x:auto;padding:1rem 1.25rem}.help-note{color:var(--text-muted)!important;font-size:.813rem!important}.expiration-presets{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.expiration-presets button{background:#fff;border:1px solid var(--border-strong);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.813rem;padding:.375rem .75rem;transition:all .15s ease}.expiration-presets button:hover{background:var(--bg-muted);border-color:var(--text-muted)}.expiration-presets button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.form-hint{color:var(--text-muted);font-size:.75rem;margin-top:.25rem}@media (max-width:768px){.api-keys-list{-webkit-overflow-scrolling:touch;overflow-x:auto}.api-keys-table{font-size:.813rem;min-width:500px}.api-keys-table td,.api-keys-table th{padding:.75rem .5rem}.key-display{align-items:stretch;flex-direction:column}.copy-btn{align-self:flex-end}.key-reveal-modal{width:95%}}.inactivity-modal-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.inactivity-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;max-width:480px;padding:32px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.inactivity-modal-header{margin-bottom:24px;text-align:center}.inactivity-icon{font-size:48px;margin-bottom:8px}.inactivity-modal-title{color:var(--text-primary);font-size:24px;font-weight:600;margin:0}.inactivity-modal-content{margin-bottom:32px;text-align:center}.inactivity-message{color:#4b5563;font-size:16px;line-height:1.5;margin:0 0 16px}.countdown-display{margin:24px 0}.countdown-time{animation:pulse 1s ease-in-out infinite;background-color:var(--color-danger-bg);border:2px solid #fecaca;border-radius:var(--radius-sm);color:#dc2626;display:inline-block;font-family:Courier New,monospace;font-size:48px;font-weight:700;letter-spacing:2px;padding:16px 24px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.inactivity-submessage{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:16px 0 0}.inactivity-modal-actions{display:flex;gap:12px;justify-content:center}.btn-stay-logged-in{background:var(--color-primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;max-width:200px;padding:12px 24px;transition:all var(--transition-fast)}.btn-stay-logged-in:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-card-hover)}.btn-stay-logged-in:active{transform:translateY(0)}.btn-logout-now{background:#0000;border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:16px;font-weight:500;max-width:200px;padding:12px 24px;transition:all var(--transition-fast)}.btn-logout-now:hover{background-color:var(--bg-hover);border-color:var(--text-muted)}.App{min-height:100vh}
/*# sourceMappingURL=main.ad201810.css.map*/