*,body,html{margin:0;padding:0}body,html{height:100%;overflow-x:hidden}#root{height:100vh}#root,.chat-container{display:flex;flex-direction:column}.chat-container{background:linear-gradient(135deg,#1a2f71,#48aeb2);flex:1 1;overflow:hidden;position:relative}.chat-container:before{background:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><rect width="100%" height="100%" fill="url(%23grain)"/></svg>');bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.chat-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fff;justify-content:center;padding:.5rem;z-index:10}.chat-header,.header-content{display:flex;text-align:center}.header-content{flex-direction:row}.header-text{padding-left:20px}.header-logo{height:80px;margin-bottom:1rem;width:auto}.header-content h1{color:#1a2f71;font-size:2.5rem;font-weight:700;letter-spacing:-.025em;margin:0;text-align:center}.header-content p{color:#48aeb2;font-size:1.1rem;font-weight:500;margin:.75rem 0 0;text-align:center}.chat-main{gap:2rem;padding:2rem;position:relative;z-index:10}.chat-content,.chat-main{display:flex;flex:1 1;overflow:hidden}.chat-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #ffffff4d;border-radius:24px;flex-direction:column}.chat-sidebar{display:flex;flex-direction:column;gap:1rem;width:320px}.session-info{background:#ffffff1a;border:1px solid #ffffff1a;border-radius:12px;padding:1rem}.session-item{align-items:center;display:flex;justify-content:space-between}.session-label{font-size:.85rem;font-weight:400;opacity:.8}.session-value{background:#fff3;border-radius:6px;font-family:monospace;font-size:.9rem;font-weight:600;padding:.25rem .5rem}.message-list{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:2rem}.message-list::-webkit-scrollbar{width:6px}.message-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.message-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.message-list::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.welcome-message{color:#64748b;margin:0 auto;max-width:600px;padding:3rem 2rem;text-align:center}.welcome-message h3{color:#1a2f71;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.welcome-message p{font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.welcome-message ul{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;display:inline-block;padding:2rem;text-align:left}.welcome-message li{color:#475569;font-weight:500;margin:.75rem 0;padding-left:.5rem}.message-bubble{word-wrap:break-word;animation:slideInUp .4s cubic-bezier(.16,1,.3,1);border-radius:18px;line-height:1.6;max-width:75%;padding:1.25rem 1.5rem;position:relative}.user-message{align-self:flex-end;background:linear-gradient(135deg,#1a2f71,#48aeb2);border-bottom-right-radius:6px;box-shadow:0 8px 32px #1a2f714d;color:#fff;margin-left:auto}.assistant-message{align-self:flex-start;background:#fff;border:1px solid #e2e8f0;border-bottom-left-radius:6px;box-shadow:0 4px 24px #0000000f;color:#1e293b}.error-message{background:linear-gradient(135deg,#fee,#fecaca);border-color:#fca5a5;color:#dc2626}.message-content{font-size:1rem;font-weight:500;white-space:pre-wrap}.message-link{color:#1a2f71;font-weight:600;text-decoration:underline;transition:color .2s ease}.message-link:hover{color:#48aeb2}.user-message .message-link{color:#fff;text-decoration:underline}.user-message .message-link:hover{color:#e0f2f1}.message-metadata{align-items:center;display:flex;font-size:.85rem;font-weight:400;gap:.5rem;margin-top:.75rem;opacity:.8}.message-timestamp{font-size:.75rem;font-weight:400;margin-top:.5rem;opacity:.6}.feedback-container{align-items:center;display:flex;gap:.5rem;margin-top:.75rem}.feedback-btn{background:none;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:1rem;opacity:.7;padding:.25rem .5rem;transition:all .2s ease}.feedback-btn:hover:not(:disabled){background:#f8fafc;opacity:1}.feedback-btn:disabled{cursor:not-allowed}.feedback-btn.active{background:#f0f9ff;border-color:#0ea5e9;opacity:1}.feedback-text-container{border-top:1px solid #e2e8f0;margin-top:.75rem;padding-top:.75rem}.feedback-textarea{border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:.9rem;outline:none;padding:.5rem;resize:vertical;width:100%}.feedback-textarea:focus{border-color:#1a2f71;box-shadow:0 0 0 2px #1a2f711a}.feedback-submit-btn{background:#1a2f71;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;margin-top:.5rem;padding:.5rem 1rem;transition:background .2s ease}.feedback-submit-btn:hover{background:#48aeb2}.feedback-submitted{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:6px;color:#0ea5e9;font-size:.85rem;font-weight:500;margin-top:.75rem;padding:.5rem;text-align:center}.loading-message{align-items:center;color:#64748b;display:flex;font-weight:500;gap:1rem;padding:1.5rem}.typing-indicator{align-items:center;display:flex;gap:.4rem}.typing-indicator span{animation:typing 1.6s ease-in-out infinite;background:linear-gradient(135deg,#1a2f71,#48aeb2);border-radius:50%;height:10px;width:10px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.4;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-input-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8fafccc;border-top:1px solid #e2e8f0;padding:1.5rem 2rem}.chat-input-form{display:flex;gap:1rem}.input-wrapper{align-items:flex-end;display:flex;flex:1 1;gap:.75rem}.message-input{background:#fff;border:2px solid #e2e8f0;border-radius:16px;flex:1 1;font-family:inherit;font-size:1rem;font-weight:500;height:80px;max-height:120px;min-height:80px;outline:none;padding:1rem 1.25rem;resize:none;transition:all .3s cubic-bezier(.16,1,.3,1)}.message-input:focus{border-color:#1a2f71;box-shadow:0 0 0 3px #1a2f711a;transform:translateY(-1px)}.message-input::placeholder{color:#94a3b8}.send-button{align-items:center;background:linear-gradient(135deg,#1a2f71,#48aeb2);border:none;border-radius:16px;box-shadow:0 4px 16px #1a2f714d;color:#fff;cursor:pointer;display:flex;justify-content:center;min-width:52px;padding:1rem;transition:all .3s cubic-bezier(.16,1,.3,1)}.send-button:hover:not(:disabled){box-shadow:0 8px 24px #1a2f7166;transform:translateY(-2px)}.send-button:active:not(:disabled){transform:translateY(0)}.send-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.input-status{color:#1a2f71;font-size:.85rem;font-weight:500;margin-top:.75rem}.sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #fff3;border-radius:24px;box-shadow:0 20px 60px #0000001a;color:#fff;overflow-y:auto;padding:2rem}.sidebar-section{margin-bottom:2.5rem}.sidebar-section h3{align-items:center;color:#fff;display:flex;font-size:1.1rem;font-weight:600;gap:.75rem;margin:0 0 1.5rem}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.stat-item{background:#ffffff1a;border:1px solid #ffffff1a;border-radius:16px;padding:1.25rem;text-align:center}.stat-label{display:block;font-size:.85rem;font-weight:400;margin-bottom:.5rem;opacity:.8}.stat-value{display:block;font-size:1.5rem;font-weight:700}.action-button{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:16px;color:#1a2f71;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;padding:1rem 1.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);width:100%}.action-button:hover{background:#fff3;transform:translateY(-1px)}.help-text{font-size:.9rem;font-weight:400;line-height:1.6;opacity:.9}.error-banner{background:linear-gradient(135deg,#fee,#fecaca);border:1px solid #fca5a5;border-radius:16px;box-shadow:0 4px 16px #dc26261a;color:#dc2626;font-weight:600;margin:1.5rem;padding:1.5rem;text-align:center}.new-session-button{background:linear-gradient(135deg,#1a2f71,#48aeb2);border:none;border-radius:12px;box-shadow:0 4px 16px #1a2f7133;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:1rem;padding:.75rem 1rem;transition:all .3s cubic-bezier(.16,1,.3,1);width:100%}.new-session-button:hover{box-shadow:0 6px 20px #1a2f714d;transform:translateY(-1px)}.new-session-button:active{transform:translateY(0)}.school-selector{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #fff3;border-radius:16px;margin-bottom:1rem;padding:1.5rem}.school-selector h3{color:#fff;font-size:1rem;font-weight:600;margin:0 0 1rem}.school-dropdown{background:#ffffffe6;border:1px solid #ffffff4d;border-radius:8px;color:#1a2f71;cursor:pointer;font-size:.9rem;font-weight:500;outline:none;padding:.75rem;width:100%}.school-dropdown:focus{border-color:#1a2f71;box-shadow:0 0 0 2px #1a2f7133}.school-dropdown optgroup{color:#1a2f71;font-weight:600}.school-dropdown option{font-weight:400;padding:.5rem}.pdf-download-btn{background:linear-gradient(135deg,#1a2f71,#48aeb2);border:none;border-radius:12px;box-shadow:0 4px 16px #1a2f7133;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-bottom:1rem;padding:.75rem 1rem;transition:all .3s cubic-bezier(.16,1,.3,1);width:100%}.pdf-download-btn:hover:not(:disabled){box-shadow:0 6px 20px #1a2f714d;transform:translateY(-1px)}.pdf-download-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.chat-main{flex-direction:column;gap:1rem;padding:1rem}.chat-sidebar{max-height:250px;order:-1;width:100%}.stats-grid{grid-template-columns:1fr}.message-bubble{max-width:90%}.header-content h1{font-size:2rem}.chat-header{padding:1.5rem}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}*{box-sizing:border-box}
/*# sourceMappingURL=main.be924b70.css.map*/