.wizard-step{flex:1;display:flex;flex-direction:column;background:var(--bg-primary);overflow:hidden}.wizard-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.wizard-step.fullscreen{flex:1;display:flex;flex-direction:column}.wizard-step.fullscreen .wizard-progress{padding:1rem 2rem}.wizard-content.fullscreen-content{flex:1;display:flex;padding:0;margin:0}.visual-wiring-canvas{height:100%;width:100%;display:flex;flex-direction:column;flex:1}.coming-soon-message{max-width:600px;text-align:center;padding:3rem;background:#fff;border-radius:16px;box-shadow:0 4px 16px #0000001a}.coming-soon-message h1{color:#333;margin-bottom:1rem}.coming-soon-message .subtitle{color:#666;font-size:1.1rem;margin-bottom:2rem}.info-box{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem;text-align:left}.info-box h3{color:#667eea;margin-bottom:1rem}.info-box ul{list-style:none;padding:0}.info-box li{padding:.5rem 0 .5rem 1.5rem;position:relative}.info-box li:before{content:"✓";position:absolute;left:0;color:#28a745;font-weight:700}.note{color:#666;font-size:.95rem;margin-bottom:1.5rem}.skip-button{padding:1rem 2rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s}.skip-button:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.vwc-container{flex:1;display:grid;grid-template-columns:220px 1fr 240px;gap:.5rem;padding:.5rem;overflow:hidden;height:100%}.vwc-sidebar{background:#fff;border-radius:8px;padding:1rem;overflow-y:auto;box-shadow:0 2px 8px #0000001a}.vwc-sidebar::-webkit-scrollbar{width:8px}.vwc-sidebar::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.vwc-sidebar::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.vwc-sidebar::-webkit-scrollbar-thumb:hover{background:#5568d3}.vwc-sidebar h2{margin:0 0 .75rem;font-size:1.1rem;color:#333}.search-box{position:relative;margin-bottom:1rem}.search-input{width:100%;padding:.6rem 2rem .6rem .75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;transition:border-color .2s}.clear-search{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#999;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.clear-search:hover{background:#f0f0f0;color:#666}.search-box{margin-bottom:1rem;position:static!important}.search-input{flex:1;width:100%!important;padding:.6rem 2.5rem!important;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;transition:all .2s}.clear-search{position:absolute!important;right:.5rem;top:50%;transform:translateY(-50%)!important;background:transparent!important;color:#999!important;border:none;font-size:1.3rem;cursor:pointer;padding:.25rem!important;width:24px!important;height:24px!important;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;z-index:2}.clear-search:hover:not(:disabled){background:#f0f0f0!important;color:#666!important;transform:translateY(-50%) scale(1.1)!important}.search-loading{position:absolute;right:.5rem;font-size:1rem;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.component-group{margin-bottom:1.5rem}.component-group h3{font-size:.85rem;color:#666;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.component-item{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:6px;padding:.5rem;margin-bottom:.5rem;cursor:move;transition:all .2s;position:relative}.component-item:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 8px #667eea33}.component-library-info-icon{position:absolute;top:.35rem;right:.35rem;width:22px;height:22px;background:#1a1a1a;border:1.5px solid rgba(255,255,255,.9);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:10;box-shadow:0 2px 6px #0003,0 0 #0000}.component-library-info-icon .info-icon-text{font-family:Georgia,Times New Roman,serif;font-size:.8rem;font-weight:600;font-style:italic;color:#fff;line-height:1;-webkit-user-select:none;user-select:none;text-shadow:0 1px 2px rgba(0,0,0,.5)}.component-library-info-icon:hover{transform:scale(1.15);background:#000;box-shadow:0 3px 10px #0006,0 0 0 3px #0000001a;border-color:#fff}.component-library-info-icon:active{transform:scale(1.05);transition:all .1s}.component-library-info-icon:after{content:"Click for more info";position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);background:#111827;color:#fff;padding:.35rem .65rem;border-radius:5px;font-size:.7rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;box-shadow:0 4px 12px #0000004d;z-index:1000}.component-library-info-icon:before{content:"";position:absolute;right:calc(100% + 3px);top:50%;transform:translateY(-50%);border:4px solid transparent;border-left-color:#111827;opacity:0;pointer-events:none;transition:opacity .2s;z-index:1000}.component-library-info-icon:hover:after,.component-library-info-icon:hover:before{opacity:1}.component-item img{width:100%;height:80px;object-fit:contain;background:#fff;border-radius:4px;margin-bottom:.4rem}.component-name{font-weight:600;color:#333;font-size:.85rem;margin-bottom:.2rem}.component-pins{font-size:.75rem;color:#666}.vwc-canvas-area{background:#fff;border-radius:8px;padding:.25rem;box-shadow:0 2px 8px #0000001a;position:relative;overflow:hidden;display:flex;flex-direction:column}.canvas-controls{position:absolute;top:.5rem;left:.5rem;z-index:10;display:flex;gap:.4rem;background:#fffffff2;padding:.4rem;border-radius:6px;box-shadow:0 2px 8px #00000026}.mode-btn{padding:.5rem 1rem;border:none;border-radius:6px;background:#e0e0e0;color:#333;font-weight:600;cursor:pointer;transition:all .2s}.mode-btn:hover{background:#d0d0d0}.mode-btn.active{background:#667eea;color:#fff}.clear-btn{padding:.5rem 1rem;border:none;border-radius:6px;background:#dc3545;color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.clear-btn:hover{background:#c82333}.vwc-stats{background:#fff;border-radius:8px;padding:1rem;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow-y:auto;max-height:100%}.vwc-stats h2{margin:0 0 .75rem;font-size:1.1rem;color:#333}.stats-box{background:#f8f9fa;border-radius:6px;padding:.75rem;margin-bottom:.75rem}.stat{display:flex;justify-content:space-between;margin-bottom:.4rem;font-size:.85rem;color:#333}.stat strong{color:#333}.stat.valid strong{color:#28a745}.stat.invalid strong{color:#dc3545}.connection-list{flex:1;overflow-y:auto;margin-bottom:.75rem;max-height:calc(100vh - 400px);min-height:100px}.connection-item{background:#f8f9fa;padding:.5rem;border-radius:4px;margin-bottom:.4rem;display:flex;justify-content:space-between;align-items:center;gap:.4rem;font-size:.75rem;border-left:3px solid #28a745;color:#333}.connection-item.invalid{border-left-color:#dc3545}.conn-info{display:grid;grid-template-columns:1fr auto 1fr;gap:.3rem;align-items:center;flex:1;color:#333;font-size:.75rem}.conn-info div{color:#333}.arrow{color:#667eea;font-weight:700}.delete-wire-btn{background:#dc3545;color:#fff;border:none;border-radius:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;line-height:1;padding:0;flex-shrink:0}.delete-wire-btn:hover{background:#c82333}.no-connections{text-align:center;color:#999;font-style:italic;padding:2rem}.complete-btn{width:100%;padding:1rem;background:#28a745;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0;margin-top:auto}.complete-btn:hover:not(:disabled){background:#218838;transform:translateY(-2px);box-shadow:0 4px 12px #28a7454d}.complete-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.empty-components{text-align:center;padding:2rem 1rem;color:#999}.empty-components .hint{font-size:.85rem;margin-top:.5rem;display:block}.clear-search-btn{margin-top:1rem;padding:.5rem 1rem;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem}.clear-search-btn:hover{background:#5568d3}.context-menu{background:#fff;border:2px solid #667eea;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:4px 0;min-width:160px;animation:contextMenuFadeIn .15s ease-out;-webkit-user-select:none;user-select:none}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{padding:10px 16px;cursor:pointer;transition:all .2s ease;font-size:14px;color:#333;display:flex;align-items:center;gap:8px}.context-menu-item:hover{background:#f5f5f5}.context-menu-item.delete-item{color:#dc3545}.context-menu-item.delete-item:hover{background:#fff0f0;color:#c82333}.context-menu-divider{height:1px;background:#e0e0e0;margin:4px 0}.step2-purpose{flex:1;display:flex;flex-direction:column;overflow-y:auto;background:var(--bg-primary)}.purpose-container{max-width:900px;margin:0 auto;padding:2rem;width:100%}.hardware-summary{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:1.5rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 4px 12px #28a7454d}.hardware-summary h3{margin:0 0 1rem;font-size:1.3rem}.hw-info{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.hw-item{background:#fff3;padding:.75rem;border-radius:6px}.hw-item strong{display:block;margin-bottom:.25rem;font-size:.85rem;opacity:.9}.edit-wiring-btn{background:#fff;color:#28a745;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.edit-wiring-btn:hover{background:#f8f9fa;transform:translateY(-1px);box-shadow:0 2px 8px #0003}.purpose-section{background:#fff;padding:2rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.purpose-section h2{margin:0 0 .5rem;color:#333;font-size:1.5rem}.section-desc{color:#666;margin-bottom:1.5rem;font-size:.95rem}.purpose-textarea{width:100%;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;transition:border-color .2s;min-height:150px}.purpose-textarea:focus{outline:none;border-color:#667eea}.char-count{text-align:right;color:#666;font-size:.9rem;margin-top:.5rem}.hint{color:#dc3545;font-style:italic}.templates-section{background:#fff;padding:2rem;border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.templates-section h3{margin:0 0 .5rem;color:#333;font-size:1.3rem}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-top:1.5rem}.template-card{background:#2c3e50;border:2px solid #34495e;border-radius:8px;padding:1.25rem;cursor:pointer;transition:all .2s;position:relative}.template-board-icon{display:flex;align-items:center;justify-content:center;min-height:60px;margin-bottom:1rem;font-size:2rem}.template-board-image{max-width:100%;max-height:60px;object-fit:contain;border-radius:4px}.template-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.template-card.selected{border-color:#667eea;background:#f0f4ff}.template-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.75rem}.template-card h4{margin:0;color:#ecf0f1;font-size:1.1rem;flex:1;transition:color .2s}.template-card.selected h4{color:#333}.community-badge{padding:.2rem .5rem;background:#667eea;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap;flex-shrink:0}.template-meta{display:flex;flex-direction:column;gap:.25rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #34495e;transition:border-color .2s}.template-card.selected .template-meta{border-top-color:#e0e0e0}.board-info,.creator-info,.date-info{font-size:.8rem;color:#95a5a6;transition:color .2s}.template-card.selected .board-info,.template-card.selected .creator-info,.template-card.selected .date-info{color:#666}.template-card p{color:#bdc3c7;font-size:.9rem;margin:0;line-height:1.5;transition:color .2s}.template-card.selected p{color:#666}.request-label{color:#667eea;font-weight:600;font-size:.85rem;display:block;margin-bottom:.25rem}.template-card.selected .request-label{color:#667eea}.selected-badge{position:absolute;top:.75rem;right:.75rem;background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.step-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem}.back-button,.continue-button{padding:1rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.back-button{background:#6c757d;color:#fff}.back-button:hover{background:#5a6268}.continue-button{background:#667eea;color:#fff;flex:1}.continue-button:hover:not(:disabled){background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.continue-button:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.step3-preview{display:flex;flex-direction:column;height:100%;padding:2rem;overflow-y:auto}.preview-header{text-align:center;margin-bottom:2rem}.preview-header h2{font-size:1.75rem;color:var(--text-primary);margin-bottom:.5rem}.preview-header p{color:var(--text-muted);font-size:1rem}.preview-content{flex:1;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.preview-section{background:var(--bg-secondary);border-radius:8px;padding:1.5rem}.preview-section h3{font-size:1.125rem;color:var(--text-primary);margin-bottom:1rem}.template-list{display:flex;flex-direction:column;gap:.75rem}.template-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-tertiary);border-radius:6px}.template-name{font-weight:500;color:var(--text-primary)}.template-badge{font-size:.875rem;padding:.25rem .75rem;background:var(--accent);color:#fff;border-radius:12px}.pin-summary{display:flex;flex-direction:column;gap:1rem}.pin-board{font-size:1rem;color:var(--text-primary);padding:.75rem;background:var(--bg-tertiary);border-radius:6px}.pin-module{padding:.75rem;background:var(--bg-tertiary);border-radius:6px}.pin-module strong{color:var(--text-primary);display:block;margin-bottom:.5rem}.pin-assignments{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.pin-tag{display:inline-block;padding:.25rem .625rem;background:var(--accent);color:#fff;border-radius:4px;font-size:.875rem;font-family:monospace}.ai-preview{min-height:200px;display:flex;align-items:center;justify-content:center}.preview-loading{text-align:center;color:var(--text-muted)}.preview-error{text-align:center;color:#ef4444}.retry-btn{margin-top:1rem;padding:.5rem 1rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem}.retry-btn:hover{opacity:.9}.preview-message{padding:1.5rem;background:var(--bg-tertiary);border-radius:6px;color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.preview-prompt{text-align:center;padding:2rem}.preview-prompt-text{color:var(--text-muted);margin-bottom:1.5rem;font-size:1rem}.generate-preview-btn{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.generate-preview-btn:hover{opacity:.9;transform:translateY(-1px)}.skip-note{margin-top:1rem;font-size:.875rem;color:var(--text-muted)}.preview-actions{display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid var(--border-color);align-items:center;flex-wrap:wrap}.actions-left{display:flex;gap:1rem;align-items:center}.actions-right{display:flex;gap:1rem;align-items:center;margin-left:auto}.back-button{padding:.75rem 1.5rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.back-button:hover{background:var(--bg-tertiary)}.generate-button{padding:.75rem 2rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.generate-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.generate-button:disabled{opacity:.5;cursor:not-allowed}.spinner{border:3px solid rgba(255,255,255,.1);border-top:3px solid var(--accent);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto}.queue-notification{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;color:#1f2937;box-shadow:0 4px 15px #fbbf244d}.queue-icon{font-size:3rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.queue-content{text-align:center;max-width:400px}.queue-content h4{font-size:1.25rem;font-weight:700;margin-bottom:1rem;color:#1f2937}.queue-position{font-size:1.125rem;margin-bottom:.5rem;color:#374151}.queue-position strong{color:#b45309;font-size:1.5rem}.queue-wait{font-size:1rem;margin-bottom:1rem;color:#374151}.queue-wait strong{color:#b45309;font-weight:700}.queue-info{font-size:.875rem;color:#6b7280;font-style:italic}.queue-spinner{width:40px;height:40px;margin-top:1rem;border:3px solid #fbbf24;border-top:3px solid #b45309;border-radius:50%;animation:spin 1s linear infinite;margin-top:.75rem}.generation-mode-selector{display:flex;gap:.5rem;margin-bottom:.75rem;width:100%}.mode-option{flex:1;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;padding:.625rem .75rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.375rem;position:relative}.mode-option:hover{border-color:#d1d5db;background:#f3f4f6}.mode-option.active{border-color:#667eea;background:linear-gradient(135deg,#f0f4ff,#e9d5ff);box-shadow:0 2px 8px #667eea26}.mode-option.recommended{animation:recommendGlow 2s ease-in-out infinite!important;border-width:3px!important;position:relative;z-index:10}.mode-option.recommended:before{content:"⭐ Recommended! Click Me!";position:absolute;top:-1.75rem;left:50%;transform:translate(-50%);background:#1f2937;color:#fbbf24;border:2px solid #fbbf24;padding:.3rem .85rem;border-radius:16px;font-size:.75rem;font-weight:700;white-space:nowrap;box-shadow:0 3px 12px #fbbf2499;animation:badgeBounce 2s ease-in-out infinite;z-index:11}@keyframes recommendGlow{0%,to{border-color:#fbbf24!important;box-shadow:0 0 #fbbf24cc,0 6px 16px #fbbf2466!important;transform:scale(1)}50%{border-color:#f59e0b!important;box-shadow:0 0 0 10px #fbbf2400,0 10px 24px #fbbf2499!important;transform:scale(1.05)}}@keyframes badgeBounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-4px)}}.mode-option.disabled{opacity:.5;cursor:not-allowed!important;background:#f3f4f6}.mode-option.disabled:hover{border-color:#e5e7eb;background:#f3f4f6;transform:none}.mode-option .insufficient-credits{color:#ef4444;font-size:.7rem;font-weight:600}.mode-option.active:after{content:"✓";position:absolute;top:.25rem;right:.25rem;width:16px;height:16px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:700;line-height:16px}.mode-icon{font-size:1rem;flex-shrink:0}.mode-label{font-size:.8125rem;font-weight:600;color:#1f2937;white-space:nowrap}.mode-desc{font-size:.6875rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mode-time{font-size:.6875rem;color:#9ca3af;font-style:italic}.ai-wiring-notice{background:linear-gradient(135deg,#f0f4ff,#e8edff);border:2px dashed #667eea;border-radius:8px;padding:2rem;text-align:center;margin-top:1rem}.ai-wiring-icon{font-size:3rem;margin-bottom:1rem;animation:pulse 2s ease-in-out infinite}.ai-wiring-notice p{margin:.5rem 0;color:#111827}.ai-wiring-notice strong{font-size:1.1rem;color:#667eea}.ai-wiring-desc{color:#6b7280;font-size:.95rem;line-height:1.6}@media (max-width: 768px){.mode-label{display:none}.mode-desc{font-size:.75rem}}.action-button.diagram-button{background:linear-gradient(135deg,#ea580c,#c2410c)!important;color:#fff;box-shadow:0 4px 12px #ea580c4d;position:relative;display:flex;align-items:center;gap:8px}.action-button.diagram-button:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c)!important;transform:translateY(-2px);box-shadow:0 6px 16px #ea580c66}.diagram-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.diagram-error,.diagram-success,.diagram-info{margin:10px auto;max-width:600px;padding:12px;border-radius:6px;display:flex;align-items:flex-start;gap:10px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.diagram-error{background:#fff3cd;border:1px solid #ffc107;color:#856404}.error-icon{font-size:20px;flex-shrink:0}.error-content strong{display:block;margin-bottom:5px;color:#721c24}.error-content p{margin:5px 0;font-size:14px}.error-hint{margin-top:10px;padding:8px;background:#ffffff80;border-radius:4px;font-size:13px}.error-hint strong{color:#856404;display:inline}.diagram-success{background:#d4edda;border:1px solid #28a745;color:#155724}.success-icon{font-size:20px;flex-shrink:0}.success-content{flex:1}.success-content strong{display:block;margin-bottom:5px;color:#0f5132}.success-content p{margin:5px 0;font-size:14px}.diagram-info{background:#d1ecf1;border:1px solid #17a2b8;color:#0c5460}.info-icon{font-size:20px;flex-shrink:0}.info-content{flex:1}.info-content strong{display:block;margin-bottom:5px;color:#004085}.info-content p{margin:5px 0;font-size:14px}@media (max-width: 768px){.wiring-diagram-generator{margin:15px 0;padding:12px}.generate-diagram-btn{font-size:14px;padding:12px 16px}.diagram-error,.diagram-success,.diagram-info{padding:10px;font-size:13px}}.beta-badge{display:inline-block;padding:2px 6px;font-size:9px;font-weight:700;letter-spacing:.5px;color:#fff;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border-radius:3px;box-shadow:0 1px 3px #0000004d;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@media (prefers-color-scheme: dark){.diagram-button{background:linear-gradient(135deg,#4a5568,#2d3748)}.diagram-button:hover:not(:disabled){background:linear-gradient(135deg,#3a4558,#1d2738)}}.board-type-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease}.board-type-modal{background:#fff;border-radius:16px;padding:2rem;max-width:500px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .3s ease}.board-type-header{text-align:center;margin-bottom:2rem}.board-type-header h2{font-size:1.5rem;color:#333;margin-bottom:.5rem}.board-type-header p{color:#666;font-size:.95rem;margin-bottom:.25rem}.board-type-header strong{color:#667eea;font-weight:600}.help-text{color:#999;font-size:.9rem;margin-top:.75rem}.board-types-list{display:flex;flex-direction:column;gap:.75rem}.board-type-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f9f9f9;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s}.board-type-card:hover{border-color:#667eea;background:#f5f7ff;transform:translate(4px);box-shadow:0 4px 12px #667eea26}.board-icon{font-size:2rem;flex-shrink:0}.board-type-info{flex:1}.board-type-info h3{font-size:1.05rem;color:#333;margin-bottom:.25rem;font-weight:600}.board-fqbn{font-size:.8rem;color:#999;font-family:Consolas,monospace}.select-arrow{font-size:1.5rem;color:#667eea;opacity:0;transition:opacity .2s}.board-type-card:hover .select-arrow{opacity:1}.board-type-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e0e0e0;text-align:center}.info-note{color:#666;font-size:.9rem;line-height:1.6}.info-note strong{color:#333}.board-selection-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.board-selection-modal{background:#fff;border-radius:16px;padding:2rem;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .3s ease}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:1.5rem;color:#999;cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close-btn:hover{background:#f5f5f5;color:#333}.board-selection-header{text-align:center;margin-bottom:2rem}.board-selection-header h2{font-size:1.5rem;color:#333;margin-bottom:.5rem}.board-selection-header p{color:#666;font-size:.95rem}.board-selection-content{min-height:200px}.scanning-state{text-align:center;padding:3rem 1rem}.scanning-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}.scanning-state h3{font-size:1.25rem;color:#333;margin-bottom:.5rem}.scanning-state p{color:#666}.error-state{text-align:center;padding:3rem 1rem}.error-icon{font-size:4rem;margin-bottom:1rem}.error-state h3{font-size:1.25rem;color:#c62828;margin-bottom:.5rem}.error-state p{color:#666;margin-bottom:1.5rem;white-space:pre-line;line-height:1.6;text-align:left;max-width:400px;margin-left:auto;margin-right:auto}.empty-state{text-align:center;padding:3rem 1rem}.empty-state h3{font-size:1.25rem;color:#333;margin-bottom:.5rem}.empty-state p{color:#666;margin-bottom:1.5rem}.retry-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.retry-btn:hover{transform:scale(1.02);box-shadow:0 4px 12px #4caf504d}.boards-list{display:flex;flex-direction:column;gap:1rem}.board-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#f9f9f9;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s}.board-card:hover{border-color:#667eea;background:#f5f7ff;transform:translate(4px);box-shadow:0 4px 12px #667eea26}.board-icon{font-size:2.5rem;flex-shrink:0}.board-info{flex:1}.board-info h3{font-size:1.1rem;color:#333;margin-bottom:.25rem}.board-port{font-size:.9rem;color:#667eea;font-weight:600;margin-bottom:.25rem}.board-fqbn{font-size:.8rem;color:#999}.board-unknown{font-size:.85rem;color:#ff9800;font-weight:600;font-style:italic}.board-select-arrow{font-size:1.5rem;color:#667eea;opacity:0;transition:opacity .2s}.board-card:hover .board-select-arrow{opacity:1}.board-selection-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e0e0e0;text-align:center}.help-text{color:#666;font-size:.875rem;line-height:1.5}.upload-progress-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease}.upload-progress-modal{background:#fff;border-radius:16px;padding:2.5rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0006;animation:scaleIn .3s ease}.upload-progress-content{text-align:center}.upload-icon{font-size:4rem;margin-bottom:1rem;animation:pulse 1.5s ease-in-out infinite}.upload-progress-content h2{font-size:1.5rem;color:#333;margin-bottom:.75rem}.upload-message{color:#666;font-size:1rem;margin-bottom:1.5rem;line-height:1.6;white-space:pre-line;max-width:450px;margin-left:auto;margin-right:auto}.upload-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.close-btn{padding:.875rem 2rem;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:1rem}.close-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #4caf5066}.error-actions{display:flex;gap:1rem;margin-top:1.5rem;justify-content:center}.ai-fix-btn{flex:1;padding:.875rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.ai-fix-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #667eea66}.manual-fix-btn{flex:1;padding:.875rem 1.5rem;background:#f5f5f5;color:#333;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.manual-fix-btn:hover{background:#eee;border-color:#bdbdbd;transform:scale(1.02)}.compilation-details{margin-top:1.5rem;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:8px;padding:0;text-align:left;max-height:300px;overflow-y:auto}.compilation-details h4{font-size:.95rem;color:#333;margin:0;padding:1rem 1rem .75rem;font-weight:600;position:sticky;top:0;background:#f5f5f5;z-index:1;border-bottom:1px solid #e0e0e0}.compilation-output{font-family:Consolas,Monaco,Courier New,monospace;font-size:.85rem;color:#4caf50;background:#1e1e1e;padding:.75rem;margin:.75rem 1rem 1rem;border-radius:4px;overflow-x:auto;white-space:pre-wrap;line-height:1.5}.compilation-details::-webkit-scrollbar{width:8px}.compilation-details::-webkit-scrollbar-track{background:#e0e0e0;border-radius:4px}.compilation-details::-webkit-scrollbar-thumb{background:#999;border-radius:4px}.compilation-details::-webkit-scrollbar-thumb:hover{background:#666}.success-actions{display:flex;gap:.75rem;margin-top:1.5rem;justify-content:center}.ai-analyze-btn{flex:1;padding:.875rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.ai-analyze-btn:hover{background:linear-gradient(135deg,#764ba2,#667eea);transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.close-success-btn{flex:1;padding:.875rem 1.5rem;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.close-success-btn:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 6px 20px #4caf5066}.stage-error .upload-icon{animation:shake .5s ease-in-out}.stage-error h2{color:#c62828}.stage-success .upload-icon{animation:bounceIn .6s ease-out}.stage-success h2{color:#2e7d32}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.1)}to{transform:scale(1)}}.download-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10002;animation:fadeIn .2s ease}.download-confirm-modal{background:#fff;border-radius:16px;padding:2rem;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0006;position:relative;animation:slideUp .3s ease}.download-confirm-header{text-align:center;margin-bottom:2rem}.download-confirm-header h2{font-size:1.75rem;color:#333;margin-bottom:.5rem}.download-confirm-header p{color:#666;font-size:1rem}.download-items{margin-bottom:2rem}.download-item{display:flex;gap:1rem;padding:1.25rem;border:2px solid #e0e0e0;border-radius:12px;margin-bottom:1rem;transition:all .2s}.download-item.required{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-color:#3b82f6}.download-item.optional{background:#fafafa}.download-item.clickable-card{cursor:pointer}.download-item.clickable-card:hover{border-color:#4caf50;background:#f1f8f4;transform:translate(4px);box-shadow:0 4px 12px #4caf5026}.item-checkbox{flex-shrink:0;padding-top:.25rem}.item-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer}.item-checkbox input[type=checkbox]:disabled{cursor:not-allowed}.item-info{flex:1}.item-info h3{font-size:1.1rem;color:#333;margin-bottom:.35rem}.item-size{font-size:.85rem;color:#999;font-weight:600;margin-bottom:.5rem}.item-description{font-size:.95rem;color:#666;line-height:1.6}.item-description strong{color:#333}.required-badge{display:inline-block;background:#3b82f6;color:#fff;padding:.25rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700;margin-top:.5rem}.optional-badge{display:inline-block;background:#4caf50;color:#fff;padding:.25rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700;margin-top:.5rem}.ch340-download-link{display:inline-block;margin-top:1rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:.95rem;transition:all .2s;box-shadow:0 2px 8px #4caf504d}.ch340-download-link:hover{background:linear-gradient(135deg,#45a049,#388e3c);transform:translateY(-2px);box-shadow:0 4px 12px #4caf5080}.ch340-hint{font-size:.85rem;color:#999;margin-top:.75rem;font-style:italic}.download-info-box{background:#fff9e6;border-left:4px solid #ff9800;padding:1.25rem;border-radius:8px;margin-bottom:1.5rem}.download-info-box h4{font-size:1rem;color:#e65100;margin-bottom:.75rem;font-weight:700}.download-info-box ul{margin:0;padding-left:1.25rem}.download-info-box li{margin-bottom:.75rem;color:#555;line-height:1.6;font-size:.9rem}.download-info-box strong{color:#333;font-weight:600}.side-by-side-section{display:grid;grid-template-columns:45% 55%;gap:1rem;margin-top:1.5rem}.thank-you-box{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:2px solid #4CAF50;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column}.thank-you-box h4{font-size:1.1rem;color:#2e7d32;margin-bottom:.75rem;font-weight:700}.thank-you-box p{color:#1b5e20;margin-bottom:.5rem;line-height:1.6}.thank-you-box ul{margin:.75rem 0;padding-left:1.25rem}.thank-you-box li{margin-bottom:.5rem;color:#2e7d32;font-weight:500}.thank-you-message{font-size:1.05rem;font-weight:600;color:#1b5e20;margin-top:.75rem;text-align:center;margin-bottom:1.5rem}.thank-you-actions{display:flex;gap:.75rem;margin-top:auto}.thank-you-actions .full-width{width:100%}.cancel-hint{text-align:center;font-size:.85rem;color:#999;margin-top:.75rem;margin-bottom:0;font-style:italic}.download-actions{display:flex;gap:1rem;justify-content:center}.cancel-download-btn{flex:1;padding:.75rem 1.25rem;background:#f5f5f5;color:#666;border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.cancel-download-btn:hover{background:#eee;border-color:#bdbdbd}.confirm-download-btn{flex:1;padding:1rem 1.5rem;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;border:none;border-radius:10px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 16px #ff6b6b66}.confirm-download-btn:hover{background:linear-gradient(135deg,#ff5252,#ff4757);transform:translateY(-3px);box-shadow:0 6px 20px #ff6b6b99}.confirm-download-btn.full-width{width:100%}.side-by-side-section .ch340-item{margin-bottom:0}.client-install-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10001;animation:clientInstallFadeIn .2s ease}.client-install-modal{background:#fff;border-radius:16px;padding:2rem;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative}.client-install-modal .modal-close-btn{position:absolute;top:1rem;right:1rem;width:2.5rem;height:2.5rem;border:none;background:#f5f5f5;color:#666;font-size:1.5rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1;padding:0}.client-install-modal .modal-close-btn:hover{background:#e0e0e0;color:#333;transform:scale(1.1)}.client-install-modal .client-install-header{text-align:center;margin-bottom:2rem}.client-install-modal .client-install-header h2{font-size:1.5rem;color:#333;margin-bottom:.5rem;font-weight:700}.client-install-modal .client-install-header p{color:#666;font-size:1rem;font-weight:500}.client-install-modal .installation-steps{margin-bottom:2rem}.client-install-modal .step{display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e0e0e0}.client-install-modal .step:last-child{border-bottom:none;padding-bottom:0}.client-install-modal .step-number{flex-shrink:0;width:2.5rem;height:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem}.client-install-modal .step-content h3{font-size:1.15rem;color:#333;margin-bottom:.75rem;font-weight:700}.client-install-modal .step-content p{color:#555;margin-bottom:.75rem;font-size:.95rem;font-weight:500;line-height:1.5}.client-install-modal .download-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1rem 0}.client-install-modal .download-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s}.client-install-modal .download-btn:hover:not(:disabled){border-color:#667eea;background:#f5f7ff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.client-install-modal .download-btn:disabled{opacity:.6;cursor:not-allowed}.client-install-modal .download-btn.windows:not(:disabled){border-color:#4caf50;background:linear-gradient(135deg,#e8f5e9,#c8e6c9)}.client-install-modal .download-btn.windows:hover:not(:disabled){background:linear-gradient(135deg,#c8e6c9,#a5d6a7);border-color:#4caf50;box-shadow:0 6px 16px #4caf5066}.client-install-modal .os-icon{font-size:2rem}.client-install-modal .os-name{font-weight:700;color:#333;font-size:.95rem}.client-install-modal .file-size{font-size:.8rem;color:#999;font-weight:500}.client-install-modal .coming-soon-note{background:#fff3e0;color:#e65100;padding:.6rem;border-radius:6px;font-size:.9rem;text-align:center;margin-top:.5rem;font-weight:700}.client-install-modal .download-ready-note{background:#e8f5e9;color:#2e7d32;padding:.6rem;border-radius:6px;font-size:.9rem;text-align:center;margin-top:.5rem;font-weight:600}.client-install-modal .step-content ul{margin-left:1.5rem;color:#555}.client-install-modal .step-content li{margin-bottom:.6rem;font-size:.95rem;font-weight:500;line-height:1.5}.client-install-modal .check-btn{width:100%;padding:.85rem;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;border-radius:8px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .2s;margin-top:.5rem}.client-install-modal .check-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 4px 12px #4caf504d}.client-install-modal .check-btn:disabled{opacity:.6;cursor:not-allowed}.client-install-modal .check-result{margin-top:.75rem;padding:.85rem;border-radius:6px;text-align:center;font-weight:700;font-size:.95rem}.client-install-modal .check-result.success{background:#e8f5e9;color:#2e7d32}.client-install-modal .check-result.error{background:#ffebee;color:#c62828}.client-install-modal .client-install-footer{border-top:1px solid #e0e0e0;padding-top:1.5rem}.client-install-modal .help-section{margin-bottom:1.5rem;text-align:center}.client-install-modal .help-section h4{font-size:1.05rem;color:#333;margin-bottom:.5rem;font-weight:700}.client-install-modal .help-section p{font-size:.95rem;color:#666;margin-bottom:.35rem;font-weight:500}.client-install-modal .help-section a{color:#667eea;text-decoration:none;font-weight:700}.client-install-modal .help-section a:hover{text-decoration:underline}.client-install-modal .help-note{font-size:.875rem;color:#999;font-weight:500}.client-install-modal .alternative-option{text-align:center}.client-install-modal .alternative-option p{color:#666;margin-bottom:.75rem;font-size:.95rem;font-weight:500}.client-install-modal .switch-mode-btn{padding:.85rem 1.5rem;background:#f5f5f5;color:#333;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s}.client-install-modal .switch-mode-btn:hover{background:#eee;border-color:#bdbdbd}@keyframes clientInstallFadeIn{0%{opacity:0}to{opacity:1}}.diff-preview-widget{position:fixed;bottom:2rem;right:2rem;background:linear-gradient(135deg,#1e1e1e,#2d2d2d);border:2px solid #667eea;border-radius:12px;padding:1.25rem;min-width:400px;max-width:500px;box-shadow:0 8px 32px #667eea4d;z-index:1000;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.diff-widget-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.diff-widget-title{font-size:.95rem;font-weight:600;color:#667eea}.diff-navigation{display:flex;gap:.5rem}.diff-nav-btn{background:#667eea26;border:1px solid rgba(102,126,234,.3);color:#667eea;padding:.25rem .75rem;border-radius:6px;cursor:pointer;font-size:1rem;transition:all .2s}.diff-nav-btn:hover:not(:disabled){background:#667eea40;border-color:#667eea}.diff-nav-btn:disabled{opacity:.3;cursor:not-allowed}.diff-widget-content{margin-bottom:1rem}.diff-explanation{color:#d4d4d4;font-size:.9rem;line-height:1.5;margin:0;padding:.75rem;background:#ffffff0d;border-radius:6px}.diff-widget-actions{display:flex;gap:.75rem;align-items:center}.diff-action-btn{flex:1;padding:.75rem 1.25rem;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;justify-content:center;gap:.5rem}.diff-accept-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.diff-accept-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.diff-reject-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #ef44444d}.diff-reject-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.diff-accept-all-btn{background:#10b98133;color:#10b981;border:1px solid #10b981;flex:.8}.diff-accept-all-btn:hover{background:#10b9814d;border-color:#059669}.diff-reject-all-btn{background:#ef444433;color:#ef4444;border:1px solid #ef4444;flex:.8}.diff-reject-all-btn:hover{background:#ef44444d;border-color:#dc2626}.diff-divider{width:1px;height:32px;background:#ffffff1a}.ai-fix-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:900;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ai-fix-content{text-align:center;animation:pulse 2s ease-in-out infinite}.ai-fix-robot{font-size:6rem;margin-bottom:1rem;animation:bounce 1.5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.ai-fix-title{font-size:1.75rem;font-weight:700;color:#667eea;margin-bottom:.75rem;text-shadow:0 2px 8px rgba(102,126,234,.5)}.ai-fix-subtitle{font-size:1rem;color:#999;margin-bottom:1.5rem}.ai-fix-spinner{width:50px;height:50px;border:4px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.diff-line-modified{background:#ffa50026!important;border-left:3px solid #ff9800}.diff-glyph-modified:before{content:"🔄";font-size:.8rem}.diff-widget-actions:after{content:"Enter = Accept • Esc = Reject";position:absolute;bottom:-1.5rem;right:0;font-size:.75rem;color:#666;font-style:italic}.code-editor-container{display:flex;flex-direction:column;height:100%;background:#1e1e1e}.code-editor-area{flex:1;position:relative;min-height:0;overflow:hidden}.code-editor-textarea{font-family:Consolas,Monaco,Courier New,monospace;tab-size:2;-moz-tab-size:2}.code-editor-textarea:focus{outline:none}.code-editor-textarea::-webkit-scrollbar{width:12px;height:12px}.code-editor-textarea::-webkit-scrollbar-track{background:#1e1e1e}.code-editor-textarea::-webkit-scrollbar-thumb{background:#4a4a4a;border-radius:6px}.code-editor-textarea::-webkit-scrollbar-thumb:hover{background:#5a5a5a}.tab4-container{width:100%;height:100%;display:flex;flex-direction:column;position:relative}.tab4-split-layout{display:grid;grid-template-columns:75% 25%;gap:0;height:calc(100vh - 110px);background:#f5f5f5;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.tab4-split-layout:has(.tab4-serial-section){grid-template-columns:50% 30% 20%}.tab4-code-section{background:#1e1e1e;border-right:1px solid #333;display:flex;flex-direction:column;overflow:hidden}.tab4-chat-section{background:#fff;display:flex;flex-direction:column;overflow:hidden}.tab4-serial-section{background:#1e1e1e;display:flex;flex-direction:column;overflow:hidden}.code-toolbar{background:#2d2d2d;padding:.4rem .6rem;border-bottom:1px solid #444;display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.board-port-selectors{display:flex;gap:.5rem;align-items:center}.board-select-dropdown,.port-select-dropdown{background:#3c3c3c;color:#d4d4d4;border:1px solid #555;border-radius:4px;padding:.35rem .65rem;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;min-width:160px}.board-select-dropdown:hover,.port-select-dropdown:hover{background:#4a4a4a;border-color:#667eea}.board-select-dropdown:focus,.port-select-dropdown:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.port-select-dropdown{min-width:140px}.scan-board-btn{padding:.35rem .75rem;background:#3c3c3c;color:#d4d4d4;border:1px solid #555;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s;white-space:nowrap}.scan-board-btn:hover:not(:disabled){background:#4a4a4a;border-color:#4caf50}.scan-board-btn:disabled{opacity:.6;cursor:not-allowed}.port-status{padding:.35rem .65rem;border-radius:4px;font-size:.85rem;font-weight:600;white-space:nowrap}.port-status.found{background:#4caf5033;color:#4caf50;border:1px solid rgba(76,175,80,.5)}.port-status.failed{background:#f4433633;color:#f44336;border:1px solid rgba(244,67,54,.5)}.code-toolbar-btn{padding:.35rem .75rem!important;background:#3c3c3c;color:#fff;border:1px solid #555;border-radius:4px;cursor:pointer;font-size:.85rem!important;font-weight:600;transition:all .2s;white-space:nowrap;line-height:1.2!important}.code-toolbar-btn:hover:not(:disabled){background:#4a4a4a;border-color:#666}.code-toolbar-btn.primary{background:#4caf50;border-color:#45a049}.code-toolbar-btn.primary:hover:not(:disabled){background:#45a049}.code-toolbar-btn.upload-btn-primary{background:linear-gradient(135deg,#9333ea,#7c3aed);border:none;color:#fff;font-weight:700;box-shadow:0 2px 8px #9333ea66}.code-toolbar-btn.upload-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-1px);box-shadow:0 4px 12px #9333ea99}.code-toolbar-btn.serial-btn-primary{background:linear-gradient(135deg,#00bcd4,#00838f);border:none;color:#fff;font-weight:700;box-shadow:0 2px 8px #00bcd44d}.code-toolbar-btn.serial-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#00acc1,#006064);transform:translateY(-1px);box-shadow:0 4px 12px #00bcd480}.code-toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.code-toolbar-info{margin-left:auto;color:#999;font-size:.85rem;font-weight:500}.code-editor-area{flex:1;background:#1e1e1e;color:#d4d4d4;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;padding:1rem;overflow:auto;white-space:pre}.code-editor-textarea{width:100%;height:100%;background:#1e1e1e;color:#d4d4d4;border:none;outline:none;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;padding:1rem;resize:none;line-height:1.6}.code-editor-textarea::placeholder{color:#666}.code-empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:#666;font-size:1rem;text-align:center;padding:2rem}.code-empty-state-content{max-width:400px}.code-empty-state-content h3{font-size:1.25rem;color:#999;margin-bottom:.5rem}.code-empty-state-content p{font-size:.95rem;color:#666;line-height:1.5}.tab4-feedback-button{position:fixed;bottom:20px;right:calc(25% + 20px);padding:.65rem 1.25rem;background:linear-gradient(135deg,#00d4aa,#00eabf);color:#000;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #00d4aa4d;z-index:100;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.tab4-feedback-button:hover{background:linear-gradient(135deg,#00eabf,#00d4aa);transform:translateY(-2px);box-shadow:0 6px 16px #00d4aa80}.tab4-feedback-button:active{transform:translateY(0);box-shadow:0 4px 12px #00d4aa66}.code-generating-state{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem}.code-generating-content{text-align:center;max-width:500px}.generating-spinner{width:80px;height:80px;border:6px solid #333;border-top:6px solid #667eea;border-radius:50%;animation:spin 1.2s linear infinite;margin:0 auto 2rem}.generating-title{font-size:1.5rem;color:#d4d4d4;margin-bottom:1.5rem;font-weight:700}.generating-message{font-size:1.15rem;color:#667eea;margin-bottom:1rem;font-weight:600;min-height:1.5em;animation:fadeIn .5s ease}.generating-info{font-size:.9rem;color:#999;font-weight:500;line-height:1.5}.monaco-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#d4d4d4}.monaco-spinner{width:40px;height:40px;border:4px solid #333;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.monaco-loading-state p{font-size:.95rem;color:#999;font-weight:500}.code-actions-bar{background:#252525;padding:.75rem 1rem;border-top:1px solid #444;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.code-actions-bar .action-btn{padding:.6rem 1.25rem!important;background:#3c3c3c;color:#fff;border:1px solid #555;border-radius:6px;cursor:pointer;font-size:.95rem!important;font-weight:600;transition:all .2s;white-space:nowrap}.action-btn:hover:not(:disabled){background:#4a4a4a;border-color:#666;transform:translateY(-1px)}.action-btn.download-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#2563eb}.action-btn.download-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f666}.action-btn.save-btn{background:linear-gradient(135deg,#4caf50,#45a049);border-color:#45a049}.action-btn.save-btn:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#388e3c);box-shadow:0 4px 12px #4caf5066}.action-btn:disabled{opacity:.5;cursor:not-allowed}.beta-badge{font-size:.7rem;background:#ff9800;color:#fff;padding:.15rem .35rem;border-radius:3px;margin-left:.35rem;font-weight:700}.code-actions-bar .action-button.diagram-button{padding:.6rem 1.25rem;border-radius:6px;font-size:.95rem;font-weight:600}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}.chat-panel-container{display:flex;flex-direction:column;height:100%;background:#fff}.chat-panel-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75rem 1rem;border-bottom:2px solid #5568d3}.chat-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.balance-display-compact{font-size:1rem;font-weight:700;padding:.5rem .75rem;background:#fff3;border-radius:6px;transition:all .2s;white-space:nowrap}.balance-display-compact.clickable{cursor:pointer}.balance-display-compact.clickable:hover{background:#ffffff4d;transform:scale(1.05)}.mode-toggle-switch{display:flex;align-items:center;gap:.65rem}.mode-label-switch{font-size:.95rem;font-weight:600;white-space:nowrap;line-height:1.2;display:flex;align-items:center}.toggle-switch-container{position:relative;display:inline-block;width:50px;height:26px;flex-shrink:0;cursor:pointer}.toggle-checkbox{opacity:0;width:0;height:0;position:absolute}.toggle-switch-slider{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffff4d;border-radius:13px;transition:all .3s ease;cursor:pointer}.toggle-switch-slider:hover{background:#fff6}.toggle-switch-slider:before{position:absolute;content:"";height:22px;width:22px;left:2px;top:2px;background:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 4px #0003}.toggle-checkbox:checked+.toggle-switch-slider{background:#ffffff80}.toggle-checkbox:checked+.toggle-switch-slider:before{transform:translate(24px)}.chat-messages-area{flex:1;overflow-y:auto;padding:1rem;background:#f9f9f9}.chat-empty-state{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem}.chat-empty-content{text-align:center;color:#666}.chat-empty-content p{margin:.5rem 0;font-size:.95rem;font-weight:500}.chat-message{display:flex;gap:.75rem;margin-bottom:1rem;animation:messageSlideIn .3s ease}.message-avatar{font-size:1.5rem;flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.message-content{flex:1;padding:.75rem 1rem;border-radius:12px;font-size:.95rem;line-height:1.5;word-wrap:break-word}.chat-message.user .message-content{background:#e3f2fd;color:#1565c0;font-weight:500}.chat-message.assistant .message-content{background:#fff;color:#333;border:1px solid #e0e0e0;font-weight:500}.chat-message.diff-summary .message-content{background:linear-gradient(135deg,#e8f5e9,#f1f8f4);border:2px solid #4CAF50;color:#1b5e20;font-weight:600}.chat-message.diff-summary .message-content strong{color:#2e7d32;font-weight:700}.chat-message.thinking-mode{opacity:1;animation:thinkingPulse 2s ease-in-out infinite}.chat-message.thinking-mode .message-avatar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 0 20px #667eea99;animation:thinkingGlow 2s ease-in-out infinite}.chat-message.thinking-mode .message-content{background:linear-gradient(135deg,#1a1a1a,#2d2d2d)!important;border:2px solid #667eea!important;color:#fff!important;font-family:Consolas,Monaco,Courier New,monospace!important;font-size:.85rem;line-height:1.7;white-space:pre-wrap;box-shadow:0 8px 24px #667eea4d,inset 0 1px #ffffff1a!important;position:relative}.chat-message.thinking-mode .message-content:before{content:"🧠 AI Thinking Process";display:block;font-weight:700;color:#a78bfa;font-size:.9rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(167,139,250,.3);font-family:system-ui,-apple-system,sans-serif}@keyframes thinkingPulse{0%,to{opacity:1}50%{opacity:.98}}@keyframes thinkingGlow{0%,to{box-shadow:0 0 20px #667eea66}50%{box-shadow:0 0 30px #667eea99}}.action-request-buttons{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.1)}.estimated-time{font-size:.85rem;color:#f59e0b;font-weight:600;margin-bottom:.75rem;padding:.5rem;background:#f59e0b1a;border-radius:6px;text-align:center}.button-row{display:flex;gap:.75rem}.action-request-buttons .action-btn{flex:1;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;justify-content:center;gap:.5rem}.proceed-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.proceed-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.cancel-btn{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;box-shadow:0 2px 8px #6b72804d}.cancel-btn:hover{background:linear-gradient(135deg,#4b5563,#374151);transform:translateY(-1px);box-shadow:0 4px 12px #6b728066}.typing-indicator{display:flex;gap:.35rem;padding:.75rem 1rem;background:#fff;border:1px solid #e0e0e0;border-radius:12px}.typing-indicator span{width:8px;height:8px;background:#999;border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-10px);opacity:1}}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.queue-notice{text-align:center;padding:.75rem;background:#fff3e0;color:#e65100;border-radius:8px;font-size:.9rem;font-weight:600;margin-bottom:1rem}.chat-input-area{padding:1rem;background:#fff;border-top:1px solid #e0e0e0}.chat-input-box{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:8px;font-size:.95rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;resize:none;margin-bottom:.75rem;transition:border-color .2s;line-height:1.5}.chat-input-box:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.chat-input-box:disabled{background:#f5f5f5;cursor:not-allowed}.chat-input-box::placeholder{color:#999}.chat-send-btn{width:100%;padding:.75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s}.chat-send-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.chat-send-btn:disabled{opacity:.6;cursor:not-allowed}.input-hint{text-align:center;font-size:.8rem;color:#999;margin-top:.5rem;font-weight:500}.chat-messages-area::-webkit-scrollbar{width:8px}.chat-messages-area::-webkit-scrollbar-track{background:#f0f0f0}.chat-messages-area::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.chat-messages-area::-webkit-scrollbar-thumb:hover{background:#aaa}.chat-error-message{background:linear-gradient(135deg,#ffebee,#ffcdd2);border-left:4px solid #f44336;padding:1rem 1.25rem;margin:1rem;border-radius:8px;display:flex;gap:1rem;align-items:flex-start;animation:slideIn .3s ease}.error-icon{font-size:1.5rem;flex-shrink:0}.error-content{flex:1}.error-title{font-weight:700;color:#c62828;margin-bottom:.5rem;font-size:1rem}.error-text{color:#d32f2f;font-size:.95rem;line-height:1.6;white-space:pre-line}.serial-monitor-panel{display:flex;flex-direction:column;height:100%;background:#1e1e1e;border-left:1px solid #333}.serial-header{background:#2d2d2d;padding:.75rem 1rem;border-bottom:1px solid #444;display:flex;justify-content:space-between;align-items:center}.serial-title{display:flex;align-items:center;gap:.5rem;color:#d4d4d4;font-weight:600;font-size:.95rem}.serial-icon{font-size:1.1rem}.serial-status{display:flex;align-items:center;gap:.35rem;font-size:.8rem;padding:.25rem .6rem;border-radius:12px;background:#4caf5026;color:#4caf50;font-weight:600}.status-dot{width:6px;height:6px;border-radius:50%;background:#4caf50;animation:pulse-dot 1.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.serial-close-btn{background:transparent;border:none;color:#999;font-size:1.25rem;cursor:pointer;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.serial-close-btn:hover{background:#ffffff1a;color:#fff}.serial-controls{background:#252525;padding:.6rem 1rem;border-bottom:1px solid #444;display:flex;gap:1rem;align-items:center;flex-wrap:wrap;font-size:.85rem}.serial-control-group{display:flex;align-items:center;gap:.5rem;color:#d4d4d4}.serial-control-group label{font-weight:500;color:#999}.baud-select{background:#3c3c3c;color:#d4d4d4;border:1px solid #555;border-radius:4px;padding:.35rem .5rem;font-size:.85rem;cursor:pointer}.baud-select:disabled{opacity:.5;cursor:not-allowed}.serial-control-group input[type=checkbox]{cursor:pointer}.serial-actions{margin-left:auto;display:flex;gap:.5rem}.serial-btn{padding:.35rem .75rem;background:#3c3c3c;color:#d4d4d4;border:1px solid #555;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.serial-btn:hover:not(:disabled){background:#4a4a4a;border-color:#666}.serial-btn:disabled{opacity:.5;cursor:not-allowed}.clear-btn:hover:not(:disabled){background:#c62828;border-color:#b71c1c}.export-btn:hover:not(:disabled){background:#667eea;border-color:#5568d3}.start-btn{background:#4caf50;border-color:#45a049;color:#fff}.start-btn:hover:not(:disabled){background:#45a049;border-color:#388e3c}.stop-btn{background:#ff9800;border-color:#f57c00;color:#fff}.stop-btn:hover:not(:disabled){background:#f57c00;border-color:#e65100}.serial-error{background:#c6282833;color:#ff5252;padding:.6rem 1rem;border-bottom:1px solid rgba(198,40,40,.3);font-size:.85rem;font-weight:500}.serial-messages{flex:1;overflow-y:auto;padding:.75rem;font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.5;background:#1e1e1e;color:#d4d4d4}.serial-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#666}.serial-empty p{margin:.5rem 0}.serial-hint{font-size:.8rem;color:#555}.serial-message{display:flex;gap:.75rem;padding:.35rem 0;border-bottom:1px solid #2a2a2a}.serial-message:hover{background:#ffffff08}.serial-timestamp{color:#667eea;font-weight:600;flex-shrink:0;font-size:.8rem}.serial-data{color:#4caf50;word-break:break-word;flex:1}.serial-footer{background:#252525;padding:.5rem 1rem;border-top:1px solid #444;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#999}.serial-info{font-weight:500}.serial-messages::-webkit-scrollbar{width:8px}.serial-messages::-webkit-scrollbar-track{background:#1e1e1e}.serial-messages::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.serial-messages::-webkit-scrollbar-thumb:hover{background:#555}.contact-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:contactFadeIn .3s ease-out;padding:20px}@keyframes contactFadeIn{0%{opacity:0}to{opacity:1}}.contact-modal-container{position:relative;width:100%;max-width:600px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:contactSlideUp .4s ease-out}@keyframes contactSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.contact-modal-close{position:absolute;top:20px;right:20px;width:40px;height:40px;background:#0000000d;border:1px solid rgba(0,0,0,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;color:#333}.contact-modal-close:hover{background:#0000001a;color:#000;border-color:#0003;transform:rotate(90deg)}.contact-modal-close:active{transform:rotate(90deg) scale(.9)}.contact-modal-content{padding:40px 40px 30px}.contact-modal-title{font-size:1.8rem;font-weight:600;color:#111;margin:0 0 8px;text-align:center}.contact-modal-subtitle{color:#666;margin:0 0 32px;text-align:center;font-size:.95rem}.contact-form{display:flex;flex-direction:column;gap:20px}.contact-form-field{display:flex;flex-direction:column;gap:8px}.contact-form-field label{font-size:.9rem;font-weight:600;color:#333}.contact-form-field .required{color:#ef4444}.contact-form-field input,.contact-form-field textarea{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;font-family:inherit;transition:all .2s ease;background:#fafafa}.contact-form-field input:focus,.contact-form-field textarea:focus{outline:none;border-color:#00d4aa;background:#fff;box-shadow:0 0 0 3px #00d4aa1a}.contact-form-field textarea{resize:vertical;min-height:120px}.contact-submit-btn{padding:14px 24px;background:linear-gradient(135deg,#00d4aa,#00eabf);color:#000;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:8px}.contact-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#00eabf,#00d4aa);transform:translateY(-1px);box-shadow:0 4px 16px #00d4aa66}.contact-submit-btn:active:not(:disabled){transform:translateY(0)}.contact-submit-btn:disabled{opacity:.6;cursor:not-allowed}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(0,0,0,.2);border-top-color:#000;border-radius:50%;animation:spin .6s linear infinite}.contact-error-message{padding:12px 16px;background:#fee;border-left:4px solid #ef4444;border-radius:6px;color:#b91c1c;font-size:.9rem;margin-bottom:8px}.contact-form-note{color:#999;font-size:.85rem;text-align:center;margin:16px 0 0;line-height:1.5}.contact-success{text-align:center;padding:20px}.contact-success .success-icon{width:80px;height:80px;background:linear-gradient(135deg,#00d4aa,#00eabf);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;margin:0 auto 24px;animation:successPop .5s ease-out}@keyframes successPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.contact-success h2{font-size:1.5rem;font-weight:600;color:#111;margin:0 0 12px}.contact-success p{color:#666;font-size:1rem;margin:0;line-height:1.6}@media (max-width: 640px){.contact-modal-content{padding:30px 24px 24px}.contact-modal-title{font-size:1.5rem}.contact-modal-subtitle{font-size:.9rem}.contact-form{gap:16px}.contact-form-field input,.contact-form-field textarea{padding:10px 14px;font-size:.9rem}.contact-submit-btn{padding:12px 20px;font-size:.95rem}}.chat{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.chat-welcome{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.chat-welcome h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.chat-welcome p{margin-bottom:.5rem;line-height:1.6}.chat-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;gap:1.5rem}.chat-loading h2{font-size:1.5rem;color:var(--text-primary);margin:0}.chat-loading .loading-step-message{font-size:1.125rem;color:#a78bfa;font-weight:600;margin:.5rem 0;min-height:1.5rem;animation:smoothFade 4s ease-in-out}.chat-loading .loading-info{color:var(--text-secondary);max-width:500px;line-height:1.6;margin:.5rem 0 0;font-size:.9rem}@keyframes smoothFade{0%{opacity:0;transform:translateY(-8px)}15%{opacity:1;transform:translateY(0)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}.chat-loading .spinner{width:50px;height:50px;border:4px solid var(--bg-tertiary);border-top:4px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite}.message{display:flex;gap:1rem;max-width:85%}.message-user{align-self:flex-end;flex-direction:row-reverse}.message-assistant{align-self:flex-start}.message-avatar{width:36px;height:36px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.message-content{background:var(--bg-secondary);padding:1rem;border-radius:12px;flex:1}.message-user .message-content{background:var(--accent)}.message-content pre{white-space:pre-wrap;word-wrap:break-word;margin:0}.message-user .message-content pre{font-family:inherit;color:#fff}.code-container{background:#1e1e1e;border-radius:8px;overflow:hidden;border:1px solid #333;position:relative}.code-container pre{margin:0;padding:1.5rem;overflow-x:auto;background:transparent}.code-container code{font-family:Consolas,Monaco,Courier New,monospace;font-size:.9rem;line-height:1.6;color:#d4d4d4;white-space:pre;display:block}.message-user .code-container{background:#ffffff1a;border-color:#fff3}.message-user .code-container code{color:#fff}.template-banner{background:#e3f2fd;border-left:4px solid #2196f3;padding:.75rem;margin-bottom:1rem;border-radius:4px;font-size:.875rem}.template-banner strong{display:block;margin-bottom:.5rem;color:#1565c0}.template-badge{display:inline-block;background:#fff;border:1px solid #2196f3;padding:.25rem .75rem;border-radius:12px;margin:.25rem .25rem .25rem 0;color:#1565c0;font-weight:500}.template-version{color:#666;font-size:.8em;font-weight:400}.token-usage{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:.75rem;color:var(--text-muted);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.token-label{font-weight:600;color:var(--text-secondary)}.token-input{color:#10b981;font-weight:500}.token-output{color:#3b82f6;font-weight:500}.token-total{color:var(--text-primary);font-weight:600}.token-separator{color:var(--border)}.loading-indicator{display:flex;gap:.5rem;padding:.5rem 0}.loading-indicator span{width:8px;height:8px;border-radius:50%;background:var(--text-muted);animation:pulse 1.4s ease-in-out infinite}.loading-indicator span:nth-child(2){animation-delay:.2s}.loading-indicator span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-error{background:#991b1b;color:#fecaca;padding:1rem;border-radius:8px;margin:0 1.5rem}.chat-input-container{background:var(--bg-secondary);border-top:1px solid var(--border);padding:1rem;display:flex;gap:1rem}.chat-input{flex:1;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;padding:.75rem;color:var(--text-primary);font-size:.95rem;resize:none;min-height:60px;max-height:150px}.chat-input::placeholder{color:var(--text-muted)}.chat-input:focus{border-color:var(--accent)}.chat-input:disabled{opacity:.6;cursor:not-allowed}.chat-send-button{background:var(--accent);color:#fff;padding:.75rem 2rem;border-radius:8px;font-weight:600;transition:background .2s;align-self:flex-end}.chat-send-button:hover:not(:disabled){background:var(--accent-hover)}.chat-send-button:disabled{background:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed}.message-system{display:flex;gap:1rem;padding:1.5rem;background:transparent}.queue-notification-chat{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:12px;padding:1.5rem;border:2px solid #f59e0b;box-shadow:0 4px 12px #f59e0b33;animation:slideIn .4s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.queue-notification-chat h4{margin:0 0 .75rem;color:#92400e;font-size:1.125rem;font-weight:700}.queue-position-chat{font-size:1rem;color:#78350f;margin:.5rem 0}.queue-position-chat strong{color:#b45309;font-size:1.25rem;font-weight:700}.queue-wait-chat{font-size:.9375rem;color:#78350f;margin:.5rem 0}.queue-wait-chat strong{color:#b45309;font-weight:700}.queue-info-chat{font-size:.875rem;color:#92400e;margin:.75rem 0 0;font-style:italic}.mode-indicator{padding:.875rem 1.5rem;margin-bottom:1rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;animation:slideDown .3s ease-out}.mode-deep{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.mode-fast{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1f2937}.mode-content{display:flex;align-items:center;gap:1rem;justify-content:space-between}.mode-icon{font-size:1.5rem}.mode-label{font-weight:600;font-size:1rem;flex:1}.mode-toggle-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:inherit;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.mode-toggle-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.mode-fast .mode-toggle-btn{background:#0000001a;border:1px solid rgba(0,0,0,.2)}.mode-fast .mode-toggle-btn:hover{background:#00000026}.admin-login{height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.login-box{background:#fff;padding:3rem;border-radius:16px;box-shadow:0 20px 60px #0000004d;text-align:center;max-width:400px;width:100%}.login-box h1{color:#333;margin-bottom:.5rem}.login-box p{color:#666;margin-bottom:2rem}.login-box input{width:100%;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;margin-bottom:1rem}.login-box button{width:100%;padding:1rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer}.login-box button:hover{background:#5568d3}.error-text{color:#dc2626;margin-top:1rem;font-size:.9rem}.admin-panel{height:100vh;display:flex;flex-direction:column;overflow-y:auto;background:var(--bg-primary);padding-bottom:3rem}.admin-header{background:var(--bg-secondary);padding:1.5rem 2rem;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.admin-header h1{font-size:1.75rem;color:var(--text-primary)}.admin-tabs{display:flex;gap:.5rem;padding:1rem 2rem 0;background:var(--bg-secondary);border-bottom:2px solid var(--border)}.admin-tab{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.admin-tab:hover{color:var(--text-primary);background:#667eea1a}.admin-tab.active{color:#667eea;border-bottom-color:#667eea}.tab-header{background:var(--bg-secondary);padding:1.5rem 2rem;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;align-items:center}.tab-header h2{font-size:1.5rem;color:var(--text-primary);margin:0}.create-button{padding:.75rem 1.5rem;background:var(--success);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer}.create-button:hover{background:#059669}.close-button{padding:.5rem 1rem;background:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:8px;cursor:pointer;font-size:1.2rem}.error-banner{background:#991b1b;color:#fecaca;padding:1rem;margin:1rem 2rem;border-radius:8px}.template-list{flex:1;overflow-y:auto;padding:2rem}.empty-state{text-align:center;padding:4rem;color:var(--text-muted)}.template-card{background:var(--bg-secondary);padding:1.5rem;border-radius:12px;margin-bottom:1rem;border:1px solid var(--border)}.template-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.template-header h3{font-size:1.3rem;color:var(--text-primary);margin-bottom:.25rem}.template-meta{font-size:.85rem;color:var(--text-muted)}.template-summary{color:var(--text-secondary);margin-bottom:1rem}.template-tags{display:flex;gap:.5rem;flex-wrap:wrap}.tag{background:var(--bg-tertiary);color:var(--text-secondary);padding:.25rem .75rem;border-radius:12px;font-size:.85rem}.template-actions{display:flex;gap:.5rem}.edit-btn,.delete-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer}.edit-btn{background:var(--accent);color:#fff}.edit-btn:hover{background:var(--accent-hover)}.delete-btn{background:#991b1b;color:#fff}.delete-btn:hover{background:#7f1d1d}.template-form{flex:1;overflow-y:auto;padding:2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem;font-size:.95rem}.form-group small{display:block;color:var(--text-muted);font-size:.85rem;margin-top:.25rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:.95rem}.form-group textarea{font-family:inherit;resize:vertical}.code-textarea{font-family:Consolas,Monaco,Courier New,monospace!important;font-size:.9rem!important;line-height:1.5}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-actions{display:flex;justify-content:center;gap:1rem;padding:2rem 0;border-top:2px solid var(--border);margin-top:2rem}.cancel-button,.save-button{padding:1rem 3rem;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer}.cancel-button{background:var(--bg-tertiary);color:var(--text-primary)}.cancel-button:hover{background:var(--bg-secondary)}.save-button{background:var(--success);color:#fff}.save-button:hover{background:#059669}.pin-requirement-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem;padding:.75rem;background:var(--bg-secondary);border-radius:4px}.pin-requirement-row input[type=text],.pin-requirement-row select{padding:.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.9rem}.pin-requirement-row input[type=checkbox]{width:18px;height:18px;cursor:pointer}.remove-pin-button{background:#ef4444;color:#fff;border:none;padding:.5rem .75rem;border-radius:4px;cursor:pointer;font-size:1rem;transition:background .2s}.remove-pin-button:hover{background:#dc2626}.add-pin-button{margin-top:.5rem;background:var(--accent);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .2s}.add-pin-button:hover{background:#2563eb}.templates-section{margin-bottom:2rem}.section-header-admin{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.section-header-admin h2{font-size:1.3rem;color:var(--text-primary);margin:0 0 .5rem}.section-desc{color:var(--text-muted);font-size:.9rem;margin:.25rem 0}.section-count{display:inline-block;background:var(--accent);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;margin-top:.5rem}.complete-solutions-header{border-bottom-color:#667eea}.complete-solutions-header h2{color:#667eea}.complete-solutions-header .section-count{background:linear-gradient(135deg,#667eea,#764ba2)}.complete-solution-card{border-left:4px solid #667eea;background:linear-gradient(135deg,#667eea0d,#764ba20d)}.auto-label{color:#667eea;font-size:.85rem;font-weight:400;margin-left:.5rem}.auto-generated-field{background:#f0f4ff!important;color:#667eea!important;font-family:Courier New,monospace;font-weight:600;cursor:not-allowed}.user-stats{display:flex;gap:1rem}.stat-badge{background:#00d4aa1a;color:#00d4aa;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600}.search-container{margin:1.5rem 0}.search-input{width:100%;max-width:500px;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s}.search-input:focus{outline:none;border-color:#00d4aa}.users-table-container{overflow-x:auto;margin-top:1rem}.users-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.users-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.users-table th{padding:1rem;text-align:left;font-weight:600;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.users-table td{padding:1rem;border-bottom:1px solid #f3f4f6;vertical-align:middle}.users-table tbody tr:hover{background:#f9fafb}.users-table tbody tr.inactive-user{opacity:.6;background:#fef2f2}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar{font-size:1.5rem}.users-table .user-name{font-weight:600;color:#111827}.users-table td{color:#374151}.role-select,.level-select{padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer;min-width:120px}.role-select:focus,.level-select:focus{outline:none;border-color:#00d4aa}.balance{font-weight:700;color:#00d4aa;font-size:1.1rem}.balance.low-balance{color:#ef4444}.usage-text{color:#6b7280;font-size:.9rem}.status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;border:none;cursor:pointer;transition:all .2s}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.active:hover{background:#a7f3d0}.status-badge.locked{background:#fee2e2;color:#991b1b}.status-badge.locked:hover{background:#fecaca}.date-text{color:#6b7280;font-size:.875rem}.add-credits-btn{background:linear-gradient(135deg,#00d4aa,#00eabf);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s}.add-credits-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d4aa4d}.change-password-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s}.change-password-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;padding:2rem;border-radius:16px;max-width:500px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-content h3{margin:0 0 .5rem;color:#111827;font-size:1.5rem}.modal-subtitle{color:#6b7280;margin:0 0 1.5rem}.current-balance-display{background:#f9fafb;padding:1rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.current-balance-display span{color:#6b7280;font-size:.9rem}.current-balance-display strong{color:#00d4aa;font-size:1.25rem}.new-balance-preview{background:#ecfdf5;border:2px solid #00d4aa;padding:1rem;border-radius:8px;text-align:center;margin-bottom:1.5rem;color:#065f46}.new-balance-preview strong{color:#00d4aa;font-size:1.25rem}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.modal-actions button{flex:1;padding:.875rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.modal-actions .cancel-button{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.modal-actions .cancel-button:hover{background:#e5e7eb}.modal-actions .save-button{background:linear-gradient(135deg,#00d4aa,#00eabf);border:none;color:#fff}.modal-actions .save-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00d4aa4d}.modal-actions .save-button:disabled{opacity:.5;cursor:not-allowed}.credit-mode-selector{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#f3f4f6;padding:.5rem;border-radius:8px}.mode-btn{flex:1;padding:.75rem 1rem;border:2px solid transparent;background:transparent;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;color:#6b7280}.mode-btn.active{background:#fff;color:#00d4aa;border-color:#00d4aa;box-shadow:0 2px 4px #00d4aa33}.mode-btn:hover:not(.active){color:#374151}.tab-subtitle{color:#6b7280;font-size:1rem;margin-top:.5rem}.pricing-info-card{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #00d4aa;border-radius:12px;padding:1.5rem;margin:1.5rem 0}.pricing-info-card h3{color:#065f46;margin:0 0 1rem;font-size:1.2rem}.pricing-info-card p{color:#047857;margin:.5rem 0;font-size:.95rem}.pricing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:1.5rem;margin-top:1.5rem;margin-bottom:2rem}.pricing-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.pricing-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f3f4f6}.pricing-card-header h3{margin:0;color:#111827;font-size:1.3rem;display:flex;align-items:center;gap:.5rem}.model-name{font-size:.85rem;color:#6b7280;font-weight:400;display:block;margin-top:.25rem}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.pricing-item{background:#f9fafb;padding:1rem;border-radius:8px}.pricing-item label{display:block;font-size:.8rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.price-value{font-size:1.2rem;font-weight:700;color:#374151}.price-value.user-price{color:#00d4aa}.pricing-summary{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:2px solid #f3f4f6}.markup-badge{background:linear-gradient(135deg,#00d4aa,#00eabf);color:#fff;padding:.75rem 1.5rem;border-radius:20px;display:flex;align-items:center;gap:.75rem}.markup-label{font-size:.9rem;opacity:.9}.markup-badge strong{font-size:1.4rem}.edit-pricing-btn{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.edit-pricing-btn:hover{background:#5568d3;transform:translateY(-1px)}.pricing-edit-form{margin-top:1rem}.pricing-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.pricing-field label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.input-with-prefix{display:flex;align-items:center;border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:border-color .2s}.input-with-prefix:focus-within{border-color:#00d4aa}.input-with-prefix span{background:#f9fafb;padding:.75rem;font-weight:700;color:#374151;border-right:1px solid #e5e7eb}.input-with-prefix input{border:none;padding:.75rem;flex:1;font-size:1rem}.input-with-prefix input:focus{outline:none}.pricing-markup-display{background:#ecfdf5;border:2px solid #00d4aa;padding:1rem;border-radius:8px;text-align:center;margin-bottom:1rem;color:#065f46}.markup-value{color:#00d4aa;font-size:1.5rem;font-weight:700;margin-left:.5rem}.pricing-actions{display:flex;gap:1rem}.pricing-actions button{flex:1}.pricing-note{background:#fffbeb;border:2px solid #fbbf24;border-radius:12px;padding:1.5rem;margin-top:2rem;margin-bottom:3rem}.pricing-note p{color:#92400e;margin:.5rem 0;font-size:.95rem}.pricing-note strong{color:#78350f}.model-config-info-card{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border:2px solid #8b5cf6;border-radius:12px;padding:1.5rem;margin:1.5rem 0}.model-config-info-card h3{color:#5b21b6;margin:0 0 1rem;font-size:1.2rem}.model-config-info-card p{color:#6b21a8;margin:.5rem 0;font-size:.95rem}.model-config-container{max-width:1200px;margin:0 auto}.current-config-badge{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #22c55e;border-radius:12px;padding:1.5rem;margin-bottom:2rem}.config-status{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#15803d;font-weight:600;font-size:1.1rem}.status-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#22c55e;color:#fff;border-radius:50%;font-size:.9rem}.config-display{display:flex;gap:2rem;flex-wrap:wrap}.config-item{color:#166534;font-size:1rem}.config-item strong{color:#14532d;margin-right:.5rem}.model-selector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem;margin:2rem 0}.model-selector-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:2rem;transition:all .3s ease}.model-selector-card:hover{border-color:#8b5cf6;box-shadow:0 8px 24px #8b5cf626}.model-selector-card h3{color:#374151;margin:0 0 .5rem;font-size:1.3rem}.selector-description{color:#6b7280;margin:0 0 1.5rem;font-size:.9rem}.model-select{width:100%;padding:.875rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:1rem;color:#374151;background:#fff;cursor:pointer;transition:all .2s ease}.model-select:hover{border-color:#8b5cf6}.model-select:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.model-select:disabled{opacity:.5;cursor:not-allowed}.model-details{margin-top:1rem;padding:1rem;background:#f9fafb;border-left:4px solid #8b5cf6;border-radius:6px}.model-details p{color:#4b5563;margin:0;font-size:.9rem;line-height:1.6}.model-config-actions{display:flex;justify-content:center;margin:2.5rem 0}.save-model-config-btn{padding:1rem 3rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #8b5cf64d}.save-model-config-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf666}.save-model-config-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.model-config-note{background:#fef3c7;border:2px solid #f59e0b;border-radius:12px;padding:1.5rem;margin-top:2rem}.model-config-note p{color:#92400e;margin:.5rem 0;font-size:.95rem}.model-config-note strong{color:#78350f}.payment-badge{background:#ef4444;color:#fff;padding:.25rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700;margin-left:.5rem}.refresh-btn{background:#6b7280;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer}.refresh-btn:hover{background:#4b5563}.payments-list{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.payment-request-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.payment-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f3f4f6}.payment-card-header h3{margin:0;color:#111827;font-size:1.3rem}.user-email{color:#6b7280;margin:.25rem 0 0;font-size:.9rem}.payment-amount{background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;padding:.75rem 1.5rem;border-radius:12px;font-size:1.5rem;font-weight:700;box-shadow:0 2px 8px #f59e0b4d}.payment-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.detail-item{background:#f9fafb;padding:.75rem;border-radius:8px}.detail-item label{display:block;font-size:.75rem;color:#6b7280;text-transform:uppercase;margin-bottom:.25rem;letter-spacing:.5px}.detail-item span{color:#111827;font-weight:600}.credits-value{color:#00d4aa!important}.ref-code{font-family:Courier New,monospace;background:#fff7ed;padding:.25rem .5rem;border-radius:4px;color:#92400e!important}.user-notes{background:#eff6ff;border:1px solid #3b82f6;padding:1rem;border-radius:8px;margin:1rem 0;color:#1e40af}.payment-time{color:#6b7280;font-size:.85rem;margin:1rem 0}.payment-actions{display:flex;gap:1rem;margin-top:1rem}.approve-btn{flex:1;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.approve-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.reject-btn{flex:1;background:#ef4444;color:#fff;border:none;padding:.875rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.reject-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.settings-container{padding:2rem;max-width:900px;margin:0 auto}.setting-card{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a;border:2px solid #f0f0f0}.setting-header h3{margin:0 0 .5rem;color:#333;font-size:1.3rem}.setting-header p{margin:0;color:#666;font-size:.9rem}.setting-content{margin-top:1.5rem}.setting-help{margin-top:1rem;padding:1rem;background:#f9fafb;border-radius:8px;color:#666;font-size:.9rem;border-left:4px solid #00d4aa}.toggle-label{display:flex;align-items:center;gap:1rem;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-checkbox{display:none}.toggle-slider{position:relative;width:60px;height:30px;background:#ccc;border-radius:30px;transition:background .3s}.toggle-checkbox:checked+.toggle-slider{background:#00d4aa}.toggle-slider:before{content:"";position:absolute;width:24px;height:24px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .3s}.toggle-checkbox:checked+.toggle-slider:before{transform:translate(30px)}.toggle-text{font-weight:600;color:#333;font-size:1rem}.setting-input-group{display:flex;align-items:center;gap:1rem}.setting-input-group label{font-weight:600;color:#333;min-width:180px}.setting-input{padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;width:200px;transition:border-color .2s}.setting-input:focus{outline:none;border-color:#00d4aa}.create-user-btn{background:#00d4aa;color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.9rem}.create-user-btn:hover{background:#00b890;transform:translateY(-1px);box-shadow:0 4px 12px #00d4aa4d}.create-user-btn-large{background:linear-gradient(135deg,#00d4aa,#00b890);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1.1rem;display:flex;align-items:center;gap:.5rem;justify-content:center;box-shadow:0 4px 12px #00d4aa33}.create-user-btn-large:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00d4aa66}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#333}.form-input{width:100%;padding:.875rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-input:focus{outline:none;border-color:#00d4aa}.inactive-user{opacity:.6;background:#f9fafb}.status-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.status-checkbox{width:20px;height:20px;cursor:pointer;accent-color:#00d4aa}.status-active{color:#00d4aa;font-weight:600}.status-inactive{color:#ef4444;font-weight:600}.items-select{padding:.6rem 2rem .6rem .75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;transition:all .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:1rem}.revenue-analytics{padding:2rem}.revenue-filters{display:flex;gap:1.5rem;align-items:center;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.filter-group{display:flex;align-items:center;gap:.75rem}.filter-group label{font-weight:600;color:#374151}.filter-select{padding:.625rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;background:#fff;cursor:pointer;transition:all .2s;min-width:150px}.filter-select:hover{border-color:#00d4aa}.filter-select:focus{outline:none;border-color:#00d4aa;box-shadow:0 0 0 3px #00d4aa1a}.refresh-btn{padding:.625rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.refresh-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.revenue-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.revenue-card{background:#fff;border-radius:12px;padding:1.75rem;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:1.25rem;transition:all .2s}.revenue-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026}.revenue-card-icon{font-size:2.5rem;line-height:1}.revenue-card-content{flex:1}.revenue-card-value{font-size:2rem;font-weight:700;margin-bottom:.25rem}.revenue-card-label{color:#666;font-size:.95rem;font-weight:500;margin-bottom:.25rem}.revenue-card-sub{color:#999;font-size:.85rem}.revenue-card.gross-sales .revenue-card-value{color:#00d4aa}.revenue-card.api-costs .revenue-card-value{color:#ef4444}.revenue-card.net-profit .revenue-card-value{color:#667eea}.revenue-card.usage-profit .revenue-card-value{color:#f59e0b}.revenue-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem}.revenue-section h3{margin:0 0 1.5rem;color:#111827;font-size:1.3rem}.revenue-table{width:100%;border-collapse:collapse;background:#fff}.revenue-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.revenue-table th{padding:1rem;text-align:left;font-weight:600;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.revenue-table td{padding:1rem;border-bottom:1px solid #f3f4f6;color:#374151}.revenue-table tbody tr:hover{background:#f9fafb}.revenue-table .profit-value{font-weight:700;color:#00d4aa}.revenue-trend{display:flex;flex-direction:column;gap:1rem}.trend-bar-container{display:flex;align-items:center;gap:1rem}.trend-label{min-width:100px;font-weight:600;color:#374151;font-size:.95rem}.trend-bar-wrapper{flex:1;background:#f3f4f6;border-radius:8px;height:32px;position:relative;overflow:hidden}.trend-bar{height:100%;display:flex;align-items:center;justify-content:flex-end;padding-right:.75rem;transition:width .3s ease;min-width:60px}.trend-value{color:#fff;font-weight:700;font-size:.9rem;text-shadow:0 1px 2px rgba(0,0,0,.2)}@media (max-width: 1024px){.revenue-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.revenue-filters{flex-wrap:wrap}}@media (max-width: 640px){.revenue-cards{grid-template-columns:1fr}.trend-bar-container{flex-direction:column;align-items:flex-start}.trend-label{min-width:auto}.trend-bar-wrapper{width:100%}}.performance-status-banner{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;border-radius:12px;margin-bottom:2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px #0000001a}.performance-status-banner.status-healthy{background:linear-gradient(135deg,#11998e,#38ef7d)}.performance-status-banner.status-warning{background:linear-gradient(135deg,#f093fb,#f5576c)}.performance-status-banner.status-critical{background:linear-gradient(135deg,#fa709a,#fee140)}.status-icon{font-size:3rem}.status-message h3{margin:0 0 .5rem;font-size:1.5rem}.status-message p{margin:0;opacity:.95;font-size:1rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;display:flex;gap:1rem;align-items:flex-start;transition:transform .2s,box-shadow .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.metric-icon{font-size:2.5rem;flex-shrink:0}.metric-content{flex:1}.metric-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;font-weight:500}.metric-value{font-size:2rem;font-weight:700;color:#1f2937;line-height:1;margin-bottom:.25rem}.metric-subtitle{font-size:.75rem;color:#9ca3af;margin-top:.25rem}.scale-recommendation{display:flex;align-items:center;gap:1rem;padding:1.25rem;border-radius:12px;margin-bottom:2rem;background:#eff6ff;border-left:4px solid #3b82f6}.scale-recommendation.warning{background:#fef3c7;border-left-color:#f59e0b}.recommendation-icon{font-size:2rem;flex-shrink:0}.recommendation-content h4{margin:0 0 .5rem;color:#1f2937;font-size:1.125rem}.recommendation-content p{margin:0;color:#4b5563}.performance-section{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014}.performance-section h3{margin:0 0 1.5rem;color:#1f2937;font-size:1.25rem;font-weight:600}.api-usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.usage-stat{text-align:center;padding:1rem;background:#f9fafb;border-radius:8px}.usage-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.usage-value{font-size:2rem;font-weight:700;color:#1f2937}.database-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.db-stat{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f9fafb;border-radius:8px}.db-stat-icon{font-size:2rem;flex-shrink:0}.db-stat-content{flex:1}.db-stat-value{font-size:1.875rem;font-weight:700;color:#1f2937;line-height:1;margin-bottom:.25rem}.db-stat-label{font-size:.875rem;color:#6b7280}.scaling-guide{display:flex;flex-direction:column;gap:1rem}.scale-level{background:#f9fafb;border-radius:8px;padding:1.25rem;border-left:4px solid #e5e7eb}.scale-level:has(.scale-badge.current){background:#ecfdf5;border-left-color:#10b981}.scale-level:has(.scale-badge.next){background:#eff6ff;border-left-color:#3b82f6}.scale-level:has(.scale-badge.future){background:#f5f3ff;border-left-color:#8b5cf6}.scale-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.scale-badge{display:inline-block;padding:.375rem .875rem;border-radius:9999px;font-size:.875rem;font-weight:600;background:#e5e7eb;color:#1f2937}.scale-badge.current{background:#10b981;color:#fff}.scale-badge.next{background:#3b82f6;color:#fff}.scale-badge.future{background:#8b5cf6;color:#fff}.scale-capacity{font-size:.875rem;color:#6b7280;font-weight:500}.scale-features{list-style:none;padding:0;margin:0 0 1rem}.scale-features li{padding:.375rem 0;color:#4b5563;font-size:.9375rem}.scale-trigger{padding-top:.75rem;border-top:1px solid #e5e7eb;font-size:.875rem;color:#6b7280}.scale-trigger strong{color:#1f2937}.info-box{background:#f9fafb;border-radius:8px;padding:1.25rem;border-left:4px solid #6366f1}.info-box p{margin:0 0 .75rem;font-weight:600;color:#1f2937}.info-box ul{margin:0;padding-left:1.5rem}.info-box li{margin-bottom:.5rem;color:#4b5563;font-size:.9375rem}.info-box li:last-child{margin-bottom:0}@media (max-width: 768px){.metrics-grid{grid-template-columns:1fr}.performance-status-banner{flex-direction:column;text-align:center}.status-icon{font-size:2.5rem}.api-usage-grid,.database-stats-grid{grid-template-columns:1fr}}.user-projects-monitor{padding:2rem;max-width:1400px;margin:0 auto}.monitor-header{margin-bottom:2rem}.monitor-header h2{font-size:1.8rem;margin-bottom:.5rem;color:#1a1a2e}.monitor-description{color:#666;font-size:.95rem}.search-section{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.search-input-group{display:flex;align-items:center;gap:1rem}.search-input-group label{font-weight:600;color:#333;min-width:100px}.email-input{flex:1;padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s}.email-input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.email-input:disabled{background:#f5f5f5;cursor:not-allowed}.search-button{padding:.75rem 2rem;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.search-button:hover:not(:disabled){background:#45a049;transform:translateY(-1px);box-shadow:0 4px 8px #4caf504d}.search-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.error-message{margin-top:1rem;padding:.75rem 1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;color:#856404}.user-info-section{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.user-info-section h3{margin-bottom:1rem;color:#1a1a2e}.user-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8f9fa;border-radius:8px;border-left:3px solid #4CAF50}.info-label{font-weight:600;color:#555}.info-value{color:#333;font-weight:500}.projects-section{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.projects-section h3{margin-bottom:1rem;color:#1a1a2e}.projects-table-container{overflow-x:auto}.projects-table{width:100%;border-collapse:collapse}.projects-table thead{background:#f8f9fa}.projects-table th{padding:1rem;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0}.projects-table td{padding:1rem;border-bottom:1px solid #f0f0f0;vertical-align:top}.projects-table tbody tr:hover{background:#f8f9fa}.project-title{font-weight:600;color:#1a1a2e}.first-prompt{color:#666;font-size:.9rem;max-width:300px}.message-count{text-align:center;font-weight:600;color:#4caf50}.date-cell{font-size:.85rem;color:#666;white-space:nowrap}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.status-badge.public{background:#e3f2fd;color:#1976d2}.status-badge.private{background:#f3e5f5;color:#7b1fa2}.view-button{padding:.5rem 1rem;background:#2196f3;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.view-button:hover{background:#1976d2;transform:translateY(-1px);box-shadow:0 2px 8px #2196f34d}.empty-state{text-align:center;padding:3rem;color:#666}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h4{color:#333;margin-bottom:.5rem}.admin-project-viewer{padding:2rem;max-width:1400px;margin:0 auto}.viewer-header{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem}.back-button{padding:.5rem 1rem;background:#666;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:1rem}.back-button:hover{background:#555;transform:translate(-2px)}.viewer-title h2{font-size:1.8rem;color:#1a1a2e;margin-bottom:.5rem}.viewer-meta{display:flex;flex-wrap:wrap;gap:.75rem;color:#666;font-size:.9rem}.viewer-meta .status-public{color:#1976d2;font-weight:600}.viewer-meta .status-private{color:#7b1fa2;font-weight:600}.viewer-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#fff;padding:.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.tab-button{flex:1;padding:1rem;background:transparent;border:none;border-radius:8px;font-size:1rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.tab-button:hover{background:#f8f9fa;color:#333}.tab-button.active{background:#4caf50;color:#fff}.viewer-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;min-height:400px}.chat-history-tab{padding:1rem}.chat-info{background:#f8f9fa!important;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid #4CAF50}.chat-info p{margin:.5rem 0;color:#1a1a1a!important;font-weight:500}.chat-info strong{color:#2d3748!important}.messages-container{display:flex;flex-direction:column;gap:1rem}.message-item{padding:1rem;border-radius:12px;border:2px solid #e0e0e0;transition:all .2s}.message-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.message-item.user{background:#e3f2fd;border-color:#2196f3}.message-item.assistant{background:#f1f8e9;border-color:#8bc34a}.message-item.system{background:#fff3e0;border-color:#ff9800}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.message-role{font-weight:700;font-size:.9rem}.message-item.user .message-role{color:#1976d2}.message-item.assistant .message-role{color:#558b2f}.message-item.system .message-role{color:#f57c00}.message-meta{font-size:.85rem;color:#555!important;background:#ffffffb3;padding:.25rem .5rem;border-radius:4px}.message-content{line-height:1.6;color:#1a1a1a!important;background:#fffffff2!important;padding:.75rem;border-radius:6px;white-space:pre-wrap;word-wrap:break-word;font-size:.95rem}.message-footer{margin-top:.75rem;padding-top:.5rem;border-top:1px solid rgba(0,0,0,.05)}.message-length{font-size:.8rem;color:#666!important;background:#ffffffb3;padding:.15rem .5rem;border-radius:4px;display:inline-block}.empty-chat{text-align:center;padding:3rem;color:#1a1a1a!important;background:#f8f9fa;border-radius:12px;font-size:1.1rem}.code-tab{padding:1rem}.code-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.code-header h3{color:#1a1a2e}.code-block{background:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:8px;overflow-x:auto;font-family:Courier New,Courier,monospace;font-size:.9rem;line-height:1.5}.empty-code{text-align:center;padding:3rem;color:#666}.details-tab{padding:1rem}.details-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #f0f0f0}.details-section:last-child{border-bottom:none}.details-section h3{color:#1a1a2e;margin-bottom:1rem}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.detail-item{display:flex;justify-content:space-between;padding:.75rem;background:#f8f9fa;border-radius:8px}.detail-label{font-weight:600;color:#555}.detail-value{color:#333;font-weight:500;text-align:right}.modules-list{display:flex;flex-wrap:wrap;gap:.5rem}.module-badge{padding:.5rem 1rem;background:#e3f2fd;color:#1976d2;border-radius:20px;font-size:.9rem;font-weight:600}.pin-mappings-list{display:flex;flex-direction:column;gap:1rem}.pin-mapping-item{padding:1rem;background:#f8f9fa;border-radius:8px;border-left:3px solid #4CAF50}.component-name-detail{font-weight:600;color:#333;margin-bottom:.5rem}.pins-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.pin-badge-detail{display:inline-block;padding:.25rem .75rem;background:#fff;border:1px solid #e0e0e0;border-radius:12px;font-size:.85rem;color:#555}.project-description{padding:1rem;background:#f8f9fa;border-radius:8px;line-height:1.6;color:#333}.project-viewer-loading,.project-viewer-error{text-align:center;padding:3rem}.loading-spinner{border:4px solid #f3f3f3;border-top:4px solid #4CAF50;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 1rem}@media (max-width: 768px){.user-projects-monitor,.admin-project-viewer{padding:1rem}.search-input-group{flex-direction:column;align-items:stretch}.search-input-group label{min-width:auto}.projects-table{font-size:.85rem}.projects-table th,.projects-table td{padding:.5rem}.viewer-tabs{flex-direction:column}.user-info-grid,.details-grid{grid-template-columns:1fr}}.copy-button{position:absolute;top:.5rem;right:.5rem;padding:.5rem 1rem;background:#3b82f6cc;color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;z-index:10}.copy-button:hover{background:#3b82f6;transform:translateY(-1px)}.copy-button:active{transform:translateY(0)}.visual-component-manager{padding:2rem;max-width:1400px;margin:0 auto;height:100%;overflow-y:auto}.vcm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.vcm-header h1,.vcm-header h2{margin:0;color:#333}.create-button{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.create-button:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.close-button{background:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:1.2rem}.close-button:hover{background:#c82333}.vcm-form{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;max-height:calc(100vh - 8rem);overflow-y:auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.form-group input[type=text],.form-group select,.form-group textarea,.form-group input[type=file]{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.form-group small{display:block;margin-top:.5rem;color:#666;font-size:.85rem}.preview-area{position:relative;background:#f8f9fa;border:2px dashed #ccc;border-radius:8px;min-height:400px;display:flex;justify-content:center;align-items:center;cursor:crosshair;overflow:hidden}.preview-area img{max-width:100%;max-height:500px;object-fit:contain}.preview-area .placeholder{color:#999;text-align:center;font-size:1.1rem}.pin-marker{position:absolute;width:12px;height:12px;background:#667eea;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 2px 4px #0000004d;cursor:pointer;z-index:10}.pin-marker:hover{background:#dc3545;transform:translate(-50%,-50%) scale(1.3)}.pin-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto;padding:1rem;background:#f8f9fa;border-radius:6px}.pin-entry{display:grid;grid-template-columns:2fr 2fr 2fr auto;gap:.5rem;align-items:center}.pin-entry input,.pin-entry select{padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.pin-entry button{background:#dc3545;color:#fff;border:none;padding:.5rem .75rem;border-radius:4px;cursor:pointer;font-size:1rem}.pin-entry button:hover{background:#c82333}.no-pins{color:#999;font-style:italic;text-align:center;padding:2rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:2px solid #e0e0e0}.cancel-button,.save-button{padding:.75rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button{background:#6c757d;color:#fff}.cancel-button:hover{background:#5a6268}.save-button{background:#28a745;color:#fff}.save-button:hover{background:#218838}.component-list{display:flex;flex-direction:column;gap:2rem}.components-section{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #667eea}.section-header h2{margin:0;color:#333;font-size:1.3rem}.section-count{background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.component-card{display:flex;gap:1.5rem;padding:1.5rem;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:1rem;transition:all .2s}.component-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33}.component-image-preview{flex-shrink:0;width:200px;height:150px;background:#f8f9fa;border-radius:6px;display:flex;align-items:center;justify-content:center;overflow:hidden}.component-image-preview img{max-width:100%;max-height:100%;object-fit:contain}.component-info{flex:1;display:flex;flex-direction:column}.component-info h3{margin:0 0 .5rem;color:#333;font-size:1.2rem}.component-meta{color:#666;font-size:.9rem;margin-bottom:1rem}.component-actions{display:flex;gap:.75rem;margin-top:auto}.edit-btn,.delete-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.edit-btn{background:#ffc107;color:#000}.edit-btn:hover{background:#ffb300}.delete-btn{background:#dc3545;color:#fff}.delete-btn:hover{background:#c82333}.empty-state{text-align:center;padding:4rem 2rem;color:#999}.empty-state p{font-size:1.1rem}.error-banner{background:#dc3545;color:#fff;padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-weight:500}.loading-state{text-align:center;padding:4rem 2rem;color:#999}.loading-state p{font-size:1.1rem}.pagination-info{background:#f8f9fa;padding:.75rem 1.25rem;border-radius:6px;margin-bottom:1.5rem;color:#666;font-size:.95rem;font-weight:500;text-align:center;border:1px solid #e0e0e0}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding:1.5rem 0;border-top:1px solid #e0e0e0}.pagination-btn{padding:.6rem 1.2rem;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#667eea;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #667eea4d}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;border-color:#ccc;color:#ccc}.pagination-pages{display:flex;gap:.5rem}.pagination-page{padding:.6rem .9rem;background:#fff;color:#333;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;min-width:40px}.pagination-page:hover{border-color:#667eea;color:#667eea;transform:translateY(-1px)}.pagination-page.active{background:#667eea;color:#fff;border-color:#667eea;box-shadow:0 2px 8px #667eea4d}.users-controls{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}.search-container-new{flex:1;min-width:300px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:.75rem;font-size:1rem;color:#999;pointer-events:none;z-index:1}.search-input{flex:1;width:100%;padding:.6rem 2.5rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;transition:all .2s}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-input:disabled{background:#f5f5f5;cursor:not-allowed;color:#999}.clear-search{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:transparent;color:#999;border:none;font-size:1.3rem;cursor:pointer;padding:.25rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;z-index:2}.clear-search:hover:not(:disabled){background:#f0f0f0;color:#666;transform:translateY(-50%) scale(1.1)}.clear-search:disabled{opacity:.4;cursor:not-allowed}.items-per-page{display:flex;align-items:center;gap:.5rem}.items-per-page label{font-size:.9rem;color:#666;font-weight:500}.items-select{padding:.6rem 2rem .6rem .75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;transition:all .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:1rem}.items-select:hover{border-color:#667eea}.items-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.rag-solution-manager{padding:2rem;max-width:1600px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.rag-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:3px solid #667eea}.rag-header h2{font-size:2rem;font-weight:700;color:#1a202c;margin-bottom:.75rem}.rag-header p{color:#4a5568;font-size:1.1rem;line-height:1.6;margin-bottom:1rem}.view-toggle{display:flex;gap:.5rem}.toggle-btn{padding:.5rem 1.5rem;border:2px solid #e2e8f0;background:#fff;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.toggle-btn:hover{border-color:#667eea;background:#eef2ff}.toggle-btn.active{background:#667eea;color:#fff;border-color:#667eea}.solutions-list{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.list-controls{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-input{flex:1;min-width:250px;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem}.filter-select,.items-per-page-select{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;font-size:1rem}.solutions-header{margin-bottom:1.5rem;font-weight:600;color:#4a5568}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #e2e8f0}.pagination-btn{padding:.75rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-weight:600;color:#4a5568}.solution-card{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;transition:all .2s}.solution-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26}.solution-info h4{font-size:1.2rem;color:#1a202c;margin-bottom:.5rem}.solution-info p{color:#718096;margin-bottom:.75rem}.solution-meta{display:flex;gap:1rem;flex-wrap:wrap}.meta-item{font-size:.9rem;color:#4a5568;padding:.25rem .75rem;background:#f7fafc;border-radius:20px}.status-badge{padding:.25rem .75rem;border-radius:20px;font-weight:600;font-size:.85rem}.status-badge.published{background:#d4edda;color:#155724}.status-badge.draft{background:#fff3cd;color:#856404}.solution-actions{display:flex;gap:.5rem}.btn-small{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger{background:#fee;color:#c33;border:1px solid #fcc}.btn-danger:hover{background:#fcc;border-color:#c33}.empty-state,.loading-state{text-align:center;padding:3rem;color:#718096}.alert{padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem;animation:slideDown .3s ease}.alert-error{background:#fee;border:1px solid #fcc;color:#c33}.alert-success{background:#efe;border:1px solid #cfc;color:#3c3}.alert .alert-icon{font-size:1.2rem}.alert button{margin-left:auto;background:none;border:none;font-size:1.2rem;cursor:pointer;opacity:.6}.alert button:hover{opacity:1}.upload-form{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.form-section{margin-bottom:2rem}.form-label{display:block;font-weight:700;color:#1a202c;margin-bottom:.75rem;font-size:1.15rem;letter-spacing:-.02em}.required{color:#e74c3c}.selection-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px}.selection-count{font-weight:700;font-size:1.05rem;color:#667eea;padding:.5rem 1rem;background:#eef2ff;border-radius:8px}.quick-select-buttons{display:flex;gap:.5rem;margin-left:auto}.quick-select-btn{padding:.4rem .8rem;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.quick-select-btn:hover{background:#667eea;color:#fff;border-color:#667eea}.quick-select-btn.clear{background:#fee;border-color:#fcc;color:#c33}.quick-select-btn.clear:hover{background:#fcc;border-color:#c33}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;max-height:450px;overflow-y:auto;padding:1rem;border:2px solid #e2e8f0;border-radius:12px;background:#f7fafc}.checkbox-item{display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem;background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s;font-size:1rem}.checkbox-item:hover{border-color:#667eea;background:#eef2ff;transform:translateY(-1px);box-shadow:0 2px 8px #667eea26}.checkbox-item input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:#667eea}.checkbox-item input[type=checkbox]:checked~span{font-weight:700;color:#667eea}.checkbox-item>span:first-of-type{font-size:1rem;font-weight:500;color:#1a202c;flex-grow:1}.board-specs{margin-left:auto;font-size:.9rem;font-weight:600;color:#718096;padding:.25rem .75rem;background:#edf2f7;border-radius:20px}.component-category{margin-left:auto;font-size:.85rem;font-weight:500;color:#a0aec0;padding:.25rem .75rem;background:#f7fafc;border-radius:20px}.component-search{padding:.5rem 1rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;min-width:250px}.form-input{width:100%;padding:.75rem 1rem;border:1px solid #e1e8ed;border-radius:6px;font-size:1rem;transition:border .2s}.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.code-textarea{width:100%;padding:1rem;border:1px solid #e1e8ed;border-radius:8px;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.5;background:#282c34;color:#abb2bf;resize:vertical}.code-textarea::placeholder{color:#5c6370}.code-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.code-stats{margin-top:.5rem;font-size:.85rem;color:#95a5a6;text-align:right}.notes-textarea{width:100%;padding:.75rem 1rem;border:1px solid #e1e8ed;border-radius:6px;font-size:.95rem;font-family:inherit;resize:vertical}.notes-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid #e1e8ed}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.btn-secondary{background:#ecf0f1;color:#2c3e50}.btn-secondary:hover:not(:disabled){background:#bdc3c7}.btn-publish{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;padding:1rem 2rem;font-size:1.1rem;box-shadow:0 4px 12px #4caf504d}.btn-publish:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #4caf5066}.analyzing-state{text-align:center;padding:2rem;background:#f8f9fa;border-radius:8px;margin-top:1rem}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.analysis-results{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e1e8ed}.solution-summary{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.solution-summary h4{font-size:1.4rem;color:#2c3e50;margin-bottom:.5rem}.summary-stats{display:flex;gap:2rem;margin-top:1rem;font-size:.9rem;color:#7f8c8d}.chunks-preview h4{font-size:1.2rem;color:#2c3e50;margin-bottom:1rem}.chunk-card{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:1.5rem;margin-bottom:1rem}.chunk-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e1e8ed}.chunk-type{background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.chunk-name{font-size:1.1rem;font-weight:600;color:#2c3e50}.chunk-tokens{margin-left:auto;font-size:.85rem;color:#95a5a6}.chunk-field{margin-bottom:1rem}.chunk-field strong{display:block;color:#34495e;margin-bottom:.5rem;font-size:.95rem}.chunk-field p{color:#555;line-height:1.6;margin:0}.code-preview{background:#282c34;color:#abb2bf;padding:1rem;border-radius:6px;font-family:Consolas,monospace;font-size:13px;overflow-x:auto;margin:.5rem 0}.code-full-length{color:#95a5a6;font-size:.85rem}.chunk-meta{display:flex;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #ecf0f1}.chunk-tags,.chunk-components{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background:#e8f4f8;color:#3498db;padding:.25rem .75rem;border-radius:20px;font-size:.85rem}.component-tag{background:#fef3e8;color:#f39c12;padding:.25rem .75rem;border-radius:20px;font-size:.85rem}.publish-section{text-align:center;padding:2rem;background:#f8f9fa;border-radius:8px;margin-top:2rem}.publish-note{margin-top:1rem;color:#7f8c8d;font-size:.9rem}.landing-page{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000;overflow:hidden}.particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.landing-nav{position:fixed;top:0;left:0;right:0;z-index:100;background:#000;border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-container{max-width:1400px;margin:0 auto;padding:0 80px;height:70px;display:flex;align-items:center;justify-content:space-between}.nav-left{display:flex;align-items:center;gap:15px}.nav-logo{width:40px;height:auto}.nav-brand{color:#fff;font-size:.95rem;font-weight:600;letter-spacing:.5px}.nav-center{display:flex;align-items:center;gap:35px}.nav-link{color:#fffc;text-decoration:none;font-size:.95rem;font-weight:400;transition:color .2s ease}.nav-link:hover{color:#fff}.nav-blog-link,.nav-back-link{background:none;border:none;cursor:pointer;padding:0;font-family:inherit}.nav-demo-link{background:none;border:none;cursor:pointer;padding:0;font-family:inherit;display:flex;align-items:center;gap:6px}.nav-demo-link:hover{color:#00d4aa}.nav-contact-link{background:none;border:none;cursor:pointer;padding:0;font-family:inherit;display:flex;align-items:center;gap:6px}.nav-contact-link:hover{color:#00d4aa}.nav-dropdown{position:relative;display:inline-block}.nav-downloads-link{background:none;border:none;cursor:pointer;padding:0;font-family:inherit;display:flex;align-items:center;gap:4px}.nav-dropdown-menu{position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);background:#14141efa;border:1px solid rgba(102,126,234,.3);border-radius:8px;padding:8px;min-width:200px;box-shadow:0 8px 24px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:dropdownFadeIn .2s ease-out;z-index:1000}.nav-dropdown-menu:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px;background:transparent}@keyframes dropdownFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-5px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.nav-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;background:transparent;border:none;color:#ffffffe6;text-align:left;font-size:.95rem;font-weight:500;cursor:pointer;border-radius:6px;transition:all .15s ease;font-family:inherit;position:relative;z-index:1}.nav-dropdown-item:hover:not(.disabled){background:#667eea33;color:#fff}.nav-dropdown-item.disabled{color:#fff6;cursor:not-allowed;opacity:.6}.nav-dropdown-item.view-all{border-top:1px solid rgba(102,126,234,.2);margin-top:4px;padding-top:12px;font-weight:600;color:#a8b5ff}.nav-dropdown-divider{height:1px;background:#667eea33;margin:4px 0}.coming-soon-tag{font-size:.75rem;background:#764ba24d;color:#c5a3e8;padding:2px 8px;border-radius:10px;font-weight:600;margin-left:8px}.nav-right{display:flex;align-items:center;gap:12px}.nav-button{padding:10px 22px;font-size:.9rem;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.nav-button.primary{background:#00d4aa;color:#000}.nav-button.primary:hover{background:#00eabf;transform:translateY(-1px)}.nav-button.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}.nav-button.secondary:hover{background:#ffffff1a;border-color:#ffffff80}.landing-container{position:relative;z-index:2;max-width:1400px;margin:0 auto;height:100vh;padding:0 80px;display:flex;align-items:center}.landing-content{max-width:700px;animation:fadeInUp 1s ease-out}.landing-hero{display:flex;flex-direction:column;gap:35px}.logo-section{margin-bottom:10px}.landing-logo{width:80px;height:auto;opacity:.9}.landing-title{font-size:4.5rem;font-weight:300;color:#fff;margin:0;line-height:1.1;letter-spacing:-2px}.landing-subtitle{display:flex;flex-direction:column;gap:12px}.subtitle-line{font-size:1.25rem;font-weight:400;color:#fff;margin:0;letter-spacing:.5px}.subtitle-description{font-size:1.1rem;font-weight:300;color:#ffffffb3;margin:0;line-height:1.6}.landing-actions{display:flex;gap:15px;margin-top:15px}.social-links{display:flex;align-items:center;gap:20px;margin-top:30px;padding-top:25px;border-top:1px solid rgba(255,255,255,.1)}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#ffffff0d;color:#fff9;transition:all .3s ease;text-decoration:none;border:1px solid rgba(255,255,255,.1)}.social-link:hover{background:#00d4aa1a;color:#00d4aa;border-color:#00d4aa4d;transform:translateY(-2px)}.social-link svg{width:20px;height:20px;transition:transform .3s ease}.social-link:hover svg{transform:scale(1.1)}.social-divider{color:#ffffff4d;font-size:1.2rem;margin:0 4px}.social-contact-link{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:0;font-family:inherit;color:inherit}.social-contact-link span{font-size:.9rem;font-weight:500}.landing-button{padding:14px 32px;font-size:1rem;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.landing-button.primary{background:#00d4aa;color:#000;box-shadow:0 2px 8px #00d4aa4d}.landing-button.primary:hover{background:#00eabf;box-shadow:0 4px 16px #00d4aa80;transform:translateY(-1px)}.landing-button.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}.landing-button.secondary:hover{background:#ffffff1a;border-color:#ffffff80;transform:translateY(-1px)}.landing-button.demo{background:#00d4aa1a;color:#00d4aa;border:1px solid rgba(0,212,170,.3);display:flex;align-items:center;gap:8px}.landing-button.demo:hover{background:#00d4aa33;border-color:#00d4aa80;transform:translateY(-1px);box-shadow:0 2px 8px #00d4aa33}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1200px){.nav-container,.landing-container{padding:0 60px}.landing-title{font-size:3.8rem}}@media (max-width: 968px){.nav-center{display:none}.nav-container{padding:0 40px}.landing-actions{flex-wrap:wrap}}@media (max-width: 768px){.nav-container{padding:0 30px}.nav-brand{font-size:.85rem}.nav-logo{width:35px}.nav-right{gap:8px}.nav-button{padding:8px 18px;font-size:.85rem}.landing-container{padding:0 30px}.landing-content{max-width:100%}.landing-title{font-size:2.8rem}.subtitle-line{font-size:1.1rem}.subtitle-description{font-size:1rem}.landing-actions{flex-direction:column;gap:12px}.landing-button{width:100%;text-align:center}.social-links{justify-content:center;margin-top:25px;padding-top:20px}.social-link{width:36px;height:36px}}@media (max-width: 480px){.nav-container{padding:0 20px}.nav-brand{font-size:.75rem}.nav-logo{width:30px}.nav-button.secondary{display:none}.landing-container{padding:0 20px}.landing-title{font-size:2.2rem}}.video-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out;padding:20px}.video-modal-container{position:relative;width:100%;max-width:1200px;background:#1a1a1a;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:slideUp .4s ease-out;border:1px solid rgba(255,255,255,.1)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.video-modal-close{position:absolute;top:20px;right:20px;width:44px;height:44px;background:#0009;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;color:#fffc}.video-modal-close:hover{background:#ffffff1a;color:#fff;border-color:#fff6;transform:rotate(90deg)}.video-modal-close:active{transform:rotate(90deg) scale(.9)}.video-modal-content{padding:40px}.video-modal-title{font-size:1.5rem;font-weight:600;color:#fff;margin:0 0 24px;text-align:center;letter-spacing:-.5px}.video-wrapper{position:relative;width:100%;padding-bottom:56.25%;background:#000;border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #0006}.video-iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}@media (max-width: 1024px){.video-modal-container{max-width:95%}.video-modal-content{padding:32px}.video-modal-title{font-size:1.3rem}}@media (max-width: 768px){.video-modal-backdrop{padding:15px}.video-modal-container{max-width:100%;border-radius:8px}.video-modal-content{padding:24px}.video-modal-title{font-size:1.1rem;margin-bottom:20px}.video-modal-close{top:15px;right:15px;width:40px;height:40px}}@media (max-width: 480px){.video-modal-backdrop{padding:10px}.video-modal-content{padding:20px}.video-modal-title{font-size:1rem;margin-bottom:16px}.video-modal-close{top:12px;right:12px;width:36px;height:36px}.video-modal-close svg{width:20px;height:20px}}.video-modal-close:focus-visible{outline:2px solid #00d4aa;outline-offset:2px}.auth-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.auth-box{background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:3rem;border-radius:16px;box-shadow:0 20px 60px #00d4aa33;max-width:450px;width:100%;animation:fadeIn .3s ease-in;position:relative;z-index:10}.back-to-landing{position:absolute;top:1.5rem;left:1.5rem;background:transparent;border:none;color:#00d4aa;font-size:1rem;font-weight:600;cursor:pointer;padding:.5rem 1rem;border-radius:6px;transition:all .2s;display:flex;align-items:center;gap:.5rem}.back-to-landing:hover{background:#00d4aa1a;transform:translate(-2px)}.auth-header{text-align:center;margin-bottom:2rem}.auth-logo{width:80px;height:80px;margin-bottom:1rem}.auth-header h1{color:#fff;font-size:1.8rem;margin-bottom:.5rem}.auth-header p{color:#ffffffb3;font-size:1rem}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.error-message{background:#fee;border:1px solid #fcc;color:#c33;padding:1rem;border-radius:8px;font-size:.9rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{color:#fff;font-weight:600;font-size:.95rem}.form-field input{padding:.875rem;border:2px solid rgba(255,255,255,.2);border-radius:8px;font-size:1rem;transition:all .2s;background:#0000004d;color:#fff}.form-field input::placeholder{color:#fff6}.form-field input:focus{outline:none;border-color:#00d4aa;box-shadow:0 0 0 3px #00d4aa33;background:#00000080}.auth-submit-btn{padding:1rem;background:#00d4aa;color:#000;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:.5rem}.auth-submit-btn:hover:not(:disabled){background:#00eabf;transform:translateY(-2px);box-shadow:0 8px 20px #00d4aa80}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.auth-footer p{color:#ffffffb3;margin-bottom:.75rem;font-size:.95rem}.switch-auth-btn{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3);padding:.75rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.switch-auth-btn:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff;transform:translateY(-1px)}.apply-form-box{max-width:700px;max-height:90vh;overflow-y:auto;padding:2rem}.beta-notice{font-size:.95rem;line-height:1.6;color:#ffffffd9;margin-top:.5rem}.beta-badge{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2px 8px;border-radius:4px;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin:0 2px}.apply-form{display:flex;flex-direction:column;gap:1.5rem}.form-section{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem;margin-bottom:.5rem}.section-title{font-size:1.1rem;font-weight:600;color:#fffffff2;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.section-subtitle{font-size:.9rem;color:#ffffffb3;margin:-.5rem 0 1rem}.required{color:#ff4757;font-weight:700}.radio-group{display:flex;flex-direction:column;gap:.75rem}.radio-group.inline{flex-direction:row;flex-wrap:wrap;gap:1rem}.radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s ease}.radio-label:hover{background:#ffffff0d}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#667eea}.radio-label span{font-size:.95rem;color:#ffffffd9}.checkbox-group{display:flex;flex-direction:column;gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:8px;transition:all .2s ease}.checkbox-label:hover{background:#ffffff0d;border-color:#fff3}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#667eea}.checkbox-label span{font-size:.95rem;color:#ffffffd9;flex:1}.form-note{font-size:.85rem;color:#fff9;text-align:center;line-height:1.5;margin-top:.5rem;padding:1rem;background:#ffffff05;border-radius:8px}.apply-success-box{max-width:600px;text-align:center;padding:3rem 2rem}.success-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#11998e,#38ef7d);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;animation:successPulse .6s ease-out}@keyframes successPulse{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.success-message{font-size:1.1rem;color:#ffffffe6;margin:1rem 0;line-height:1.6}.success-details{font-size:.95rem;color:#ffffffb3;margin:1.5rem 0;line-height:1.6;padding:1rem;background:#ffffff08;border-radius:8px}.success-details strong{color:#667eea;font-weight:600}.success-wait-message{font-size:1rem;color:#ffffffd9;margin:1.5rem 0 .5rem;line-height:1.6;padding:1rem;background:#00d4aa14;border:1px solid rgba(0,212,170,.2);border-radius:8px;font-weight:500}.success-actions{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.demo-btn{background:#00d4aa26!important;color:#00d4aa!important;border:1px solid rgba(0,212,170,.4)!important;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease}.demo-btn:hover{background:#00d4aa40!important;border-color:#00d4aa99!important;transform:translateY(-2px);box-shadow:0 4px 12px #00d4aa4d}@media (max-width: 768px){.apply-form-box{padding:1.5rem;max-height:85vh}.form-section{padding:1rem}.section-title{font-size:1rem}.radio-group.inline{flex-direction:column;gap:.75rem}.beta-notice{font-size:.9rem}}.apply-form-box::-webkit-scrollbar{width:8px}.apply-form-box::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.apply-form-box::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.apply-form-box::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.dashboard{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary)}.dashboard-header{background:var(--bg-secondary);padding:1.5rem 2rem;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:1rem}.header-logo{width:50px;height:50px}.header-left h1{margin:0;font-size:1.5rem;color:var(--text-primary)}.header-left p{margin:0;font-size:.9rem;color:var(--text-secondary)}.user-menu{display:flex;align-items:center;gap:1rem}.token-balance{background:linear-gradient(135deg,#00d4aa,#00eabf);color:#000;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.95rem;box-shadow:0 2px 8px #00d4aa4d}.buy-credits-btn{background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;border:none;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #f59e0b4d}.buy-credits-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.settings-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #667eea4d}.settings-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.user-name{color:var(--text-primary);font-weight:600}.admin-panel-btn{padding:.5rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.admin-panel-btn:hover{background:#5568d3}.logout-btn{padding:.5rem 1.5rem;background:#dc3545;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#c82333}.dashboard-content{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.welcome-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.welcome-section h2{margin:0;font-size:2rem;color:var(--text-primary)}.new-project-btn-large{padding:1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s}.new-project-btn-large:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;text-align:center;transition:all .2s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026}.stat-value{font-size:3rem;font-weight:700;color:#667eea;margin-bottom:.5rem}.stat-label{color:#666;font-size:1rem;font-weight:500}.projects-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.section-header h3{margin:0;font-size:1.5rem;color:#333}.new-project-btn{padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.new-project-btn:hover{background:#5568d3}.search-bar-container{margin-bottom:1.5rem}.search-input-wrapper{display:flex;gap:.75rem;margin-bottom:.75rem}.search-input{flex:1;padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:.95rem;transition:border-color .2s}.search-input:focus{outline:none;border-color:#667eea}.search-input::placeholder{color:#999}.search-btn{padding:.875rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.search-btn:hover:not(:disabled){background:#5568d3}.search-btn:disabled{background:#ccc;cursor:not-allowed}.clear-search-btn{padding:.875rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.clear-search-btn:hover{background:#c82333}.search-results-info{padding:.75rem 1rem;background:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;color:#1565c0;font-weight:500}.projects-count-info{padding:.75rem 1rem;background:#f8f9fa;border-left:4px solid #6c757d;border-radius:4px;color:#495057;font-weight:500}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.project-card{border:2px solid #e0e0e0;border-radius:12px;padding:1.5rem;transition:all .2s;display:flex;flex-direction:column;gap:1rem}.project-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.project-icon{font-size:2.5rem;text-align:center;display:flex;align-items:center;justify-content:center;min-height:80px}.board-image{max-width:100%;max-height:80px;object-fit:contain;border-radius:4px}.project-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem}.project-info h4{margin:0;font-size:1.2rem;color:#333;flex:1}.visibility-toggle{padding:.25rem .75rem;border:1px solid #e0e0e0;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.visibility-toggle.private{background:#f5f5f5;color:#666;border-color:#d0d0d0}.visibility-toggle.private:hover{background:#667eea;color:#fff;border-color:#667eea}.visibility-toggle.public{background:#10b981;color:#fff;border-color:#10b981}.visibility-toggle.public:hover{background:#059669;border-color:#059669}.project-desc{color:#666;font-size:.9rem;line-height:1.5;margin:0 0 1rem}.prompt-label{color:#667eea;font-weight:600;font-size:.85rem}.project-meta-list{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.meta-item{display:flex;gap:.5rem;font-size:.85rem;align-items:center}.meta-label{color:#666;font-weight:600;min-width:80px}.meta-value{color:#333}.project-actions{display:flex;gap:.5rem;margin-top:auto}.continue-edit-btn,.open-btn,.delete-btn{flex:1;padding:.75rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.85rem}.continue-edit-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-weight:700}.continue-edit-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.open-btn{background:#667eea;color:#fff}.open-btn:hover{background:#5568d3}.delete-btn{background:#f8f9fa;color:#dc3545;border:1px solid #e0e0e0}.delete-btn:hover{background:#dc3545;color:#fff}.empty-state{text-align:center;padding:4rem 2rem}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h4{font-size:1.5rem;color:#333;margin-bottom:.5rem}.empty-state p{color:#666;margin-bottom:2rem}.empty-action-btn{padding:1rem 2rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s}.empty-action-btn:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.loading-state{text-align:center;padding:4rem 2rem;color:#999;font-size:1.1rem}.load-more-container{margin-top:2rem;text-align:center;padding:1rem 0}.load-more-btn{padding:1rem 2.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:.5rem;box-shadow:0 2px 8px #667eea4d}.load-more-btn:hover:not(:disabled){background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.load-more-btn:disabled{background:#ccc;cursor:not-allowed;box-shadow:none}.loading-spinner-small{display:inline-block;width:16px;height:16px;border:3px solid rgba(255,255,255,.3);border-top:3px solid white;border-radius:50%;animation:spin .8s linear infinite}.settings-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:settingsFadeIn .2s ease-out}@keyframes settingsFadeIn{0%{opacity:0}to{opacity:1}}.settings-modal{background:#fff;border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:settingsSlideUp .3s ease-out}@keyframes settingsSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid #e0e0e0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0}.settings-modal-header h2{margin:0;font-size:1.5rem;font-weight:600}.settings-close-btn{background:#fff3;border:none;color:#fff;font-size:1.5rem;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.settings-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.settings-modal-content{padding:2rem}.settings-user-info{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:1.5rem;border-radius:12px;margin-bottom:2rem;text-align:center}.settings-user-name{font-size:1.3rem;font-weight:600;color:#333;margin-bottom:.5rem}.settings-user-email{color:#666;font-size:.95rem}.settings-section{margin-bottom:2rem}.settings-section h3{font-size:1.2rem;color:#333;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #667eea}.settings-form{display:flex;flex-direction:column;gap:1.2rem}.settings-form-group{display:flex;flex-direction:column}.settings-form-group label{font-weight:600;color:#333;margin-bottom:.5rem;font-size:.95rem}.settings-form-group input{padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s}.settings-form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.settings-form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.settings-error{background:#fee;color:#c33;padding:1rem;border-radius:8px;border-left:4px solid #c33;font-size:.95rem}.settings-success{background:#efe;color:#3c3;padding:1rem;border-radius:8px;border-left:4px solid #3c3;font-size:.95rem;font-weight:600}.settings-form-actions{display:flex;gap:1rem;margin-top:1rem}.settings-btn-cancel,.settings-btn-submit{flex:1;padding:.875rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.settings-btn-cancel{background:#e0e0e0;color:#333}.settings-btn-cancel:hover:not(:disabled){background:#d0d0d0}.settings-btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.settings-btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.settings-btn-cancel:disabled,.settings-btn-submit:disabled{opacity:.6;cursor:not-allowed}.settings-future-section{margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0}.settings-future-section h3{font-size:1.1rem;color:#666;margin-bottom:.5rem}.settings-coming-soon{color:#999;font-style:italic;margin:0}@media (max-width: 640px){.settings-modal{width:95%;max-height:95vh}.settings-modal-header{padding:1.25rem 1.5rem}.settings-modal-header h2{font-size:1.3rem}.settings-modal-content{padding:1.5rem}.settings-form-actions{flex-direction:column}.settings-btn-cancel,.settings-btn-submit{width:100%}}.buy-credits-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.buy-credits-modal{background:#fff;padding:2rem;border-radius:16px;max-width:900px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative;color:#111827}.buy-credits-modal *{color:inherit}.buy-credits-modal h2,.buy-credits-modal h3,.buy-credits-modal h4,.buy-credits-modal p,.buy-credits-modal span,.buy-credits-modal label{color:#111827}.close-modal-btn{position:absolute;top:1rem;right:1rem;background:#f3f4f6;border:none;width:36px;height:36px;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:all .2s}.close-modal-btn:hover{background:#e5e7eb;transform:rotate(90deg)}.buy-credits-modal h2{margin:0 0 .5rem;color:#111827}.subtitle{color:#6b7280;margin-bottom:1.5rem}.current-balance-card{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #00d4aa;padding:1rem;border-radius:12px;display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.current-balance-card span{color:#065f46;font-weight:600}.current-balance-card strong{color:#00d4aa;font-size:1.5rem}.packages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem}.package-card{background:#fff;border:3px solid #e5e7eb;border-radius:12px;padding:1.5rem;text-align:center;cursor:pointer;transition:all .3s;position:relative}.package-card:hover{border-color:#00d4aa;transform:translateY(-4px);box-shadow:0 8px 24px #00d4aa33}.package-card.popular{border-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#f59e0b;color:#fff;padding:.35rem 1rem;border-radius:20px;font-size:.75rem;font-weight:700;letter-spacing:.5px}.package-card h3{margin:0 0 1rem;color:#374151;font-size:1.2rem}.package-price{font-size:2.5rem;font-weight:700;color:#111827;margin-bottom:.5rem}.package-credits{color:#00d4aa;font-size:1.3rem;font-weight:600;margin-bottom:.5rem}.package-bonus{background:#00d4aa;color:#fff;padding:.35rem .75rem;border-radius:20px;font-size:.85rem;font-weight:700;display:inline-block;margin-bottom:1rem}.package-desc{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.select-package-btn{background:linear-gradient(135deg,#00d4aa,#00eabf);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;width:100%;transition:all .2s}.select-package-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d4aa4d}.back-btn-payment{background:#f3f4f6;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;margin-bottom:1.5rem;color:#374151;font-weight:600}.back-btn-payment:hover{background:#e5e7eb}.payment-details-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:2rem}.payment-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e5e7eb}.payment-row:last-child{border-bottom:none}.amount-highlight{color:#f59e0b;font-size:1.5rem}.credits-highlight{color:#00d4aa;font-size:1.3rem}.gcash-instructions h3{color:#111827;margin:2rem 0 1rem}.gcash-details{display:grid;grid-template-columns:200px 1fr;gap:2rem;margin-bottom:2rem}.qr-placeholder{text-align:center}.qr-box{background:#f3f4f6;border:2px dashed #9ca3af;border-radius:12px;padding:2rem 1rem;font-size:2rem;color:#6b7280}.qr-box img{width:180px;height:180px;object-fit:contain}.gcash-info p{margin:.5rem 0;color:#374151;font-weight:600}.gcash-info p strong{color:#111827}.copy-field{display:flex;gap:.5rem;margin:.5rem 0 1rem}.copy-field input{flex:1;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1.1rem;font-weight:600}.copy-btn{background:#6b7280;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:600}.copy-btn:hover{background:#4b5563}.important-note{background:#fffbec;border:2px solid #0F172B;border-radius:12px;padding:1.5rem;margin-bottom:2rem}.important-note h4{color:#78350f;margin:0 0 1rem}.reference-code-box{background:#fff;border:2px solid #fbbf24;padding:1rem;border-radius:8px;font-size:1.5rem;font-weight:700;color:#92400e;text-align:center;margin:1rem 0;letter-spacing:1px}.note-text{color:#92400e;margin-top:.5rem;font-size:.9rem}.payment-form{background:#f9fafb;padding:1.5rem;border-radius:12px}.payment-form .form-group{margin-bottom:1.5rem}.payment-form label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem}.payment-form input,.payment-form textarea{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem}.payment-form input:focus,.payment-form textarea:focus{outline:none;border-color:#00d4aa}.submit-payment-btn{background:linear-gradient(135deg,#00d4aa,#00eabf);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;width:100%;transition:all .2s}.submit-payment-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #00d4aa66}.submit-payment-btn:disabled{opacity:.5;cursor:not-allowed}.success-screen{text-align:center;padding:2rem}.success-icon{width:80px;height:80px;background:linear-gradient(135deg,#00d4aa,#00eabf);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1.5rem}.success-screen h2{color:#065f46;margin-bottom:1rem}.request-summary{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin:2rem 0;text-align:left}.summary-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e5e7eb}.summary-row:last-child{border-bottom:none}.status-pending{color:#f59e0b;font-weight:600}.next-steps{background:#eff6ff;border:2px solid #3b82f6;border-radius:12px;padding:1.5rem;margin:2rem 0;text-align:left}.next-steps h4{color:#1e40af;margin:0 0 1rem}.next-steps ol{color:#1e40af;margin:0;padding-left:1.5rem}.next-steps li{margin:.5rem 0}.done-btn{background:linear-gradient(135deg,#00d4aa,#00eabf);color:#fff;border:none;padding:1rem 3rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;margin-top:1.5rem}.done-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00d4aa4d}.project-detail{max-width:1200px;margin:0 auto;padding:2rem;background:#f8f9fa;min-height:100vh}.project-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.back-to-dashboard-btn{padding:.75rem 1.5rem;background:#6c757d;color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .2s}.back-to-dashboard-btn:hover{background:#5a6268}.header-actions{display:flex;gap:1rem}.visibility-toggle{padding:.5rem 1rem;border:2px solid;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.visibility-toggle.public{background:#d4edda;border-color:#28a745;color:#155724}.visibility-toggle.public:hover{background:#c3e6cb}.visibility-toggle.private{background:#fff3cd;border-color:#ffc107;color:#856404}.visibility-toggle.private:hover{background:#ffe8a1}.project-title-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.project-title{font-size:2.5rem;color:#212529;margin:0 0 1rem;line-height:1.2}.project-metadata{display:flex;flex-wrap:wrap;gap:1.5rem;color:#6c757d;font-size:.95rem}.metadata-item{display:flex;align-items:center;gap:.5rem}.project-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.project-section h2{font-size:1.75rem;color:#212529;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem}.project-abstract{font-size:1.1rem;line-height:1.8;color:#495057;white-space:pre-wrap;background:#f8f9fa;padding:1.5rem;border-radius:8px;border-left:4px solid #007bff}.hardware-config{display:flex;flex-direction:column;gap:1.5rem}.board-info{font-size:1.1rem;padding:1rem;background:#e7f3ff;border-radius:8px;border-left:4px solid #007bff}.components-list h3{font-size:1.2rem;color:#495057;margin:0 0 1rem}.component-item{padding:1rem;background:#f8f9fa;border-radius:8px;margin-bottom:1rem;border-left:3px solid #28a745}.component-name{font-weight:600;font-size:1.1rem;color:#212529;margin-bottom:.75rem}.component-pins{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:1.5rem}.pin-badge{display:inline-block;padding:.4rem .8rem;background:#fff;border:2px solid #28a745;border-radius:6px;font-size:.9rem;font-family:Courier New,monospace;color:#155724;font-weight:600}.code-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.code-section-header h2{margin:0}.code-block{background:#282c34;color:#abb2bf;padding:1.5rem;border-radius:8px;overflow-x:auto;font-family:Courier New,Consolas,monospace;font-size:.95rem;line-height:1.6;max-height:600px;overflow-y:auto}.code-block code{display:block;white-space:pre}.project-footer{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem}.footer-info{display:flex;flex-wrap:wrap;gap:2rem;font-size:.9rem;color:#6c757d}.bottom-actions{text-align:center;padding:2rem 0}.bottom-actions .back-to-dashboard-btn{padding:.875rem 2rem;background:#007bff;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;box-shadow:0 2px 6px #007bff4d}.bottom-actions .back-to-dashboard-btn:hover{background:#0056b3;box-shadow:0 4px 8px #007bff66}.project-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem}.loading-spinner{width:48px;height:48px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}.project-detail-error{max-width:600px;margin:4rem auto;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;text-align:center}.project-detail-error h2{color:#dc3545;margin-bottom:1rem}.project-detail-error .back-button{margin-top:1.5rem;padding:.75rem 1.5rem;background:#007bff;color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .2s}.project-detail-error .back-button:hover{background:#0056b3}@media (max-width: 768px){.project-detail{padding:1rem}.project-title{font-size:1.75rem}.project-metadata{flex-direction:column;gap:.75rem}.code-section-header{flex-direction:column;align-items:flex-start;gap:1rem}.component-pins{margin-left:0}}.transfer-button{padding:.75rem 1.5rem;background:#ff9800;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.transfer-button:hover{background:#f57c00;transform:translateY(-2px);box-shadow:0 4px 12px #ff98004d}.transfer-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.transfer-modal{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 8px 32px #0003;max-width:500px;width:90%;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.transfer-modal h3{margin:0 0 1rem;font-size:1.5rem;color:#1a1a2e}.transfer-warning{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:1rem;margin-bottom:1.5rem;color:#856404;line-height:1.5}.transfer-warning strong{color:#d63031}.transfer-form{margin-bottom:1.5rem}.transfer-form label{display:block;font-weight:600;color:#333;margin-bottom:.5rem}.transfer-form input{width:100%;padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s;box-sizing:border-box}.transfer-form input:focus{outline:none;border-color:#ff9800;box-shadow:0 0 0 3px #ff98001a}.transfer-form input:disabled{background:#f5f5f5;cursor:not-allowed}.transfer-error{margin-top:.75rem;padding:.75rem 1rem;background:#ffebee;border:1px solid #ef5350;border-radius:8px;color:#c62828;font-size:.9rem;line-height:1.4}.transfer-actions{display:flex;gap:1rem;justify-content:flex-end}.transfer-cancel-btn,.transfer-confirm-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.transfer-cancel-btn{background:#e0e0e0;color:#333}.transfer-cancel-btn:hover:not(:disabled){background:#d0d0d0}.transfer-confirm-btn{background:#ff9800;color:#fff}.transfer-confirm-btn:hover:not(:disabled){background:#f57c00;transform:translateY(-1px);box-shadow:0 4px 12px #ff98004d}.transfer-cancel-btn:disabled,.transfer-confirm-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.blog-landing{position:relative;min-height:100vh;background:#f5f5f5;color:#1a1a1a}.blog-landing .blog-canvas{display:none}.blog-landing .landing-nav{position:sticky;top:0;z-index:100;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.active-nav{position:relative;color:#00d4aa!important}.active-nav:after{content:"";position:absolute;bottom:-8px;left:0;right:0;height:2px;background:#00d4aa}.blog-container{position:relative;z-index:1;max-width:1400px;margin:0 auto;padding:0 2rem 4rem}.blog-hero{text-align:center;padding:3rem 0 2rem}.blog-hero-badge{display:inline-block;padding:.5rem 1.5rem;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid rgba(102,126,234,.3);border-radius:30px;color:#667eea;font-size:.9rem;font-weight:600;margin-bottom:1.25rem;letter-spacing:.5px}.blog-hero-title{font-size:3.5rem;font-weight:900;margin-bottom:1rem;color:#1a1a1a;line-height:1.1;letter-spacing:-1px}.blog-hero-subtitle{font-size:1.15rem;color:#666;max-width:700px;margin:0 auto;line-height:1.7;font-weight:400}.blog-search-section{padding:2rem 0;display:flex;align-items:center;gap:1.5rem;max-width:1200px;margin:0 auto}.blog-search-form{position:relative;flex:1}.blog-search-input{width:100%;padding:1.25rem 4rem 1.25rem 1.5rem;background:linear-gradient(135deg,#667eea14,#764ba214);border:2px solid rgba(102,126,234,.25);border-radius:12px;color:#1a1a1a;font-size:1.05rem;transition:all .3s ease}.blog-search-input::placeholder{color:#0006}.blog-search-input:focus{outline:none;border-color:#667eea;background:#667eea0d;box-shadow:0 4px 20px #667eea26}.blog-search-btn{position:absolute;right:1rem;top:50%;transform:translateY(-50%);padding:.5rem;background:transparent;border:none;color:#00000080;cursor:pointer;transition:color .3s ease}.blog-search-btn:hover{color:#667eea}.blog-filter-inline{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.filter-label-inline{font-size:.85rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.filter-select-inline{padding:.9rem 1.25rem;background:#fff;border:2px solid #e0e0e0;border-radius:10px;color:#1a1a1a;font-size:.95rem;cursor:pointer;transition:all .3s ease;min-width:180px}.filter-select-inline:hover{border-color:#667eea}.filter-select-inline:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-select-inline option{background:#fff;color:#1a1a1a}.blog-results-info{padding:1.5rem 0;border-bottom:1px solid #e5e5e5;margin-bottom:2rem;text-align:center}.blog-results-info p{color:#666;font-size:.95rem;margin:.5rem 0}.search-query{color:#667eea;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.75rem}.clear-search{padding:.25rem .75rem;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:4px;color:#666;cursor:pointer;font-size:.85rem;transition:all .3s ease}.clear-search:hover{background:#667eea;border-color:#667eea;color:#fff}.blog-load-more{display:flex;flex-direction:column;align-items:center;padding:3rem 0}.load-more-btn{padding:1rem 3rem;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:2px solid rgba(102,126,234,.3);color:#1a1a1a;border-radius:30px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);font-weight:700;font-size:1rem;letter-spacing:.5px;display:flex;align-items:center;gap:.75rem;position:relative;overflow:hidden}.load-more-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s ease}.load-more-btn:hover:before{left:100%}.load-more-btn:hover:not(:disabled){background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff;transform:translateY(-3px);box-shadow:0 10px 30px #667eea4d}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}.load-more-icon{font-size:1.2rem;transition:transform .3s ease}.load-more-btn:hover .load-more-icon{transform:translateY(3px)}.loader-spinner{width:16px;height:16px;border:2px solid rgba(102,126,234,.3);border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.blog-loading,.blog-error,.blog-empty{text-align:center;padding:4rem 2rem;font-size:1.1rem;color:#666}.blog-error{color:#dc3545}.blog-empty h2{color:#1a1a1a;margin-bottom:.5rem}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2rem;margin-bottom:2rem}.blog-card{background:#fff;border:1px solid #e5e5e5;border-radius:12px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.blog-card:hover{transform:translateY(-8px);border-color:#667eea;box-shadow:0 12px 24px #0000001a}.blog-card-image{width:100%;height:240px;background-size:cover;background-position:center;background-color:#f8f9fa;position:relative}.blog-card-image-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea14,#764ba214)}.placeholder-icon{font-size:4rem;opacity:.3}.blog-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.blog-card-title{font-size:1.35rem;font-weight:700;margin:0;color:#1a1a1a;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-card-excerpt{font-size:.95rem;color:#666;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #f0f0f0}.blog-card-author{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.author-label{color:#999;font-weight:400}.author-name{color:#667eea;font-weight:600}.blog-card-badge{padding:.35rem .85rem;background:#667eea1a;border:1px solid rgba(102,126,234,.3);color:#667eea;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 1024px){.blog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.footer-top{grid-template-columns:1fr;gap:2rem}.footer-links{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.blog-container{padding:0 1rem 3rem}.blog-nav{padding:1rem}.blog-hero-title{font-size:2.25rem}.blog-hero-subtitle{font-size:1rem}.blog-search-section{flex-direction:column;padding:2rem 0 1.5rem;gap:1rem}.blog-search-input{padding:1rem 3.5rem 1rem 1rem;font-size:1rem}.blog-filter-inline{width:100%}.filter-select-inline{flex:1;min-width:100%}.blog-grid{grid-template-columns:1fr}.blog-card-image{height:200px}.pagination-arrow,.pagination-number{min-width:36px;height:36px;font-size:.9rem}.footer-container{padding:2rem 1rem 1rem}.footer-links{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}}.blog-post-page{position:relative;min-height:100vh;background:#f5f5f5;color:#1a1a1a}.blog-post-page .blog-canvas{display:none}.blog-post-page .landing-nav{position:sticky;top:0;z-index:100;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.blog-post-loading,.blog-post-error{position:relative;z-index:1;text-align:center;padding:4rem 2rem;max-width:600px;margin:0 auto}.blog-post-error h2{color:#1a1a1a;margin-bottom:1rem}.blog-post-error p{color:#666;margin-bottom:2rem}.back-btn{padding:.75rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;border-radius:8px;cursor:pointer;font-weight:600;transition:transform .3s ease}.back-btn:hover{transform:scale(1.05)}.blog-post-container{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:3rem 2rem}.blog-post-header{margin-bottom:2rem;text-align:center}.blog-post-category{display:inline-block;padding:.35rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem}.blog-post-title{font-size:2.5rem;font-weight:800;margin-bottom:1rem;color:#1a1a1a;line-height:1.2}.blog-post-meta{display:flex;justify-content:center;align-items:center;gap:.75rem;font-size:.95rem;color:#666}.meta-divider{color:#ccc}.blog-post-cover{margin-bottom:3rem;border-radius:12px;overflow:hidden;background:#f8f9fa;border:1px solid #e5e5e5}.blog-post-cover img{width:100%;height:auto;display:block}.blog-post-content{background:#fff;padding:3rem;border-radius:12px;border:1px solid #e5e5e5;line-height:1.8;font-size:1.05rem}.blog-post-content h1,.blog-post-content h2,.blog-post-content h3{color:#1a1a1a;margin-top:2rem;margin-bottom:1rem;font-weight:700}.blog-post-content h1{font-size:2rem;border-bottom:2px solid #667eea;padding-bottom:.5rem}.blog-post-content h2{font-size:1.75rem}.blog-post-content h3{font-size:1.4rem}.blog-post-content p{margin-bottom:1.5rem;color:#333}.blog-post-content a{color:#667eea;text-decoration:underline;transition:color .3s ease}.blog-post-content a:hover{color:#764ba2}.blog-post-content strong{color:#1a1a1a;font-weight:700}.blog-post-content em{font-style:italic}.blog-post-content code{background:#f5f5f5;padding:.2rem .5rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9em;color:#667eea;border:1px solid #e5e5e5}.blog-post-content pre{background:#1a1a1a;padding:1.5rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0;border:1px solid #333}.blog-post-content pre code{background:none;padding:0;color:#00d4aa;font-size:.95rem;line-height:1.6;border:none}.blog-post-content ul,.blog-post-content ol{margin:1.5rem 0;padding-left:2rem}.blog-post-content li{margin-bottom:.75rem;color:#333}.blog-post-content blockquote{border-left:4px solid #667eea;padding-left:1.5rem;margin:1.5rem 0;font-style:italic;color:#555;background:#667eea0d;padding:1rem 1.5rem;border-radius:4px}.blog-post-content img{max-width:100%;height:auto;border-radius:8px;margin:2rem 0;border:1px solid #e5e5e5}.blog-post-content hr{border:none;border-top:1px solid #e5e5e5;margin:3rem 0}.blog-post-content table{width:100%;border-collapse:collapse;margin:1.5rem 0}.blog-post-content th,.blog-post-content td{padding:.75rem;border:1px solid #e0e0e0;text-align:left}.blog-post-content th{background:linear-gradient(135deg,#667eea1a,#764ba21a);font-weight:600;color:#1a1a1a}.blog-post-content td{background:#fafafa;color:#333}.blog-related{margin-top:4rem;padding-top:3rem;border-top:2px solid #e5e5e5}.related-title{font-size:1.75rem;font-weight:700;color:#1a1a1a;margin-bottom:1.5rem}.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.related-card{padding:1.5rem;background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;cursor:pointer;transition:all .3s ease}.related-card:hover{border-color:#667eea;transform:translateY(-4px);box-shadow:0 8px 16px #00000014}.related-card-title{font-size:1.1rem;font-weight:600;color:#1a1a1a;margin-bottom:.75rem;line-height:1.4}.related-card-category{display:inline-block;padding:.25rem .75rem;background:#667eea1a;border:1px solid rgba(102,126,234,.3);color:#667eea;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.blog-footer{background:#0a0a0a;color:#fffc;border-top:1px solid rgba(255,255,255,.1);margin-top:4rem}.footer-container{max-width:1400px;margin:0 auto;padding:3rem 2rem 1.5rem}.footer-top{display:grid;grid-template-columns:2fr 3fr;gap:4rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:2rem}.footer-brand{display:flex;align-items:flex-start;gap:1.5rem;max-width:500px}.footer-logo{height:60px;width:60px;object-fit:contain;flex-shrink:0}.footer-brand-text{display:flex;flex-direction:column;gap:.5rem}.footer-brand h3{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:.5px}.footer-brand p{color:#ffffff8c;line-height:1.65;margin:0;font-size:.875rem}.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.footer-column{display:flex;flex-direction:column;gap:.75rem}.footer-column h4{color:#fff;font-size:.95rem;font-weight:700;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.footer-column a{color:#fff9;text-decoration:none;font-size:.9rem;transition:color .3s ease}.footer-column a:hover{color:#667eea}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem}.footer-copyright{color:#ffffff80;font-size:.85rem;margin:0}.footer-tagline{color:#ffffff80;font-size:.85rem}@media (max-width: 1024px){.footer-top{grid-template-columns:1fr;gap:2rem}.footer-links{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.blog-post-title{font-size:1.75rem}.blog-post-content{padding:1.5rem;font-size:1rem}.blog-post-container{padding:2rem 1rem}.related-grid{grid-template-columns:1fr}.footer-container{padding:2rem 1rem 1rem}.footer-links{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}}.downloads-hub-page{min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a2e);color:#e0e0e0}.downloads-hub-container{max-width:1400px;margin:0 auto;padding:120px 2rem 4rem}.downloads-hub-content{animation:fadeIn .6s ease-in}.hub-header{text-align:center;margin-bottom:4rem}.hub-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 2s infinite}.hub-header h1{font-size:3.5rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hub-tagline{font-size:1.3rem;color:#aaa;max-width:700px;margin:0 auto}.downloads-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin:3rem 0}.download-card{background:#ffffff08;border:2px solid rgba(255,255,255,.05);border-radius:16px;padding:2rem;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.download-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease}.download-card.featured{border-color:#667eea4d;background:#667eea0d}.download-card.featured:before{opacity:1}.download-card:hover:not(.coming-soon-card):not(.planned-card){transform:translateY(-8px);border-color:#667eea80;box-shadow:0 12px 30px #667eea4d}.download-card.coming-soon-card,.download-card.planned-card{opacity:.7;cursor:default;border-color:#764ba233}.download-card.coming-soon-card:hover,.download-card.planned-card:hover{transform:translateY(-3px);border-color:#764ba24d}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.card-icon{font-size:3rem}.featured-badge,.coming-soon-badge,.planned-badge{padding:.4rem .8rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.featured-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.coming-soon-badge{background:#764ba24d;color:#c5a3e8}.planned-badge{background:#8080804d;color:#bbb}.download-card h2{font-size:1.6rem;font-weight:700;margin-bottom:.75rem;color:#fff}.card-description{font-size:1rem;line-height:1.6;color:#aaa;margin-bottom:1.5rem}.card-specs{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.spec-item{background:#667eea26;color:#a8b5ff;padding:.4rem .8rem;border-radius:6px;font-size:.85rem;font-weight:600}.card-features{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.feature-tag{background:#4caf5026;color:#81c784;padding:.3rem .6rem;border-radius:6px;font-size:.8rem;font-weight:600}.feature-tag.disabled{background:#80808026;color:#999}.card-action-btn{width:100%;padding:.9rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.card-action-btn:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea80}.card-action-btn.disabled{background:#8080804d;color:#999;cursor:not-allowed}.hub-help-section{margin-top:5rem;padding:3rem;background:#667eea0d;border:1px solid rgba(102,126,234,.2);border-radius:16px;text-align:center}.hub-help-section h2{font-size:2rem;font-weight:700;margin-bottom:1rem;color:#fff}.hub-help-section p{font-size:1.1rem;color:#aaa;margin-bottom:2rem}.help-links{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.help-link{padding:.75rem 1.5rem;background:#667eea33;color:#a8b5ff;text-decoration:none;border:1px solid rgba(102,126,234,.3);border-radius:8px;font-weight:600;transition:all .3s ease;cursor:pointer;font-family:inherit;font-size:1rem}.help-link:hover{background:#667eea4d;transform:translateY(-2px)}@media (max-width: 1024px){.downloads-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width: 768px){.downloads-hub-container{padding:100px 1rem 2rem}.hub-header h1{font-size:2.5rem}.downloads-grid{grid-template-columns:1fr}.help-links{flex-direction:column;align-items:stretch}}.downloads-mjr-client-page{min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a2e);color:#e0e0e0}.nav-brand-link{display:flex;align-items:center;gap:15px;text-decoration:none;background:none;border:none;padding:0;cursor:pointer;transition:opacity .2s ease;font-family:inherit}.nav-brand-link:hover{opacity:.8}.nav-blog-link,.nav-back-link{background:none;border:none;cursor:pointer;padding:0;font-family:inherit;color:#fffc;font-size:.95rem;font-weight:400;transition:color .2s ease}.nav-blog-link:hover,.nav-back-link:hover{color:#fff}.downloads-container{max-width:1200px;margin:0 auto;padding:120px 2rem 4rem}.downloads-content{animation:fadeIn .6s ease-in}.downloads-header{text-align:center;margin-bottom:3rem}.downloads-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.downloads-header h1{font-size:3rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.version-badge{display:inline-flex;gap:1rem;align-items:center;margin-bottom:1rem}.version-label{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem}.version-platform{color:#888;font-size:.9rem}.downloads-tagline{font-size:1.2rem;color:#aaa;max-width:700px;margin:0 auto}.download-action-section{text-align:center;margin:3rem 0;padding:2rem;background:#667eea1a;border:2px solid rgba(102,126,234,.3);border-radius:16px}.download-primary-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2.5rem;font-size:1.2rem;font-weight:700;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.download-primary-btn:hover{transform:translateY(-3px);box-shadow:0 6px 20px #667eea99}.download-hint{margin-top:1rem;color:#aaa;font-size:.9rem}.downloads-section{margin:4rem 0;padding:2rem;background:#ffffff05;border-radius:12px;border:1px solid rgba(255,255,255,.05)}.downloads-section h2{font-size:2rem;font-weight:700;margin-bottom:1.5rem;color:#fff}.downloads-section p{font-size:1.1rem;line-height:1.8;color:#ccc;margin-bottom:1rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.feature-card{background:#ffffff08;padding:1.5rem;border-radius:12px;border:1px solid rgba(102,126,234,.2);transition:all .3s ease}.feature-card:hover{transform:translateY(-5px);border-color:#667eea80;box-shadow:0 8px 20px #667eea4d}.feature-icon{font-size:2.5rem;margin-bottom:1rem}.feature-card h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:#fff}.feature-card p{font-size:1rem;color:#aaa;margin:0}.requirements-list{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.requirement-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff08;border-radius:8px;border-left:3px solid #667eea}.req-icon{font-size:2rem}.req-details strong{display:block;font-size:1.1rem;margin-bottom:.25rem;color:#fff}.req-details p{font-size:.95rem;color:#aaa;margin:0}.installation-steps{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.install-step{display:flex;gap:1.5rem;align-items:flex-start}.step-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0}.step-content{flex:1}.step-content h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:#fff}.step-content p{font-size:1rem;color:#aaa;margin:0}.step-content code{background:#667eea33;color:#a8b5ff;padding:.2rem .5rem;border-radius:4px;font-family:Courier New,monospace}.version-history{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.version-item{padding:1.5rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.05)}.version-item.latest{border-color:#667eea;background:#667eea0d}.version-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.version-header h3{font-size:1.3rem;font-weight:600;color:#fff;margin:0}.latest-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600;margin-left:1rem}.version-date{color:#888;font-size:.9rem}.version-changes{color:#ccc}.version-changes p{margin-bottom:.5rem;font-size:1rem}.version-changes ul{margin:0;padding-left:1.5rem}.version-changes li{margin-bottom:.5rem;line-height:1.6}.coming-soon-section{background:#764ba20d;border-color:#764ba233}.coming-soon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.coming-soon-card{padding:1.5rem;background:#ffffff05;border-radius:12px;border:1px solid rgba(118,75,162,.2);text-align:center}.coming-soon-icon{font-size:3rem;margin-bottom:1rem;opacity:.7}.coming-soon-card h3{font-size:1.2rem;font-weight:600;margin-bottom:.5rem;color:#fff}.coming-soon-card p{font-size:.95rem;color:#aaa;margin-bottom:1rem}.coming-soon-badge{display:inline-block;background:#764ba24d;color:#c5a3e8;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600}.support-section{background:#667eea0d;border-color:#667eea33;text-align:center}.support-links{display:flex;justify-content:center;gap:1rem;margin-top:2rem;flex-wrap:wrap}.support-link{padding:.75rem 1.5rem;background:#667eea33;color:#a8b5ff;text-decoration:none;border-radius:8px;font-weight:600;transition:all .3s ease;border:1px solid rgba(102,126,234,.3)}.support-link:hover{background:#667eea4d;transform:translateY(-2px)}.download-footer{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:4rem;padding-top:3rem;border-top:1px solid rgba(255,255,255,.1)}@media (max-width: 768px){.downloads-container{padding:100px 1rem 2rem}.downloads-header h1{font-size:2rem}.version-badge{flex-direction:column;gap:.5rem}.features-grid,.coming-soon-grid{grid-template-columns:1fr}.version-header{flex-direction:column;align-items:flex-start;gap:.5rem}.install-step{flex-direction:column}.support-links{flex-direction:column;align-items:stretch}}.downloads-mobile-apps-page{min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a2e);color:#e0e0e0}.breadcrumb-container{max-width:1200px;margin:0 auto;padding:90px 2rem 0}.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#888}.breadcrumb-link{background:none;border:none;color:#667eea;cursor:pointer;font-family:inherit;font-size:.9rem;padding:0;transition:color .2s ease}.breadcrumb-link:hover{color:#a8b5ff;text-decoration:underline}.breadcrumb-separator{color:#555}.breadcrumb-current{color:#fff;font-weight:500}.mobile-apps-container{max-width:1200px;margin:0 auto;padding:2rem 2rem 4rem}.mobile-apps-content{animation:fadeIn .6s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.coming-soon-header{text-align:center;margin-bottom:4rem;position:relative}.coming-soon-icon{font-size:6rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.coming-soon-badge{display:inline-block;background:#764ba24d;color:#c5a3e8;padding:.5rem 1.5rem;border-radius:20px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:1.5rem}.coming-soon-header h1{font-size:3.5rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.coming-soon-tagline{font-size:1.3rem;color:#aaa;max-width:700px;margin:0 auto}.platforms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:3rem 0}.platform-card{background:#ffffff08;border:2px solid rgba(118,75,162,.3);border-radius:16px;padding:3rem 2rem;text-align:center;transition:all .3s ease}.platform-card:hover{transform:translateY(-5px);border-color:#764ba280;box-shadow:0 10px 25px #764ba24d}.platform-icon{font-size:4rem;margin-bottom:1rem}.platform-card h2{font-size:1.8rem;font-weight:700;margin-bottom:.5rem;color:#fff}.platform-card p{font-size:1.1rem;color:#aaa;margin-bottom:1rem}.release-date{display:inline-block;background:#667eea33;color:#a8b5ff;padding:.4rem 1rem;border-radius:12px;font-size:.9rem;font-weight:600}.features-section{margin:4rem 0;padding:3rem;background:#ffffff05;border-radius:16px;border:1px solid rgba(255,255,255,.05)}.features-section h2{font-size:2.5rem;font-weight:700;margin-bottom:2rem;text-align:center;color:#fff}.features-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.feature-item{display:flex;gap:1.5rem;padding:1.5rem;background:#ffffff05;border-radius:12px;transition:all .3s ease}.feature-item:hover{background:#667eea0d;transform:translate(5px)}.feature-item .feature-icon{font-size:2.5rem;flex-shrink:0}.feature-content h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:#fff}.feature-content p{font-size:1rem;color:#aaa;line-height:1.6;margin:0}.notify-section{margin:4rem 0;padding:3rem;background:#667eea14;border:2px solid rgba(102,126,234,.3);border-radius:16px;text-align:center}.notify-section h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#fff}.notify-section>p{font-size:1.2rem;color:#aaa;margin-bottom:2rem}.notify-form{display:flex;gap:1rem;max-width:600px;margin:0 auto 1rem}.notify-input{flex:1;padding:1rem 1.5rem;background:#ffffff0d;border:2px solid rgba(102,126,234,.3);border-radius:8px;color:#fff;font-size:1rem;font-family:inherit;transition:all .3s ease}.notify-input:focus{outline:none;border-color:#667eea;background:#ffffff14}.notify-input::placeholder{color:#666}.notify-btn{padding:1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;white-space:nowrap;font-family:inherit}.notify-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea80}.notify-success{background:#4caf5033;color:#81c784;padding:1rem;border-radius:8px;font-weight:600;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.why-mobile-section{margin:4rem 0;padding:3rem;background:#764ba20d;border-radius:16px;border:1px solid rgba(118,75,162,.2)}.why-mobile-section h2{font-size:2rem;font-weight:700;margin-bottom:1.5rem;color:#fff}.why-mobile-section p{font-size:1.1rem;line-height:1.8;color:#ccc;margin-bottom:1rem}.back-section{text-align:center;margin-top:4rem;padding-top:3rem;border-top:1px solid rgba(255,255,255,.1)}.back-to-downloads-btn{background:transparent;color:#667eea;border:1px solid rgba(102,126,234,.3);padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s ease;font-family:inherit}.back-to-downloads-btn:hover{background:#667eea1a;border-color:#667eea80;transform:translateY(-2px)}@media (max-width: 768px){.mobile-apps-container{padding:2rem 1rem}.coming-soon-header h1{font-size:2.5rem}.platforms-grid,.features-list{grid-template-columns:1fr}.notify-form{flex-direction:column}.feature-item{flex-direction:column;text-align:center}}.session-browser-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.session-browser-modal{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 10px 50px #0000004d;animation:slideUp .3s ease}.session-browser-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.session-browser-header h2{margin:0;font-size:1.5rem;color:#333}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:4px 12px;border-radius:6px;transition:all .2s}.close-button:hover{background:#f5f5f5;color:#333}.session-browser-search{position:relative;padding:16px 24px;border-bottom:1px solid #e0e0e0}.session-browser-search input{width:100%;padding:12px 40px 12px 16px;border:1px solid #ddd;border-radius:8px;font-size:1rem;outline:none;transition:border-color .2s}.session-browser-search input:focus{border-color:#007bff}.search-icon{position:absolute;right:36px;top:50%;transform:translateY(-50%);font-size:1.2rem;pointer-events:none}.session-browser-content{flex:1;overflow-y:auto;padding:16px 24px 24px}.loading,.error,.empty-state{text-align:center;padding:40px 20px;color:#666}.error{color:#dc3545}.empty-state .hint{margin-top:8px;font-size:.9rem;color:#999}.sessions-list{display:flex;flex-direction:column;gap:16px}.session-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:10px;padding:20px;transition:all .2s;position:relative}.session-card:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff1a}.session-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.session-card-header h3{margin:0;font-size:1.2rem;color:#333;flex:1}.session-date{font-size:.85rem;color:#888;white-space:nowrap;margin-left:12px}.session-summary{margin:0 0 16px;color:#555;font-size:.95rem;line-height:1.5}.session-metadata{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:16px}.session-board{font-size:.9rem;color:#666;background:#fff;padding:6px 12px;border-radius:6px}.session-modules{display:flex;flex-wrap:wrap;gap:6px}.session-module-tag{background:#007bff;color:#fff;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:500}.saved-as-template-badge{display:inline-block;background:#28a745;color:#fff;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:500;margin-bottom:12px}.session-card-actions{display:flex;gap:8px;flex-wrap:wrap}.session-card-actions button{padding:10px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn-secondary{background:#fff;color:#007bff;border:1px solid #007bff}.btn-secondary:hover{background:#007bff;color:#fff}.btn-danger{background:#fff;color:#dc3545;border:1px solid #dc3545}.btn-danger:hover{background:#dc3545;color:#fff}@media (max-width: 600px){.session-browser-modal{width:95%;max-height:90vh}.session-card-actions{flex-direction:column}.session-card-actions button{width:100%}}.save-template-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1100;animation:fadeIn .2s ease}.save-template-modal{background:#fff;border-radius:12px;width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 50px #0006;animation:slideUp .3s ease}.save-template-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:2px solid #e0e0e0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.save-template-header h2{margin:0;font-size:1.5rem}.save-template-content{flex:1;overflow-y:auto;padding:24px}.loading-state,.error-state{text-align:center;padding:60px 20px}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.loading-state p{font-size:1.1rem;color:#333;margin:10px 0}.loading-state .hint{font-size:.9rem;color:#666}.error-state{color:#dc3545}.error-state button{margin-top:20px;padding:10px 24px;background:#dc3545;color:#fff;border:none;border-radius:6px;cursor:pointer}.analysis-results{display:flex;flex-direction:column;gap:20px}.edit-mode-toggle{background:#f8f9fa;padding:12px 16px;border-radius:8px;border:1px solid #dee2e6}.edit-mode-toggle label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;color:#333}.edit-mode-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer}.field-group{display:flex;flex-direction:column;gap:8px}.field-group>label{font-weight:600;color:#333;display:flex;justify-content:space-between;align-items:center}.field-group .hint{font-size:.85rem;color:#666;font-weight:400}.field-input,.field-textarea{padding:10px 14px;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s}.field-input:focus,.field-textarea:focus{outline:none;border-color:#667eea}.field-preview{padding:12px 14px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;color:#495057}.best-practices-list{list-style:none;margin:0;background:#f8f9fa;border-radius:8px;padding:12px}.best-practices-list li{padding:8px 12px;background:#fff;border-left:3px solid #28a745;margin-bottom:8px;border-radius:4px;font-size:.95rem;color:#333;line-height:1.5}.best-practices-list li:last-child{margin-bottom:0}.functions-list{display:flex;flex-direction:column;gap:8px;background:#f8f9fa;padding:12px;border-radius:8px}.function-item{display:flex;gap:12px;align-items:center;padding:10px 12px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.function-item code{background:#667eea;color:#fff;padding:4px 10px;border-radius:4px;font-family:Courier New,monospace;font-weight:600;font-size:.9rem}.function-item span{color:#666;font-size:.9rem}.code-toggle{display:flex;gap:8px;margin-left:auto}.code-toggle button{padding:6px 12px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.code-toggle button.active{background:#667eea;color:#fff;border-color:#667eea}.code-toggle button:hover:not(.active){border-color:#667eea;color:#667eea}.code-preview{background:#1e1e1e;color:#d4d4d4;padding:16px;border-radius:8px;overflow-x:auto;font-family:Courier New,monospace;font-size:.9rem;line-height:1.5;position:relative;max-height:300px;overflow-y:auto}.code-length{display:block;margin-top:12px;color:#888;font-size:.85rem;font-family:sans-serif}.info-box{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:8px;padding:12px 16px;color:#004085;font-size:.95rem}.info-box strong{color:#003266}.save-template-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:2px solid #e0e0e0;background:#f8f9fa;border-radius:0 0 12px 12px}.save-template-footer button{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary{background:#fff;color:#666;border:1px solid #ddd}.btn-secondary:hover{background:#f8f9fa;border-color:#999}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea80}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 600px){.save-template-modal{width:95%;max-height:95vh}.code-toggle{flex-direction:column}.code-toggle button{width:100%}}.project-setup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.project-setup-modal{background:#fff;padding:2.5rem;border-radius:16px;max-width:900px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative;color:#111827;animation:slideUp .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.close-modal-btn{position:absolute;top:1rem;right:1rem;background:#f3f4f6;border:none;width:36px;height:36px;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:#6b7280}.close-modal-btn:hover{background:#e5e7eb;color:#111827;transform:rotate(90deg)}.setup-modal-header{text-align:center;margin-bottom:2rem}.setup-modal-header h2{font-size:1.8rem;margin-bottom:.5rem;color:#111827;font-weight:700}.setup-modal-header p{font-size:1rem;color:#6b7280;margin:0}.setup-options{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.setup-option{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;padding:2rem;cursor:pointer;transition:all .3s ease;text-align:center;position:relative;overflow:hidden}.corner-ribbon{position:absolute;top:22px;left:-52px;width:200px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;text-align:center;line-height:1;padding:.8rem 0;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;transform:rotate(-45deg);box-shadow:0 4px 14px #ef444466;z-index:10;display:flex;align-items:center;justify-content:center}.corner-ribbon:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,rgba(255,255,255,.25) 0%,transparent 100%)}.setup-option:hover .corner-ribbon{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 18px #ef444480}.setup-option:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.setup-option:hover:before{transform:scaleX(1)}.setup-option:hover{transform:translateY(-4px);box-shadow:0 12px 24px #667eea33;border-color:#667eea}.wizard-option:hover{background:linear-gradient(135deg,#f0f4ff,#e8edff)}.manual-option:hover{background:linear-gradient(135deg,#fff7ed,#ffedd5)}.option-icon{font-size:3rem;margin-bottom:1rem;filter:grayscale(.2);transition:all .3s}.setup-option:hover .option-icon{transform:scale(1.1);filter:grayscale(0)}.wizard-icon-container{position:relative;display:inline-block;animation:wizardGlow 3s ease-in-out infinite}@keyframes wizardGlow{0%,to{filter:drop-shadow(0 0 8px rgba(102,126,234,.3))}50%{filter:drop-shadow(0 0 16px rgba(102,126,234,.6))}}.sparkle{position:absolute;font-size:1.2rem;pointer-events:none;opacity:0;animation:sparkleFloat 2.5s ease-out infinite}.sparkle-1{top:-10px;left:-15px;animation-delay:0s}.sparkle-2{top:-15px;right:-10px;animation-delay:.5s}.sparkle-3{top:10px;left:-20px;animation-delay:1s}.sparkle-4{top:15px;right:-15px;animation-delay:1.5s}.sparkle-5{top:-5px;left:50%;transform:translate(-50%);animation-delay:2s}@keyframes sparkleFloat{0%{opacity:0;transform:translateY(0) scale(.3) rotate(0)}20%{opacity:1}80%{opacity:.8}to{opacity:0;transform:translateY(-45px) scale(.8) rotate(180deg)}}.setup-option h3{font-size:1.3rem;margin-bottom:.25rem;color:#111827;font-weight:600}.option-subtitle{font-size:.9rem;color:#6b7280;margin-bottom:1.5rem;font-weight:500}.option-features{list-style:none;padding:0;margin:0 0 1.5rem;text-align:left}.option-features li{padding:.5rem 0;color:#4b5563;font-size:.95rem;display:flex;align-items:center;gap:.5rem}.option-features li:before{flex-shrink:0}.option-button{width:100%;padding:.875rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.wizard-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.wizard-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.setup-modal-footer{text-align:center;padding-top:1rem;border-top:1px solid #e5e7eb}.setup-hint{font-size:.9rem;color:#6b7280;margin:0}.setup-hint strong{color:#667eea;font-weight:600}@media (max-width: 768px){.setup-options{grid-template-columns:1fr}.project-setup-modal{padding:1.5rem}.setup-modal-header h2{font-size:1.5rem}}.wizard-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:3000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.wizard-modal{background:linear-gradient(to bottom,#1a1d29,#252936);padding:0;border-radius:20px;max-width:1400px;width:95%;max-height:90vh;box-shadow:0 25px 80px #0009;position:relative;color:#e5e7eb;animation:slideUp .3s ease;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.close-wizard-btn{position:absolute;top:1.5rem;right:2rem;background:#f3f4f6;border:none;width:36px;height:36px;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:#6b7280;z-index:200}.close-wizard-btn:hover{background:#e5e7eb;color:#111827;transform:rotate(90deg)}.wizard-progress-container{display:flex;align-items:center;justify-content:space-between;padding:2rem 2.5rem 1.5rem;border-bottom:2px solid #e5e7eb;gap:1.5rem;background:#fff;position:sticky;top:0;z-index:100;flex-shrink:0;border-radius:20px 20px 0 0}.progress-nav-left,.progress-nav-right{min-width:120px;display:flex;justify-content:center}.wizard-nav-btn{padding:.625rem 1.25rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid #e5e7eb;background:#f3f4f6;color:#4b5563}.wizard-nav-btn:hover{background:#e5e7eb;border-color:#d1d5db;transform:translateY(-1px)}.wizard-nav-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.wizard-nav-btn.primary:hover{box-shadow:0 4px 12px #667eea4d}.wizard-progress{display:flex;align-items:center;justify-content:center;flex:1}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative}.progress-step span{font-size:.85rem;color:#9ca3af;font-weight:500;max-width:200px;text-align:center;transition:all .3s ease}.progress-step.active span{color:#667eea;font-weight:600;font-size:.95rem}.progress-step.completed span{color:#667eea;font-weight:600}.progress-circle{width:48px;height:48px;border-radius:50%;background:#f3f4f6;border:2px solid #e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:600;color:#9ca3af;transition:all .3s;font-size:1.2rem}.progress-step.active .progress-circle{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;transform:scale(1.1)}.progress-step.completed .progress-circle{background:#10b981;border-color:#10b981;color:#fff}.progress-line{width:80px;height:2px;background:#e5e7eb;margin:0 1rem}.wizard-guide-step{min-height:400px;padding:0 2.5rem 2.5rem;overflow-y:auto;overflow-x:hidden;flex:1;display:flex;flex-direction:column;background:#252936}.wizard-guide-step::-webkit-scrollbar{width:10px}.wizard-guide-step::-webkit-scrollbar-track{background:#0003;border-radius:10px}.wizard-guide-step::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.wizard-guide-step::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;padding-top:2rem;flex:1;align-content:flex-start}.board-card{background:#fff;border:2px solid #e5e7eb;border-radius:14px;padding:1.5rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;position:relative}.board-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #667eea26;border-color:#667eea;background:#fafbff}.board-card.selected{border-color:#667eea;background:linear-gradient(135deg,#f0f4ff,#e8edff);box-shadow:0 8px 24px #667eea40}.board-image{width:100%;height:120px;object-fit:contain;margin-bottom:1rem}.board-name{font-weight:600;color:#111827;font-size:1rem}.selected-badge{position:absolute;top:.5rem;right:.5rem;background:#10b981;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.selected-summary{background:#f0f4ff;border:1px solid #c7d2fe;border-radius:0;padding:1rem 2.5rem;margin-bottom:0;margin-top:0;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;flex-shrink:0;position:sticky;top:0;z-index:110;margin-left:-2.5rem;margin-right:-2.5rem;border-left:none;border-right:none;border-top:none;box-shadow:0 4px 12px #667eea26}.selected-summary strong{color:#667eea;margin-right:.5rem}.selected-chip{background:#fff;border:1px solid #667eea;color:#667eea;padding:.375rem .75rem;border-radius:20px;font-size:.85rem;display:inline-flex;align-items:center;gap:.5rem}.selected-chip button{background:none;border:none;color:#667eea;cursor:pointer;font-size:1rem;padding:0;line-height:1}.selected-chip button:hover{color:#ef4444}.category-carousel-container{position:relative;display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem 2.5rem;background:#252936;border-bottom:1px solid rgba(255,255,255,.15);flex-shrink:0;position:sticky;top:0;z-index:100;margin-left:-2.5rem;margin-right:-2.5rem;margin-top:0;box-shadow:0 4px 12px #0006;perspective:1000px}.category-tabs-wrapper{max-width:900px;width:100%;overflow:hidden;position:relative;mask-image:linear-gradient(to right,transparent 0%,black 5%,black 95%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 5%,black 95%,transparent 100%)}.category-tabs{display:flex;gap:.75rem;transition:transform .5s cubic-bezier(.4,0,.2,1);padding:0 40%;transform-style:preserve-3d;justify-content:flex-start;pointer-events:none}.category-tabs>*{pointer-events:auto}.carousel-arrow{background:linear-gradient(135deg,#ff6b81f2,#ff8c9ef2);border:3px solid rgba(255,255,255,.4);color:#fff;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.8rem;font-weight:900;line-height:1;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);flex-shrink:0;-webkit-user-select:none;user-select:none;box-shadow:0 4px 20px #ff6b8180;position:relative;overflow:hidden}.carousel-arrow:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s}.carousel-arrow:hover:before{left:100%}.carousel-arrow:hover{background:linear-gradient(135deg,#ff6b81,#ff8c9e);border-color:#fff9;transform:translateY(-2px) scale(1.08);box-shadow:0 6px 30px #ff6b81b3}.carousel-arrow:active{transform:translateY(0) scale(.95);box-shadow:0 2px 15px #ff6b8180}.selected-summary~.category-carousel-container{top:60px}.category-tab{background:#fffffff2;border:1px solid rgba(229,231,235,.5);padding:.75rem 1.5rem;border-radius:10px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);white-space:nowrap;font-size:.95rem;color:#4b5563;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:scale(.85) translateZ(-50px);opacity:.5;flex-shrink:0;min-width:fit-content;pointer-events:auto;position:relative;z-index:1}.category-tab:hover{background:#fff;border-color:#ff6b81;color:#111827;box-shadow:0 4px 12px #ff6b8133;transform:scale(.92) translateZ(-30px);opacity:.8}.category-tab.active{background:linear-gradient(135deg,#ff6b81,#ff8c9e);border-color:#ff6b81;color:#fff;font-weight:600;box-shadow:0 4px 16px #ff6b8180;transform:scale(1) translateZ(0);opacity:1;z-index:10}.category-tab:nth-child(n){animation:tabFadeIn .4s ease}@keyframes tabFadeIn{0%{opacity:0;transform:scale(.7) translateZ(-80px)}to{opacity:.5;transform:scale(.85) translateZ(-50px)}}.component-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;padding:1.5rem 0;flex:1;align-content:flex-start}.component-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;position:relative;display:flex;flex-direction:column;min-height:240px;overflow:hidden;box-sizing:border-box}.component-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #667eea26;border-color:#667eea;background:#fafbff}.component-card.selected{border-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#dcfce7);box-shadow:0 8px 24px #10b98133}.component-image{width:100%;height:150px;object-fit:contain;margin-bottom:.5rem;flex-shrink:0;display:block}.component-name{font-size:.85rem;font-weight:600;color:#111827;margin-bottom:.25rem;line-height:1.2;min-height:2.4em;max-height:3.6em;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;text-align:center;width:100%;max-width:100%;padding:0 .25rem;box-sizing:border-box;flex-shrink:0}.component-pins{font-size:.75rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;max-width:100%;text-align:center;flex-shrink:0;padding:0 .25rem;box-sizing:border-box}.selected-check{position:absolute;top:.5rem;right:.5rem;background:#10b981;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}.component-info-icon{position:absolute;top:.5rem;left:.5rem;width:32px;height:32px;background:#1a1a1a;border:2px solid rgba(255,255,255,.9);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:10;box-shadow:0 2px 8px #0000004d,0 0 #0000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.info-icon-text{font-family:Georgia,Times New Roman,serif;font-size:1.1rem;font-weight:600;font-style:italic;color:#fff;line-height:1;-webkit-user-select:none;user-select:none;text-shadow:0 1px 3px rgba(0,0,0,.5)}.component-info-icon:hover{transform:scale(1.12);background:#000;box-shadow:0 4px 16px #00000080,0 0 0 4px #0000001a;border-color:#fff}.component-info-icon:active{transform:scale(1.05);transition:all .1s}.component-info-icon:after{content:"Click for more info";position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:#111827;color:#fff;padding:.4rem .75rem;border-radius:6px;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s;box-shadow:0 4px 12px #0000004d;z-index:1000}.component-info-icon:before{content:"";position:absolute;left:calc(100% + 5px);top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:#111827;opacity:0;pointer-events:none;transition:opacity .2s;z-index:1000}.component-info-icon:hover:after,.component-info-icon:hover:before{opacity:1}.component-info-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:4000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.component-info-modal{background:#fff;border-radius:16px;max-width:600px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0006;position:relative;animation:slideUp .3s ease}.close-info-modal-btn{position:absolute;top:1rem;right:1rem;background:#f3f4f6;border:none;width:36px;height:36px;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:#6b7280;z-index:10}.close-info-modal-btn:hover{background:#e5e7eb;color:#111827;transform:rotate(90deg)}.info-modal-header{display:flex;gap:1.5rem;padding:2rem;border-bottom:2px solid #e5e7eb;align-items:center;position:relative}.info-modal-image-container{flex-shrink:0;width:140px;height:140px;background:#f8fafc;border:2px solid #e5e7eb;border-radius:12px;display:flex;align-items:center;justify-content:center;padding:.75rem}.info-modal-image{max-width:100%;max-height:100%;object-fit:contain}.info-modal-title-section{flex:1;min-width:0}.order-component-widget{position:absolute;top:6.5rem;right:4rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;cursor:not-allowed;transition:all .3s cubic-bezier(.4,0,.2,1)}.order-component-widget:hover{transform:translateY(-2px)}.order-basket-icon{width:42px;height:42px;background:#fff;border:2px solid #f59e0b;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 2px 8px #f59e0b26;transition:all .3s}.order-component-widget:hover .order-basket-icon{border-color:#d97706;box-shadow:0 4px 12px #f59e0b40;transform:scale(1.08)}.order-label{font-size:.7rem;font-weight:600;color:#d97706;text-align:center;line-height:1.2;white-space:nowrap}.coming-soon-label{font-size:.65rem;font-weight:700;color:#10b981;background:#d1fae5;padding:.2rem .6rem;border-radius:10px;opacity:0;transform:scale(.85);transition:all .3s cubic-bezier(.4,0,.2,1)}.order-component-widget:hover .coming-soon-label{opacity:1;transform:scale(1)}.info-modal-title{font-size:1.4rem;font-weight:700;color:#111827;margin:0 0 .75rem;line-height:1.3}.info-modal-category,.info-modal-pins{font-size:.95rem;color:#6b7280;margin:.375rem 0}.info-modal-category span,.info-modal-pins span{color:#667eea;font-weight:600;text-transform:capitalize}.info-modal-body{padding:2rem}.info-modal-body h4{font-size:1.1rem;font-weight:600;color:#111827;margin:0 0 1rem}.info-modal-notes{font-size:.95rem;line-height:1.6;color:#4b5563;margin:0;white-space:pre-wrap;word-wrap:break-word}.info-modal-footer{padding:1.5rem 2rem;border-top:2px solid #e5e7eb;display:flex;justify-content:flex-end;align-items:center}.info-modal-close-btn{padding:.75rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.info-modal-close-btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea4d}.review-cart-container{max-width:900px;margin:0 auto;padding-top:2rem}.cart-header{text-align:center;margin-bottom:2.5rem}.cart-header h2{font-size:2rem;font-weight:700;color:#e5e7eb;margin:0 0 .5rem}.cart-header p{font-size:1rem;color:#9ca3af;margin:0}.cart-section{background:#fff;border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 4px 12px #0000001a}.cart-section-title{font-size:1.2rem;font-weight:600;color:#111827;margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.cart-board-display{display:flex;align-items:center;gap:1.5rem;padding:1rem;background:linear-gradient(135deg,#f0f4ff,#e8edff);border:2px solid #667eea;border-radius:12px}.cart-board-image{width:100px;height:100px;object-fit:contain;flex-shrink:0}.cart-board-info h4{font-size:1.2rem;font-weight:600;color:#111827;margin:0 0 .25rem}.cart-board-note{font-size:.9rem;color:#6b7280;margin:0;font-style:italic}.cart-items-grid{display:grid;gap:1rem}.cart-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;transition:all .2s}.cart-item:hover{background:#f3f4f6;border-color:#d1d5db}.cart-item-image-container{width:80px;height:80px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.5rem}.cart-item-image{max-width:100%;max-height:100%;object-fit:contain}.cart-item-details{flex:1;min-width:0}.cart-item-name{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .25rem}.cart-item-category{font-size:.85rem;color:#667eea;margin:0 0 .25rem;text-transform:capitalize}.cart-item-pins{font-size:.8rem;color:#6b7280;margin:0}.cart-item-remove{width:40px;height:40px;border:none;background:#fee2e2;color:#dc2626;border-radius:8px;cursor:pointer;font-size:1.2rem;transition:all .2s;flex-shrink:0}.cart-item-remove:hover{background:#fecaca;transform:scale(1.1)}.cart-summary{background:linear-gradient(135deg,#f0f4ff,#e8edff);border:2px solid #c7d2fe;border-radius:14px;padding:2rem;margin-top:2rem}.cart-summary-content{display:flex;gap:1.5rem;align-items:flex-start;margin-bottom:1.5rem}.cart-summary-icon{font-size:3rem;flex-shrink:0}.cart-summary-text h4{font-size:1.3rem;font-weight:600;color:#111827;margin:0 0 .5rem}.cart-summary-text p{font-size:1rem;color:#4b5563;margin:0;line-height:1.6}.cart-summary-text strong{color:#667eea;font-weight:700}.cart-summary-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:1rem}.back-to-component-selection-btn{padding:.875rem 1.5rem;background:#fff;border:2px solid #667eea;color:#667eea;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.back-to-component-selection-btn:hover{background:#f0f4ff;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.proceed-to-wiring-btn{padding:.875rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;border-radius:10px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #667eea33}.proceed-to-wiring-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #667eea80}.wiring-options{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;padding-top:2rem}.wiring-option{background:#fff;border:2px solid #e5e7eb;border-radius:14px;padding:2rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center}.wiring-option:hover{transform:translateY(-4px);box-shadow:0 12px 32px #667eea26;border-color:#667eea}.ai-option:hover{background:linear-gradient(135deg,#f0f4ff,#e8edff);border-color:#667eea}.manual-option:hover{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#f59e0b}.wiring-icon{font-size:3rem;margin-bottom:1rem}.wiring-option h3{font-size:1.4rem;margin-bottom:.25rem;color:#111827;font-weight:600}.wiring-subtitle{color:#6b7280;margin-bottom:1.5rem;font-size:.95rem}.wiring-features{list-style:none;padding:0;margin:0 0 1.5rem;text-align:left}.wiring-features li{padding:.5rem 0;color:#4b5563;font-size:.95rem}.wiring-button{width:100%;padding:.875rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.ai-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.ai-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.manual-button{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.manual-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #f59e0b66}.wizard-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.wizard-btn{padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.wizard-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.wizard-btn.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #667eea4d}.wizard-btn.primary:disabled{background:#d1d5db;cursor:not-allowed;opacity:.6}.wizard-btn.secondary{background:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.wizard-btn.secondary:hover{background:#e5e7eb;border-color:#d1d5db}.wizard-loading{text-align:center;padding:3rem;color:#6b7280;font-size:1.1rem}@media (max-width: 768px){.wizard-modal{padding:1.5rem}.board-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.component-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.wiring-options{grid-template-columns:1fr}.wizard-progress{font-size:.85rem}.progress-circle{width:32px;height:32px;font-size:.9rem}.progress-line{width:40px}}.mobile-blocker{min-height:100vh;width:100%;background:var(--bg-primary, #1a1a2e);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;overflow-y:auto}.mobile-blocker-content{max-width:500px;width:100%;text-align:center;padding:2rem;background:var(--bg-secondary, #16213e);border-radius:16px;border:2px solid var(--border, #2a3f5f);box-shadow:0 8px 32px #0000004d}.mobile-blocker-logo{width:120px;height:auto;margin-bottom:2rem;object-fit:contain}.mobile-blocker-icon{font-size:4rem;margin-bottom:1.5rem;line-height:1}.mobile-blocker-title{font-size:1.75rem;font-weight:700;color:var(--text-primary, #e4e4e7);margin-bottom:1rem;line-height:1.3}.mobile-blocker-subtitle{font-size:1.1rem;color:var(--text-secondary, #a1a1aa);margin-bottom:2rem;line-height:1.5}.mobile-blocker-features{background:var(--bg-tertiary, rgba(102, 126, 234, .1));border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid var(--border, #2a3f5f)}.features-title{font-size:.95rem;font-weight:600;color:var(--text-primary, #e4e4e7);margin-bottom:1rem}.features-list{list-style:none;padding:0;margin:0;text-align:left}.features-list li{font-size:.95rem;color:var(--text-secondary, #a1a1aa);margin-bottom:.75rem;padding-left:1.5rem;position:relative;line-height:1.5}.features-list li:last-child{margin-bottom:0}.features-list li:before{content:"•";position:absolute;left:.5rem;color:var(--accent, #667eea);font-weight:700;font-size:1.2rem}.mobile-blocker-footer{padding-top:1.5rem;border-top:1px solid var(--border, #2a3f5f)}.mobile-blocker-footer p{font-size:1rem;color:var(--text-primary, #e4e4e7);font-weight:600;margin:0}@media (max-width: 400px){.mobile-blocker-content{padding:1.5rem}.mobile-blocker-logo{width:100px}.mobile-blocker-icon{font-size:3rem}.mobile-blocker-title{font-size:1.5rem}.mobile-blocker-subtitle{font-size:1rem}.features-list li{font-size:.9rem}}@media (max-height: 600px) and (orientation: landscape){.mobile-blocker{padding:1rem}.mobile-blocker-content{padding:1.5rem}.mobile-blocker-logo{width:80px;margin-bottom:1rem}.mobile-blocker-icon{font-size:2.5rem;margin-bottom:1rem}.mobile-blocker-title{font-size:1.4rem;margin-bottom:.75rem}.mobile-blocker-subtitle{font-size:.95rem;margin-bottom:1.5rem}.mobile-blocker-features{padding:1rem;margin-bottom:1.5rem}.features-title{font-size:.9rem;margin-bottom:.75rem}.features-list li{font-size:.85rem;margin-bottom:.5rem}.mobile-blocker-footer{padding-top:1rem}.mobile-blocker-footer p{font-size:.9rem}}.mode-selection-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;animation:modeSelectionFadeIn .2s ease}.mode-selection-modal{background:#fff;border-radius:16px;padding:2rem;max-width:900px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:modeSelectionSlideUp .3s ease;position:relative}.mode-selection-modal .modal-close-btn{position:absolute;top:1rem;right:1rem;width:2.5rem;height:2.5rem;border:none;background:#f5f5f5;color:#666;font-size:1.5rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1;padding:0}.mode-selection-modal .modal-close-btn:hover{background:#e0e0e0;color:#333;transform:scale(1.1)}.mode-selection-header{text-align:center;margin-bottom:2rem}.mode-selection-header h2{font-size:1.75rem;color:#333;margin-bottom:.5rem;font-weight:700}.mode-selection-header p{color:#666;font-size:1.05rem;font-weight:500}.mode-selection-modal .mode-options{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:1.5rem}.mode-selection-modal .mode-card{border:2px solid #e0e0e0;border-radius:12px;padding:1.5rem;transition:all .3s ease;background:#fafafa}.mode-selection-modal .mode-card.clickable-card{cursor:pointer}.mode-selection-modal .mode-card.clickable-card:hover{border-color:#4caf50;transform:translateY(-4px);box-shadow:0 8px 24px #4caf5026}.mode-selection-modal .mode-card-header{text-align:center;margin-bottom:1.5rem}.mode-selection-modal .mode-icon{font-size:3rem;display:block;margin-bottom:.5rem}.mode-selection-modal .mode-card-header h3{font-size:1.35rem;color:#333;margin-bottom:.5rem;font-weight:700}.mode-selection-modal .mode-badge{display:inline-block;padding:.3rem .85rem;background:#e3f2fd;color:#1976d2;border-radius:12px;font-size:.8rem;font-weight:700}.mode-selection-modal .mode-badge.recommended{background:#e8f5e9;color:#2e7d32}.mode-selection-modal .mode-features{margin-bottom:1.5rem}.mode-selection-modal .feature{display:flex;align-items:center;gap:.65rem;padding:.6rem 0;font-size:1rem;font-weight:500;color:#444}.mode-selection-modal .feature-icon{font-size:1.25rem;flex-shrink:0}.mode-selection-modal .coming-soon{margin-left:auto;font-size:.75rem;color:#e65100;font-weight:700;background:#fff3e0;padding:.25rem .65rem;border-radius:8px;white-space:nowrap}.mode-selection-modal .mode-requirements{background:#fff;border-radius:8px;padding:1.2rem;margin-bottom:1rem;font-size:1.05rem;line-height:1.6}.mode-selection-modal .mode-requirements p{color:#444;font-size:1.05rem;font-weight:600;margin-bottom:.4rem}.mode-selection-modal .mode-requirements strong{color:#222;font-weight:700;font-size:1.05rem}.mode-selection-modal .mode-note{color:#555;font-size:1rem;margin-top:.4rem;font-weight:600}.mode-selection-modal .mode-select-btn{width:100%;padding:.95rem;font-size:1.05rem;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:all .2s;text-transform:none}.mode-selection-modal .mode-select-btn:disabled{opacity:.7;cursor:wait}.mode-selection-modal .pro-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.mode-selection-modal .pro-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 6px 20px #667eea66}.mode-selection-modal .code-only-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.mode-selection-modal .code-only-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 6px 20px #4caf5066}.mode-selection-modal .mode-selection-footer{text-align:center;padding-top:1rem;border-top:1px solid #e0e0e0}.mode-selection-modal .info-text{color:#666;font-size:.95rem;font-weight:500}@keyframes modeSelectionFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modeSelectionSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mode-selection-modal .modal-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;border-radius:16px;display:flex;align-items:center;justify-content:center;z-index:100}.mode-selection-modal .modal-loading-content{text-align:center;padding:2rem}.mode-selection-modal .loading-spinner{width:50px;height:50px;border:4px solid #e0e0e0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}.mode-selection-modal .modal-loading-content h3{font-size:1.25rem;color:#333;margin-bottom:.5rem;font-weight:700}.mode-selection-modal .modal-loading-content p{font-size:1rem;color:#666;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app{height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-header{background:var(--bg-secondary);border-bottom:2px solid var(--border);padding:1rem 2rem;box-shadow:0 2px 8px var(--shadow);flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:2rem}.header-title{display:flex;align-items:center;gap:1rem}.header-logo{height:50px;width:auto;object-fit:contain}.exit-admin-button,.my-projects-button{padding:.75rem 1.5rem;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.exit-admin-button:hover,.my-projects-button:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 12px #007bff33}.header-actions{display:flex;align-items:center;gap:1.5rem}.admin-user{color:var(--text-primary);font-weight:600;padding:.75rem 1.5rem;background:#667eea1a;border-radius:8px}.app-header h1{font-size:1.75rem;margin-bottom:.25rem;color:var(--text-primary)}.app-header p{color:var(--text-muted);font-size:.875rem}.header-progress{flex:1;display:flex;justify-content:center;align-items:center;max-width:400px}.progress-bar-compact{display:flex;justify-content:space-between;align-items:center;position:relative;width:100%;max-width:320px}.progress-bar-compact:before{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background:var(--border);transform:translateY(-50%);z-index:0}.progress-dot-compact{width:36px;height:36px;border-radius:50%;background:var(--bg-tertiary);border:3px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:var(--text-muted);position:relative;z-index:1;transition:all .3s ease}.progress-dot-compact.active{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.1);box-shadow:0 0 12px #667eea66}.progress-dot-compact.completed{background:var(--success);border-color:var(--success);color:#fff}.app-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.chat-tab{flex:1;display:flex;flex-direction:column;overflow:hidden}.coming-soon-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.coming-soon-tab h2{font-size:2.5rem;margin-bottom:1rem;color:var(--text-primary)}.coming-soon-tab p{font-size:1.1rem;color:var(--text-muted)}@media (max-width: 768px){.setup-content{padding:1rem}.setup-section{padding:1.5rem}.tab-nav{padding:.5rem 1rem}.tab-button{padding:.6rem 1rem;font-size:.85rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--accent: #3b82f6;--accent-hover: #2563eb;--success: #10b981;--border: #334155;--shadow: rgba(0, 0, 0, .3)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);line-height:1.6}code{font-family:Consolas,Monaco,Courier New,monospace}#root{min-height:100vh}button{font-family:inherit;cursor:pointer;border:none;outline:none}input,textarea{font-family:inherit;outline:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border)}
