
/* /macq_wibu_portal/static/src/css/portal.css */
 :root{--wibu-primary: #0d1b2a; --wibu-primary-light: #1b3a4b; --wibu-primary-dark: #0a1420; --wibu-accent: #00d4ff; --wibu-accent-hover: #00b8e0; --wibu-accent-glow: rgba(0, 212, 255, 0.3); --wibu-success: #10b981; --wibu-success-light: #d1fae5; --wibu-warning: #f59e0b; --wibu-warning-light: #fef3c7; --wibu-error: #ef4444; --wibu-error-light: #fee2e2; --wibu-info: #3b82f6; --wibu-info-light: #dbeafe; --wibu-gray-50: #f8fafc; --wibu-gray-100: #f1f5f9; --wibu-gray-200: #e2e8f0; --wibu-gray-300: #cbd5e1; --wibu-gray-400: #94a3b8; --wibu-gray-500: #64748b; --wibu-gray-600: #475569; --wibu-gray-700: #334155; --wibu-gray-800: #1e293b; --wibu-gray-900: #0f172a; --wibu-font-sans: 'DM Sans', 'Segoe UI', system-ui, -apple-system, sans-serif; --wibu-font-mono: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace; --wibu-space-xs: 0.25rem; --wibu-space-sm: 0.5rem; --wibu-space-md: 1rem; --wibu-space-lg: 1.5rem; --wibu-space-xl: 2rem; --wibu-space-2xl: 3rem; --wibu-space-3xl: 4rem; --wibu-radius-sm: 6px; --wibu-radius-md: 10px; --wibu-radius-lg: 16px; --wibu-radius-xl: 24px; --wibu-radius-full: 9999px; --wibu-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05); --wibu-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1); --wibu-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1); --wibu-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1); --wibu-shadow-glow: 0 0 30px var(--wibu-accent-glow); --wibu-transition-fast: 150ms ease; --wibu-transition-base: 250ms ease; --wibu-transition-slow: 350ms ease; --wibu-bg: #ffffff; --wibu-surface: #f9fafb; --wibu-border: #e5e7eb; --wibu-text: #111827; --wibu-text-secondary: #6b7280; --wibu-text-muted: #9ca3af;}.wibu-portal{font-family: var(--wibu-font-sans); color: var(--wibu-gray-800); line-height: 1.6; min-height: 100vh;}.wibu-portal *{box-sizing: border-box;}.wibu-login-container{min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: var(--wibu-space-xl); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 50%, var(--wibu-primary) 100%); position: relative; overflow: hidden;}.wibu-login-container::before{content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle at 20% 80%, var(--wibu-accent-glow) 0%, transparent 40%), radial-gradient(circle at 80% 20%, rgba(59, 130, 246, 0.15) 0%, transparent 40%), radial-gradient(circle at 50% 50%, rgba(16, 185, 129, 0.1) 0%, transparent 60%); animation: float 20s ease-in-out infinite;}@keyframes float{0%, 100%{transform: translate(0, 0) rotate(0deg);}33%{transform: translate(30px, -30px) rotate(5deg);}66%{transform: translate(-20px, 20px) rotate(-5deg);}}.wibu-login-box{position: relative; width: 100%; max-width: 440px; background: rgba(255, 255, 255, 0.98); border-radius: var(--wibu-radius-xl); padding: var(--wibu-space-3xl); box-shadow: var(--wibu-shadow-xl), var(--wibu-shadow-glow); backdrop-filter: blur(20px); animation: slideUp 0.6s ease-out;}@keyframes slideUp{from{opacity: 0; transform: translateY(30px);}to{opacity: 1; transform: translateY(0);}}.wibu-login-header{text-align: center; margin-bottom: var(--wibu-space-2xl);}.wibu-logo{width: 80px; height: 80px; margin: 0 auto var(--wibu-space-lg); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); border-radius: var(--wibu-radius-lg); display: flex; align-items: center; justify-content: center; box-shadow: var(--wibu-shadow-lg);}.wibu-logo i{font-size: 2.5rem; color: var(--wibu-accent);}.wibu-login-header h1{font-size: 1.875rem; font-weight: 700; color: var(--wibu-primary); margin: 0 0 var(--wibu-space-sm); letter-spacing: -0.025em;}.wibu-subtitle{color: var(--wibu-gray-500); font-size: 0.9375rem; margin: 0;}.wibu-alert{display: flex; align-items: flex-start; gap: var(--wibu-space-sm); padding: var(--wibu-space-md); border-radius: var(--wibu-radius-md); margin-bottom: var(--wibu-space-lg); font-size: 0.875rem; animation: shake 0.4s ease;}@keyframes shake{0%, 100%{transform: translateX(0);}25%{transform: translateX(-5px);}75%{transform: translateX(5px);}}.wibu-alert-error{background: var(--wibu-error-light); color: var(--wibu-error); border: 1px solid rgba(239, 68, 68, 0.2);}.wibu-alert-success{background: var(--wibu-success-light); color: #065f46; border: 1px solid rgba(16, 185, 129, 0.2);}.wibu-alert i{flex-shrink: 0; margin-top: 2px;}.wibu-login-form{display: flex; flex-direction: column; gap: var(--wibu-space-lg);}.wibu-form-group{display: flex; flex-direction: column; gap: var(--wibu-space-sm);}.wibu-form-group label{display: flex; align-items: center; gap: var(--wibu-space-sm); font-size: 0.875rem; font-weight: 600; color: var(--wibu-gray-700);}.wibu-form-group label i{color: var(--wibu-accent); font-size: 1rem;}.wibu-form-group input{width: 100%; padding: var(--wibu-space-md) var(--wibu-space-lg); font-size: 1rem; font-family: var(--wibu-font-mono); border: 2px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-md); background: var(--wibu-gray-50); color: var(--wibu-gray-800); transition: all var(--wibu-transition-base); letter-spacing: 0.05em;}.wibu-form-group input::placeholder{font-family: var(--wibu-font-sans); color: var(--wibu-gray-400); letter-spacing: normal;}.wibu-form-group input:hover{border-color: var(--wibu-gray-300);}.wibu-form-group input:focus{outline: none; border-color: var(--wibu-accent); background: white; box-shadow: 0 0 0 4px var(--wibu-accent-glow);}.wibu-btn{display: inline-flex; align-items: center; justify-content: center; gap: var(--wibu-space-sm); padding: var(--wibu-space-md) var(--wibu-space-xl); font-size: 0.9375rem; font-weight: 600; font-family: var(--wibu-font-sans); border: 2px solid transparent; border-radius: var(--wibu-radius-md); cursor: pointer; text-decoration: none; transition: all var(--wibu-transition-base); white-space: nowrap;}.wibu-btn i{font-size: 1.1em;}.wibu-btn-primary{background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); color: white; box-shadow: var(--wibu-shadow-md);}.wibu-btn-primary:hover{transform: translateY(-2px); box-shadow: var(--wibu-shadow-lg); background: linear-gradient(135deg, var(--wibu-primary-light) 0%, var(--wibu-primary) 100%); color: white; text-decoration: none;}.wibu-btn-outline{background: transparent; border-color: var(--wibu-gray-300); color: var(--wibu-gray-700);}.wibu-btn-outline:hover{background: var(--wibu-gray-100); border-color: var(--wibu-gray-400); color: var(--wibu-gray-800); text-decoration: none;}.wibu-btn-full{width: 100%;}.wibu-btn-sm{padding: var(--wibu-space-sm) var(--wibu-space-md); font-size: 0.8125rem;}.wibu-btn-lg{padding: 0.75rem 1.75rem; font-size: 1rem;}.wibu-login-help{margin-top: var(--wibu-space-lg);}.wibu-btn-help{background: transparent; color: var(--wibu-gray-500); border: 1px dashed var(--wibu-gray-300); font-size: 0.875rem; cursor: pointer; transition: all var(--wibu-transition-fast); padding: var(--wibu-space-sm) var(--wibu-space-md); border-radius: var(--wibu-radius-md); display: flex; align-items: center; justify-content: center; gap: var(--wibu-space-sm); width: 100%;}.wibu-btn-help:hover{color: var(--wibu-accent); border-color: var(--wibu-accent); background: rgba(0, 212, 255, 0.05); box-shadow: 0 0 12px rgba(0, 212, 255, 0.1);}.wibu-help-modal-overlay{position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(13, 27, 42, 0.75); z-index: 9999; display: flex; align-items: center; justify-content: center; padding: var(--wibu-space-xl); backdrop-filter: blur(8px); animation: fadeIn 0.2s ease-out;}@keyframes fadeIn{from{opacity: 0;}to{opacity: 1;}}.wibu-help-modal{background: #fff; border-radius: var(--wibu-radius-xl); max-width: 720px; width: 100%; max-height: 85vh; overflow-y: auto; box-shadow: 0 25px 60px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 212, 255, 0.1); animation: modalSlideUp 0.35s cubic-bezier(0.16, 1, 0.3, 1);}@keyframes modalSlideUp{from{opacity: 0; transform: translateY(40px) scale(0.97);}to{opacity: 1; transform: translateY(0) scale(1);}}.wibu-help-modal-header{display: flex; align-items: center; gap: var(--wibu-space-md); padding: var(--wibu-space-xl) var(--wibu-space-2xl); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); border-radius: var(--wibu-radius-xl) var(--wibu-radius-xl) 0 0; position: sticky; top: 0; z-index: 1;}.wibu-help-modal-header-icon{width: 48px; height: 48px; min-width: 48px; background: rgba(0, 212, 255, 0.15); border: 1px solid rgba(0, 212, 255, 0.3); border-radius: var(--wibu-radius-md); display: flex; align-items: center; justify-content: center;}.wibu-help-modal-header-icon i{font-size: 1.4rem; color: var(--wibu-accent);}.wibu-help-modal-header h2{font-size: 1.25rem; font-weight: 700; color: #fff; margin: 0; line-height: 1.3;}.wibu-help-modal-subtitle{font-size: 0.85rem; color: rgba(255, 255, 255, 0.6); margin: 2px 0 0;}.wibu-help-modal-close{background: rgba(255, 255, 255, 0.1); border: none; font-size: 1.1rem; color: rgba(255, 255, 255, 0.7); cursor: pointer; padding: var(--wibu-space-sm); border-radius: var(--wibu-radius-sm); transition: all var(--wibu-transition-fast); margin-left: auto; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center;}.wibu-help-modal-close:hover{color: #fff; background: rgba(255, 255, 255, 0.2);}.wibu-help-modal-body{padding: var(--wibu-space-2xl);}.wibu-help-section{margin-bottom: 0;}.wibu-help-divider{height: 1px; background: linear-gradient(90deg, transparent 0%, var(--wibu-gray-200) 20%, var(--wibu-gray-200) 80%, transparent 100%); margin: var(--wibu-space-xl) 0;}.wibu-help-section-badge{display: flex; align-items: center; gap: var(--wibu-space-sm); margin-bottom: var(--wibu-space-md);}.wibu-help-step-number{width: 32px; height: 32px; min-width: 32px; background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); color: var(--wibu-accent); border-radius: var(--wibu-radius-full); display: flex; align-items: center; justify-content: center; font-size: 0.875rem; font-weight: 700;}.wibu-help-section h3{font-size: 1.1rem; font-weight: 700; color: var(--wibu-primary); margin: 0; letter-spacing: -0.01em;}.wibu-help-section p{color: var(--wibu-gray-600); font-size: 0.9rem; margin: 0 0 var(--wibu-space-md); line-height: 1.6;}.wibu-help-methods{display: flex; flex-direction: column; gap: var(--wibu-space-sm); margin-bottom: var(--wibu-space-lg);}.wibu-help-method{display: flex; align-items: flex-start; gap: var(--wibu-space-md); padding: var(--wibu-space-md); background: var(--wibu-gray-50); border-radius: var(--wibu-radius-md); border: 1px solid var(--wibu-gray-100); transition: all var(--wibu-transition-fast);}.wibu-help-method:hover{border-color: var(--wibu-gray-200); box-shadow: var(--wibu-shadow-sm);}.wibu-help-method-icon{width: 36px; height: 36px; min-width: 36px; background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); border-radius: var(--wibu-radius-sm); display: flex; align-items: center; justify-content: center;}.wibu-help-method-icon i{font-size: 0.9rem; color: var(--wibu-accent);}.wibu-help-method div:last-child{display: flex; flex-direction: column; gap: 2px;}.wibu-help-method strong{font-size: 0.875rem; color: var(--wibu-gray-800); font-weight: 600;}.wibu-help-method span{font-size: 0.825rem; color: var(--wibu-gray-500); line-height: 1.4;}.wibu-help-method span strong{font-size: 0.825rem; color: var(--wibu-gray-600);}.wibu-help-screenshot{background: var(--wibu-gray-50); border: 1px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-md); padding: var(--wibu-space-md); text-align: center; overflow: hidden;}.wibu-help-screenshot img{max-width: 100%; height: auto; border-radius: var(--wibu-radius-sm); box-shadow: var(--wibu-shadow-lg); border: 1px solid var(--wibu-gray-200);}.wibu-help-screenshot-caption{display: flex; align-items: center; justify-content: center; gap: var(--wibu-space-xs); margin-top: var(--wibu-space-md); font-size: 0.8rem; color: var(--wibu-gray-500); font-style: italic;}.wibu-help-screenshot-caption i{font-size: 0.7rem;}.wibu-login-footer{text-align: center; margin-top: var(--wibu-space-2xl); padding-top: var(--wibu-space-lg); border-top: 1px solid var(--wibu-gray-200);}.wibu-login-footer p{color: var(--wibu-gray-500); font-size: 0.875rem; margin: 0;}.wibu-login-footer a{color: var(--wibu-accent-hover); font-weight: 600; text-decoration: none; transition: color var(--wibu-transition-fast);}.wibu-login-footer a:hover{color: var(--wibu-primary); text-decoration: underline;}.wibu-header{background: var(--wibu-primary); color: white; padding: var(--wibu-space-md) 0; position: sticky; top: 0; z-index: 100; box-shadow: var(--wibu-shadow-lg);}.wibu-header-content{max-width: 1400px; margin: 0 auto; padding: 0 var(--wibu-space-xl); display: flex; align-items: center; justify-content: space-between; gap: var(--wibu-space-lg);}.wibu-brand{display: flex; align-items: center; gap: var(--wibu-space-sm); font-size: 1.25rem; font-weight: 700;}.wibu-brand i{color: var(--wibu-accent); font-size: 1.5rem;}.wibu-header-info{display: flex; align-items: center; gap: var(--wibu-space-lg);}.wibu-company-name{display: flex; align-items: center; gap: var(--wibu-space-sm); color: var(--wibu-gray-300); font-size: 0.9375rem;}.wibu-company-name i{color: var(--wibu-accent);}.wibu-header .wibu-btn-outline{border-color: rgba(0, 212, 255, 0.45); color: rgba(255, 255, 255, 0.92); background: rgba(0, 212, 255, 0.08);}.wibu-header .wibu-btn-outline:hover{border-color: var(--wibu-accent); color: #fff; background: rgba(0, 212, 255, 0.18); box-shadow: 0 0 12px var(--wibu-accent-glow); text-decoration: none;}.wibu-main{background: var(--wibu-gray-100); min-height: calc(100vh - 60px); padding: var(--wibu-space-2xl) 0 var(--wibu-space-3xl);}.wibu-container{max-width: 1400px; margin: 0 auto; padding: 0 var(--wibu-space-xl);}.wibu-page-header{margin-bottom: var(--wibu-space-2xl);}.wibu-page-header h1{font-size: 2rem; font-weight: 700; color: var(--wibu-primary); margin: 0 0 var(--wibu-space-sm); letter-spacing: -0.025em;}.wibu-page-subtitle{color: var(--wibu-gray-600); font-size: 1.0625rem; margin: 0;}.wibu-stats-grid{display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--wibu-space-lg); margin-bottom: var(--wibu-space-2xl);}.wibu-stat-card{background: white; border-radius: var(--wibu-radius-lg); padding: var(--wibu-space-lg); display: flex; align-items: center; gap: var(--wibu-space-lg); box-shadow: var(--wibu-shadow-sm); border: 1px solid var(--wibu-gray-200); transition: all var(--wibu-transition-base);}.wibu-stat-card:hover{transform: translateY(-2px); box-shadow: var(--wibu-shadow-md);}.wibu-stat-icon{width: 56px; height: 56px; background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); border-radius: var(--wibu-radius-md); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}.wibu-stat-icon i{font-size: 1.5rem; color: var(--wibu-accent);}.wibu-stat-icon-success{background: linear-gradient(135deg, var(--wibu-success) 0%, #059669 100%);}.wibu-stat-icon-success i{color: white;}.wibu-stat-icon-primary{background: linear-gradient(135deg, var(--wibu-info) 0%, #2563eb 100%);}.wibu-stat-icon-primary i{color: white;}.wibu-stat-content{display: flex; flex-direction: column;}.wibu-stat-value{font-size: 1.75rem; font-weight: 700; color: var(--wibu-primary); line-height: 1.2;}.wibu-stat-label{font-size: 0.875rem; color: var(--wibu-gray-500);}.wibu-camera-group{background: white; border-radius: var(--wibu-radius-lg); margin-bottom: var(--wibu-space-xl); box-shadow: var(--wibu-shadow-sm); border: 1px solid var(--wibu-gray-200); overflow: hidden;}.wibu-group-header{background: linear-gradient(135deg, var(--wibu-gray-50) 0%, var(--wibu-gray-100) 100%); padding: var(--wibu-space-lg) var(--wibu-space-xl); display: flex; align-items: center; justify-content: space-between; gap: var(--wibu-space-lg); border-bottom: 1px solid var(--wibu-gray-200); flex-wrap: wrap;}.wibu-group-title{display: flex; align-items: center; gap: var(--wibu-space-md);}.wibu-group-title i{font-size: 1.25rem; color: var(--wibu-accent-hover);}.wibu-group-title h2{font-size: 1.125rem; font-weight: 600; color: var(--wibu-gray-800); margin: 0;}.wibu-date{color: var(--wibu-primary); font-weight: 700;}.wibu-release-badge{display: inline-flex; align-items: center; gap: var(--wibu-space-sm); background: var(--wibu-success-light); color: var(--wibu-success); padding: var(--wibu-space-sm) var(--wibu-space-md); border-radius: var(--wibu-radius-full); font-size: 0.8125rem; font-weight: 600;}.wibu-camera-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: var(--wibu-space-md); padding: var(--wibu-space-lg);}.wibu-camera-card{display: flex; align-items: center; gap: var(--wibu-space-lg); padding: var(--wibu-space-lg); background: var(--wibu-gray-50); border: 1px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-md); text-decoration: none; color: inherit; transition: all var(--wibu-transition-base);}.wibu-camera-card:hover{background: white; border-color: var(--wibu-accent); box-shadow: var(--wibu-shadow-md); transform: translateY(-2px); text-decoration: none; color: inherit;}.wibu-camera-icon{width: 48px; height: 48px; background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); border-radius: var(--wibu-radius-md); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}.wibu-camera-icon i{font-size: 1.25rem; color: var(--wibu-accent);}.wibu-camera-info{flex: 1; min-width: 0;}.wibu-camera-name{font-size: 1rem; font-weight: 600; color: var(--wibu-primary); margin: 0 0 var(--wibu-space-xs); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}.wibu-camera-meta{display: flex; align-items: center; gap: var(--wibu-space-md); margin-bottom: var(--wibu-space-xs);}.wibu-meta-item{display: inline-flex; align-items: center; gap: 4px; font-size: 0.8125rem; color: var(--wibu-gray-500); font-family: var(--wibu-font-mono);}.wibu-meta-item i{color: var(--wibu-gray-400);}.wibu-camera-licenses, .wibu-camera-warranty{display: flex; align-items: center; gap: 4px; font-size: 0.8125rem; color: var(--wibu-gray-600);}.wibu-camera-licenses i, .wibu-camera-warranty i{color: var(--wibu-success);}.wibu-camera-arrow{color: var(--wibu-gray-400); transition: transform var(--wibu-transition-fast);}.wibu-camera-card:hover .wibu-camera-arrow{transform: translateX(4px); color: var(--wibu-accent);}.wibu-empty-state{text-align: center; padding: var(--wibu-space-3xl) var(--wibu-space-xl); color: var(--wibu-gray-500);}.wibu-empty-state i{font-size: 4rem; color: var(--wibu-gray-300); margin-bottom: var(--wibu-space-lg);}.wibu-empty-state h3{font-size: 1.25rem; font-weight: 600; color: var(--wibu-gray-700); margin: 0 0 var(--wibu-space-sm);}.wibu-empty-state p{margin: 0;}.wibu-empty-state-small{padding: var(--wibu-space-2xl) var(--wibu-space-xl);}.wibu-empty-state-small i{font-size: 2.5rem;}.wibu-empty-inline{display: flex; align-items: center; gap: var(--wibu-space-sm); padding: var(--wibu-space-md); background: var(--wibu-gray-100); border-radius: var(--wibu-radius-md); color: var(--wibu-gray-500); font-size: 0.875rem;}.wibu-breadcrumb{display: flex; align-items: center; gap: var(--wibu-space-sm); margin-bottom: var(--wibu-space-xl); font-size: 0.875rem;}.wibu-breadcrumb a{color: var(--wibu-gray-600); text-decoration: none; transition: color var(--wibu-transition-fast);}.wibu-breadcrumb a:hover{color: var(--wibu-accent-hover);}.wibu-breadcrumb-separator{color: var(--wibu-gray-400);}.wibu-detail-header{display: flex; align-items: flex-start; gap: var(--wibu-space-xl); background: white; padding: var(--wibu-space-xl); border-radius: var(--wibu-radius-lg); margin-bottom: var(--wibu-space-2xl); box-shadow: var(--wibu-shadow-sm); border: 1px solid var(--wibu-gray-200);}.wibu-detail-icon{width: 72px; height: 72px; background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); border-radius: var(--wibu-radius-lg); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}.wibu-detail-icon i{font-size: 2rem; color: var(--wibu-accent);}.wibu-detail-info h1{font-size: 1.5rem; font-weight: 700; color: var(--wibu-primary); margin: 0 0 var(--wibu-space-md);}.wibu-detail-meta{display: flex; flex-wrap: wrap; gap: var(--wibu-space-sm);}.wibu-meta-badge{display: inline-flex; align-items: center; gap: 6px; padding: var(--wibu-space-sm) var(--wibu-space-md); background: var(--wibu-gray-100); border-radius: var(--wibu-radius-full); font-size: 0.8125rem; color: var(--wibu-gray-700); font-family: var(--wibu-font-mono);}.wibu-meta-badge i{color: var(--wibu-gray-500);}.wibu-meta-badge-success{background: var(--wibu-success-light); color: var(--wibu-success);}.wibu-meta-badge-success i{color: var(--wibu-success);}.wibu-meta-badge-info{background: var(--wibu-info-light); color: var(--wibu-info);}.wibu-meta-badge-info i{color: var(--wibu-info);}.wibu-meta-badge-muted{background: rgba(107, 114, 128, 0.08); color: var(--wibu-text-secondary);}.wibu-meta-badge-muted i{color: var(--wibu-text-secondary);}.wibu-warranty-info{display: inline-flex; align-items: center; margin-left: 4px; opacity: 0.6; cursor: help; transition: opacity 0.15s;}.wibu-warranty-info:hover{opacity: 1;}.wibu-warranty-info i{font-size: 0.8em;}.wibu-section{margin-bottom: var(--wibu-space-2xl);}.wibu-modules-grid{display: flex; flex-wrap: wrap; gap: var(--wibu-space-sm);}.wibu-module-card{display: inline-flex; align-items: center; gap: var(--wibu-space-sm); padding: var(--wibu-space-sm) var(--wibu-space-md); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); color: white; border-radius: var(--wibu-radius-full); font-size: 0.875rem; font-weight: 500;}.wibu-module-card i{color: var(--wibu-accent);}.wibu-releases-list{display: flex; flex-direction: column; gap: var(--wibu-space-md);}.wibu-release-card{display: flex; align-items: center; justify-content: space-between; gap: var(--wibu-space-lg); padding: var(--wibu-space-lg) var(--wibu-space-xl); background: white; border: 1px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-md); transition: all var(--wibu-transition-base); flex-wrap: wrap;}.wibu-release-card:hover{border-color: var(--wibu-gray-300); box-shadow: var(--wibu-shadow-sm);}.wibu-release-latest{border-color: var(--wibu-success); background: linear-gradient(135deg, white 0%, var(--wibu-success-light) 100%);}.wibu-release-info{flex: 1; min-width: 200px;}.wibu-release-header{display: flex; align-items: center; gap: var(--wibu-space-sm); margin-bottom: var(--wibu-space-xs);}.wibu-release-name{font-size: 1.0625rem; font-weight: 600; color: var(--wibu-primary); margin: 0;}.wibu-latest-badge{background: var(--wibu-success); color: white; padding: 2px 8px; border-radius: var(--wibu-radius-full); font-size: 0.6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em;}.wibu-release-meta{display: flex; flex-wrap: wrap; gap: var(--wibu-space-md); font-size: 0.8125rem; color: var(--wibu-gray-500);}.wibu-release-meta span{display: flex; align-items: center; gap: 4px;}.wibu-release-meta i{color: var(--wibu-gray-400);}.wibu-release-actions{display: flex; align-items: center; gap: var(--wibu-space-sm); flex-shrink: 0;}.wibu-release-variants{width: 100%; margin-top: var(--wibu-space-sm); border-top: 1px solid var(--wibu-gray-200); padding-top: var(--wibu-space-md);}.wibu-variants-hint{font-size: 0.8125rem; color: var(--wibu-gray-500); margin-bottom: var(--wibu-space-md); display: flex; align-items: flex-start; gap: var(--wibu-space-xs); line-height: 1.5;}.wibu-variants-hint i{color: var(--wibu-primary); margin-top: 2px; flex-shrink: 0;}.wibu-release-variant{display: flex; align-items: center; justify-content: space-between; gap: var(--wibu-space-md); padding: var(--wibu-space-sm) var(--wibu-space-md); background: var(--wibu-surface, #f9fafb); border-radius: var(--wibu-radius-sm); margin-bottom: var(--wibu-space-xs);}.wibu-release-variant:last-child{margin-bottom: 0;}.wibu-variant-info{flex: 1; min-width: 0;}.wibu-variant-label{font-size: 0.875rem; font-weight: 500; color: var(--wibu-text-secondary); display: flex; align-items: center; gap: var(--wibu-space-xs);}.wibu-variant-label i{color: var(--wibu-gray-400);}.wibu-variant-label-inline{font-size: 0.8125rem; font-weight: 500; color: var(--wibu-gray-500); display: inline-flex; align-items: center; gap: 4px;}.wibu-variant-label-inline i{color: var(--wibu-gray-400);}.wibu-release-group{border: 1px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-md); overflow: hidden;}.wibu-release-group-header{display: flex; align-items: center; gap: var(--wibu-space-sm); padding: var(--wibu-space-sm) var(--wibu-space-xl); background: var(--wibu-gray-50, #f9fafb); border-bottom: 1px solid var(--wibu-gray-200);}.wibu-release-group-label{font-size: 0.8125rem; font-weight: 600; color: var(--wibu-gray-600); display: flex; align-items: center; gap: var(--wibu-space-xs);}.wibu-release-group-label i{color: var(--wibu-gray-400);}.wibu-release-group .wibu-release-card{border: none; border-radius: 0;}.wibu-release-group .wibu-release-card:hover{box-shadow: none;}.wibu-release-older-toggle{display: flex; align-items: center; gap: var(--wibu-space-xs); width: 100%; padding: var(--wibu-space-sm) var(--wibu-space-xl); background: var(--wibu-gray-50, #f9fafb); border: none; border-top: 1px solid var(--wibu-gray-200); color: var(--wibu-gray-500); font-size: 0.8125rem; cursor: pointer; transition: background var(--wibu-transition-base), color var(--wibu-transition-base);}.wibu-release-older-toggle:hover{background: var(--wibu-gray-100, #f3f4f6); color: var(--wibu-primary);}.wibu-release-older-chevron{transition: transform var(--wibu-transition-base); font-size: 0.75rem;}.wibu-release-older-toggle[aria-expanded="true"] .wibu-release-older-chevron{transform: rotate(180deg);}.wibu-release-older-list{overflow: hidden; max-height: 2000px; transition: max-height 0.3s ease;}.wibu-release-older-list.is-collapsed{max-height: 0;}.wibu-release-card-older{border-top: 1px solid var(--wibu-gray-100) !important; opacity: 0.85;}.wibu-release-card-older:hover{opacity: 1;}.wibu-section-upgrade{background: linear-gradient(135deg, var(--wibu-warning-light) 0%, white 100%); padding: var(--wibu-space-xl); border-radius: var(--wibu-radius-lg); border: 1px solid rgba(245, 158, 11, 0.3);}.wibu-upgrade-banner{display: flex; align-items: flex-start; gap: var(--wibu-space-lg); margin-bottom: var(--wibu-space-xl);}.wibu-upgrade-icon{width: 56px; height: 56px; background: linear-gradient(135deg, var(--wibu-warning) 0%, #d97706 100%); border-radius: var(--wibu-radius-md); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}.wibu-upgrade-icon i{font-size: 1.5rem; color: white;}.wibu-upgrade-content h2{font-size: 1.25rem; font-weight: 700; color: var(--wibu-gray-800); margin: 0 0 var(--wibu-space-sm);}.wibu-upgrade-content p{color: var(--wibu-gray-600); margin: 0; font-size: 0.9375rem;}.wibu-releases-unavailable .wibu-release-card{background: rgba(255, 255, 255, 0.7);}.wibu-release-locked .wibu-release-name{color: var(--wibu-gray-600);}.wibu-release-locked .wibu-release-name i{color: var(--wibu-warning); margin-right: var(--wibu-space-xs);}.wibu-requires-update{color: var(--wibu-warning) !important;}.wibu-requires-update i{color: var(--wibu-warning) !important;}.wibu-contact-cta{text-align: center; margin-top: var(--wibu-space-xl);}.wibu-back-link{margin-top: var(--wibu-space-2xl); padding-top: var(--wibu-space-xl); border-top: 1px solid var(--wibu-gray-200);}.wibu-release-detail-header{display: flex; align-items: flex-start; gap: var(--wibu-space-xl); background: white; padding: var(--wibu-space-xl); border-radius: var(--wibu-radius-lg); margin-bottom: var(--wibu-space-xl); box-shadow: var(--wibu-shadow-sm); border: 1px solid var(--wibu-gray-200);}.wibu-release-detail-icon{width: 72px; height: 72px; background: linear-gradient(135deg, var(--wibu-info) 0%, #2563eb 100%); border-radius: var(--wibu-radius-lg); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}.wibu-release-detail-icon i{font-size: 2rem; color: white;}.wibu-release-detail-info h1{display: flex; align-items: center; gap: var(--wibu-space-sm); font-size: 1.5rem; font-weight: 700; color: var(--wibu-primary); margin: 0 0 var(--wibu-space-md);}.wibu-locked-indicator{color: var(--wibu-warning); font-size: 1rem;}.wibu-release-detail-meta{display: flex; flex-wrap: wrap; gap: var(--wibu-space-lg);}.wibu-release-detail-meta .wibu-meta-item{display: flex; align-items: center; gap: 6px; color: var(--wibu-gray-600); font-size: 0.9375rem; font-family: var(--wibu-font-sans);}.wibu-release-detail-meta .wibu-meta-item i{color: var(--wibu-gray-500);}.wibu-notice{display: flex; align-items: flex-start; gap: var(--wibu-space-md); padding: var(--wibu-space-lg); border-radius: var(--wibu-radius-md); margin-bottom: var(--wibu-space-xl);}.wibu-notice i{font-size: 1.25rem; flex-shrink: 0; margin-top: 2px;}.wibu-notice-warning{background: var(--wibu-warning-light); border: 1px solid rgba(245, 158, 11, 0.3);}.wibu-notice-warning i{color: var(--wibu-warning);}.wibu-notice-info{background: rgba(59, 130, 246, 0.06); border: 1px solid rgba(59, 130, 246, 0.25);}.wibu-notice-info i{color: var(--wibu-primary);}.wibu-notice-icon{font-size: 1.1rem; flex-shrink: 0; margin-top: 2px;}.wibu-notice-content strong{display: block; color: var(--wibu-gray-800); margin-bottom: var(--wibu-space-xs);}.wibu-notice-content p{color: var(--wibu-gray-600); margin: 0 0 var(--wibu-space-md); font-size: 0.9375rem;}.wibu-release-notes-content{background: white; padding: var(--wibu-space-xl); border-radius: var(--wibu-radius-md); border: 1px solid var(--wibu-gray-200); line-height: 1.7;}.wibu-release-notes-content h1, .wibu-release-notes-content h2, .wibu-release-notes-content h3, .wibu-release-notes-content h4{color: var(--wibu-primary); margin-top: var(--wibu-space-xl); margin-bottom: var(--wibu-space-md);}.wibu-release-notes-content h1:first-child, .wibu-release-notes-content h2:first-child, .wibu-release-notes-content h3:first-child{margin-top: 0;}.wibu-release-notes-content ul, .wibu-release-notes-content ol{padding-left: var(--wibu-space-xl); margin: var(--wibu-space-md) 0;}.wibu-release-notes-content li{margin-bottom: var(--wibu-space-sm);}.wibu-release-notes-content code{background: var(--wibu-gray-100); padding: 2px 6px; border-radius: 4px; font-family: var(--wibu-font-mono); font-size: 0.875em;}.wibu-release-notes-content pre{background: var(--wibu-gray-900); color: var(--wibu-gray-100); padding: var(--wibu-space-lg); border-radius: var(--wibu-radius-md); overflow-x: auto;}.wibu-release-notes-content pre code{background: none; padding: 0; color: inherit;}.wibu-download-action{text-align: center; padding: var(--wibu-space-xl); background: linear-gradient(135deg, var(--wibu-success-light) 0%, white 100%); border-radius: var(--wibu-radius-lg); border: 1px solid rgba(16, 185, 129, 0.3);}@media (max-width: 768px){.wibu-login-box{padding: var(--wibu-space-xl);}.wibu-header-content{flex-direction: column; gap: var(--wibu-space-md);}.wibu-header-info{width: 100%; justify-content: space-between;}.wibu-page-header h1{font-size: 1.5rem;}.wibu-stats-grid{grid-template-columns: 1fr;}.wibu-camera-grid{grid-template-columns: 1fr;}.wibu-detail-header, .wibu-release-detail-header{flex-direction: column; align-items: center; text-align: center;}.wibu-detail-meta, .wibu-release-detail-meta{justify-content: center;}.wibu-release-card{flex-direction: column; align-items: stretch;}.wibu-release-actions{justify-content: stretch;}.wibu-release-actions .wibu-btn{flex: 1;}.wibu-release-variant{flex-direction: column; align-items: stretch;}.wibu-release-variant .wibu-release-actions{justify-content: stretch;}.wibu-upgrade-banner{flex-direction: column; align-items: center; text-align: center;}}@media (max-width: 480px){.wibu-container{padding: 0 var(--wibu-space-md);}.wibu-camera-card{flex-direction: column; text-align: center;}.wibu-camera-arrow{display: none;}.wibu-meta-badge{font-size: 0.75rem;}}.wibu-features-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: var(--wibu-space-md);}.wibu-feature-card{display: flex; align-items: center; gap: var(--wibu-space-sm); padding: var(--wibu-space-md); border-radius: var(--wibu-radius-lg); border: 1px solid var(--wibu-border); background: var(--wibu-surface); transition: transform 0.15s, box-shadow 0.15s;}.wibu-feature-card:hover{transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);}.wibu-feature-active{border-color: rgba(16, 185, 129, 0.3); background: rgba(16, 185, 129, 0.04);}.wibu-feature-inactive{opacity: 0.65;}.wibu-feature-status-icon{font-size: 1.2rem; flex-shrink: 0;}.wibu-feature-active .wibu-feature-status-icon{color: var(--wibu-success);}.wibu-feature-inactive .wibu-feature-status-icon{color: var(--wibu-text-secondary);}.wibu-feature-clickable{width: 100%; text-align: left; cursor: pointer; background: none; border: 1px solid var(--wibu-border); border-radius: var(--wibu-radius-lg); padding: var(--wibu-space-md); transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;}.wibu-feature-clickable:hover{border-color: var(--wibu-primary); box-shadow: 0 4px 14px rgba(59, 130, 246, 0.12); transform: translateY(-1px);}.wibu-feature-clickable.wibu-feature-active:hover{border-color: var(--wibu-success); box-shadow: 0 4px 14px rgba(16, 185, 129, 0.12);}.wibu-feature-info-hint{margin-left: auto; font-size: 0.85rem; color: var(--wibu-text-secondary); opacity: 0.5; transition: opacity 0.15s;}.wibu-feature-clickable:hover .wibu-feature-info-hint{opacity: 1; color: var(--wibu-primary);}.wibu-feature-body{display: flex; flex-direction: column; gap: 2px; min-width: 0;}.wibu-feature-name{font-size: 0.875rem; font-weight: 600; color: var(--wibu-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}.wibu-feature-attr{font-size: 0.75rem; color: var(--wibu-text-secondary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}.wibu-features-cta{display: flex; align-items: center; justify-content: space-between; gap: var(--wibu-space-md); margin-top: var(--wibu-space-lg); padding: var(--wibu-space-md) var(--wibu-space-lg); background: rgba(245, 158, 11, 0.06); border: 1px solid rgba(245, 158, 11, 0.25); border-radius: var(--wibu-radius-lg);}.wibu-features-cta-text{display: flex; align-items: center; gap: var(--wibu-space-sm); margin: 0; font-size: 0.875rem; color: var(--wibu-text-secondary);}.wibu-features-cta-text .fa{color: #f59e0b;}.wibu-btn-accent{background: linear-gradient(135deg, #8b5cf6 0%, #6d28d9 100%); color: #fff; border: none; box-shadow: 0 2px 8px rgba(139, 92, 246, 0.3);}.wibu-btn-accent:hover{background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%); color: #fff; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(139, 92, 246, 0.4);}.wibu-knowledge-body{padding: var(--wibu-space-xl); font-size: 0.9375rem; line-height: 1.7; color: var(--wibu-text);}.wibu-knowledge-body h1, .wibu-knowledge-body h2, .wibu-knowledge-body h3{margin-top: var(--wibu-space-lg); margin-bottom: var(--wibu-space-sm); font-weight: 700; color: var(--wibu-text);}.wibu-knowledge-body img{max-width: 100%; border-radius: var(--wibu-radius-md);}.wibu-knowledge-body table{width: 100%; border-collapse: collapse; margin-bottom: var(--wibu-space-md);}.wibu-knowledge-body table th, .wibu-knowledge-body table td{padding: var(--wibu-space-sm) var(--wibu-space-md); border: 1px solid var(--wibu-border); font-size: 0.875rem;}.wibu-knowledge-body table th{background: var(--wibu-surface); font-weight: 600;}.wibu-stats-grid-4{grid-template-columns: repeat(4, 1fr);}.wibu-stat-card-warning{border-color: var(--wibu-warning, #f59e0b); background: linear-gradient(135deg, rgba(245, 158, 11, 0.05) 0%, rgba(245, 158, 11, 0.02) 100%);}.wibu-stat-icon-warning{background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);}.wibu-stat-icon-warning i{color: white;}.wibu-section-header{margin: var(--wibu-space-2xl) 0 var(--wibu-space-lg);}.wibu-section-header h2{font-size: 1.15rem; font-weight: 700; color: var(--wibu-gray-800); display: flex; align-items: center; gap: var(--wibu-space-sm); margin: 0;}.wibu-section-header h2 .fa{color: var(--wibu-accent);}.wibu-type-cards-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--wibu-space-lg); margin-bottom: var(--wibu-space-2xl);}.wibu-type-card{background: white; border-radius: var(--wibu-radius-lg); border: 1px solid var(--wibu-gray-200); box-shadow: var(--wibu-shadow-sm); overflow: hidden; transition: box-shadow var(--wibu-transition-base);}.wibu-type-card:hover{box-shadow: var(--wibu-shadow-md);}.wibu-type-card-header{display: flex; align-items: center; gap: var(--wibu-space-md); padding: var(--wibu-space-lg); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); color: white;}.wibu-type-card-icon{width: 40px; height: 40px; border-radius: var(--wibu-radius-md); background: rgba(255, 255, 255, 0.15); display: flex; align-items: center; justify-content: center; font-size: 1.1rem; flex-shrink: 0;}.wibu-type-card-info{min-width: 0;}.wibu-type-card-name{font-size: 0.95rem; font-weight: 700; margin: 0 0 0.2rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: white;}.wibu-type-count{font-size: 0.78rem; color: rgba(255, 255, 255, 0.75); display: flex; align-items: center; gap: 0.3rem;}.wibu-type-articles{padding: var(--wibu-space-md) var(--wibu-space-lg); display: flex; flex-direction: column; gap: var(--wibu-space-sm);}.wibu-type-articles-label{font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--wibu-gray-400); display: flex; align-items: center; gap: 0.3rem; margin: 0 0 0.2rem;}.wibu-article-btn{display: flex; align-items: center; gap: var(--wibu-space-sm); padding: 0.45rem 0.75rem; border-radius: var(--wibu-radius-sm); border: 1px solid var(--wibu-gray-200); background: var(--wibu-gray-50); color: var(--wibu-primary); font-size: 0.85rem; font-weight: 500; cursor: pointer; text-align: left; transition: all var(--wibu-transition-fast); width: 100%;}.wibu-article-btn:hover{background: var(--wibu-accent); border-color: var(--wibu-accent); color: white;}.wibu-article-btn .fa{color: var(--wibu-accent); flex-shrink: 0; transition: color var(--wibu-transition-fast);}.wibu-article-btn:hover .fa{color: white;}.wibu-support-section{margin-bottom: var(--wibu-space-xl);}.wibu-support-section-header{display: flex; align-items: center; gap: var(--wibu-space-sm); font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--wibu-text-muted, var(--wibu-text-secondary)); margin-bottom: var(--wibu-space-md);}.wibu-support-cards{display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--wibu-space-md); margin-bottom: var(--wibu-space-sm);}.wibu-support-card{background: var(--wibu-surface); border: 1px solid var(--wibu-border); border-radius: var(--wibu-radius-lg); padding: var(--wibu-space-lg); display: flex; flex-direction: column; gap: var(--wibu-space-md); transition: box-shadow 0.2s ease, transform 0.2s ease;}.wibu-support-card:hover{box-shadow: var(--wibu-shadow-md); transform: translateY(-2px);}.wibu-support-card-warning{border-color: rgba(245, 158, 11, 0.3); background: linear-gradient(145deg, #fffbeb 0%, var(--wibu-surface) 60%);}.wibu-support-card-primary{border-color: rgba(59, 130, 246, 0.25); background: linear-gradient(145deg, #eff6ff 0%, var(--wibu-surface) 60%);}.wibu-support-card-icon{width: 42px; height: 42px; border-radius: var(--wibu-radius-md); display: flex; align-items: center; justify-content: center; font-size: 1.05rem; background: var(--wibu-gray-100); color: var(--wibu-gray-600); flex-shrink: 0;}.wibu-support-card-warning .wibu-support-card-icon{background: #fef3c7; color: #d97706;}.wibu-support-card-primary .wibu-support-card-icon{background: #dbeafe; color: var(--wibu-primary);}.wibu-support-card-body{flex: 1;}.wibu-support-card-body h4{font-size: 0.875rem; font-weight: 600; color: var(--wibu-text-primary); margin: 0 0 4px 0;}.wibu-support-card-body p{font-size: 0.78rem; color: var(--wibu-text-secondary); margin: 0; line-height: 1.4;}.wibu-support-card-btn{width: 100%; justify-content: center;}.wibu-support-rma-hint{display: flex; align-items: center; gap: var(--wibu-space-sm); font-size: 0.8rem; color: var(--wibu-text-secondary); padding: var(--wibu-space-sm) var(--wibu-space-md); background: var(--wibu-surface); border: 1px solid var(--wibu-border); border-radius: var(--wibu-radius-md);}.wibu-support-rma-hint .fa{color: var(--wibu-primary); flex-shrink: 0;}.wibu-btn-warning{background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%); color: #fff; border: none; box-shadow: 0 2px 8px rgba(245, 158, 11, 0.3);}.wibu-btn-warning:hover{background: linear-gradient(135deg, #d97706 0%, #b45309 100%); color: #fff; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4);}.wibu-detail-header{display: flex; align-items: flex-start; gap: var(--wibu-space-lg); margin-bottom: var(--wibu-space-xl);}.wibu-detail-actions{margin-left: auto; flex-shrink: 0;}html.wibu-modal-open, body.wibu-modal-open{overflow: hidden;}.wibu-overlay{display: none; position: fixed; inset: 0; background: rgba(0, 0, 0, 0.45); z-index: 1050; overflow-y: auto; padding: 2rem 1rem;}.wibu-overlay.is-open{display: flex; align-items: flex-start; justify-content: center;}.wibu-dialog{background: var(--wibu-bg, #fff); border-radius: var(--wibu-radius-xl); width: 100%; max-width: 700px; margin: auto; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2); overflow: hidden; display: flex; flex-direction: column; max-height: calc(100vh - 4rem); min-height: 0;}.wibu-dialog > form{display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; overflow: hidden;}.wibu-dialog-scrollable .wibu-dialog-body{overflow-y: auto;}.wibu-dialog-header{display: flex; align-items: center; justify-content: space-between; padding: var(--wibu-space-lg) var(--wibu-space-xl); flex-shrink: 0;}.wibu-dialog-title{display: flex; align-items: center; gap: var(--wibu-space-sm); font-weight: 700; font-size: 1rem; margin: 0; color: inherit;}.wibu-dialog-body{padding: var(--wibu-space-xl); flex: 1 1 auto; min-height: 0; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain;}.wibu-dialog-footer{padding: var(--wibu-space-md) var(--wibu-space-xl); border-top: 1px solid var(--wibu-border); display: flex; justify-content: flex-end; flex-shrink: 0;}.wibu-close-btn{background: none; border: none; cursor: pointer; font-size: 1.1rem; line-height: 1; color: rgba(255, 255, 255, 0.85); padding: 4px 8px; border-radius: var(--wibu-radius-sm); transition: background 0.15s; flex-shrink: 0;}.wibu-close-btn:hover{background: rgba(255, 255, 255, 0.2); color: #fff;}.wibu-modal-header{background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-dark, #1d4ed8) 100%); color: #fff;}.wibu-modal-header-warning{background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);}.wibu-modal-footer{gap: var(--wibu-space-sm);}.wibu-tooltip{position: relative;}.wibu-tooltip::before{content: ''; position: absolute; bottom: calc(100% + 3px); left: 50%; transform: translateX(-50%); border: 5px solid transparent; border-top-color: rgba(15, 23, 42, 0.92); opacity: 0; pointer-events: none; transition: opacity 0.15s; z-index: 1000;}.wibu-tooltip:hover::before, .wibu-tooltip:focus-within::before{opacity: 1;}.wibu-hidden{display: none !important;}.wibu-mb{margin-bottom: var(--wibu-space-md);}.wibu-form-row-2{display: grid; grid-template-columns: 1fr 1fr; gap: var(--wibu-space-md); margin-bottom: var(--wibu-space-md);}.wibu-form-group{display: flex; flex-direction: column; gap: var(--wibu-space-xs); margin-bottom: var(--wibu-space-md);}.wibu-form-group:last-child{margin-bottom: 0;}.wibu-form-group label{font-size: 0.875rem; font-weight: 600; color: var(--wibu-text-secondary);}.wibu-optional{font-weight: 400; color: var(--wibu-text-muted, #9ca3af);}.wibu-input{border: 1px solid var(--wibu-border); border-radius: var(--wibu-radius-md); padding: 0.5rem 0.75rem; font-size: 0.875rem; background: var(--wibu-bg); color: var(--wibu-text); transition: border-color 0.15s, box-shadow 0.15s;}.wibu-input:focus{border-color: var(--wibu-primary); box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15); outline: none;}.wibu-input[readonly]{background: var(--wibu-surface); color: var(--wibu-text-secondary); cursor: default;}.wibu-textarea-sm{min-height: 80px; resize: vertical; font-family: monospace; font-size: 0.8rem; line-height: 1.6;}.wibu-form-hint{margin: 0.35rem 0 0; font-size: 0.75rem; color: var(--wibu-text-muted, #9ca3af);}.wibu-camera-widget{display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem; min-height: 2.625rem; padding: 0.35rem 0.5rem; cursor: text;}.wibu-camera-widget .o_camera_search{flex: 1 1 8rem; min-width: 8rem; border: none; outline: none; background: transparent; font-size: 0.875rem; color: var(--wibu-text); padding: 0.15rem 0.25rem;}.o_camera_tags{display: inline-flex; flex-wrap: wrap; gap: 0.35rem; align-items: center;}.o_camera_tag{display: inline-flex; align-items: center; gap: 0.25rem; padding: 0.2rem 0.55rem; border-radius: 999px; background: var(--wibu-primary, #2b7dc0); color: #fff; font-size: 0.75rem; font-weight: 500; line-height: 1.4;}.o_camera_tag_remove{border: none; background: none; color: rgba(255, 255, 255, 0.85); cursor: pointer; padding: 0; font-size: 1rem; line-height: 1;}.o_camera_dropdown{display: none; position: absolute; left: 0; right: 0; z-index: 1050; max-height: 14rem; overflow-y: auto; margin-top: 0.15rem; border: 1px solid var(--wibu-border); border-radius: var(--wibu-radius-md); background: var(--wibu-bg); box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);}.o_camera_dropdown.is-open{display: block;}.o_camera_dropdown_item, .o_camera_dropdown_empty{padding: 0.5rem 0.75rem; font-size: 0.875rem; color: var(--wibu-text);}.o_camera_dropdown_item{cursor: pointer;}.o_camera_dropdown_item:hover, .o_camera_dropdown_item.is-focused{background: rgba(43, 125, 192, 0.08);}.o_camera_dropdown_empty{color: var(--wibu-text-muted, #9ca3af);}.wibu-camera-select-all{display: flex; align-items: center; gap: 0.5rem; margin-top: 0.5rem; font-size: 0.875rem; color: var(--wibu-text); cursor: pointer; user-select: none;}.wibu-camera-select-all input[type="checkbox"]{width: 1rem; height: 1rem; margin: 0; cursor: pointer; accent-color: var(--wibu-primary, #2b7dc0);}.wibu-newsletter-strip--hero{background: var(--wibu-surface, #f8fafc); border-bottom: 1px solid var(--wibu-border); padding: 0.75rem 0;}.wibu-newsletter-strip--hero .wibu-newsletter-inner{display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.65rem 1.25rem;}.wibu-newsletter-lead{display: flex; align-items: center; gap: 0.5rem; flex: 1 1 14rem; min-width: 0;}.wibu-newsletter-lead-icon{flex-shrink: 0; font-size: 1rem; color: var(--wibu-primary, #2b7dc0);}.wibu-newsletter-lead-text{font-size: 0.8125rem; line-height: 1.45; color: var(--wibu-text-secondary);}.wibu-newsletter-lead-text strong{color: var(--wibu-text); font-weight: 600;}.wibu-newsletter-form{flex: 1 1 20rem; max-width: 36rem;}.wibu-newsletter-fields{display: flex; flex-wrap: wrap; gap: 0.4rem; align-items: center;}.wibu-newsletter-fields .wibu-input{flex: 1 1 10rem; min-width: 8rem; padding: 0.4rem 0.65rem; font-size: 0.8125rem;}.wibu-newsletter-fields .js_subscribed_btn{pointer-events: none;}.wibu-newsletter-consent{display: flex; align-items: center; gap: 0.4rem; margin: 0.35rem 0 0; font-size: 0.7rem; color: var(--wibu-text-muted, #9ca3af); cursor: pointer; user-select: none;}.wibu-newsletter-consent input{margin: 0; flex-shrink: 0;}.wibu-newsletter-consent-hint{display: none; margin: 0.25rem 0 0; font-size: 0.7rem; color: #dc2626;}.wibu-newsletter-consent-hint.is-visible{display: block;}@media (max-width: 768px){.wibu-newsletter-strip--hero .wibu-newsletter-inner{flex-direction: column; align-items: stretch;}.wibu-newsletter-form{max-width: none;}.wibu-newsletter-fields .wibu-btn{flex: 1 1 auto;}}@media (max-width: 768px){.wibu-stats-grid-4{grid-template-columns: repeat(2, 1fr);}.wibu-support-cards{grid-template-columns: 1fr;}.wibu-form-row-2{grid-template-columns: 1fr;}.wibu-detail-actions{margin-left: 0; width: 100%;}}@media (max-width: 480px){.wibu-stats-grid-4{grid-template-columns: 1fr 1fr;}}.wibu-page-hero{position: relative; background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 60%, #0d2d3f 100%); color: #fff; padding: var(--wibu-space-2xl) var(--wibu-space-xl); overflow: hidden;}.wibu-page-hero-bg{position: absolute; inset: 0; background: radial-gradient(circle at 15% 85%, var(--wibu-accent-glow) 0%, transparent 45%), radial-gradient(circle at 85% 15%, rgba(59, 130, 246, 0.18) 0%, transparent 45%); pointer-events: none;}.wibu-page-hero-content{position: relative;}.wibu-page-hero-content > h1{font-size: clamp(1.5rem, 3vw, 2.25rem); font-weight: 700; color: #fff; margin: 0 0 var(--wibu-space-sm); letter-spacing: -0.025em;}.wibu-page-hero-content > p{color: rgba(255, 255, 255, 0.7); font-size: 1rem; margin: 0;}.wibu-page-hero-entity{display: flex; align-items: flex-start; gap: var(--wibu-space-lg);}.wibu-page-hero-icon{width: 64px; height: 64px; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: var(--wibu-radius-lg); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}.wibu-page-hero-icon i{font-size: 1.75rem; color: var(--wibu-accent);}.wibu-page-hero-entity-info{flex: 1; min-width: 0;}.wibu-page-hero-entity-info h1{font-size: clamp(1.25rem, 2.5vw, 1.875rem); font-weight: 700; color: #fff; margin: 0 0 var(--wibu-space-sm); letter-spacing: -0.02em;}.wibu-page-hero-actions{flex-shrink: 0; align-self: center;}.wibu-breadcrumb-light{margin-bottom: var(--wibu-space-lg);}.wibu-breadcrumb-light a{color: rgba(255, 255, 255, 0.65); text-decoration: none; transition: color var(--wibu-transition-fast);}.wibu-breadcrumb-light a:hover{color: var(--wibu-accent);}.wibu-breadcrumb-light .wibu-breadcrumb-separator{color: rgba(255, 255, 255, 0.3);}.wibu-breadcrumb-light > span:last-child{color: rgba(255, 255, 255, 0.9);}.wibu-meta-badge-light{background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); color: rgba(255, 255, 255, 0.9);}.wibu-meta-badge-light i{color: var(--wibu-accent);}.wibu-meta-badge-light.wibu-meta-badge-success{background: rgba(16, 185, 129, 0.2); border-color: rgba(16, 185, 129, 0.35); color: #6ee7b7;}.wibu-meta-badge-light.wibu-meta-badge-success i{color: #6ee7b7;}.wibu-meta-badge-light.wibu-meta-badge-info{background: rgba(59, 130, 246, 0.2); border-color: rgba(59, 130, 246, 0.35); color: #93c5fd;}.wibu-meta-badge-light.wibu-meta-badge-info i{color: #93c5fd;}.wibu-meta-badge-light.wibu-meta-badge-muted{background: rgba(255, 255, 255, 0.07); border-color: rgba(255, 255, 255, 0.15); color: rgba(255, 255, 255, 0.6);}.wibu-page-hero-actions .wibu-btn-outline{border-color: rgba(255, 255, 255, 0.4); color: rgba(255, 255, 255, 0.9); background: transparent;}.wibu-page-hero-actions .wibu-btn-outline:hover{background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.65); color: #fff;}.wibu-page-hero + .wibu-newsletter-strip + .wibu-main, .wibu-page-hero + .wibu-main, .wibu-welcome-hero + .wibu-newsletter-strip + .wibu-main{padding-top: var(--wibu-space-xl);}@media (max-width: 768px){.wibu-page-hero{padding: var(--wibu-space-xl) var(--wibu-space-md);}.wibu-page-hero-entity{flex-direction: column; gap: var(--wibu-space-md);}.wibu-page-hero-actions{width: 100%; align-self: stretch;}.wibu-page-hero-actions .wibu-btn{width: 100%; justify-content: center;}}.wibu-welcome-hero{position: relative; background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 60%, #0d2d3f 100%); color: #fff; padding: var(--wibu-space-3xl) var(--wibu-space-xl); overflow: hidden; text-align: center;}.wibu-welcome-hero-bg{position: absolute; inset: 0; background: radial-gradient(circle at 15% 85%, var(--wibu-accent-glow) 0%, transparent 45%), radial-gradient(circle at 85% 15%, rgba(59, 130, 246, 0.18) 0%, transparent 45%); pointer-events: none;}.wibu-welcome-hero-content{position: relative; max-width: 680px; margin: 0 auto;}.wibu-welcome-badge{display: inline-flex; align-items: center; gap: var(--wibu-space-sm); background: rgba(0, 212, 255, 0.15); border: 1px solid rgba(0, 212, 255, 0.35); color: var(--wibu-accent); font-size: 0.8rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; padding: 0.35rem 0.85rem; border-radius: var(--wibu-radius-full); margin-bottom: var(--wibu-space-lg);}.wibu-welcome-title{font-size: clamp(1.75rem, 4vw, 2.75rem); font-weight: 700; line-height: 1.2; color: #fff; margin: 0 0 var(--wibu-space-md);}.wibu-welcome-name{color: var(--wibu-accent);}.wibu-welcome-subtitle{font-size: 1.1rem; color: rgba(255,255,255,0.7); margin: 0 0 var(--wibu-space-xl);}.wibu-welcome-camera-label{display: inline-flex; align-items: center; gap: var(--wibu-space-sm); background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15); border-radius: var(--wibu-radius-md); padding: 0.6rem 1.2rem; font-size: 0.95rem; font-weight: 600; color: rgba(255,255,255,0.9); letter-spacing: 0.02em;}.wibu-welcome-section{margin-bottom: var(--wibu-space-3xl);}.wibu-section-title{display: flex; align-items: center; gap: var(--wibu-space-sm); font-size: 1.25rem; font-weight: 700; color: var(--wibu-gray-800); margin: 0 0 var(--wibu-space-lg); padding-bottom: var(--wibu-space-sm); border-bottom: 2px solid var(--wibu-gray-100);}.wibu-section-title i{color: var(--wibu-accent); font-size: 1.1rem;}.wibu-welcome-info-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: var(--wibu-space-md);}.wibu-info-card{display: flex; align-items: center; gap: var(--wibu-space-md); background: #fff; border: 1px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-lg); padding: var(--wibu-space-md) var(--wibu-space-lg); box-shadow: var(--wibu-shadow-sm); transition: box-shadow var(--wibu-transition-base), transform var(--wibu-transition-base);}.wibu-info-card:hover{box-shadow: var(--wibu-shadow-md); transform: translateY(-2px);}.wibu-info-card-icon{width: 44px; height: 44px; border-radius: var(--wibu-radius-md); display: flex; align-items: center; justify-content: center; font-size: 1.1rem; flex-shrink: 0;}.wibu-icon-primary{background: rgba(13, 27, 42, 0.08); color: var(--wibu-primary-light);}.wibu-icon-accent{background: rgba(0, 212, 255, 0.1); color: #0099bb;}.wibu-icon-success{background: var(--wibu-success-light); color: var(--wibu-success);}.wibu-icon-warning{background: var(--wibu-warning-light); color: #d97706;}.wibu-icon-info{background: var(--wibu-info-light); color: var(--wibu-info);}.wibu-info-card-body{display: flex; flex-direction: column; min-width: 0;}.wibu-info-card-label{font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.07em; color: var(--wibu-gray-500); margin-bottom: 0.15rem;}.wibu-info-card-value{font-size: 1rem; font-weight: 700; color: var(--wibu-gray-800); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}.wibu-mono{font-family: var(--wibu-font-mono); font-size: 0.9rem;}.wibu-text-muted{color: var(--wibu-text-muted);}.wibu-welcome-features-grid{display: flex; flex-wrap: wrap; gap: var(--wibu-space-sm);}.wibu-feature-pill{display: inline-flex; align-items: center; gap: 0.4rem; padding: 0.4rem 0.9rem; border-radius: var(--wibu-radius-full); font-size: 0.85rem; font-weight: 600; border: 1px solid transparent;}.wibu-feature-active{background: var(--wibu-success-light); color: #065f46; border-color: #a7f3d0;}.wibu-feature-inactive{background: var(--wibu-gray-100); color: var(--wibu-gray-500); border-color: var(--wibu-gray-200);}.wibu-guide-steps{display: flex; flex-direction: column; gap: var(--wibu-space-md);}.wibu-guide-step{background: #fff; border: 1px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-lg); overflow: hidden; box-shadow: var(--wibu-shadow-sm); transition: box-shadow var(--wibu-transition-base);}.wibu-guide-step.is-open{box-shadow: var(--wibu-shadow-md);}.wibu-guide-step-header{display: flex; align-items: center; gap: var(--wibu-space-md); padding: var(--wibu-space-md) var(--wibu-space-lg); cursor: pointer; user-select: none; transition: background var(--wibu-transition-fast);}.wibu-guide-step-header:hover{background: var(--wibu-gray-50);}.wibu-guide-step-number{width: 36px; height: 36px; border-radius: var(--wibu-radius-full); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); color: var(--wibu-accent); display: flex; align-items: center; justify-content: center; font-size: 0.9rem; font-weight: 700; flex-shrink: 0;}.wibu-guide-step-title{flex: 1; margin: 0; font-size: 1rem; font-weight: 600; color: var(--wibu-gray-800);}.wibu-guide-toggle{background: none; border: none; padding: 0.25rem; color: var(--wibu-gray-400); cursor: pointer; font-size: 0.85rem; transition: transform var(--wibu-transition-base), color var(--wibu-transition-fast); line-height: 1;}.wibu-guide-step.is-open .wibu-guide-toggle{transform: rotate(180deg); color: var(--wibu-primary);}.wibu-guide-step-body{display: none; padding: 0 var(--wibu-space-lg) var(--wibu-space-lg); padding-left: calc(var(--wibu-space-lg) + 36px + var(--wibu-space-md)); color: var(--wibu-gray-700); font-size: 0.95rem; line-height: 1.7;}.wibu-guide-step.is-open .wibu-guide-step-body{display: block;}.wibu-welcome-cta{margin-bottom: var(--wibu-space-3xl);}.wibu-welcome-cta-content{display: flex; align-items: center; gap: var(--wibu-space-lg); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); border-radius: var(--wibu-radius-xl); padding: var(--wibu-space-xl) var(--wibu-space-2xl); color: #fff; box-shadow: var(--wibu-shadow-lg);}.wibu-cta-icon{font-size: 2.5rem; color: var(--wibu-accent); opacity: 0.85; flex-shrink: 0;}.wibu-welcome-cta-content > div{flex: 1;}.wibu-welcome-cta-content h3{margin: 0 0 0.25rem; font-size: 1.2rem; font-weight: 700; color: #fff;}.wibu-welcome-cta-content p{margin: 0; color: rgba(255,255,255,0.7); font-size: 0.9rem;}@media (max-width: 768px){.wibu-welcome-info-grid{grid-template-columns: 1fr 1fr;}.wibu-welcome-cta-content{flex-direction: column; text-align: center; padding: var(--wibu-space-xl);}.wibu-cta-icon{font-size: 2rem;}.wibu-guide-step-body{padding-left: var(--wibu-space-lg);}}@media (max-width: 480px){.wibu-welcome-info-grid{grid-template-columns: 1fr;}.wibu-welcome-hero{padding: var(--wibu-space-2xl) var(--wibu-space-md);}}.wibu-stats-grid-5{grid-template-columns: repeat(5, 1fr);}@media (max-width: 1024px){.wibu-stats-grid-5{grid-template-columns: repeat(3, 1fr);}}@media (max-width: 640px){.wibu-stats-grid-5{grid-template-columns: repeat(2, 1fr);}}.wibu-stat-card-major{border-color: #7c3aed; background: linear-gradient(135deg, rgba(124, 58, 237, 0.06) 0%, rgba(124, 58, 237, 0.02) 100%);}.wibu-stat-icon-major{background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);}.wibu-stat-icon-major i{color: white;}.wibu-stat-card-minor{border-color: var(--wibu-info); background: linear-gradient(135deg, rgba(59, 130, 246, 0.06) 0%, rgba(59, 130, 246, 0.02) 100%);}.wibu-stat-icon-minor{background: linear-gradient(135deg, var(--wibu-info) 0%, #2563eb 100%);}.wibu-stat-icon-minor i{color: white;}.wibu-update-type-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: var(--wibu-space-md); margin-bottom: var(--wibu-space-md);}.wibu-update-type-card{background: white; border: 1px solid var(--wibu-border); border-radius: var(--wibu-radius-lg); overflow: hidden; transition: box-shadow var(--wibu-transition-base);}.wibu-update-type-card:hover{box-shadow: var(--wibu-shadow-sm);}.wibu-update-type-header{display: flex; align-items: center; gap: var(--wibu-space-md); padding: var(--wibu-space-md) var(--wibu-space-lg); border-bottom: 1px solid var(--wibu-gray-100);}.wibu-update-type-icon{width: 40px; height: 40px; min-width: 40px; border-radius: var(--wibu-radius-md); background: linear-gradient(135deg, var(--wibu-primary) 0%, var(--wibu-primary-light) 100%); display: flex; align-items: center; justify-content: center;}.wibu-update-type-icon i{color: var(--wibu-accent); font-size: 1rem;}.wibu-update-type-info{flex: 1; min-width: 0;}.wibu-update-type-name{font-size: 0.9375rem; font-weight: 700; color: var(--wibu-primary); margin: 0 0 2px;}.wibu-update-type-release{display: flex; align-items: center; gap: var(--wibu-space-sm); flex-wrap: wrap; font-size: 0.875rem; color: var(--wibu-text);}.wibu-update-type-header-link{text-decoration: none; color: inherit; cursor: pointer; transition: background var(--wibu-transition-base);}.wibu-update-type-header-link:hover{background: var(--wibu-gray-50, #f9fafb); text-decoration: none; color: inherit;}.wibu-update-type-notes-icon{color: var(--wibu-gray-400); font-size: 1.125rem; flex-shrink: 0; margin-left: auto; transition: color var(--wibu-transition-base);}.wibu-update-type-header-link:hover .wibu-update-type-notes-icon{color: var(--wibu-primary);}.wibu-update-type-date{font-size: 0.8125rem; color: var(--wibu-gray-500); display: inline-flex; align-items: center; gap: 4px;}.wibu-update-type-date i{color: var(--wibu-gray-400);}.wibu-update-type-stats{padding: var(--wibu-space-sm) var(--wibu-space-lg) var(--wibu-space-md);}.wibu-update-type-count{display: flex; align-items: baseline; gap: 4px;}.wibu-update-count-num{font-size: 1.25rem; font-weight: 700; color: var(--wibu-success);}.wibu-update-count-sep{font-size: 1rem; color: var(--wibu-gray-400);}.wibu-update-count-total{font-size: 1.25rem; font-weight: 700; color: var(--wibu-gray-600);}.wibu-update-count-label{font-size: 0.8125rem; color: var(--wibu-gray-500); margin-left: var(--wibu-space-xs);}.wibu-update-type-expired-hint{font-size: 0.8125rem; color: var(--wibu-warning); display: flex; align-items: center; gap: var(--wibu-space-xs); margin-top: var(--wibu-space-xs);}.wibu-update-type-expired-hint i{flex-shrink: 0;}.wibu-update-hint{display: flex; align-items: center; gap: var(--wibu-space-sm); padding: var(--wibu-space-md) var(--wibu-space-lg); background: var(--wibu-gray-50, #f9fafb); border: 1px solid var(--wibu-gray-200); border-radius: var(--wibu-radius-md); font-size: 0.875rem; color: var(--wibu-gray-600);}.wibu-update-hint i{color: var(--wibu-primary); flex-shrink: 0;}.wibu-cameras-list-header{display: flex; align-items: center; justify-content: space-between; gap: var(--wibu-space-md); flex-wrap: wrap; margin-bottom: var(--wibu-space-md);}.wibu-section-title-inline{margin-bottom: 0 !important;}.wibu-camera-search-wrap{position: relative; flex-shrink: 0;}.wibu-search-icon{position: absolute; left: 0.75rem; top: 50%; transform: translateY(-50%); color: var(--wibu-gray-400); pointer-events: none; font-size: 0.875rem;}.wibu-camera-search-input{padding-left: 2.2rem !important; width: 260px; max-width: 100%; font-size: 0.875rem !important;}button.wibu-group-header.wibu-group-toggle{border: none; border-bottom: 1px solid var(--wibu-gray-200); font: inherit; color: inherit; outline: none; width: 100%; text-align: left; cursor: pointer;}button.wibu-group-header.wibu-group-toggle:hover{background: var(--wibu-gray-100);}.wibu-group-header-right{display: flex; align-items: center; gap: var(--wibu-space-md); flex-shrink: 0;}.wibu-group-count{font-size: 0.8rem; font-weight: 600; color: var(--wibu-gray-500); background: var(--wibu-gray-100); padding: 0.2rem 0.6rem; border-radius: var(--wibu-radius-full); white-space: nowrap;}.wibu-group-chevron{color: var(--wibu-gray-400); transition: transform var(--wibu-transition-fast); font-size: 0.875rem;}.wibu-group-chevron.is-rotated{transform: rotate(180deg);}.wibu-group-body{overflow: hidden; transition: max-height var(--wibu-transition-base);}.wibu-group-body.is-collapsed{display: none;}.wibu-group-no-match{padding: var(--wibu-space-md) var(--wibu-space-lg); color: var(--wibu-text-secondary); font-size: 0.875rem; display: flex; align-items: center; gap: var(--wibu-space-sm);}@media (max-width: 640px){.wibu-update-type-grid{grid-template-columns: 1fr;}.wibu-camera-search-input{width: 100%;}.wibu-cameras-list-header{flex-direction: column; align-items: flex-start;}.wibu-camera-search-wrap{width: 100%;}}.wibu-support-cards-single{max-width: 520px;}.wibu-mcube-downloads{padding: 1rem 1.5rem; border-bottom: 1px solid var(--wibu-border, #e5e7eb); background: #f8fafc;}.wibu-mcube-downloads-title{display: flex; align-items: center; gap: 0.5rem; margin-bottom: 0.75rem; font-size: 0.92rem; font-weight: 600; color: #334155;}.wibu-mcube-downloads-list{display: flex; flex-wrap: wrap; gap: 0.75rem;}.wibu-license-download-btn{display: inline-flex; align-items: center; gap: 0.5rem;}.wibu-license-download-label{display: flex; flex-direction: column; align-items: flex-start; line-height: 1.2;}.wibu-license-download-label small{font-size: 0.75rem; color: #64748b; font-weight: 400;}.wibu-mcube-card{background: var(--wibu-bg, #fff); border: 1px solid var(--wibu-border, #e5e7eb); border-radius: var(--wibu-radius-xl, 12px); margin-bottom: 1.5rem; overflow: hidden; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);}.wibu-mcube-card-header{display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.25rem 1.5rem; background: linear-gradient(135deg, #f8fafc 0%, #eef4fb 100%); border-bottom: 1px solid var(--wibu-border, #e5e7eb);}.wibu-mcube-card-title{display: flex; align-items: flex-start; gap: 0.75rem;}.wibu-mcube-card-title i{font-size: 1.5rem; color: var(--wibu-primary, #2B7DC0); margin-top: 0.15rem;}.wibu-mcube-card-title h3{margin: 0 0 0.25rem; font-size: 1.15rem; font-weight: 600;}.wibu-mcube-serial{font-size: 0.85rem; color: #64748b;}.wibu-mcube-card-stats{display: flex; flex-wrap: wrap; gap: 0.75rem; justify-content: flex-end;}.wibu-server-block{padding: 1.25rem 1.5rem; border-bottom: 1px solid var(--wibu-border, #e5e7eb);}.wibu-server-block:last-child{border-bottom: none;}.wibu-server-header{display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem; margin-bottom: 0;}button.wibu-server-title.wibu-server-modules-toggle{border: none; background: transparent; font: inherit; color: inherit; text-align: left; cursor: pointer; padding: 0; outline: none;}button.wibu-server-title.wibu-server-modules-toggle:hover{color: var(--wibu-primary, #2B7DC0);}.wibu-server-title{display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap;}.wibu-server-modules-chevron{color: var(--wibu-gray-400, #9ca3af); font-size: 0.75rem; transition: transform var(--wibu-transition-fast, 0.15s ease);}.wibu-server-modules-toggle[aria-expanded="true"] .wibu-server-modules-chevron{transform: rotate(180deg);}.wibu-server-modules-count{font-size: 0.8rem; font-weight: 600; color: var(--wibu-gray-500, #6b7280); background: var(--wibu-gray-100, #f3f4f6); padding: 0.15rem 0.55rem; border-radius: 999px;}.wibu-server-modules-body{margin-top: 1rem;}.wibu-server-modules-body.is-collapsed{display: none;}.wibu-server-title h4{margin: 0; font-size: 1rem; font-weight: 600;}.wibu-server-title i{color: var(--wibu-primary, #2B7DC0);}.wibu-server-meta{display: flex; flex-wrap: wrap; gap: 0.75rem;}.wibu-badge{display: inline-flex; align-items: center; padding: 0.15rem 0.5rem; border-radius: 999px; font-size: 0.75rem; font-weight: 600;}.wibu-badge-primary{background: #dbeafe; color: #1d4ed8;}.wibu-license-table-wrap{overflow-x: auto;}.wibu-license-table{width: 100%; border-collapse: collapse; font-size: 0.9rem;}.wibu-license-table th, .wibu-license-table td{padding: 0.65rem 0.75rem; text-align: left; border-bottom: 1px solid #f1f5f9;}.wibu-license-table th{font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.03em; color: #64748b; background: #f8fafc;}.wibu-license-status{display: inline-flex; align-items: center; padding: 0.2rem 0.55rem; border-radius: 999px; font-size: 0.78rem; font-weight: 600;}.wibu-license-status-active{background: #dcfce7; color: #166534;}.wibu-license-status-expired{background: #fee2e2; color: #991b1b;}.wibu-license-status-future{background: #e0f2fe; color: #075985;}.wibu-server-empty{padding: 1rem 1.5rem; color: #64748b; font-size: 0.9rem;}.wibu-server-empty i{margin-right: 0.35rem;}@media (max-width: 991px){.wibu-mcube-card-header{flex-direction: column;}.wibu-mcube-card-stats{justify-content: flex-start;}}