body:has(.demo-page-wrapper){overflow:hidden}body:has(.demo-page-wrapper) #page-wrapper{height:100dvh;overflow:hidden}.demo-page-wrapper{background:#0a0a0f;flex-direction:column;height:100dvh;display:flex;overflow:hidden}.demo-nav{backdrop-filter:blur(20px);background:#0a0a0f;border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;height:60px;padding:12px 24px;display:flex}.demo-nav-left,.demo-nav-center,.demo-nav-right{align-items:center;display:flex}.demo-nav-left,.demo-nav-right{flex:1;min-width:0}.demo-nav-center{flex:none;justify-content:center}.demo-nav-right{justify-content:flex-end}.demo-nav-logo{color:var(--text-primary);align-items:center;gap:12px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.demo-nav .pricing-toggle{flex-shrink:0;min-width:fit-content;margin-bottom:0;margin-left:0;margin-right:0}.pricing-toggle-dropdown{display:none}.pricing-toggle-buttons{display:flex}.pricing-toggle-dropdown{backdrop-filter:blur(10px);color:var(--text-primary);cursor:pointer;background:#14141780;border:1px solid #ffffff14;border-radius:9999px;outline:none;padding:12px 24px;font-size:16px;font-weight:500;transition:all .2s}.pricing-toggle-dropdown:hover{border-color:#ffffff26}.pricing-toggle-dropdown:focus{border-color:#b8a8d5;box-shadow:0 0 0 2px #b8a8d526}.pricing-toggle-dropdown option{color:var(--text-primary);background:#1a1a1f}@media (width<=1000px){.demo-nav-logo span{display:none}}@media (width<=920px){.pricing-toggle-buttons{display:none}.pricing-toggle-dropdown{display:block}}@media (width<=530px){.classification-results{min-width:0}.assistant-message .message-content{max-width:95%}}@media (width<=600px){.demo-nav-right{display:none}}@media (width<=400px){.message-content{padding:8px 12px}.classification-results{min-width:0}.result-row{padding:8px 0}.result-label{margin-right:8px;font-size:13px}.result-badge{padding:4px 8px;font-size:11px}}.demo-chat-container{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.demo-chat-messages{flex:1;min-height:0;padding:24px;overflow:hidden scroll}.demo-empty-state{text-align:center;min-height:100%;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.demo-empty-state h2{color:var(--text-primary);margin-bottom:12px;font-size:28px;font-weight:600}.demo-empty-state p{max-width:500px;font-size:16px}.chat-message{gap:12px;width:100%;max-width:800px;margin:0 auto 16px;display:flex}.chat-message.user-message{justify-content:flex-end}.chat-message.assistant-message{justify-content:flex-start}.message-content{word-wrap:break-word;box-sizing:border-box;border-radius:20px;max-width:70%;padding:10px 16px}.user-message .message-content{color:var(--text-primary);background:#a8d5a826;border:none}.assistant-message .message-content{background:#ffffff08;border:1px solid #ffffff14}.classification-results{box-sizing:border-box;min-width:0;max-width:100%}.result-row{box-sizing:border-box;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;min-width:0;padding:10px 0;display:flex}.result-label{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;margin-right:12px;font-size:14px;overflow:hidden}.result-badge{white-space:nowrap;border-radius:12px;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:600}.result-row:last-child{border-bottom:none}.result-badge.flagged{color:#ef4444;background:#ef444433}.result-badge.safe{color:#22c55e;background:#22c55e33}.result-badge.needs-context{color:#fb923c;background:#fb923c33}.error-results{min-width:300px}.error-text{color:#ef4444;margin-bottom:12px;font-size:14px}.error-explanation{color:var(--text-secondary);margin-bottom:16px;font-size:14px;line-height:1.6}.error-signup-btn{margin-top:8px}.typing-indicator{gap:4px;padding:4px 0;display:flex}.typing-indicator span{background:#fff6;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite typing-bounce}.typing-indicator span:first-child{animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.demo-chat-input-container{background:#0a0a0f;border-top:none;padding:16px 24px 24px}.demo-chat-input-wrapper{background:#ffffff08;border:1px solid #ffffff14;border-radius:28px;align-items:center;gap:12px;max-width:800px;margin:0 auto;padding:10px 16px;display:flex}.demo-chat-input{color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;flex:1;min-height:24px;max-height:120px;padding:2px 0;font-family:inherit;font-size:16px;line-height:1.5;overflow-y:auto}.demo-chat-input::placeholder{color:var(--text-muted);line-height:1.5}.demo-send-button{color:#a8d5a8;cursor:pointer;background:#a8d5a833;border:none;border-radius:50%;outline:none;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.demo-send-button:hover:not(:disabled){background:#a8d5a84d}.demo-send-button:disabled{opacity:.4;cursor:not-allowed}.demo-header{text-align:center;margin-bottom:40px}.demo-header h1{background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:16px;font-size:48px;font-weight:800}.demo-header p{color:var(--text-secondary);font-size:18px}.demo-box{backdrop-filter:blur(20px);background:#14141780;border:1px solid #ffffff14;border-radius:16px;padding:32px;box-shadow:0 8px 32px #0000001f}.text-input-area{margin-bottom:24px}.text-input-area label{color:var(--text-primary);margin-bottom:8px;font-weight:500;display:block}.text-input{width:100%;min-height:150px;color:var(--text-primary);resize:vertical;background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;padding:16px;font-family:inherit;font-size:16px;transition:all .2s}.text-input:focus{border-color:var(--primary);background:#0006;outline:none}.text-input::placeholder{color:var(--text-muted)}.analyze-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#002fff,#6a00ff);border:none;border-radius:9999px;width:100%;margin-bottom:24px;padding:14px 32px;font-size:16px;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #002fff40}.analyze-btn:hover{background:linear-gradient(135deg,#0029d9,#5600cc);transform:translateY(-2px);box-shadow:0 4px 16px #002fff66}.analyze-btn:disabled{opacity:.5;cursor:not-allowed}.results-area{background:#0003;border:1px solid #ffffff0d;border-radius:8px;margin-top:24px;padding:24px;display:none}.results-area.show{display:block}.result-header{color:var(--text-primary);margin-bottom:16px;font-size:18px;font-weight:600}.result-item{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.result-item:last-child{border-bottom:none}.result-label{color:var(--text-secondary)}.result-value{border-radius:4px;padding:4px 12px;font-size:14px;font-weight:600}.result-value.safe{color:#22c55e;background:#22c55e33}.result-value.warning{color:#fbbf24;background:#fbbf2433}.result-value.danger{color:#ef4444;background:#ef444433}.back-link{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:24px;text-decoration:none;transition:color .2s;display:inline-flex}.back-link:hover{color:var(--primary)}.loading{text-align:center;color:var(--text-secondary);padding:24px;display:none}.loading.show{display:block}.spinner{border:2px solid #8b5cf64d;border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.oauth-error-message{color:#fff;backdrop-filter:blur(10px);background:#dc3545;border:1px solid #b02a37;border-radius:12px;align-items:center;gap:12px;margin:24px 0;padding:16px 20px;font-size:14px;line-height:1.5;display:flex}.oauth-error-message svg{stroke:currentColor;flex-shrink:0}.oauth-error-message .error-dismiss{color:currentColor;cursor:pointer;opacity:.7;background:0 0;border:none;margin-left:auto;padding:0;font-size:18px;transition:opacity .2s}.oauth-error-message .error-dismiss:hover{opacity:1}@media (width<=480px){.demo-section{padding:80px 16px 40px}.demo-header h1{font-size:36px}}@media (width<=360px){.demo-section{padding:80px 12px 40px}.demo-header h1{font-size:32px;line-height:1.2}.demo-box{padding:24px}}@media (width<=330px){.demo-section{padding:80px 8px 40px}.demo-header h1{word-break:break-word;font-size:28px;line-height:1.1}.demo-header p{font-size:16px}.demo-box{padding:20px}.demo-container{min-width:0}}