*,*:before,*:after{box-sizing:border-box}html{width:100%}body{margin:0;min-height:100vh;width:100%;font-family:system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;background:#0a0a0c;color:#fafafa}#root{width:100%;min-height:100vh}a{color:#a78bfa;text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;padding:.5rem 1rem;border-radius:6px;border:1px solid #3f3f46;background:#27272a;color:#e4e4e7}button:hover:not(:disabled){background:#3f3f46}button:disabled{opacity:.5;cursor:not-allowed}input{padding:.5rem;border-radius:6px;border:1px solid #3f3f46;background:#18181b;color:#e4e4e7}.landing{min-height:100vh;background:#0a0a0c;color:#fafafa}.landing-header{position:sticky;top:0;z-index:10;background:#0a0a0cf2;border-bottom:1px solid #27272a}.landing-header-inner{max-width:1100px;margin:0 auto;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.landing-logo{font-size:1.35rem;font-weight:700;color:#fafafa}.landing-cta-btn{display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.5rem;min-height:44px;background:#7c3aed;color:#fff;font-weight:600;border-radius:8px;text-decoration:none;transition:background .2s}.landing-cta-btn:hover{background:#6d28d9;text-decoration:none}.landing-cta-btn--large{padding:.75rem 2rem;min-height:48px;font-size:1rem}.landing-main{width:100%}.landing-hero{padding:4rem 1.5rem 3rem}.landing-hero-inner{max-width:900px;margin:0 auto;text-align:center}.landing-hero h1{font-size:clamp(2rem,5vw,3rem);font-weight:700;margin:0 0 2rem;line-height:1.2;letter-spacing:-.02em}.landing-hero-visual{margin:0 0 2rem}.hero-mock{background:#18181b;border:1px solid #27272a;border-radius:12px;padding:1.5rem;max-width:480px;margin:0 auto;box-shadow:0 20px 50px #0006}.hero-mock-chat{display:flex;flex-direction:column;gap:1rem}.hero-mock-msg{padding:.75rem 1rem;border-radius:10px;font-size:.9rem;max-width:85%}.hero-mock-msg.user{align-self:flex-end;background:#7c3aed;color:#fff}.hero-mock-msg.ai{align-self:flex-start;background:#27272a;color:#a1a1aa}.landing-hero-sub{font-size:1.1rem;color:#a1a1aa;max-width:560px;margin:0 auto;line-height:1.6}.landing-features{padding:4rem 1.5rem}.landing-features-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.feature-card{background:#18181b;border:1px solid #27272a;border-radius:12px;padding:1.5rem;transition:border-color .2s,transform .2s}.feature-card:hover{border-color:#3f3f46;transform:translateY(-2px)}.feature-card-icon{color:#7c3aed;margin-bottom:1rem}.feature-card h3{font-size:1rem;font-weight:600;margin:0 0 .5rem}.feature-card p{font-size:.9rem;color:#a1a1aa;margin:0;line-height:1.5}.landing-mission{padding:3rem 1.5rem}.landing-mission-inner{max-width:700px;margin:0 auto;text-align:center}.landing-mission-text{font-size:1.2rem;color:#d4d4d8;line-height:1.6;margin:0}.landing-benefit{padding:4rem 1.5rem}.landing-benefit-inner{max-width:1100px;margin:0 auto}.landing-benefit-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.landing-benefit-content--reverse{direction:rtl}.landing-benefit-content--reverse>*{direction:ltr}.landing-benefit-text h2{font-size:1.75rem;font-weight:600;margin:0 0 1rem}.landing-benefit-text p{font-size:1rem;color:#a1a1aa;line-height:1.6;margin:0 0 1.5rem}.landing-benefit-link{display:inline-flex;align-items:center;padding:.5rem 1rem;background:#7c3aed;color:#fff;border-radius:8px;font-weight:500}.landing-benefit-link:hover{background:#6d28d9;text-decoration:none}.benefit-mock{min-height:200px;padding:2rem;background:linear-gradient(135deg,#18181b,#27272a);border:1px solid #3f3f46;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:500;color:#a1a1aa;text-align:center}.landing-cta{padding:5rem 1.5rem;text-align:center}.landing-cta-inner{max-width:560px;margin:0 auto}.landing-cta h2{font-size:1.75rem;font-weight:600;margin:0 0 .75rem}.landing-cta p{color:#a1a1aa;margin:0 0 1.5rem;line-height:1.6}.landing-footer{padding:3rem 1.5rem;background:#0c0c0f;border-top:1px solid #27272a;text-align:center}.landing-footer-inner{max-width:600px;margin:0 auto}.landing-footer-links{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:1rem}.landing-footer-links a{color:#71717a;font-size:.9rem}.landing-footer-links a:hover{color:#a78bfa}.landing-footer p{color:#52525b;font-size:.9rem;margin:0}.legal-page{min-height:100vh;background:#0a0a0c;color:#e4e4e7;padding:2rem 1.5rem}.legal-inner{max-width:700px;margin:0 auto}.legal-page h1{font-size:1.75rem;margin:0 0 .5rem}.legal-updated{color:#71717a;font-size:.9rem;margin:0 0 2rem}.legal-page section{margin-bottom:2rem}.legal-page h2{font-size:1.1rem;margin:0 0 .75rem;color:#d4d4d8}.legal-page p{margin:0 0 .75rem;line-height:1.6;color:#a1a1aa}.legal-back{display:inline-block;margin-top:2rem;color:#a78bfa;font-size:.95rem}@media(max-width:900px){.landing-features-inner{grid-template-columns:repeat(2,1fr)}.landing-benefit-content{grid-template-columns:1fr;direction:ltr}.landing-benefit-content--reverse{direction:ltr}}@media(max-width:640px){.landing-hero{padding:3rem 1rem 2rem}.landing-features{padding:3rem 1rem}.landing-features-inner{grid-template-columns:1fr;gap:1rem}.landing-benefit{padding:3rem 1rem}.landing-benefit-content{gap:1.5rem}.benefit-mock{min-height:140px;padding:1.5rem;font-size:1.1rem}.landing-cta{padding:3rem 1rem}.landing-cta-btn{min-height:48px}}.auth-page{max-width:400px;margin:3rem auto;padding:2rem;text-align:center}.auth-page form{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.auth-page input{width:100%}.auth-page .error{color:#f87171;margin-bottom:1rem}.auth-page .link{background:none;border:none;color:#60a5fa;font-size:.9rem}.chat-layout{display:flex;height:100vh;position:relative}.sidebar{width:260px;flex-shrink:0;background:#18181b;padding:1rem;display:flex;flex-direction:column}.sidebar-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.new-chat{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px}.new-chat-text{display:inline}.sidebar-close{display:none;padding:.5rem;min-width:40px;min-height:40px}.chat-list{list-style:none;padding:0;margin:0}.chat-list li{padding:.75rem;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.chat-list li:hover,.chat-list li.active{background:#27272a}.chat-list li .del{opacity:.5;padding:.25rem;font-size:1.2rem}.sidebar-backdrop{display:none}.chat-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.chat-header{padding:.75rem 1rem;border-bottom:1px solid #27272a;display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-shrink:0}.sidebar-toggle{display:none;padding:.5rem;min-width:44px;min-height:44px;background:transparent;border:none}.chat-header-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-right{display:flex;gap:.75rem;align-items:center;flex-shrink:0}.header-link{font-size:.9rem;display:inline-flex;align-items:center;gap:.25rem}.header-link .header-icon{display:none}.balance{font-size:.9rem;color:#a1a1aa}.balance-short{display:none}.logout-btn{padding:.5rem;min-width:40px;min-height:40px}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:20;width:280px;max-width:85vw;transform:translate(-100%);transition:transform .2s ease}.sidebar--open{transform:translate(0)}.sidebar-close{display:flex;align-items:center;justify-content:center}.new-chat{min-width:44px;min-height:44px}.sidebar-backdrop{display:block;position:fixed;inset:0;background:#00000080;z-index:19}.sidebar-toggle{display:flex;align-items:center;justify-content:center}.chat-header .header-link .header-icon{display:block}.chat-header .header-link .header-link-text,.chat-header .header-link--admin,.balance-full{display:none}.balance-short{display:inline}.balance{font-size:.85rem}.logout-btn span,.logout-btn .logout-text{display:none}.logout-btn{padding:.5rem}}.messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.msg{max-width:80%;padding:.75rem;border-radius:8px}.msg.user{align-self:flex-end;background:#27272a}.msg.assistant{align-self:flex-start;background:#1e1e24}.msg pre{margin:.5rem 0 0;white-space:pre-wrap;font-family:inherit}.input-form{padding:.75rem 1rem;display:flex;gap:.5rem;border-top:1px solid #27272a;flex-shrink:0}.input-form input{flex:1;min-width:0}@media(max-width:768px){.input-form{padding:.5rem}.input-form button{padding:.5rem .75rem;font-size:.9rem}}.profile-page{max-width:700px;margin:0 auto;padding:2rem}.balance-block{margin:1.5rem 0}.low-balance{color:#fbbf24}.profile-page table{width:100%;border-collapse:collapse}.profile-page th,.profile-page td{padding:.5rem;text-align:left;border-bottom:1px solid #27272a}.payment-page{max-width:600px;margin:0 auto;padding:2rem;text-align:center}.products{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin:2rem 0}.product-card{border:1px solid #27272a;border-radius:8px;padding:1.5rem;min-width:160px}.admin-page{max-width:900px;margin:0 auto;padding:2rem}.admin-page .stats{margin:1rem 0;padding:1rem;background:#18181b;border-radius:8px}.admin-page section{margin:2rem 0}.admin-page table{width:100%;border-collapse:collapse}.admin-page th,.admin-page td{padding:.5rem;text-align:left;border-bottom:1px solid #27272a}.product-edit{display:flex;gap:1rem;margin:.5rem 0}.product-edit input{width:100px}.modal{position:fixed;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10}.modal form{display:flex;gap:.5rem;margin:1rem 0}
