@import url(https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500..600&family=Inter:wght@400;500;600&display=swap);:root{--bg:#f7f7f8;--bg-elevated:#fff;--ink:#111118;--ink-muted:#6b6b80;--accent-1:#5b4ef8;--accent-2:#0ea5c9;--accent-soft:#5b4ef81a;--border:#e2e2ea;--radius:16px}*{box-sizing:border-box}body,html{background:#f7f7f8;background:var(--bg);height:100%;margin:0}body{color:#111118;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}#root,.app{height:100%}.app{background:#f7f7f8;background:var(--bg);display:flex;flex-direction:column;margin:0 auto;max-width:720px;min-height:100vh;min-height:100dvh}.header{align-items:center;background:#fff;background:var(--bg-elevated);border-bottom:1px solid #e2e2ea;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:12px;padding:max(20px,calc(env(safe-area-inset-top) + 8px)) 24px 14px}.nova-avatar{filter:drop-shadow(0 0 8px rgba(91,78,248,.25));flex-shrink:0}.header-title{background:linear-gradient(120deg,#111118 40%,#5b4ef8);background:linear-gradient(120deg,var(--ink) 40%,var(--accent-1));-webkit-background-clip:text;background-clip:text;color:#0000;font-family:Fraunces,serif;font-size:20px;font-weight:600;letter-spacing:.01em}.thread{display:flex;flex:1 1;flex-direction:column;gap:20px;overflow-y:auto;padding:16px 20px}.empty-state{align-items:center;color:#6b6b80;color:var(--ink-muted);display:flex;flex:1 1;font-size:15px;justify-content:center}.message{display:flex;flex-direction:column;gap:5px;max-width:88%}.message.user{align-items:flex-end;align-self:flex-end}.message.assistant{align-items:flex-start;align-self:flex-start}.message-label{align-items:center;color:#6b6b80;color:var(--ink-muted);display:flex;font-size:11px;gap:6px;letter-spacing:.08em;padding:0 4px;text-transform:uppercase}.message-content{font-size:15px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.message.user .message-content{background:linear-gradient(135deg,#5b4ef8,#0ea5c9);background:linear-gradient(135deg,var(--accent-1),var(--accent-2));border-radius:16px;border-radius:var(--radius);color:#fff;font-weight:500;padding:11px 17px}.message.assistant .message-content{background:#fff;background:var(--bg-elevated);border:1px solid #e2e2ea;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius);box-shadow:0 1px 3px #0000000f;color:#111118;color:var(--ink);padding:13px 17px}.thinking{align-items:center;display:flex;gap:5px}.dot{animation:pulse 1.2s ease-in-out infinite;background:linear-gradient(135deg,#5b4ef8,#0ea5c9);background:linear-gradient(135deg,var(--accent-1),var(--accent-2));border-radius:50%;height:6px;width:6px}.dot:nth-child(2){animation-delay:.15s}.dot:nth-child(3){animation-delay:.3s}@keyframes pulse{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.error-banner{align-self:center;background:#b91c1c14;border:1px solid #b91c1c2e;border-radius:12px;color:#b91c1c;font-size:13px;padding:9px 15px}.composer{align-items:flex-end;background:#fff;background:var(--bg-elevated);border-top:1px solid #e2e2ea;border-top:1px solid var(--border);display:flex;flex-shrink:0;gap:10px;padding:12px max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) 16px}.composer textarea{background:#f7f7f8;background:var(--bg);border:1px solid #e2e2ea;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius);color:#111118;color:var(--ink);flex:1 1;font-family:inherit;font-size:15px;max-height:160px;outline:none;padding:11px 15px;resize:none;transition:border-color .18s ease,box-shadow .18s ease}.composer textarea:focus{border-color:#5b4ef8;border-color:var(--accent-1);box-shadow:0 0 0 3px #5b4ef81a;box-shadow:0 0 0 3px var(--accent-soft)}.composer textarea::placeholder{color:#6b6b80;color:var(--ink-muted)}.composer button{align-items:center;background:linear-gradient(135deg,#5b4ef8,#0ea5c9);background:linear-gradient(135deg,var(--accent-1),var(--accent-2));border:none;border-radius:50%;box-shadow:0 4px 12px #5b4ef84d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:42px;justify-content:center;transition:opacity .15s ease,transform .12s ease,box-shadow .15s ease;width:42px}.composer button:disabled{box-shadow:none;cursor:default;opacity:.3}.composer button:not(:disabled):hover{box-shadow:0 6px 18px #5b4ef866;transform:scale(1.06)}.composer button:not(:disabled):active{transform:scale(.95)}@media (prefers-reduced-motion:reduce){.composer button,.dot{animation:none;transition:none}}.message.assistant .message-content p{margin:0 0 8px}.message.assistant .message-content p:last-child{margin-bottom:0}.message.assistant .message-content h1,.message.assistant .message-content h2,.message.assistant .message-content h3{color:#111118;color:var(--ink);font-family:Fraunces,serif;font-weight:600;margin:12px 0 6px}.message.assistant .message-content h1{font-size:17px}.message.assistant .message-content h2{font-size:15px}.message.assistant .message-content h3{color:#5b4ef8;color:var(--accent-1);font-size:14px}.message.assistant .message-content ol,.message.assistant .message-content ul{margin:6px 0;padding-left:20px}.message.assistant .message-content li{margin:3px 0}.message.assistant .message-content strong{color:#111118;color:var(--ink);font-weight:600}.message.assistant .message-content em{color:#6b6b80;color:var(--ink-muted)}.message.assistant .message-content code{background:#5b4ef814;border:1px solid #5b4ef826;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:1px 5px}.message.assistant .message-content pre{background:#f1f1f5;border:1px solid #e2e2ea;border:1px solid var(--border);border-radius:10px;margin:8px 0;overflow-x:auto;padding:12px}.message.assistant .message-content pre code{background:none;border:none;font-size:13px;padding:0}.message.assistant .message-content table{border-collapse:collapse;font-size:13px;margin:8px 0;width:100%}.message.assistant .message-content td,.message.assistant .message-content th{border:1px solid #e2e2ea;border:1px solid var(--border);padding:6px 10px;text-align:left}.message.assistant .message-content th{background:#5b4ef80f;color:#5b4ef8;color:var(--accent-1);font-weight:600}.message.assistant .message-content hr{border:none;border-top:1px solid #e2e2ea;border-top:1px solid var(--border);margin:10px 0}.message.assistant .message-content a{color:#5b4ef8;color:var(--accent-1);text-decoration:none}.message.assistant .message-content a:hover{text-decoration:underline}.draft-surrounding-text{margin-bottom:10px}.draft-surrounding-text:last-child{margin-bottom:0;margin-top:10px}.email-draft-card{background:#fff;background:var(--bg-elevated);border:1px solid #e2e2ea;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius);box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;gap:12px;padding:16px}.email-draft-header{align-items:center;display:flex}.email-draft-badge{background:#0ea5c91a;border:1px solid #0ea5c938;border-radius:999px;color:#0ea5c9;color:var(--accent-2);font-size:11px;font-weight:600;letter-spacing:.06em;padding:4px 10px;text-transform:uppercase}.email-draft-field{color:#6b6b80;color:var(--ink-muted);display:flex;flex-direction:column;font-size:12px;gap:5px}.email-draft-field input,.email-draft-field textarea{background:#f7f7f8;background:var(--bg);border:1px solid #e2e2ea;border:1px solid var(--border);border-radius:10px;color:#111118;color:var(--ink);font-family:inherit;font-size:14px;outline:none;padding:9px 12px;resize:vertical;transition:border-color .18s ease,box-shadow .18s ease}.email-draft-field input:focus,.email-draft-field textarea:focus{border-color:#5b4ef8;border-color:var(--accent-1);box-shadow:0 0 0 3px #5b4ef81a;box-shadow:0 0 0 3px var(--accent-soft)}.email-draft-field input:disabled,.email-draft-field textarea:disabled{opacity:.6}.email-draft-send-btn{align-self:flex-start;background:linear-gradient(135deg,#5b4ef8,#0ea5c9);background:linear-gradient(135deg,var(--accent-1),var(--accent-2));border:none;border-radius:10px;box-shadow:0 4px 12px #5b4ef840;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:opacity .15s ease,transform .12s ease,box-shadow .15s ease}.email-draft-send-btn:not(:disabled):hover{box-shadow:0 6px 18px #5b4ef859;transform:translateY(-1px)}.email-draft-send-btn:disabled{box-shadow:none;cursor:default;opacity:.4}.email-draft-sent{align-self:flex-start;background:#16653414;border:1px solid #1665342e;border-radius:10px;color:#166534;font-size:14px;font-weight:600;padding:8px 16px}.email-draft-error{background:#b91c1c14;border:1px solid #b91c1c2e;border-radius:10px;color:#b91c1c;font-size:13px;padding:8px 14px}:focus-visible{outline:2px solid #5b4ef8;outline:2px solid var(--accent-1);outline-offset:2px}.login-screen{background:#f7f7f8;background:var(--bg);justify-content:center;min-height:100vh;min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom))}.login-card,.login-screen{align-items:center;display:flex}.login-card{background:#fff;background:var(--bg-elevated);border:1px solid #e2e2ea;border:1px solid var(--border);border-radius:24px;box-shadow:0 8px 40px #00000014;flex-direction:column;gap:12px;max-width:360px;padding:40px 36px;width:100%}.login-title{background:linear-gradient(120deg,#111118 40%,#5b4ef8);background:linear-gradient(120deg,var(--ink) 40%,var(--accent-1));-webkit-background-clip:text;background-clip:text;color:#0000;font-family:Fraunces,serif;font-size:32px;font-weight:600;margin:4px 0 0}.login-subtitle{color:#6b6b80;color:var(--ink-muted);font-size:14px;margin:0 0 12px}.login-btn{align-items:center;background:linear-gradient(135deg,#5b4ef8,#0ea5c9);background:linear-gradient(135deg,var(--accent-1),var(--accent-2));border:none;border-radius:14px;box-shadow:0 4px 16px #5b4ef847;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:600;gap:10px;justify-content:center;padding:14px 20px;transition:opacity .15s ease,transform .12s ease,box-shadow .15s ease;width:100%}.login-btn:not(:disabled):hover{box-shadow:0 8px 24px #5b4ef861;transform:translateY(-2px)}.login-btn:not(:disabled):active{transform:scale(.98)}.login-btn:disabled{cursor:default;opacity:.7}.login-hint{color:#6b6b80;color:var(--ink-muted);font-size:13px;margin:4px 0 0}.login-link{background:none;border:none;color:#5b4ef8;color:var(--accent-1);cursor:pointer;font-family:inherit;font-size:13px;padding:0;text-decoration:underline;text-underline-offset:2px}.login-register-text{color:#6b6b80;color:var(--ink-muted);font-size:14px;line-height:1.5;margin:0 0 8px;text-align:center}.login-error{background:#b91c1c14;border:1px solid #b91c1c2e;border-radius:10px;color:#b91c1c;font-size:13px;margin:4px 0 0;padding:8px 14px;text-align:center;width:100%}.login-spinner{animation:spin .7s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;flex-shrink:0;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.mic-btn{border:1px solid #e2e2ea;border:1px solid var(--border);color:#6b6b80;color:var(--ink-muted)}.mic-btn,.mic-btn:not(:disabled):hover{background:#f7f7f8;background:var(--bg);box-shadow:none}.mic-btn:not(:disabled):hover{border-color:#5b4ef8;border-color:var(--accent-1);color:#5b4ef8;color:var(--accent-1);transform:scale(1.06)}.mic-btn.listening{animation:mic-pulse 1s ease-in-out infinite;background:#b91c1c14;border-color:#b91c1c;box-shadow:0 0 0 3px #b91c1c26;color:#b91c1c}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 3px #b91c1c26}50%{box-shadow:0 0 0 6px #b91c1c14}}.notes-panel{background:#fff;background:var(--bg-elevated);border-bottom:1px solid #e2e2ea;border-bottom:1px solid var(--border);flex-shrink:0}.notes-toggle{align-items:center;background:none;border:none;border-radius:0;box-shadow:none;color:#6b6b80;color:var(--ink-muted);cursor:pointer;display:flex;font-family:inherit;font-size:13px;gap:8px;height:auto;padding:10px 20px;text-align:left;width:100%}.notes-toggle:hover{background:#f7f7f8;background:var(--bg);box-shadow:none;transform:none}.notes-toggle-icon{font-size:14px}.notes-toggle-label{align-items:center;color:#111118;color:var(--ink);display:flex;flex:1 1;font-weight:500;gap:8px}.notes-badge{background:#b91c1c1a;border:1px solid #b91c1c33;border-radius:999px;color:#b91c1c;font-size:11px;font-weight:600;padding:2px 7px}.notes-toggle-arrow{color:#6b6b80;color:var(--ink-muted);font-size:10px}.notes-list{gap:8px;padding:0 20px 12px}.notes-group,.notes-list{display:flex;flex-direction:column}.notes-group{gap:4px}.notes-group-label{color:#6b6b80;color:var(--ink-muted);font-size:10px;font-weight:600;letter-spacing:.08em;padding:4px 0 2px;text-transform:uppercase}.notes-group-label.overdue{color:#b91c1c}.notes-group-label.today{color:#5b4ef8;color:var(--accent-1)}.note-item{align-items:center;background:#f7f7f8;background:var(--bg);border:1px solid #e2e2ea;border:1px solid var(--border);border-radius:10px;display:flex;gap:10px;padding:7px 10px;transition:opacity .2s ease}.note-item.done{opacity:.4}.note-done-btn{align-items:center;background:none;border:1.5px solid #e2e2ea;border:1.5px solid var(--border);border-radius:50%;box-shadow:none;color:#6b6b80;color:var(--ink-muted);cursor:pointer;display:flex;flex-shrink:0;font-size:11px;height:22px;justify-content:center;padding:0;transition:border-color .15s,color .15s;width:22px}.note-done-btn:hover:not(:disabled){background:#16653414;border-color:#166534;box-shadow:none;color:#166534;transform:none}.note-text-wrap{display:flex;flex:1 1;flex-direction:column;gap:1px}.note-text{color:#111118;color:var(--ink);font-size:13px;line-height:1.4}.note-due{color:#6b6b80;color:var(--ink-muted);font-size:11px}.attachment-preview{align-items:center;background:#5b4ef80f;border-top:1px solid #e2e2ea;border-top:1px solid var(--border);display:flex;gap:10px;padding:8px 20px}.attachment-name{color:#5b4ef8;color:var(--accent-1);flex:1 1;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-remove{background:none;border:none;border-radius:0;box-shadow:none;color:#6b6b80;color:var(--ink-muted);cursor:pointer;flex-shrink:0;font-size:14px;height:auto;padding:0;width:auto}.attachment-remove:hover{background:none;box-shadow:none;color:#b91c1c;transform:none}
/*# sourceMappingURL=main.86b3afff.css.map*/