@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");:root{--indigo-50:#eef2ff;--indigo-100:#e0e7ff;--indigo-200:#c7d2fe;--indigo-300:#a5b4fc;--indigo-400:#818cf8;--indigo-500:#6366f1;--indigo-600:#4f46e5;--indigo-700:#4338ca;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--success:#10b981;--success-bg:#ecfdf5;--warning:#f59e0b;--warning-bg:#fffbeb;--danger:#ef4444;--danger-bg:#fef2f2;--max-width:760px;--header-height:56px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--bg-page:#ffffff;--bg-surface:#ffffff;--bg-surface-hover:#f8fafc;--bg-elevated:rgba(255,255,255,0.8);--bg-input:#ffffff;--bg-input-focus:#ffffff;--bg-code:#f8fafc;--text-heading:#1e293b;--text-primary:#1e293b;--text-secondary:#64748b;--text-tertiary:#94a3b8;--text-inverse:#f1f5f9;--border-default:#e2e8f0;--border-subtle:rgba(0,0,0,0.06);--shadow-sm:0 1px 3px rgba(0,0,0,0.06);--shadow-md:0 4px 12px rgba(0,0,0,0.08);--shadow-lg:0 8px 32px rgba(0,0,0,0.08);--login-bg:#f1f5f9;--login-card-bg:#ffffff;--login-card-border:#e2e8f0;--login-card-shadow:0 8px 32px rgba(0,0,0,0.08);--login-input-bg:#f8fafc;--login-input-border:#e2e8f0;--login-input-focus-bg:#ffffff;--login-input-text:#1e293b;--login-input-placeholder:#94a3b8;--login-label-color:#475569;--login-title-color:#1e293b;--login-subtitle-color:#64748b;--login-divider-color:#e2e8f0;--login-divider-text:#94a3b8;--login-footer-color:#94a3b8;--login-footer-border:#e2e8f0;--login-toggle-color:#64748b;--login-oauth-bg:#f8fafc;--login-oauth-border:#e2e8f0;--login-oauth-text:#475569;--login-error-color:#ef4444;--login-error-bg:rgba(239,68,68,0.06);--login-error-border:rgba(239,68,68,0.15);--login-success-color:#10b981;--login-success-bg:rgba(16,185,129,0.06);--login-success-border:rgba(16,185,129,0.15);--login-orb-opacity:0.08}[data-theme=dark]{--bg-page:#080b16;--bg-surface:#0f1629;--bg-surface-hover:#161d33;--bg-elevated:rgba(15,22,41,0.85);--bg-input:rgba(15,23,42,0.6);--bg-input-focus:rgba(15,23,42,0.8);--bg-code:#0c1222;--text-heading:#f1f5f9;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-inverse:#1e293b;--border-default:rgba(148,163,184,0.15);--border-subtle:rgba(255,255,255,0.06);--shadow-sm:0 1px 3px rgba(0,0,0,0.3);--shadow-md:0 4px 12px rgba(0,0,0,0.4);--shadow-lg:0 8px 32px rgba(0,0,0,0.5);--login-bg:#080b16;--login-card-bg:rgba(15,20,40,0.7);--login-card-border:rgba(99,102,241,0.15);--login-card-shadow:0 8px 32px rgba(0,0,0,0.4);--login-input-bg:rgba(15,23,42,0.6);--login-input-border:rgba(148,163,184,0.15);--login-input-focus-bg:rgba(15,23,42,0.8);--login-input-text:#f1f5f9;--login-input-placeholder:#475569;--login-label-color:#94a3b8;--login-title-color:#f1f5f9;--login-subtitle-color:#94a3b8;--login-divider-color:rgba(148,163,184,0.15);--login-divider-text:#64748b;--login-footer-color:#475569;--login-footer-border:rgba(148,163,184,0.08);--login-toggle-color:#64748b;--login-oauth-bg:rgba(30,41,59,0.5);--login-oauth-border:rgba(148,163,184,0.15);--login-oauth-text:#cbd5e1;--login-error-color:#fca5a5;--login-error-bg:rgba(239,68,68,0.12);--login-error-border:rgba(239,68,68,0.2);--login-success-color:#6ee7b7;--login-success-bg:rgba(16,185,129,0.12);--login-success-border:rgba(16,185,129,0.2);--login-orb-opacity:0.5;--gray-50:#0f1629;--gray-100:#161d33;--gray-200:rgba(148,163,184,0.15);--gray-800:#e2e8f0;--gray-900:#f1f5f9}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease}.header{position:fixed;top:0;left:0;right:0;height:var(--header-height);justify-content:space-between;padding:0 32px;background:var(--bg-elevated);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100}.header,.header-logo{display:flex;align-items:center}.header-logo{gap:10px;font-weight:600;font-size:16px;color:var(--gray-800);letter-spacing:-.01em}.header-logo svg{width:24px;height:24px}.learning-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gray-500);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-pill{width:36px;height:20px;border-radius:10px;background:var(--gray-200);position:relative;transition:background .2s ease}.toggle-pill.on{background:var(--indigo-500)}.toggle-pill:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:white;transition:transform .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.1)}.toggle-pill.on:after{transform:translateX(16px)}.rules-counter{padding:4px 10px;border-radius:8px;font-size:12px;font-weight:500;color:var(--indigo-500);background:var(--indigo-50);border:none;cursor:pointer;transition:all .15s ease}.rules-counter:hover{background:var(--indigo-100)}.rules-dropdown{position:absolute;top:100%;right:0;margin-top:8px;width:360px;max-height:400px;background:white;border:1px solid var(--gray-200);border-radius:12px;padding:16px;box-shadow:0 8px 32px rgba(0,0,0,.08);z-index:300;overflow-y:auto}.rules-list{display:flex;flex-direction:column;gap:6px}.rules-item{font-size:13px;color:var(--gray-600);line-height:1.5;padding:6px 8px;border-radius:6px;background:var(--gray-50)}.main{min-height:100vh;display:flex;flex-direction:column;padding-top:var(--header-height)}.content{max-width:var(--max-width);width:100%;margin:0 auto;padding:0 24px}.content,.landing{flex:1 1;display:flex;flex-direction:column}.landing{justify-content:center;align-items:center;gap:24px;padding-bottom:120px}.hero-text{font-size:28px;font-weight:500;color:var(--gray-800);letter-spacing:-.02em;text-align:center}.prompt-container{width:100%;max-width:var(--max-width)}.prompt-box{width:100%;border:1px solid var(--gray-200);border-radius:16px;background:white;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.prompt-box:focus-within{border-color:var(--indigo-300);box-shadow:0 0 0 3px var(--indigo-50)}.prompt-textarea{width:100%;min-height:80px;padding:16px 20px;border:none;outline:none;font-family:var(--font-sans);font-size:15px;color:var(--gray-800);background:transparent;resize:none;line-height:1.5}.prompt-textarea::placeholder{color:var(--gray-400)}.prompt-controls{justify-content:space-between;padding:8px 12px 12px}.prompt-controls,.prompt-tabs{display:flex;align-items:center}.prompt-tabs{gap:4px}.prompt-tab{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:500;border:none;cursor:pointer;transition:all .15s ease;background:transparent;color:var(--gray-500)}.prompt-tab.active{background:var(--indigo-50);color:var(--indigo-600)}.prompt-tab:hover:not(.active){background:var(--gray-50);color:var(--gray-700)}.chain-selector{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;font-size:13px;color:var(--gray-500);border:1px solid var(--gray-200);background:white;cursor:pointer;transition:all .15s ease}.chain-selector:hover{border-color:var(--gray-300);color:var(--gray-700)}.prompt-right{display:flex;align-items:center;gap:8px}.submit-btn{padding:8px 20px;border-radius:10px;font-size:14px;font-weight:500;border:none;cursor:pointer;background:var(--indigo-500);color:white;transition:all .15s ease}.submit-btn:hover{background:var(--indigo-600);box-shadow:0 2px 8px rgba(99,102,241,.3)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.magic-btn{width:36px;height:36px;border-radius:10px;border:1.5px solid var(--indigo-300);background:linear-gradient(135deg,rgba(99,102,241,.08),rgba(139,92,246,.12));color:var(--indigo-500);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.magic-btn:hover:not(:disabled){background:linear-gradient(135deg,rgba(99,102,241,.15),rgba(139,92,246,.2));border-color:var(--indigo-400);box-shadow:0 0 12px rgba(99,102,241,.25);transform:scale(1.05)}.magic-btn:disabled{opacity:.5;cursor:not-allowed}.magic-spinner{display:inline-block;animation:magic-spin .8s linear infinite;font-size:16px}@keyframes magic-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.session{flex:1 1;display:flex;flex-direction:column;padding-top:48px;padding-bottom:200px;gap:32px}.user-prompt-card{padding:16px 20px;background:var(--gray-50);border-radius:12px;font-size:15px;line-height:1.6;color:var(--gray-700)}.user-prompt-label{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--indigo-500);margin-bottom:8px}.code-container{border-radius:12px;overflow:hidden;border:1px solid var(--gray-200)}.code-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.code-filename{font-size:13px;font-weight:500;color:var(--gray-600);font-family:var(--font-mono);border:none;outline:none;background:transparent;padding:2px 6px;border-radius:6px;transition:background .15s ease}.code-filename:focus,.code-filename:hover{background:var(--gray-100)}.code-filename:focus{box-shadow:0 0 0 2px var(--indigo-200)}.code-action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--gray-400);font-size:16px;border-radius:6px;cursor:pointer;transition:all .15s ease}.code-action-btn:hover{background:var(--gray-100);color:var(--gray-700)}.code-status{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--indigo-500)}.code-status-dot{width:6px;height:6px;border-radius:50%;background:var(--indigo-500);animation:pulse 1.5s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.code-body{padding:20px;background:white;font-family:var(--font-mono);font-size:13px;line-height:1.7;overflow:auto;white-space:pre;color:var(--gray-800);position:relative;max-height:60vh}.code-line{display:flex;padding:0 4px;border-radius:4px;transition:background .15s ease}.code-line:hover{background:var(--indigo-50);cursor:pointer}.line-number{width:40px;text-align:right;padding-right:16px;color:var(--gray-300);-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.line-content{flex:1 1}.cursor-blink{display:inline-block;width:2px;height:16px;background:var(--indigo-500);animation:blink .8s ease infinite;vertical-align:text-bottom;margin-left:1px}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.code-tooltip{position:absolute;right:-20px;transform:translateX(100%);width:280px;padding:16px;background:white;border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,.08);border:1px solid var(--gray-100);font-family:var(--font-sans);font-size:13px;line-height:1.5;color:var(--gray-600);z-index:50}.code-tooltip-title{font-weight:600;color:var(--gray-800);margin-bottom:6px;font-size:13px}.audit-section{display:flex;flex-direction:column;gap:24px}.audit-label{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--indigo-500)}.audit-title{font-size:16px;font-weight:500;color:var(--gray-800);margin-top:4px}.agent-list{display:flex;flex-direction:column;gap:0}.agent-row{justify-content:space-between;padding:12px 0}.agent-name,.agent-row{display:flex;align-items:center}.agent-name{gap:10px;font-size:14px;color:var(--gray-700)}.agent-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.agent-dot.scanning{background:var(--indigo-400);animation:pulse 1.5s ease infinite}.agent-dot.clear{background:var(--success)}.agent-dot.finding{background:var(--warning)}.agent-dot.critical{background:var(--danger)}.agent-status{font-size:13px;color:var(--gray-400)}.agent-status.has-finding{color:var(--warning);font-weight:500}.agent-status.has-critical{color:var(--danger);font-weight:500}.findings-section{display:flex;flex-direction:column;gap:16px}.findings-label{font-size:14px;font-weight:500;color:var(--gray-800)}.finding-card{padding:20px 24px;border-radius:12px;background:var(--warning-bg)}.finding-card.critical{background:var(--danger-bg)}.finding-severity{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px}.finding-severity.medium{background:rgba(245,158,11,.15);color:#b45309}.finding-severity.high{background:rgba(239,68,68,.15);color:#b91c1c}.finding-severity.low{background:rgba(34,197,94,.15);color:#15803d}.finding-severity.critical{background:rgba(239,68,68,.2);color:#991b1b}.finding-title{font-size:15px;font-weight:500;color:var(--gray-800);margin-bottom:6px}.finding-description{font-size:13px;color:var(--gray-600);line-height:1.5;margin-bottom:16px}.finding-actions{display:flex;gap:8px}.finding-btn{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.finding-btn.fix{background:var(--indigo-500);color:white}.finding-btn.fix:hover{background:var(--indigo-600)}.finding-btn.fix:disabled{opacity:.6;cursor:not-allowed}.batch-fix-btn{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;border:1px solid;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.03em}.batch-fix-btn:disabled{opacity:.4;cursor:not-allowed}.batch-fix-btn.critical{background:rgba(239,68,68,.1);color:#ef4444;border-color:rgba(239,68,68,.3)}.batch-fix-btn.critical:hover:not(:disabled){background:rgba(239,68,68,.2)}.batch-fix-btn.high{background:rgba(249,115,22,.1);color:#f97316;border-color:rgba(249,115,22,.3)}.batch-fix-btn.high:hover:not(:disabled){background:rgba(249,115,22,.2)}.batch-fix-btn.medium{background:rgba(234,179,8,.1);color:#ca8a04;border-color:rgba(234,179,8,.3)}.batch-fix-btn.medium:hover:not(:disabled){background:rgba(234,179,8,.2)}.batch-fix-btn.low{background:rgba(34,197,94,.1);color:#16a34a;border-color:rgba(34,197,94,.3)}.batch-fix-btn.low:hover:not(:disabled){background:rgba(34,197,94,.2)}.batch-fix-btn.all{background:rgba(99,102,241,.1);color:var(--indigo-500);border-color:rgba(99,102,241,.3)}.batch-fix-btn.all:hover:not(:disabled){background:rgba(99,102,241,.2)}.finding-btn.ask{background:transparent;color:var(--gray-600);border:1px solid var(--gray-200)}.finding-btn.ask:hover{border-color:var(--gray-300);color:var(--gray-800)}.bottom-prompt{position:fixed;bottom:0;left:0;right:0;padding:16px 24px 24px;background:linear-gradient(transparent,white 24px)}.bottom-prompt .prompt-container{margin:0 auto}.chain-dropdown{position:absolute;bottom:100%;left:0;margin-bottom:4px;background:white;border:1px solid var(--gray-200);border-radius:12px;padding:6px;box-shadow:0 4px 24px rgba(0,0,0,.08);z-index:200;min-width:200px}.chain-option{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;font-size:13px;color:var(--gray-700);cursor:pointer;border:none;background:transparent;width:100%;text-align:left;transition:background .1s ease}.chain-option:hover{background:var(--gray-50)}.chain-option.selected{background:var(--indigo-50);color:var(--indigo-600)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-200);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-300)}.syn-keyword{color:var(--indigo-600)}.syn-type{color:#0891b2}.syn-string{color:#059669}.syn-number{color:#d97706}.syn-comment{color:var(--gray-400);font-style:italic}.syn-function{color:#7c3aed}.syn-operator{color:var(--gray-500)}.scope-thread{display:flex;flex-direction:column;gap:16px}.scope-msg{display:flex;gap:12px;max-width:100%}.scope-msg.user{justify-content:flex-end}.scope-avatar{width:28px;height:28px;border-radius:50%;background:var(--indigo-50);color:var(--indigo-500);display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;margin-top:2px}.scope-bubble{max-width:85%;padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.6;color:var(--gray-700)}.scope-msg.user .scope-bubble{background:var(--indigo-500);color:white;border-bottom-right-radius:4px}.scope-msg.assistant .scope-bubble{background:var(--gray-50);border-bottom-left-radius:4px}.scope-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.scope-btn{padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;border:1.5px solid var(--indigo-200);background:white;color:var(--indigo-600);cursor:pointer;transition:all .15s ease}.scope-btn:hover{background:var(--indigo-50);border-color:var(--indigo-400)}.scope-btn.confirm,.scope-btn.selected{background:var(--indigo-500);color:white;border-color:var(--indigo-500)}.scope-btn.confirm:hover{background:var(--indigo-600);border-color:var(--indigo-600)}.scope-confirmation{padding:8px}.scope-confirm-label{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--success);margin-bottom:12px}.scope-typing{color:var(--gray-400);font-style:italic}.scope-dots{animation:dotPulse 1.5s ease infinite}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.2}}.address-input{flex:1 1;padding:10px 14px;border:1px solid var(--gray-200);border-radius:10px;font-family:var(--font-mono);font-size:14px;color:var(--gray-800);outline:none;background:var(--gray-50);transition:border-color .2s ease}.address-input:focus{border-color:var(--indigo-300);background:white}.address-input::placeholder{color:var(--gray-400);font-family:var(--font-sans)}.audit-page{flex:1 1;display:flex;flex-direction:column;padding-top:48px;padding-bottom:200px}.audit-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.audit-page-title{font-size:20px;font-weight:600;color:var(--gray-800);margin-top:4px;font-family:var(--font-mono)}.progress-bar-container{width:100%;height:4px;background:var(--gray-100);border-radius:2px;overflow:hidden;margin-bottom:6px}.progress-bar{height:100%;background:linear-gradient(90deg,var(--indigo-400),var(--indigo-600));border-radius:2px;transition:width .6s cubic-bezier(.4,0,.2,1)}.agent-pipeline{display:flex;flex-direction:column}.pipeline-step{display:flex;gap:16px;min-height:72px}.pipeline-indicator{flex-direction:column;width:32px}.pipeline-dot,.pipeline-indicator{display:flex;align-items:center;flex-shrink:0}.pipeline-dot{width:28px;height:28px;border-radius:50%;justify-content:center;font-size:12px;font-weight:600;transition:all .3s ease}.pipeline-dot.queued{background:var(--gray-100);color:var(--gray-400);border:1.5px solid var(--gray-200)}.pipeline-dot.scanning{background:var(--indigo-50);color:var(--indigo-500);border:1.5px solid var(--indigo-300);animation:pulse 1.5s ease infinite}.pipeline-dot.clear{background:#ecfdf5;color:var(--success);border:1.5px solid #a7f3d0}.pipeline-dot.finding{background:var(--warning-bg);color:#b45309;border:1.5px solid #fcd34d}.pipeline-dot.critical{background:var(--danger-bg);color:var(--danger);border:1.5px solid #fca5a5}.pipeline-line{width:2px;flex:1 1;background:var(--gray-200);margin:4px 0;transition:background .3s ease}.pipeline-line.done{background:var(--indigo-200)}.pipeline-content{flex:1 1;padding-bottom:20px}.pipeline-name{font-size:14px;font-weight:500;color:var(--gray-800)}.pipeline-desc{font-size:12px;color:var(--gray-400);margin-top:2px}.pipeline-status-text{font-size:13px;color:var(--gray-400);margin-top:4px}.report-view{display:flex;flex-direction:column;gap:24px}.report-score-card{text-align:center;padding:32px;background:var(--gray-50);border-radius:16px}.report-score-number{font-size:56px;font-weight:700;line-height:1;letter-spacing:-.02em}.report-score-label{font-size:14px;font-weight:500;color:var(--gray-500);margin-top:8px}.report-section{padding:20px;background:var(--gray-50);border-radius:12px}.report-section-title{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--indigo-500);margin-bottom:12px}.report-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}.report-stat{text-align:center}.report-stat-num{font-size:28px;font-weight:700}.report-stat-label{font-size:12px;color:var(--gray-500);margin-top:4px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--login-bg);padding:20px;position:relative;overflow:hidden;transition:background .3s ease}.login-bg-orbs{position:absolute;inset:0;pointer-events:none;z-index:0}.login-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:var(--login-orb-opacity);transition:opacity .3s ease}.login-orb-1{width:500px;height:500px;background:radial-gradient(circle,#6366f1 0,transparent 70%);top:-10%;right:-5%;animation:loginOrbFloat1 12s ease-in-out infinite}.login-orb-2{width:400px;height:400px;background:radial-gradient(circle,#14f195 0,transparent 70%);bottom:-5%;left:-10%;animation:loginOrbFloat2 15s ease-in-out infinite}.login-orb-3{width:300px;height:300px;background:radial-gradient(circle,#9945ff 0,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);animation:loginOrbFloat3 10s ease-in-out infinite}@keyframes loginOrbFloat1{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-40px,30px) scale(1.1)}}@keyframes loginOrbFloat2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-40px) scale(1.15)}}@keyframes loginOrbFloat3{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.5}}.login-card{width:100%;max-width:420px;background:var(--login-card-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--login-card-border);border-radius:24px;padding:40px;position:relative;z-index:1;box-shadow:var(--login-card-shadow);opacity:0;transform:translateY(12px) scale(.98);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1),background .3s ease,border-color .3s ease}.login-card--visible{opacity:1;transform:translateY(0) scale(1)}.login-card:before{content:"";position:absolute;inset:-1px;border-radius:25px;padding:1px;background:linear-gradient(135deg,rgba(99,102,241,.3),transparent 50%,rgba(20,241,149,.2));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.login-logo{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:18px;font-weight:600;color:var(--text-heading);margin-bottom:32px}.login-title{font-size:26px;font-weight:700;color:var(--login-title-color);margin:0;letter-spacing:-.02em}.login-subtitle{font-size:14px;color:var(--login-subtitle-color);margin:6px 0 24px}.oauth-buttons{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:10px;gap:10px}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 8px;border:1px solid var(--login-oauth-border);border-radius:12px;background:var(--login-oauth-bg);font-size:13px;font-weight:500;color:var(--login-oauth-text);cursor:pointer;transition:all .2s ease}.oauth-btn:hover{border-color:rgba(148,163,184,.3);transform:translateY(-1px)}.oauth-btn.google:hover{background:rgba(234,67,53,.1);border-color:rgba(234,67,53,.4);box-shadow:0 4px 16px rgba(234,67,53,.15)}.oauth-btn.github:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25);box-shadow:0 4px 16px rgba(255,255,255,.08)}.oauth-btn.twitter:hover{background:rgba(29,155,240,.1);border-color:rgba(29,155,240,.4);box-shadow:0 4px 16px rgba(29,155,240,.15)}.oauth-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0}.login-divider:after,.login-divider:before{content:"";flex:1 1;height:1px;background:var(--login-divider-color)}.login-divider span{font-size:11px;color:var(--login-divider-text);text-transform:uppercase;letter-spacing:.08em}.login-form{display:flex;flex-direction:column;gap:16px}.login-field label{display:block;font-size:13px;font-weight:500;color:var(--login-label-color);margin-bottom:6px}.login-field input{width:100%;padding:11px 14px;border:1px solid var(--login-input-border);border-radius:10px;font-size:14px;color:var(--login-input-text);outline:none;background:var(--login-input-bg);transition:all .2s ease;box-sizing:border-box;font-family:var(--font-sans)}.login-field input:focus{border-color:rgba(99,102,241,.5);background:var(--login-input-focus-bg);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.login-field input::placeholder{color:var(--login-input-placeholder)}.login-error{color:var(--login-error-color);background:var(--login-error-bg);border:1px solid var(--login-error-border);border-radius:8px}.login-error,.login-success{font-size:13px;padding:8px 12px}.login-success{color:var(--login-success-color);background:var(--login-success-bg);border:1px solid var(--login-success-border);border-radius:8px}.login-submit{width:100%;padding:12px;border:none;border-radius:12px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:white;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:var(--font-sans)}.login-submit:hover{background:linear-gradient(135deg,#818cf8,#6366f1);box-shadow:0 4px 20px rgba(99,102,241,.35);transform:translateY(-1px)}.login-submit:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.login-toggle{text-align:center;margin-top:20px;font-size:13px;color:var(--login-toggle-color)}.login-toggle button{background:none;border:none;color:var(--indigo-400);font-weight:600;cursor:pointer;margin-left:4px;transition:color .15s ease;font-family:var(--font-sans)}.login-toggle button:hover{color:var(--indigo-300)}.login-footer{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid var(--login-footer-border);font-size:11px;color:var(--login-footer-color);letter-spacing:.04em}.user-avatar-btn{width:32px;height:32px;border-radius:50%;border:none;cursor:pointer;overflow:hidden;padding:0;background:var(--indigo-100);color:var(--indigo-600);font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center}.user-avatar-btn img{width:100%;height:100%;object-fit:cover}.user-menu{position:absolute;top:100%;right:0;margin-top:8px;width:200px;background:white;border:1px solid var(--gray-200);border-radius:12px;padding:8px;box-shadow:0 8px 32px rgba(0,0,0,.08);z-index:300}.user-menu-email{padding:8px 12px;font-size:12px;color:var(--gray-500);border-bottom:1px solid var(--gray-100);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-item{width:100%;padding:8px 12px;border:none;background:none;font-size:13px;color:var(--gray-700);text-align:left;cursor:pointer;border-radius:8px;transition:background .1s ease}.user-menu-item:hover{background:var(--gray-50)}.user-menu-item.danger{color:var(--danger)}.token-info-card{margin-top:10px;padding:10px 14px;background:rgba(99,102,241,.04);border:1px solid rgba(99,102,241,.12);border-radius:10px;display:flex;flex-direction:column;gap:6px}.token-info-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.token-info-item{display:flex;flex-direction:column;gap:1px}.token-info-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400)}.token-info-value{font-size:13px;font-weight:600;color:var(--gray-800);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.token-info-value.positive{color:#22c55e}.token-info-value.negative{color:#ef4444}.audit-document{padding:24px 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:#1e293b;line-height:1.7}.doc-header{margin-bottom:32px}.doc-header-rule{height:2px;background:linear-gradient(90deg,#1e293b,#94a3b8 50%,#1e293b);margin:8px 0}.doc-title{font-size:26px;font-weight:800;color:#0f172a;margin:16px 0 20px;letter-spacing:-.01em}.doc-meta-table{width:100%;border-collapse:collapse;margin:12px 0}.doc-meta-table td{padding:6px 0;font-size:14px;border-bottom:1px solid #f1f5f9;vertical-align:top}.doc-meta-key{font-weight:600;color:#64748b;width:140px;white-space:nowrap;padding-right:20px}.doc-section{margin-bottom:32px}.doc-section-num{font-size:18px;font-weight:700;color:#1e293b;margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.doc-subsection-title{font-size:14px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.04em;margin:0}.doc-body{font-size:14px;line-height:1.75;color:#334155;margin:0 0 8px}.doc-agent-table{width:100%;border-collapse:collapse;margin:12px 0;font-size:13px}.doc-agent-table th{text-align:left;background:#f8fafc;font-weight:600;color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.doc-agent-table td,.doc-agent-table th{padding:8px 12px;border:1px solid #e2e8f0}.doc-agent-table td{color:#334155}.doc-agent-table tbody tr:nth-child(2n){background:#fafbfc}.doc-code-block{margin:24px 0;border-left:3px solid #cbd5e1;padding-left:0}.doc-subsection-num{font-size:14px;font-weight:700;color:#0f172a;margin:0 0 8px;padding:0 0 0 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.doc-line-ref{font-size:12px;font-weight:400;font-family:SF Mono,Fira Code,monospace;color:#94a3b8}.doc-risk-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:3px}.doc-risk-tag.clean,.doc-risk-tag.informational,.doc-risk-tag.low{background:#ecfdf5;color:#047857}.doc-risk-tag.medium{background:#fef9c3;color:#a16207}.doc-risk-tag.high{background:#ffedd5;color:#c2410c}.doc-risk-tag.critical{background:#fee2e2;color:#b91c1c}.doc-code{margin:8px 0;padding:14px 16px;font-size:12px;line-height:1.55;font-family:SF Mono,Fira Code,Consolas,monospace;background:#0f172a;color:#cbd5e1;border-radius:6px;overflow-x:auto;max-height:280px;overflow-y:auto}.doc-code code{font-family:inherit}.doc-analysis{padding:12px 16px;margin:8px 0;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.doc-analysis-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:4px}.doc-analysis p{font-size:13px;line-height:1.65;color:#475569;margin:0}.doc-seg-findings{padding:10px 16px;margin:8px 0;background:#fffbeb;border-radius:6px;border:1px solid #fde68a;display:flex;flex-direction:column;gap:6px}.doc-seg-finding{font-size:13px;line-height:1.5;color:#334155;display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.doc-sep{color:#94a3b8}.doc-sev{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 6px;border-radius:3px;flex-shrink:0}.doc-sev.critical{background:#fee2e2;color:#991b1b}.doc-sev.high{background:#ffedd5;color:#9a3412}.doc-sev.medium{background:#fef9c3;color:#92400e}.doc-sev.low{background:#d1fae5;color:#065f46}.doc-finding{margin:16px 0;padding:16px;border-left:3px solid #cbd5e1}.doc-finding:has(.doc-sev.critical){border-left-color:#ef4444}.doc-finding:has(.doc-sev.high){border-left-color:#f97316}.doc-finding:has(.doc-sev.medium){border-left-color:#eab308}.doc-finding:has(.doc-sev.low){border-left-color:#22c55e}.doc-finding-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 6px;font-size:14px}.doc-finding-title{font-weight:600;color:#0f172a}.doc-finding-line{font-size:12px;font-family:SF Mono,monospace;color:#94a3b8;margin-left:auto}.doc-finding-meta{font-size:12px;color:#94a3b8;margin-bottom:6px}.doc-recommendation{margin-top:10px;padding:10px 14px;background:#f0f9ff;border-radius:6px;border-left:3px solid #3b82f6;font-size:13px;line-height:1.6;color:#1e3a5f}.doc-recommendation strong{color:#1e40af}.doc-finding-code-wrap{margin:12px 0;border-radius:6px;overflow:hidden;border:1px solid #1e293b}.doc-finding-code-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;background:#1e293b;padding:6px 14px;border-bottom:1px solid #334155}.doc-finding-code{margin:0;padding:0;font-size:12px;line-height:1.55;font-family:SF Mono,Fira Code,Consolas,monospace;background:#0f172a;overflow-x:auto;max-height:320px;overflow-y:auto}.doc-code-line{display:flex;padding:0 14px;min-height:20px}.doc-code-line.highlighted{background:rgba(99,102,241,.15);border-left:3px solid #6366f1;padding-left:11px}.doc-code-linenum{display:inline-block;width:40px;flex-shrink:0;text-align:right;padding-right:14px;color:#475569;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:11px}.doc-code-line.highlighted .doc-code-linenum{color:#818cf8}.doc-code-text{color:#cbd5e1;white-space:pre}.doc-code-line.highlighted .doc-code-text{color:#e2e8f0}.doc-exploit-wrap{margin:12px 0;border-radius:6px;overflow:hidden;border:1px solid #b91c1c}.doc-exploit-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fca5a5;background:#450a0a;padding:6px 14px;border-bottom:1px solid #7f1d1d}.doc-exploit-code{margin:0;padding:14px 16px;font-size:12px;line-height:1.55;font-family:SF Mono,Fira Code,Consolas,monospace;background:#1a0505;color:#fecaca;overflow-x:auto;max-height:320px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.doc-exploit-code code{font-family:inherit}.doc-repro-wrap{margin:12px 0;padding:14px 16px;background:#fef2f2;border-radius:6px;border:1px solid #fecaca}.doc-repro-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#991b1b;margin-bottom:8px}.doc-repro-list{margin:0;padding:0 0 0 20px;font-size:13px;line-height:1.7;color:#7f1d1d}.doc-repro-list li{margin-bottom:4px}.doc-repro-list li::marker{color:#b91c1c;font-weight:700}.doc-footer{margin-top:16px;text-align:center;font-size:12px;color:#94a3b8}.doc-footer p{margin:2px 0}.pipeline-techniques{margin-top:6px;display:flex;flex-direction:column;gap:2px}.pipeline-techniques.active{animation:fadeInTechniques .3s ease}@keyframes fadeInTechniques{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pipeline-technique{font-size:12px;display:flex;align-items:center;gap:6px;padding:1px 0;color:#94a3b8}.pipeline-technique.scanning{color:#6366f1;animation:pulseTechnique 2s ease infinite}@keyframes pulseTechnique{0%,to{opacity:.6}50%{opacity:1}}.pipeline-technique.clear{color:#94a3b8;opacity:.7}.pipeline-technique.flagged{color:#d97706}.technique-bullet{font-size:10px;opacity:.6;flex-shrink:0}.solana-type-selector{margin:8px 0 4px;padding:12px 14px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:10px}.solana-type-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.solana-type-label{font-size:12px;font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px}.solana-explainer-toggle{background:none;border:none;font-size:11px;color:var(--indigo-500);cursor:pointer;padding:2px 6px;border-radius:4px;transition:background .15s}.solana-explainer-toggle:hover{background:var(--indigo-50)}.solana-type-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.solana-type-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:1.5px solid var(--gray-200);border-radius:8px;background:white;cursor:pointer;transition:all .2s ease;position:relative}.solana-type-card:hover{border-color:var(--indigo-300);background:var(--indigo-50)}.solana-type-card.selected{border-color:var(--indigo-500);background:var(--indigo-50);box-shadow:0 0 0 3px rgba(99,102,241,.15)}.solana-type-icon{font-size:24px;line-height:1}.solana-type-name{font-size:13px;font-weight:600;color:var(--gray-800)}.solana-type-desc{font-size:11px;color:var(--gray-500);text-align:center;line-height:1.4}.solana-type-badge{display:inline-block;margin-top:4px;padding:2px 8px;font-size:10px;font-weight:600;color:var(--success);background:var(--success-bg);border-radius:99px}.solana-type-badge.program{color:var(--warning);background:var(--warning-bg)}.solana-explainer{margin-top:10px;padding:14px;background:white;border:1px solid var(--gray-200);border-radius:8px;animation:fadeSlideDown .2s ease}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.solana-explainer-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.solana-explainer-col h4{font-size:13px;font-weight:600;margin:0 0 8px;color:var(--gray-800)}.solana-explainer-col ul{list-style:none;padding:0;margin:0}.solana-explainer-col li{font-size:12px;color:var(--gray-600);line-height:1.6;padding-left:14px;position:relative}.solana-explainer-col li:before{content:"·";position:absolute;left:4px;color:var(--gray-400);font-weight:700}.solana-explainer-warning{margin-top:12px;padding:10px 12px;font-size:12px;color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;line-height:1.5}.wallet-auth-section{display:flex;flex-direction:column;gap:8px;margin-top:4px}.wallet-btn-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.wallet-btn-wrapper{position:relative}.wallet-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:13px 0;border:1px solid var(--login-oauth-border);border-radius:14px;background:var(--login-oauth-bg);color:var(--text-heading);font-size:14px;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);font-family:var(--font-sans);letter-spacing:-.01em}.wallet-btn:hover{transform:translateY(-2px)}.wallet-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.wallet-btn.evm{background:linear-gradient(135deg,rgba(98,126,234,.15),rgba(79,70,229,.15));border-color:rgba(98,126,234,.25)}.wallet-btn.evm:hover{background:linear-gradient(135deg,rgba(98,126,234,.25),rgba(79,70,229,.25));border-color:rgba(98,126,234,.45);box-shadow:0 4px 20px rgba(98,126,234,.2)}.wallet-btn.solana{background:linear-gradient(135deg,rgba(20,241,149,.1),rgba(153,69,255,.15));border-color:rgba(153,69,255,.25)}.wallet-btn.solana:hover{background:linear-gradient(135deg,rgba(20,241,149,.18),rgba(153,69,255,.25));border-color:rgba(153,69,255,.45);box-shadow:0 4px 20px rgba(153,69,255,.2)}.wallet-divider{display:flex;align-items:center;gap:12px;margin:12px 0 8px}.wallet-divider:after,.wallet-divider:before{content:"";flex:1 1;height:1px;background:var(--login-divider-color)}.wallet-divider span{font-size:11px;color:var(--login-divider-text);white-space:nowrap}.deploy-panel{background:#0f1729;border:1px solid rgba(99,102,241,.2);border-radius:12px;margin-top:16px;overflow:hidden;animation:deploySlideIn .3s ease}@keyframes deploySlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.deploy-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(99,102,241,.15);background:rgba(99,102,241,.05)}.deploy-panel-title{font-size:14px;font-weight:600;color:#e2e8f0}.deploy-solc-version{font-size:11px;color:#64748b;margin-left:8px;font-family:JetBrains Mono,monospace}.deploy-close-btn{background:none;border:none;color:#64748b;font-size:16px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .15s}.deploy-close-btn:hover{background:rgba(239,68,68,.1);color:#ef4444}.deploy-section{padding:14px 16px;border-bottom:1px solid rgba(99,102,241,.08)}.deploy-section:last-child{border-bottom:none}.deploy-section-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6366f1;margin-bottom:10px}.deploy-connect-prompt{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.deploy-connect-prompt p{font-size:13px;color:#94a3b8;margin:0}.deploy-wallet-info{display:flex;flex-direction:column;gap:8px}.deploy-wallet-row{display:flex;align-items:center;gap:8px}.deploy-wallet-address{font-family:JetBrains Mono,monospace;font-size:13px;color:#e2e8f0;background:rgba(99,102,241,.08);padding:4px 10px;border-radius:6px}.deploy-chain-badge{font-size:11px;font-weight:600;color:#6366f1;background:rgba(99,102,241,.1);padding:3px 8px;border-radius:20px;border:1px solid rgba(99,102,241,.2)}.deploy-network-row{display:flex;align-items:center;gap:8px}.deploy-label{font-size:12px;color:#64748b;min-width:60px}.deploy-network-select{background:#1a2332;border:1px solid rgba(99,102,241,.2);color:#e2e8f0;padding:5px 10px;border-radius:6px;font-size:12px;font-family:Inter,sans-serif;cursor:pointer;flex:1 1}.deploy-network-select:focus{outline:none;border-color:#6366f1}.deploy-status{display:flex;align-items:center;gap:8px;font-size:13px;padding:10px 0}.deploy-status.compiling{color:#eab308}.deploy-status.deploying{color:#6366f1}.deploy-status.error{flex-direction:column;align-items:flex-start}.deploy-spinner{animation:spin 1s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(1turn)}}.deploy-error-msg{font-family:JetBrains Mono,monospace;font-size:11px;color:#ef4444;background:rgba(239,68,68,.08);padding:8px 12px;border-radius:6px;white-space:pre-wrap;word-break:break-all;max-height:120px;overflow-y:auto;width:100%;margin:0}.deploy-retry-btn{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:6px 14px;border-radius:6px;font-size:12px;cursor:pointer;margin-top:8px;transition:all .15s}.deploy-retry-btn:hover{background:rgba(239,68,68,.2)}.deploy-compile-result{display:flex;flex-direction:column;gap:6px}.deploy-compile-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#22c55e}.deploy-size-badge{font-family:JetBrains Mono,monospace;font-size:11px;color:#64748b;background:rgba(100,116,139,.1);padding:2px 8px;border-radius:4px}.deploy-contract-select{background:#1a2332;border:1px solid rgba(99,102,241,.2);color:#e2e8f0;padding:5px 10px;border-radius:6px;font-size:12px;width:100%;cursor:pointer}.deploy-gas-row{display:flex;align-items:center;gap:6px;font-size:12px;color:#94a3b8}.deploy-gas-info{font-size:11px;color:#64748b;margin-left:8px}.deploy-warnings{margin-top:6px}.deploy-warning-item{font-size:11px;color:#eab308;padding:4px 0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deploy-arg-row{margin-bottom:8px}.deploy-arg-label{display:block;font-size:12px;color:#e2e8f0;margin-bottom:4px}.deploy-arg-type{color:#6366f1;font-size:11px}.deploy-arg-input,.deploy-arg-type{font-family:JetBrains Mono,monospace}.deploy-arg-input{width:100%;background:#1a2332;border:1px solid rgba(99,102,241,.15);color:#e2e8f0;padding:7px 10px;border-radius:6px;font-size:12px;box-sizing:border-box}.deploy-arg-input:focus{outline:none;border-color:#6366f1}.deploy-btn{width:100%;padding:12px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;color:white;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.deploy-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 20px rgba(99,102,241,.4)}.deploy-btn:disabled{opacity:.5;cursor:not-allowed}.deploy-success{text-align:center;padding:16px 0}.deploy-success-icon{width:48px;height:48px;background:rgba(34,197,94,.1);border:2px solid #22c55e;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;color:#22c55e;margin:0 auto 12px}.deploy-success-title{font-size:16px;font-weight:600;color:#22c55e;margin-bottom:12px}.deploy-address-row{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:6px}.deploy-address{font-family:JetBrains Mono,monospace;font-size:12px;color:#e2e8f0;background:rgba(99,102,241,.08);padding:3px 8px;border-radius:4px}.deploy-copy-btn{background:none;border:none;color:#6366f1;cursor:pointer;font-size:14px;padding:2px 6px}.deploy-copy-btn:hover{color:#818cf8}.solana-net-btn{padding:5px 14px;border:1px solid rgba(148,84,255,.2);background:transparent;color:#94a3b8;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;font-family:Inter,sans-serif}.solana-net-btn.active{background:rgba(148,84,255,.15);color:#9454ff;border-color:rgba(148,84,255,.4)}.solana-airdrop-btn{padding:5px 12px;border:1px solid rgba(34,197,94,.3);background:rgba(34,197,94,.08);color:#22c55e;border-radius:6px;font-size:12px;cursor:pointer;margin-left:auto;transition:all .15s;font-family:Inter,sans-serif}.solana-airdrop-btn:hover:not(:disabled){background:rgba(34,197,94,.15)}.solana-airdrop-btn:disabled{opacity:.5;cursor:not-allowed}.solana-explorer-link{padding:8px 16px;background:rgba(148,84,255,.1);border:1px solid rgba(148,84,255,.3);color:#9454ff;border-radius:8px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:all .15s}.solana-explorer-link:hover{background:rgba(148,84,255,.2);color:#b87aff}.solana-deploy .wallet-adapter-button{height:34px!important;font-size:12px!important;border-radius:8px!important;padding:0 14px!important}.playground-progress-badge{font-size:11px;color:#22c55e;background:rgba(34,197,94,.1);padding:2px 8px;border-radius:10px;font-weight:600}.playground-progress-bar{height:3px;background:rgba(99,102,241,.1);overflow:hidden}.playground-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#9454ff);transition:width .4s ease}.playground-steps{padding:8px 0}.playground-step{border-bottom:1px solid rgba(99,102,241,.06)}.playground-step:last-child{border-bottom:none}.playground-step.locked{opacity:.4}.playground-step-header{display:flex;align-items:center;gap:10px;padding:12px 16px;width:100%;border:none;background:transparent;color:#e2e8f0;cursor:pointer;font-size:13px;font-family:Inter,sans-serif;text-align:left;transition:background .1s}.playground-step-header:hover:not(:disabled){background:rgba(99,102,241,.04)}.playground-step-header:disabled{cursor:not-allowed}.playground-step-indicator{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;border:2px solid rgba(99,102,241,.3);color:#94a3b8}.playground-step.completed .playground-step-indicator{background:rgba(34,197,94,.15);border-color:#22c55e}.playground-check{color:#22c55e;font-size:13px}.playground-step-num{color:inherit}.playground-step-icon{font-size:14px}.playground-step-title{flex:1 1;font-weight:500}.playground-step.completed .playground-step-title{color:#64748b;text-decoration:line-through}.playground-step-chevron{color:#64748b;font-size:10px}.playground-step-content{padding:4px 16px 16px 50px;font-size:13px;line-height:1.6;color:#cbd5e1;animation:deploySlideIn .2s ease}.playground-step-content p{margin:0 0 10px}.playground-checklist{list-style:none;padding:0;margin:0 0 12px}.playground-checklist li{position:relative;padding-left:22px;margin-bottom:6px;font-size:13px}.playground-checklist li:before{content:"☐";position:absolute;left:0;color:#6366f1}.playground-ordered-list{padding-left:20px;margin:0 0 12px}.playground-ordered-list li{margin-bottom:6px;font-size:13px}.playground-ordered-list code{font-family:JetBrains Mono,monospace;font-size:11px;background:rgba(99,102,241,.1);padding:2px 6px;border-radius:4px;color:#a5b4fc}.playground-tip{background:rgba(99,102,241,.06);border:1px solid rgba(99,102,241,.15);border-radius:8px;padding:10px 14px;font-size:12px;margin:10px 0;color:#cbd5e1}.playground-cost-info{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12px}.playground-cost-label{color:#64748b}.playground-cost-value{color:#22c55e;font-weight:500}.playground-open-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;background:linear-gradient(135deg,#9454ff,#6366f1);color:white;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;border:none;cursor:pointer;font-family:Inter,sans-serif}.playground-open-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(148,84,255,.35)}.playground-copy-btn{padding:10px 20px;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#22c55e;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;width:100%;font-family:Inter,sans-serif}.playground-copy-btn:hover{background:rgba(34,197,94,.2)}.playground-trouble{margin-top:12px;border-top:1px solid rgba(99,102,241,.08);padding-top:8px}.playground-trouble-btn{background:none;border:none;color:#64748b;font-size:12px;cursor:pointer;padding:4px 0;font-family:Inter,sans-serif}.playground-trouble-btn:hover{color:#94a3b8}.playground-trouble-content{font-size:12px;color:#94a3b8;padding:8px 0;line-height:1.5;animation:deploySlideIn .15s ease}.playground-complete-btn{margin-top:12px;padding:8px 16px;background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.25);color:#22c55e;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;font-family:Inter,sans-serif}.playground-complete-btn:hover{background:rgba(34,197,94,.15)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-default);border-radius:10px;background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.theme-toggle:hover{background:var(--bg-surface-hover);color:var(--indigo-500);border-color:var(--indigo-300);transform:scale(1.05)}.login-theme-toggle{position:absolute;top:20px;right:20px;z-index:10}:root .login-card:before{background:linear-gradient(135deg,rgba(99,102,241,.12),transparent 50%,rgba(99,102,241,.08))}[data-theme=dark] .login-card:before{background:linear-gradient(135deg,rgba(99,102,241,.3),transparent 50%,rgba(20,241,149,.2))}[data-theme=dark] .header{border-bottom-color:rgba(148,163,184,.08)}[data-theme=dark] .user-menu{background:#161d33;border-color:rgba(148,163,184,.15);box-shadow:0 8px 32px rgba(0,0,0,.4)}[data-theme=dark] .user-menu-item{color:#e2e8f0}[data-theme=dark] .user-menu-item:hover{background:rgba(99,102,241,.1)}[data-theme=dark] .user-menu-email{color:#94a3b8;border-bottom-color:rgba(148,163,184,.1)}[data-theme=dark] .card,[data-theme=dark] .section-card{background:#0f1629;border-color:rgba(148,163,184,.1)}[data-theme=dark] .audit-document,[data-theme=dark] .token-info-value{color:#e2e8f0}