*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:#e8e6e3;-webkit-font-smoothing:antialiased}.container,body{background:#08080a}.container{max-width:600px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.header{padding:24px 24px 18px;background:#08080a;position:-webkit-sticky;position:sticky;top:0;z-index:10}.header h1{font-size:22px;font-weight:400;margin:0;font-family:Space Grotesk,Inter,sans-serif;letter-spacing:-.3px;color:#e8e6e3}.header p{font-size:13px;color:#8a8890;margin-top:4px}.pbar{height:3px;background:#222228;width:100%}.pbar-fill{height:3px;background:#e8609c;transition:width .5s cubic-bezier(.4,0,.2,1);border-radius:0 2px 2px 0}.chat{flex:1 1;overflow-y:auto;padding:24px 24px 32px;display:flex;flex-direction:column;gap:14px}.bot{background:#141418;border:1px solid #222228;border-radius:4px 16px 16px 16px;padding:16px 20px;max-width:88%;font-size:14.5px;line-height:1.6;color:#c5c3bf;box-shadow:0 1px 3px rgba(0,0,0,.2)}.bot,.usr{white-space:pre-line}.usr{background:#e8609c;color:#fff;border-radius:16px 16px 4px 16px;padding:12px 18px;max-width:75%;align-self:flex-end;font-size:14px;line-height:1.5}.opts{display:flex;flex-direction:column;gap:8px;margin-top:6px;animation:optsIn .3s ease}@keyframes optsIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.opt{background:#141418;border:1.5px solid #222228;border-radius:14px;padding:13px 18px;font-size:14px;cursor:pointer;text-align:left;transition:all .15s;color:#e8e6e3;line-height:1.45;font-family:inherit}.opt-hov,.opt:hover{border-color:#e8609c;background:rgba(232,96,156,.08)}.opt-sel{border-color:#e8609c}.cfm,.opt-sel{background:#e8609c;color:#fff}.cfm{border:none;border-radius:12px;padding:14px 28px;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;margin-top:4px}.cfm:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(232,96,156,.3)}.plan-wrap{background:#141418;border:1px solid #222228;border-radius:16px;padding:28px 24px;max-width:95%;font-size:14.5px;line-height:1.7;color:#c5c3bf}.plan-h2{font-size:18px;font-weight:400;margin:28px 0 10px;border-bottom:1px solid #222228;padding-bottom:8px;color:#e8e6e3}.plan-h2,.plan-h3{font-family:Space Grotesk,Inter,sans-serif}.plan-h3{font-size:15px;font-weight:600;margin:20px 0 8px;color:#e8609c}.plan-li{padding-left:18px;position:relative;margin:5px 0}.plan-bullet{position:absolute;left:4px;color:#e8609c;font-weight:700}.plan-oli{padding-left:24px;position:relative;margin:5px 0}.plan-num{position:absolute;left:0;font-weight:700;color:#e8609c;font-family:Space Grotesk,Inter,sans-serif}.plan-p{margin:5px 0}.disc{font-size:12px;color:#8a8890;text-align:center;padding:16px 24px 24px;line-height:1.5;font-style:italic}.safety-disclaimer{background:rgba(255,180,50,.06);border:1px solid rgba(255,180,50,.2);border-radius:12px;padding:20px 22px;margin-bottom:16px;line-height:1.6}.safety-icon{font-size:20px;margin-bottom:8px}.safety-title{font-size:15px;font-weight:600;color:#e8c96a;margin-bottom:10px;font-family:Space Grotesk,Inter,sans-serif}.safety-body,.safety-list{font-size:13px;color:#b0ada8}.safety-list{margin:10px 0;padding-left:20px;list-style:none}.safety-list li{position:relative;padding-left:14px;margin-bottom:6px}.safety-list li:before{content:"×";position:absolute;left:0;color:#e86060;font-weight:700;font-size:14px}.safety-link{color:#e8c96a;text-decoration:underline;text-underline-offset:2px}.safety-link:hover{color:#f0d87a}.ldg{display:flex;align-items:center;gap:10px;padding:20px 0}.ldg-dot{width:8px;height:8px;border-radius:50%;background:#e8609c;animation:dp 1.2s ease-in-out infinite}@keyframes dp{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.err-box{background:rgba(232,96,156,.08);border:1.5px solid rgba(232,96,156,.3);border-radius:4px 14px 14px 14px;padding:16px 20px;max-width:88%;font-size:14px;line-height:1.55;color:#e8609c}.retry{background:#e8609c;color:#fff;border:none;border-radius:10px;padding:10px 20px;font-size:13px;font-weight:600;cursor:pointer;margin-top:10px;font-family:inherit;transition:all .15s}.retry:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(232,96,156,.3)}.auth-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;background:#08080a}.auth-card{width:100%;max-width:400px;background:#141418;border:1px solid #222228;border-radius:16px;padding:40px 32px;box-shadow:0 4px 24px rgba(0,0,0,.3)}.auth-title{font-size:24px;font-weight:400;margin-bottom:6px;font-family:Space Grotesk,Inter,sans-serif;letter-spacing:-.3px;color:#e8e6e3}.auth-subtitle{font-size:14px;color:#8a8890;margin-bottom:28px;line-height:1.5}.auth-form{gap:16px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:6px}.auth-label{font-size:13px;font-weight:600;color:#8a8890}.auth-input{padding:12px 16px;border:1.5px solid #222228;border-radius:12px;font-size:14px;font-family:inherit;color:#e8e6e3;transition:border-color .15s;outline:none;background:#0c0c0e}.auth-input:focus{border-color:#e8609c}.auth-input::placeholder{color:#555}.auth-button{background:#e8609c;color:#fff;border:none;border-radius:12px;padding:14px 24px;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;margin-top:8px;transition:all .15s}.auth-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(232,96,156,.3)}.auth-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.auth-error{background:rgba(232,96,156,.08);border:1.5px solid rgba(232,96,156,.3);border-radius:10px;padding:12px 16px;font-size:13px;color:#e8609c}.auth-switch{font-size:13px;color:#8a8890;text-align:center;margin-top:20px}.auth-link{color:#e8609c;font-weight:600;text-decoration:none}.auth-link:hover,.link-btn{text-decoration:underline}.link-btn{background:none;border:none;color:#8a8890;font-size:13px;cursor:pointer;font-family:inherit}.link-btn:hover{color:#e8e6e3}@media (max-width:580px){.container{max-width:100%}.header{padding:20px 16px 14px}.header h1{font-size:20px}.chat{padding:20px 16px 28px}.plan-wrap{padding:22px 18px}.auth-card{padding:32px 24px}}