body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.login-box{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;max-width:400px;padding:40px;width:100%}.login-box h1{color:#1a202c;font-size:28px;margin-bottom:8px}.login-box p{color:#718096;margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{color:#2d3748;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input{border:1px solid #e2e8f0;border-radius:6px;font-size:14px;padding:12px;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.error-message{background:#fed7d7;border-radius:6px;color:#c53030;font-size:14px;margin-bottom:16px;padding:12px}button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:background .2s;width:100%}button:hover:not(:disabled){background:#5568d3}button:disabled{cursor:not-allowed;opacity:.6}.dashboard{background:#f5f7fa;min-height:100vh}.dashboard-header{align-items:center;background:#fff;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;padding:20px 40px}.dashboard-header h1{color:#1a202c;font-size:24px}.user-info{align-items:center;display:flex;gap:16px}.user-info span{color:#4a5568;font-size:14px}.logout-btn{background:#e53e3e;font-size:14px;padding:8px 16px;width:auto}.logout-btn:hover{background:#c53030}.dashboard-nav{background:#fff;border-bottom:1px solid #e2e8f0;display:flex;gap:8px;padding:0 40px}.dashboard-nav button{background:#0000;border-bottom:2px solid #0000;border-radius:0;color:#4a5568;font-weight:500;padding:16px 24px;transition:all .2s;width:auto}.dashboard-nav button.active,.dashboard-nav button:hover{background:#0000;color:#667eea}.dashboard-nav button.active{border-bottom-color:#667eea}.dashboard-content{margin:0 auto;max-width:1200px;padding:40px}.loading{color:#718096;font-size:18px;padding:40px;text-align:center}.llms-section h2{color:#1a202c;font-size:24px;margin-bottom:24px}.llms-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.llm-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:24px;transition:transform .2s,box-shadow .2s}.llm-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.llm-card h3{color:#1a202c;font-size:18px;margin-bottom:16px}.llm-details p{color:#4a5568;font-size:14px;margin-bottom:8px}.badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px}.badge.private{background:#fed7d7;color:#c53030}.badge.team{background:#feebc8;color:#c05621}.badge.public{background:#c6f6d5;color:#22543d}.status-active{color:#38a169;font-weight:600}.keys-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:32px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-header h2{color:#1a202c;font-size:24px}.create-key-btn{background:#48bb78;font-size:14px;padding:10px 20px;width:auto}.create-key-btn:hover{background:#38a169}.keys-table{border-collapse:collapse;width:100%}.keys-table td,.keys-table th{border-bottom:1px solid #e2e8f0;padding:12px;text-align:left}.keys-table th{background:#f7fafc;color:#2d3748;font-size:14px;font-weight:600}.keys-table td{color:#4a5568;font-size:14px}.keys-table code{background:#edf2f7;border-radius:4px;font-family:Monaco,Courier New,monospace;font-size:12px;padding:4px 8px}.delete-btn{background:#fc8181;font-size:13px;padding:6px 12px;width:auto}.delete-btn:hover{background:#f56565}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:32px;width:100%}.modal h3{color:#1a202c;font-size:20px;margin-bottom:24px}.key-created{background:#bee3f8;border-radius:8px;margin:16px 0;padding:16px}.key-created p{color:#2c5282;font-size:14px;margin-bottom:8px}.key-created code{background:#fff;border-radius:6px;color:#2d3748;display:block;font-family:Monaco,Courier New,monospace;font-size:12px;padding:12px;word-break:break-all}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions button{flex:1 1}.cancel-btn{background:#e2e8f0;color:#2d3748}.cancel-btn:hover{background:#cbd5e0}.profile-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:32px}.profile-section h2{color:#1a202c;font-size:24px;margin-bottom:24px}.profile-info p{color:#4a5568;font-size:16px;margin-bottom:16px}.profile-info strong{color:#2d3748;margin-right:8px}@media (max-width:768px){.dashboard-header{align-items:flex-start;flex-direction:column;gap:12px;padding:16px 20px}.dashboard-nav{overflow-x:auto;padding:0 20px}.dashboard-content{padding:20px}.llms-grid{grid-template-columns:1fr}.keys-section{overflow-x:auto;padding:20px}.section-header{align-items:flex-start;flex-direction:column;gap:16px}.create-key-btn{width:100%}}.landing-container{background:#f0f4f8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;overflow-x:hidden;position:relative}.landing-background{background:linear-gradient(160deg,#e8f4fd,#f0f4f8 50%,#eaf5f0);inset:0;position:fixed;z-index:0}.gradient-orb{filter:blur(100px)}.orb-2{bottom:10%}.orb-3{left:45%}.landing-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border-bottom:1px solid #e2e8f0;justify-content:space-between;margin:0 auto;max-width:1400px;padding:1.2rem 3rem;position:relative;z-index:10}.landing-nav,.nav-logo{align-items:center;display:flex}.nav-logo{color:#1e40af;font-size:1.35rem;font-weight:800;gap:10px;letter-spacing:-.02em}.nav-logo-icon{font-size:24px}.nav-buttons{display:flex;gap:10px}.nav-btn{border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.3rem;transition:all .2s}.nav-btn-secondary{background:#0000;border:1.5px solid #cbd5e1;color:#475569}.nav-btn-secondary:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.nav-btn-primary{background:#1d4ed8;border:none;box-shadow:0 2px 8px #1d4ed84d;color:#fff}.nav-btn-primary:hover{background:#1e40af;box-shadow:0 4px 14px #1d4ed866;transform:translateY(-1px)}.hero-section{justify-content:center;padding:5rem 3rem 4rem;position:relative;text-align:center;z-index:1}.hero-content,.hero-section{align-items:center;display:flex}.hero-content{flex-direction:column;gap:20px;max-width:820px}.hero-badge{background:#dbeafe;border:1px solid #93c5fd;border-radius:20px;color:#1d4ed8;display:inline-block;font-size:13px;font-weight:600;letter-spacing:.04em;padding:6px 16px}.hero-title{color:#0f172a;font-size:3.4rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1d4ed8,#0891b2);-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:#475569;font-size:1.1rem;line-height:1.7;margin:0;max-width:620px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.hero-cta-btn{background:#1d4ed8;border:none;border-radius:10px;box-shadow:0 4px 16px #1d4ed859;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:14px 32px;transition:all .2s}.hero-cta-btn:hover{background:#1e40af;box-shadow:0 8px 24px #1d4ed873;transform:translateY(-2px)}.hero-secondary-btn{background:#fff;border:1.5px solid #cbd5e1;border-radius:10px;color:#334155;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 28px;transition:all .2s}.hero-secondary-btn:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.hero-stat-row{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 12px #0000000f;gap:0;margin-top:8px;padding:18px 36px}.hero-stat,.hero-stat-row{align-items:center;display:flex}.hero-stat{flex:1 1;flex-direction:column;gap:4px}.hero-stat-divider{background:#e2e8f0;height:36px;width:1px}.hero-stat-num{color:#1d4ed8;font-size:22px;font-weight:800;letter-spacing:-.02em}.hero-stat-label{color:#94a3b8;font-size:12px;text-align:center}.features-section{background:#fff;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;padding:5rem 3rem;position:relative;z-index:1}.section-title{color:#0f172a;font-size:2.1rem;font-weight:800;letter-spacing:-.02em;margin:0 0 2.5rem;text-align:center}.features-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:0 auto;max-width:1100px}.feature-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:28px 24px;transition:all .25s}.feature-card:hover{border-color:#93c5fd;box-shadow:0 8px 24px #1d4ed814;transform:translateY(-3px)}.feature-icon{font-size:30px;margin-bottom:14px}.feature-card h3{color:#0f172a;font-size:1.05rem;font-weight:700;margin:0 0 10px}.feature-card p{color:#64748b;font-size:.9rem;line-height:1.6;margin:0}.pricing-section{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:5rem 3rem;position:relative;z-index:1}.pricing-subtitle{color:#64748b;font-size:.95rem;margin:-1.8rem 0 2.5rem;text-align:center}.pricing-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));margin:0 auto;max-width:1000px}.price-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:10px;padding:12px 16px;transition:border-color .15s}.price-item:hover{border-color:#93c5fd}.price-icon{flex-shrink:0;font-size:18px;text-align:center;width:26px}.price-name{color:#475569;flex:1 1;font-size:13px}.price-cost{font-feature-settings:"tnum";color:#dc2626;flex-shrink:0;font-size:13px;font-variant-numeric:tabular-nums;font-weight:700}.cta-section{background:#fff;display:flex;justify-content:center;padding:5rem 3rem;position:relative;z-index:1}.cta-card{background:linear-gradient(135deg,#eff6ff,#e0f2fe);border:1px solid #bfdbfe;border-radius:24px;max-width:560px;padding:3rem 4rem;text-align:center;width:100%}.cta-card h2{color:#0f172a;font-size:1.85rem;font-weight:800;letter-spacing:-.02em;margin:0 0 12px}.cta-card p{color:#475569;font-size:1rem;line-height:1.6;margin:0 0 2rem}.cta-btn{background:#1d4ed8;border:none;border-radius:10px;box-shadow:0 4px 16px #1d4ed84d;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:14px 32px;transition:all .2s}.cta-btn:hover{background:#1e40af;box-shadow:0 8px 24px #1d4ed866;transform:translateY(-2px)}.landing-footer{background:#fff;border-top:1px solid #e2e8f0;padding:2.5rem 3rem;position:relative;z-index:1}.footer-content{flex-direction:column;gap:1.2rem;margin:0 auto;max-width:1200px}.footer-content,.footer-logo{align-items:center;display:flex}.footer-logo{color:#1e40af;font-size:1rem;font-weight:700;gap:8px}.footer-links{display:flex;gap:2rem}.footer-links a{color:#94a3b8;font-size:.875rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#475569}.footer-copyright{color:#cbd5e1;font-size:.8rem;margin:0}@media (max-width:768px){.landing-nav{max-width:100%;padding:1rem 1.5rem}.hero-section{padding:3rem 1.5rem 2.5rem}.hero-title{font-size:2.2rem}.hero-subtitle{font-size:.97rem}.hero-stat-row{flex-wrap:wrap;gap:12px;padding:14px 20px}.hero-stat-divider{display:none}.hero-stat{min-width:80px}.cta-section,.features-section,.pricing-section{padding:3.5rem 1.5rem}.section-title{font-size:1.7rem}.cta-card{padding:2.5rem 1.5rem}.cta-card h2{font-size:1.5rem}.landing-footer{padding:2rem 1.5rem}}.auth-background{background:linear-gradient(160deg,#e8f4fd,#f0f4f8 50%,#eaf5f0)}.gradient-orb{filter:blur(90px);opacity:.35}.orb-1{background:radial-gradient(circle,#bfdbfe,#93c5fd)}.orb-2{background:radial-gradient(circle,#a7f3d0,#6ee7b7)}.orb-3{background:radial-gradient(circle,#c7d2fe,#a5b4fc)}.auth-card{box-shadow:0 8px 40px #0000001f}.back-to-home{align-items:center;background:#0000;border:none;color:#64748b;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:1rem;padding:0;transition:color .2s}.back-to-home:hover{color:#1d4ed8}.back-to-home svg{height:18px;width:18px}.logo{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-bottom:.75rem}.logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1d4ed8,#1e40af);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin:0}.segmented-control{background:#f1f5f9;border-radius:12px;display:flex;margin-bottom:2rem;padding:4px;position:relative}.segmented-control button{background:#0000;border:none;color:#64748b;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;padding:.75rem;position:relative;transition:color .2s;z-index:2}.segmented-control button:hover{color:#fff}.segmented-control button.active{color:#1d4ed8}.slider{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;height:calc(100% - 8px);left:4px;position:absolute;top:4px;transition:transform .3s cubic-bezier(.4,0,.2,1);width:calc(50% - 4px);z-index:1}.input-wrapper input{padding:.875rem 3.5rem .875rem 1rem}.input-wrapper input:focus{border-color:#1d4ed8}.form-extras{justify-content:space-between}.checkbox-label,.form-extras{align-items:center;display:flex;font-size:.875rem}.checkbox-label{color:#64748b;cursor:pointer;gap:.5rem}.checkbox-label input[type=checkbox]{accent-color:#1d4ed8;cursor:pointer;height:18px;width:18px}.checkbox-label.terms{margin:0}.checkbox-label a{color:#1d4ed8;font-weight:600;text-decoration:none}.checkbox-label a:hover{text-decoration:underline}.forgot-link{color:#1d4ed8;font-size:.875rem;font-weight:600;text-decoration:none}.forgot-link:hover{text-decoration:underline}.submit-btn{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.divider{align-items:center;display:flex;margin:.5rem 0;text-align:center}.divider:after,.divider:before{border-bottom:1px solid #e2e8f0;content:"";flex:1 1}.divider span{color:#94a3b8;font-size:.875rem;font-weight:500;padding:0 1rem}.social-buttons{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.social-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#334155;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem;transition:all .2s}.social-btn:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.social-btn svg{height:20px;width:20px}@media (max-width:640px){.auth-container{padding:1rem}.auth-card{padding:2rem 1.5rem}.logo h1{font-size:1.75rem}.auth-subtitle{font-size:.875rem}.social-buttons{grid-template-columns:1fr}}.field-error{color:#ef4444;display:block;font-size:.75rem;font-weight:500;margin-left:.25rem;margin-top:.25rem}.input-error{background-color:#fef2f2!important;border-color:#ef4444!important}.input-error:focus{border-color:#dc2626!important;box-shadow:0 0 0 3px #ef44441a!important}.auth-divider{align-items:center;display:flex;gap:12px;margin:4px 0}.auth-divider:after,.auth-divider:before{background:#0000001a;content:"";flex:1 1;height:1px}.auth-divider span{color:#94a3b8;font-size:.8rem;font-weight:500}.google-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #00000014;color:#1e293b;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:10px;justify-content:center;padding:12px;transition:all .2s;width:100%}.google-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 8px #0000001a}.google-btn:disabled{cursor:not-allowed;opacity:.5}.provider-list{display:flex;flex-direction:column;gap:.75rem}.provider-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #00000014;color:#1e293b;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:10px;justify-content:center;padding:14px;transition:all .2s;width:100%}.provider-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 8px #0000001a}.provider-btn:disabled{cursor:not-allowed;opacity:.5}.back-to-providers{align-items:center;background:#0000;border:none;color:#64748b;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:6px;margin-bottom:.25rem;padding:0;transition:color .2s}.back-to-providers:hover{color:#1d4ed8}.auth-switch{color:#64748b;font-size:.875rem;margin:0;text-align:center}.auth-switch-btn{background:none;border:none;color:#1d4ed8;cursor:pointer;font-size:.875rem;font-weight:600;padding:0}.auth-switch-btn:hover{text-decoration:underline}.forgot-password-card{max-width:500px}.input-wrapper{isolation:isolate}.input-wrapper input{cursor:text;padding:.875rem 3.5rem .875rem 3rem;z-index:0}.input-wrapper input.code-input{font-size:1.25rem;letter-spacing:.5rem;padding:.875rem 1rem}.toggle-password{align-items:center;background:#0000;border:none;color:#94a3b8;cursor:pointer;display:flex;height:32px;justify-content:center;padding:.5rem;pointer-events:all;position:absolute;right:.5rem;transition:color .2s;width:32px;z-index:1}.toggle-password:hover{color:#64748b}.toggle-password svg{height:20px;width:20px}.resend-link:hover{color:#764ba2;text-decoration:underline}.password-requirements{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem}.requirements-title{color:#334155;font-size:.875rem;font-weight:600;margin:0 0 .75rem}.password-requirements ul{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.password-requirements li{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem;transition:color .2s}.password-requirements li.valid{color:#059669}.password-requirements li svg{color:#cbd5e1;height:18px;transition:color .2s;width:18px}.password-requirements li.valid svg{color:#059669}.submit-btn:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.success-header,.success-info{margin-bottom:1.5rem}.success-info{background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;padding:1rem}.info-item{display:flex;gap:.75rem}.info-item svg{color:#0284c7;flex-shrink:0;height:24px;margin-top:.125rem;width:24px}.info-item h3{color:#0c4a6e;font-size:.875rem;font-weight:600;margin:0 0 .25rem}.info-item p{color:#075985;font-size:.875rem;line-height:1.5;margin:0}.success-actions{display:flex;flex-direction:column;gap:.75rem}.secondary-btn{align-items:center;background:#fff;border:2px solid #667eea;border-radius:10px;color:#667eea;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem;transition:all .2s}.secondary-btn:hover{background:#f8fafc;box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.secondary-btn:active{transform:translateY(0)}@media (max-width:640px){.auth-container{padding:1rem}.auth-card{padding:2rem 1.5rem}.auth-header h1{font-size:1.75rem}.auth-subtitle{font-size:.875rem}.icon-wrapper{height:70px;width:70px}.header-icon{height:35px;width:35px}.input-wrapper input.code-input{letter-spacing:.3rem}}.auth-container{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.auth-background{background:linear-gradient(135deg,#667eea,#764ba2);inset:0;position:fixed;z-index:0}.gradient-orb{animation:float 20s ease-in-out infinite}.orb-1{animation-delay:0s;background:linear-gradient(135deg,#f093fb,#f5576c);height:500px;left:-10%;top:-10%;width:500px}.orb-2{animation-delay:7s;background:linear-gradient(135deg,#4facfe,#00f2fe);bottom:-5%;height:400px;right:-5%;width:400px}.orb-3{animation-delay:14s;background:linear-gradient(135deg,#43e97b,#38f9d7);height:300px;left:50%;width:300px}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:24px;box-shadow:0 20px 60px #0000004d;max-width:480px;padding:3rem;position:relative;width:100%;z-index:1}.email-verification-card{max-width:520px}.back-button{align-items:center;background:#0000;border:none;color:#667eea;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 0;transition:all .2s}.back-button:hover{color:#764ba2;gap:.75rem}.back-button svg{height:18px;width:18px}.auth-header{margin-bottom:2rem;text-align:center}.icon-wrapper{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 8px 24px #667eea4d;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.header-icon{color:#fff;height:40px;width:40px}.icon-wrapper.success-icon{background:linear-gradient(135deg,#43e97b,#38f9d7);box-shadow:0 8px 24px #43e97b4d}.auth-header h1{color:#1e293b;font-size:2rem;font-weight:700;margin:0 0 .75rem}.auth-subtitle{color:#64748b;font-size:.95rem;line-height:1.6;margin:0}.auth-subtitle strong{color:#334155;font-weight:600}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.error-message{align-items:center;animation:slideIn .3s ease-out;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;display:flex;font-size:.875rem;gap:.75rem;padding:.75rem 1rem}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-message svg{flex-shrink:0;height:20px;width:20px}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#334155;font-size:.875rem;font-weight:600}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:#94a3b8;height:20px;left:1rem;pointer-events:none;position:absolute;width:20px;z-index:1}.input-wrapper input{background:#fff;border:2px solid #e2e8f0;border-radius:10px;font-size:.95rem;outline:none;padding:.875rem 1rem .875rem 3rem;transition:all .2s;width:100%}.input-wrapper input.code-input{font-family:Courier New,monospace;font-size:1.5rem;font-weight:600;letter-spacing:.75rem;padding:1rem;text-align:center}.input-wrapper input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-wrapper input:hover{border-color:#cbd5e1}.input-wrapper input::placeholder{color:#cbd5e1;letter-spacing:normal}.input-hint{color:#94a3b8;font-size:.8rem;margin:.25rem 0 0;text-align:center}.info-box{background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;display:flex;gap:.75rem;padding:1rem}.info-box svg{color:#0284c7;flex-shrink:0;height:24px;margin-top:.125rem;width:24px}.info-content{flex:1 1}.info-content p{color:#075985;font-size:.875rem;line-height:1.5;margin:0}.info-content p strong{color:#0c4a6e;display:block;margin-bottom:.25rem}.resend-section{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem;justify-content:center;padding-top:.5rem}.resend-link{background:#0000;border:none;color:#667eea;cursor:pointer;font-size:.875rem;font-weight:600;padding:0;transition:color .2s}.resend-link:hover:not(:disabled){color:#764ba2;text-decoration:underline}.resend-link:disabled{cursor:not-allowed;opacity:.5}.submit-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem;transition:all .2s}.submit-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.loading-spinner,.submit-btn svg{height:20px;width:20px}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff}@keyframes spin{to{transform:rotate(1turn)}}.verification-footer{align-items:center;border-top:1px solid #e2e8f0;color:#94a3b8;display:flex;gap:.75rem;margin-top:2rem;padding-top:2rem}.verification-footer svg{flex-shrink:0;height:20px;width:20px}.verification-footer p{font-size:.8rem;line-height:1.5;margin:0}.success-header{margin-bottom:2rem}.verification-success-animation{align-items:center;display:flex;justify-content:center;padding:2rem 0}.success-checkmark,.success-checkmark svg{height:120px;width:120px}.checkmark-circle{stroke:#43e97b;stroke-width:2;stroke-miterlimit:10;animation:fill .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both}.checkmark-check{stroke-dasharray:48;stroke-dashoffset:48;stroke:#43e97b;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;animation:stroke .3s cubic-bezier(.65,0,.45,1) .8s forwards;transform-origin:50% 50%}@keyframes stroke{to{stroke-dashoffset:0}}@keyframes scale{0%,to{transform:none}50%{transform:scale3d(1.1,1.1,1)}}@keyframes fill{to{fill:#43e97b1a}}@media (max-width:640px){.auth-container{padding:1rem}.auth-card{padding:2rem 1.5rem}.auth-header h1{font-size:1.75rem}.auth-subtitle{font-size:.875rem}.icon-wrapper{height:70px;width:70px}.header-icon{height:35px;width:35px}.input-wrapper input.code-input{font-size:1.25rem;letter-spacing:.5rem}.info-box{flex-direction:column;text-align:center}.info-box svg{margin:0 auto}.verification-footer{flex-direction:column;text-align:center}.success-checkmark,.success-checkmark svg{height:100px;width:100px}}.terms-container{align-items:center;bottom:0;display:flex;height:100vh;justify-content:center;left:0;overflow:hidden;position:fixed;right:0;top:0;width:100vw}.terms-background{background:linear-gradient(135deg,#1e1e2e,#2d2d44);bottom:0;left:0;position:absolute;right:0;top:0;z-index:0}.terms-card{background:#fffffff2;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;width:100%;z-index:10}.terms-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:15px;justify-content:space-between;padding:30px}.terms-header h1{color:#1e1e2e;flex:1 1;font-size:24px;margin:0;text-align:center}.terms-content{color:#333;flex:1 1;font-size:14px;line-height:1.6;overflow-y:auto;padding:30px}.terms-content section{margin-bottom:25px}.terms-content h2{color:#667eea;font-size:16px;font-weight:600;margin:0 0 12px}.terms-content p{color:#555;margin:0 0 12px}.terms-content ul{margin:12px 0 12px 20px;padding:0}.terms-content li{color:#555;margin-bottom:8px}.terms-content::-webkit-scrollbar{width:8px}.terms-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.terms-content::-webkit-scrollbar-thumb{background:#667eea;border-radius:10px}.terms-content::-webkit-scrollbar-thumb:hover{background:#764ba2}@media (max-width:768px){.terms-card{max-height:90vh}.terms-header{padding:20px}.terms-header h1{font-size:20px}.terms-content{font-size:13px;padding:20px}.terms-content h2{font-size:15px}}.privacy-container{align-items:center;bottom:0;display:flex;height:100vh;justify-content:center;left:0;overflow:hidden;position:fixed;right:0;top:0;width:100vw}.privacy-background{background:linear-gradient(135deg,#1e1e2e,#2d2d44);bottom:0;left:0;position:absolute;right:0;top:0;z-index:0}.gradient-orb{border-radius:50%;filter:blur(80px);opacity:.3;position:absolute}.orb-1{background:linear-gradient(135deg,#667eea,#764ba2);height:400px;left:-100px;top:-100px;width:400px}.orb-2{background:linear-gradient(135deg,#f093fb,#f5576c);bottom:-50px;height:300px;right:10%;width:300px}.orb-3{background:linear-gradient(135deg,#4facfe,#00f2fe);height:350px;right:-100px;top:50%;width:350px}.privacy-card{background:#fffffff2;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;width:100%;z-index:10}.privacy-header{border-bottom:1px solid #f0f0f0;gap:15px;justify-content:space-between;padding:30px}.back-btn,.privacy-header{align-items:center;display:flex}.back-btn{background:none;border:none;border-radius:8px;color:#667eea;cursor:pointer;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.back-btn:hover{background:#667eea1a;transform:translateX(-4px)}.back-btn svg{height:18px;width:18px}.privacy-header h1{color:#1e1e2e;flex:1 1;font-size:24px;margin:0;text-align:center}.privacy-content{color:#333;flex:1 1;font-size:14px;line-height:1.6;overflow-y:auto;padding:30px}.privacy-content section{margin-bottom:25px}.privacy-content h2{color:#667eea;font-size:16px;font-weight:600;margin:0 0 12px}.privacy-content p{color:#555;margin:0 0 12px}.privacy-content ul{margin:12px 0 12px 20px;padding:0}.privacy-content li{color:#555;margin-bottom:8px}.back-btn-bottom{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;margin:20px;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease}.back-btn-bottom:hover{box-shadow:0 10px 25px #667eea4d;transform:translateY(-2px)}.back-btn-bottom:active{transform:translateY(0)}.privacy-content::-webkit-scrollbar{width:8px}.privacy-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.privacy-content::-webkit-scrollbar-thumb{background:#667eea;border-radius:10px}.privacy-content::-webkit-scrollbar-thumb:hover{background:#764ba2}@media (max-width:768px){.privacy-card{height:100%}.privacy-header{padding:20px}.privacy-header h1{font-size:20px}.privacy-content{font-size:13px;padding:20px}.privacy-content h2{font-size:15px}}.lobby-container{background:#f0f4f8;color:#1e293b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh}.lobby-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 4px #0000000f;justify-content:space-between;padding:14px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.lobby-brand,.lobby-header{align-items:center;display:flex}.lobby-brand{gap:10px}.lobby-logo{font-size:22px}.lobby-title{color:#1e40af;font-size:19px;font-weight:800;letter-spacing:-.02em}.lang-toggle-btn{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:background .2s}.lang-toggle-btn:hover{background:#e2e8f0}.lobby-header-right{align-items:center;display:flex;gap:20px}.wallet-badge{align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;display:flex;gap:8px;padding:8px 16px}.wallet-icon{font-size:16px}.wallet-amount{font-feature-settings:"tnum";color:#15803d;font-size:18px;font-variant-numeric:tabular-nums;font-weight:700}.wallet-amount.negative{color:#dc2626}.user-menu{align-items:center;display:flex;gap:12px}.user-name{color:#64748b;font-size:14px}.logout-btn{background:#0000;border:1px solid #e2e8f0;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:13px;padding:6px 14px;transition:all .15s}.logout-btn:hover{border-color:#fca5a5;color:#ef4444}.lobby-body{margin:0 auto;max-width:1200px;padding:32px 24px 80px}.stats-bar{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 6px #0000000d;gap:0;margin-bottom:32px;padding:20px 32px}.stat-item,.stats-bar{align-items:center;display:flex}.stat-item{flex:1 1;flex-direction:column;gap:4px}.stat-divider{background:#e2e8f0;height:40px;width:1px}.stat-value{font-feature-settings:"tnum";color:#1e293b;font-size:26px;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.02em}.stat-value.correct{color:#16a34a}.stat-value.wrong{color:#dc2626}.stat-value.earned{color:#d97706}.stat-label{color:#94a3b8;font-size:11px;font-weight:600;letter-spacing:.06em;text-align:center;text-transform:uppercase}.lobby-instructions{margin-bottom:24px}.lobby-instructions h2{color:#0f172a;font-size:20px;font-weight:800;letter-spacing:-.01em;margin:0 0 6px}.lobby-instructions p{color:#64748b;font-size:14px;line-height:1.6;margin:0}.patient-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.patient-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 4px #0000000a;cursor:pointer;display:flex;flex-direction:column;gap:14px;padding:20px;transition:all .2s}.patient-card:hover:not(.card-correct):not(.card-wrong){border-color:#93c5fd;box-shadow:0 6px 20px #1d4ed81a;transform:translateY(-2px)}.patient-card.card-correct{background:#f0fdf4;border-color:#86efac;cursor:default}.patient-card.card-wrong{background:#fff5f5;border-color:#fca5a5;cursor:default}.patient-card-header{align-items:center;display:flex;gap:12px}.patient-avatar{align-items:center;background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;display:flex;flex-shrink:0;font-size:28px;height:48px;justify-content:center;width:48px}.patient-meta{flex:1 1}.patient-name{color:#0f172a;font-size:15px;font-weight:700}.patient-age-gender{color:#94a3b8;font-size:13px;margin-top:2px}.difficulty-badge{border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.06em;padding:4px 10px;text-transform:uppercase}.diff-easy{background:#f0fdf4;border:1px solid #86efac;color:#16a34a}.diff-medium{background:#fffbeb;border:1px solid #fde68a;color:#d97706}.diff-hard{background:#fff5f5;border:1px solid #fca5a5;color:#dc2626}.patient-complaint{color:#64748b;font-size:13px;font-style:italic;line-height:1.55;margin:0}.patient-card-footer{display:flex;justify-content:flex-end}.see-patient-btn{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1d4ed8;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .15s}.see-patient-btn:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.result-badge{border-radius:8px;font-size:13px;font-weight:700;padding:6px 14px}.result-correct{background:#f0fdf4;border:1px solid #86efac;color:#16a34a}.result-wrong{background:#fff5f5;border:1px solid #fca5a5;color:#dc2626}.level-list{display:flex;flex-direction:column;gap:10px}.level-row{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 4px #0000000a;cursor:pointer;display:flex;gap:16px;padding:18px 20px;transition:all .18s}.level-row.level-current{background:#eff6ff;border-color:#93c5fd;box-shadow:0 4px 16px #1d4ed81a}.level-row.level-current:hover{border-color:#3b82f6;box-shadow:0 6px 20px #1d4ed826;transform:translateY(-1px)}.level-row.level-unlocked:hover{border-color:#93c5fd;transform:translateY(-1px)}.level-row.level-done{background:#f0fdf4;border-color:#86efac;cursor:default}.level-row.level-locked{background:#f8fafc;cursor:default;opacity:.55}.level-num-badge{align-items:center;background:#f1f5f9;border:2px solid #e2e8f0;border-radius:50%;color:#64748b;display:flex;flex-shrink:0;font-size:16px;font-weight:800;height:44px;justify-content:center;width:44px}.level-done .level-num-badge{background:#f0fdf4;border-color:#86efac;color:#16a34a;font-size:20px}.level-current .level-num-badge{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.level-info{flex:1 1;min-width:0}.level-patient-name{align-items:center;color:#0f172a;display:flex;font-size:15px;font-weight:700;gap:8px}.level-age-gender{color:#94a3b8;font-size:12px;font-weight:500}.level-complaint{color:#64748b;font-size:13px;font-style:italic;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.level-mystery{color:#94a3b8}.level-action{flex-shrink:0}.level-play-btn{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px;transition:all .15s;white-space:nowrap}.level-play-btn-current,.level-play-btn:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.level-earned{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;color:#16a34a;font-size:14px;font-weight:700;padding:6px 14px}.level-locked-label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}@media (max-width:640px){.lobby-header{padding:12px 16px}.lobby-body{padding:20px 16px 60px}.stats-bar{flex-wrap:wrap;gap:16px;padding:16px}.stat-divider{display:none}.stat-item{min-width:80px}.patient-grid{grid-template-columns:1fr}.wallet-amount{font-size:15px}}.room-container{background:#f0f4f8;color:#1e293b;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh}.room-topbar{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 4px #0000000f;display:flex;justify-content:space-between;padding:12px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.room-back-btn{background:#0000;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:13px;padding:6px 14px;transition:all .15s}.room-back-btn:hover{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.room-title{align-items:center;display:flex;gap:8px}.room-title-patient{color:#0f172a;font-size:16px;font-weight:700}.room-title-sep{color:#e2e8f0}.room-title-sub{color:#94a3b8;font-size:13px}.room-wallet{align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;display:flex;gap:8px;padding:6px 14px}.wallet-icon{font-size:15px}.wallet-num{font-feature-settings:"tnum";color:#15803d;font-size:16px;font-variant-numeric:tabular-nums;font-weight:700}.wallet-num.negative{color:#dc2626}.room-layout{display:grid;flex:1 1;grid-template-columns:300px 1fr 320px;height:calc(100vh - 57px);overflow:hidden}.room-left{background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;gap:0;overflow-y:auto;padding:20px 18px}.info-section{border-bottom:1px solid #f1f5f9;margin-bottom:18px;padding-bottom:18px}.info-section:last-child{border-bottom:none}.patient-header-card{align-items:center;display:flex;gap:12px}.patient-big-avatar{align-items:center;background:#eff6ff;border:1px solid #dbeafe;border-radius:14px;display:flex;flex-shrink:0;font-size:32px;height:50px;justify-content:center;width:50px}.patient-big-name{color:#0f172a;font-size:16px;font-weight:700}.patient-big-meta{color:#94a3b8;font-size:13px;margin-top:2px}.info-label{color:#94a3b8;font-size:10px;font-weight:700;letter-spacing:.08em;margin:0 0 8px;text-transform:uppercase}.info-text{color:#475569;font-size:13px;line-height:1.6;margin:0}.complaint-text{color:#1e293b;font-style:italic;font-weight:500}.vitals-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.vital-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:2px;padding:8px 10px}.vital-key{color:#94a3b8;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.vital-val{color:#1e293b;font-size:13px;font-weight:600}.room-center{background:#f8fafc;overflow-y:auto;padding:24px 28px}.section-heading{color:#475569;font-size:12px;font-weight:700;letter-spacing:.08em;margin:0 0 16px;text-transform:uppercase}.no-tests-placeholder{align-items:center;color:#cbd5e1;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:200px;text-align:center}.no-tests-placeholder span{font-size:40px;opacity:.4}.no-tests-placeholder p{color:#94a3b8;font-size:14px;margin:0}.test-results-list{display:flex;flex-direction:column;gap:12px}.test-result-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 4px #0000000a;padding:16px}.test-result-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.test-icon{font-size:20px}.test-result-name{color:#0f172a;flex:1 1;font-size:14px;font-weight:700}.test-result-cost{font-feature-settings:"tnum";color:#dc2626;font-size:13px;font-variant-numeric:tabular-nums;font-weight:600}.test-result-text{color:#475569;font-size:13px;line-height:1.6;margin:0}.room-right{background:#fff;border-left:1px solid #e2e8f0;gap:24px;overflow-y:auto;padding:20px 16px}.right-panel-section,.room-right{display:flex;flex-direction:column}.right-panel-section{gap:8px}.cost-note{color:#94a3b8;font-size:12px;margin:0}.test-order-list{display:flex;flex-direction:column;gap:5px}.test-order-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#1e293b;cursor:pointer;display:flex;gap:8px;padding:9px 12px;position:relative;text-align:left;transition:all .15s;width:100%}.test-order-btn:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd}.test-order-btn.ordered{background:#f0fdf4;border-color:#86efac;cursor:not-allowed;opacity:.55}.test-btn-icon{flex-shrink:0;font-size:17px;text-align:center;width:24px}.test-btn-name{color:#334155;flex:1 1;font-size:12px;font-weight:600}.test-btn-cost{font-feature-settings:"tnum";color:#dc2626;flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums;font-weight:700}.ordered-check{color:#16a34a;font-size:14px;font-weight:700;position:absolute;right:10px}.diagnosis-section{border-top:1px solid #f1f5f9;padding-top:20px}.diagnosis-select{-webkit-appearance:none;appearance:none;background:#f8fafc;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:2px solid #e2e8f0;border-radius:10px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:500;line-height:1.4;outline:none;padding:13px 40px 13px 16px;transition:all .15s;width:100%}.diagnosis-select:hover{background-color:#eff6ff;border-color:#93c5fd}.diagnosis-select:focus{background-color:#eff6ff;border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81a}.diagnosis-select-filled{background-color:#eff6ff;border-color:#1d4ed8;color:#0f172a;font-weight:600}.reward-preview{align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;color:#64748b;display:flex;font-size:12px;justify-content:space-between;padding:10px 14px}.reward-amount{font-feature-settings:"tnum";color:#15803d;font-size:16px;font-variant-numeric:tabular-nums;font-weight:800}.submit-diagnosis-btn{background:#1d4ed8;border:none;border-radius:10px;box-shadow:0 2px 8px #1d4ed84d;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:13px;transition:all .15s;width:100%}.submit-diagnosis-btn:hover:not(:disabled){background:#1e40af;box-shadow:0 4px 14px #1d4ed866}.submit-diagnosis-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.4}.diagnosis-bar{background:#fff;border-bottom:2px solid #e2e8f0;box-shadow:0 2px 12px #00000012;padding:14px 24px;position:-webkit-sticky;position:sticky;top:57px;z-index:40}.diagnosis-bar-inner{align-items:center;display:flex;gap:14px;margin:0 auto;max-width:1400px}.diagnosis-bar-label{color:#475569;flex-shrink:0;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.diagnosis-bar-select{flex:1 1;font-size:15px;margin:0;min-width:0;padding:11px 40px 11px 16px}.diagnosis-bar-reward{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:2px}.diagnosis-bar-reward-label{color:#94a3b8;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.diagnosis-bar-btn{flex-shrink:0;font-size:14px;margin-top:0;padding:11px 24px;width:auto}.room-result-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:200}.room-result-card{background:#fff;border-radius:24px;box-shadow:0 24px 60px #0003;display:flex;flex-direction:column;gap:16px;max-width:480px;padding:40px;text-align:center;width:100%}.room-result-card.result-win{border-top:4px solid #16a34a}.room-result-card.result-loss{border-top:4px solid #dc2626}.result-icon{font-size:52px}.room-result-card h2{color:#0f172a;font-size:24px;font-weight:800;letter-spacing:-.02em;margin:0}.result-diagnosis-label{color:#64748b;font-size:14px;margin:0}.result-breakdown{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;display:flex;flex-direction:column;gap:8px;padding:16px 20px}.breakdown-row{color:#475569;display:flex;font-size:14px;justify-content:space-between}.breakdown-row.total{border-top:1px solid #e2e8f0;color:#0f172a;font-size:16px;font-weight:700;padding-top:8px}.earn{font-feature-settings:"tnum";color:#15803d;font-variant-numeric:tabular-nums;font-weight:700}.result-miss-note{color:#ef4444;font-size:13px;line-height:1.5;margin:0;text-align:center}.result-explanation{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;font-size:13px;line-height:1.6;margin:0;padding:14px;text-align:left}.back-to-lobby-btn{background:#1d4ed8;border:none;border-radius:12px;box-shadow:0 4px 14px #1d4ed84d;color:#fff;cursor:pointer;font-size:15px;font-weight:700;margin-top:8px;padding:14px 28px;transition:all .15s}.back-to-lobby-btn:hover{background:#1e40af}.result-actions{display:flex;flex-direction:column;gap:10px;margin-top:8px;width:100%}.try-again-btn{background:#dc2626;border:none;border-radius:12px;box-shadow:0 4px 14px #dc26264d;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:14px 28px;transition:all .15s}.try-again-btn:hover{background:#b91c1c}.back-to-lobby-secondary{background:#0000;border:1px solid #e2e8f0;box-shadow:none;color:#64748b;margin-top:0}.back-to-lobby-secondary:hover{background:#f1f5f9}.confirm-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a80;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:150}.confirm-modal{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 16px 40px #00000026;max-width:380px;padding:28px;width:100%}.confirm-modal h3{color:#0f172a;font-size:18px;font-weight:700;margin:0 0 10px}.confirm-description{color:#64748b;font-size:13px;line-height:1.5;margin:0 0 14px}.confirm-cost{color:#dc2626;font-size:16px;font-weight:700;margin:0 0 10px}.confirm-warning{color:#94a3b8;font-size:12px;font-style:italic;line-height:1.5;margin:0 0 20px}.confirm-actions{display:flex;gap:12px}.confirm-cancel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px;transition:all .15s}.confirm-cancel:hover{border-color:#94a3b8;color:#1e293b}.confirm-ok{background:#1d4ed8;border:none;border-radius:10px;box-shadow:0 2px 8px #1d4ed84d;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:10px;transition:all .15s}.confirm-ok:hover{background:#1e40af}.room-error{align-items:center;background:#f8fafc;color:#94a3b8;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:100vh}.room-error button{background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#1e293b;cursor:pointer;font-weight:600;padding:10px 20px}.room-center::-webkit-scrollbar,.room-left::-webkit-scrollbar,.room-right::-webkit-scrollbar{width:4px}.room-center::-webkit-scrollbar-track,.room-left::-webkit-scrollbar-track,.room-right::-webkit-scrollbar-track{background:#0000}.room-center::-webkit-scrollbar-thumb,.room-left::-webkit-scrollbar-thumb,.room-right::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:4px}@media (max-width:900px){.room-layout{grid-template-columns:1fr;height:auto;overflow:visible}.room-center,.room-left,.room-right{border:none;border-bottom:1px solid #e2e8f0;overflow:visible}}.error-boundary-container{align-items:center;background-color:#f5f5f5;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px;text-align:center}.error-boundary-content{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:600px;padding:40px}.error-boundary-title{color:#d32f2f;font-size:28px;margin-bottom:20px}.error-boundary-message{color:#666;font-size:16px;line-height:1.5;margin-bottom:20px}.error-boundary-details{background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin-top:20px;padding:15px;text-align:left}.error-boundary-details summary{color:#333;cursor:pointer;font-weight:700;margin-bottom:10px}.error-boundary-details pre{color:#d32f2f;font-size:12px;margin-top:10px;overflow-x:auto;white-space:pre-wrap}.error-boundary-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:30px}.error-boundary-button{border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s ease}.error-boundary-button-primary{background-color:#1976d2;color:#fff}.error-boundary-button-primary:hover{background-color:#1565c0}.error-boundary-button-secondary{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.error-boundary-button-secondary:hover{background-color:#e0e0e0}
/*# sourceMappingURL=main.8a0580f0.css.map*/