@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&display=swap";.study-companion-container{z-index:99999;font-family:Outfit,Inter,system-ui,-apple-system,sans-serif;position:relative}.study-companion-trigger{-webkit-backdrop-filter:blur(12px);cursor:pointer;z-index:100000;background:linear-gradient(135deg,#0f172af2 0%,#1e3a8af2 100%);border:2px solid gold;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:60%;right:1.5rem;transform:translateY(-50%);box-shadow:0 10px 30px #00000080,0 0 20px #ffd70033}.study-companion-trigger:hover{transform:translateY(-50%)scale(1.08);box-shadow:0 15px 35px #0009,0 0 25px #ffd70073}.trigger-badge-content{align-items:center;gap:.75rem;display:flex;position:relative}.trigger-avatar{object-fit:cover;border-radius:50%;width:100%;height:100%}.avatar-pulse-ring{pointer-events:none;border:2px solid gold;border-radius:50%;width:calc(100% + 4px);height:calc(100% + 4px);animation:2s ease-in-out infinite avatarPulse;position:absolute;top:-2px;left:-2px}@keyframes avatarPulse{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.trigger-badge-text{color:#f8fafc;letter-spacing:.05em;text-transform:uppercase;font-size:.85rem;font-weight:700}.study-companion-sidebar{-webkit-backdrop-filter:blur(28px);z-index:99999;background:#0a0b0ed9;border-left:1px solid #ffffff14;flex-direction:column;width:420px;height:100vh;display:flex;position:fixed;top:0;right:0;overflow:hidden;box-shadow:-10px 0 50px #0009}.companion-header{background:linear-gradient(#1e3a8a33 0%,#0f172a00 100%);border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.tutor-avatar-persona{object-fit:cover;border:2px solid #ffd700bf;border-radius:50%;width:46px;height:46px}.header-info{align-items:center;gap:.85rem;display:flex}.header-info h3{color:gold;letter-spacing:.02em;margin:0;font-size:1.15rem;font-weight:800}.header-info p{color:#cbd5e1;align-items:center;gap:.35rem;margin:0;font-size:.75rem;display:flex}.status-dot{background:#10b981;border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px #10b981}.close-btn{color:#94a3b8;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.close-btn:hover{color:#fff;background:#ffffff1a;transform:rotate(90deg)}.companion-tabs{background:#0003;border:1px solid #ffffff0d;border-radius:12px;margin:1rem 1.5rem;padding:.4rem;display:flex}.tab-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:.5rem 0;font-size:.82rem;font-weight:700;transition:all .2s;display:flex}.tab-btn.active{color:gold;background:linear-gradient(135deg,#1e3a8a99 0%,#0f172acc 100%);border:1px solid #ffd70040;box-shadow:0 4px 15px #0000004d}.tab-btn:hover:not(.active){color:#fff;background:#ffffff08}.companion-body{flex-direction:column;flex:1;padding:0 1.5rem;display:flex;overflow-y:auto}.tab-content{flex-direction:column;gap:1.5rem;height:100%;display:flex}.companion-body::-webkit-scrollbar{width:4px}.companion-body::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.insights-view{animation:.3s ease-out forwards tabFadeIn}.insights-card{background:linear-gradient(135deg,#ffd7000f 0%,#1e3a8a1a 100%);border:1px solid #ffd70026;border-radius:16px;margin-top:.5rem;padding:1.25rem}.insights-badge{color:gold;text-transform:uppercase;letter-spacing:.12em;background:#ffd7001f;border-radius:100px;margin-bottom:.75rem;padding:4px 10px;font-size:.65rem;font-weight:800;display:inline-block}.insights-intro{color:#cbd5e1;margin:0;font-size:.88rem;font-weight:400;line-height:1.5}.insights-section h4{color:#f8fafc;letter-spacing:.02em;margin:0 0 .85rem;font-size:.95rem;font-weight:800}.insights-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.insights-list li{color:#cbd5e1;align-items:flex-start;gap:.6rem;font-size:.85rem;line-height:1.45;display:flex}.list-arrow{color:gold;flex-shrink:0;margin-top:2px}.section-subtitle{color:#94a3b8;margin:-.5rem 0 .85rem;font-size:.78rem}.action-chips-container{flex-direction:column;gap:.6rem;display:flex}.action-chip{color:#e2e8f0;text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;align-items:center;padding:.75rem 1rem;font-size:.82rem;font-weight:500;transition:all .2s;display:flex}.action-chip:hover{color:gold;background:#1e3a8a40;border-color:#ffd70066;transform:translate(4px)}.chat-view{flex-direction:column;height:calc(100vh - 160px);animation:.3s ease-out forwards tabFadeIn;display:flex}.chat-messages-container{scroll-behavior:smooth;flex-direction:column;flex:1;gap:1.25rem;padding-right:4px;display:flex;overflow-y:auto}.chat-messages-container::-webkit-scrollbar{width:4px}.chat-messages-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.message-wrapper{flex-direction:column;gap:.3rem;max-width:88%;animation:.4s cubic-bezier(.16,1,.3,1) forwards slideUpFade;display:flex}.message-wrapper.user{align-self:flex-end;align-items:flex-end}.message-wrapper.tutor{align-self:flex-start;align-items:flex-start}.message-bubble{border-radius:18px;padding:.85rem 1.1rem;box-shadow:0 4px 15px #00000026}.tutor .message-bubble{color:#f1f5f9;background:#ffffff0f;border:1px solid #ffffff14;border-bottom-left-radius:4px}.user .message-bubble{color:#fff;background:linear-gradient(135deg,#1e3a8a 0%,#2563eb 100%);border:1px solid #2563eb66;border-bottom-right-radius:4px;box-shadow:0 4px 20px #1e3a8a59}.message-text p{white-space:pre-wrap;margin:0 0 .5rem;font-size:.86rem;font-weight:300;line-height:1.5}.message-text p:last-child{margin-bottom:0}.highlight-keyword{color:gold;font-weight:700}.timestamp{color:#64748b;margin-top:.2rem;font-size:.62rem}.chat-action-pills{gap:.5rem;padding:.5rem 0;display:flex}.pill-chip{color:#cbd5e1;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:100px;padding:5px 12px;font-size:.75rem;transition:all .2s}.pill-chip:hover{color:gold;background:#ffd7001a;border-color:#ffd70066}.chat-input-area{padding:.5rem 0 1.25rem}.input-container{background:#0003;border:1px solid #ffffff1a;border-radius:100px;align-items:center;padding:.35rem .35rem .35rem 1rem;transition:all .3s;display:flex}.input-container:focus-within{border-color:#ffd70080;box-shadow:0 0 15px #ffd7001a}.chat-input-area input{color:#fff;background:0 0;border:none;outline:none;flex:1;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:300}.send-btn{color:#020617;cursor:pointer;background:linear-gradient(135deg,gold 0%,#d4af37 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.send-btn:hover{transform:scale(1.05)}.send-btn:disabled{color:#64748b;cursor:not-allowed;background:#ffffff0f}.toolkit-view{padding-bottom:2rem;animation:.3s ease-out forwards tabFadeIn}.toolkit-section h4{color:#f8fafc;margin:0 0 .85rem;font-size:.95rem;font-weight:800}.formulas-list{flex-direction:column;gap:.6rem;display:flex}.formula-card{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;overflow:hidden}.formula-header{color:#e2e8f0;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:.85rem 1rem;display:flex}.formula-header:hover{background:#ffffff05}.formula-title{font-size:.84rem;font-weight:700}.formula-detail{background:#00000040;border-top:1px solid #ffffff0a;padding:1rem}.formula-code{color:gold;word-break:break-all;background:#0000004d;border:1px solid #ffd70026;border-radius:6px;margin-bottom:.6rem;padding:8px;font-family:monospace;font-size:.78rem;display:block}.formula-example{color:#94a3b8;white-space:pre-wrap;margin:0;font-size:.78rem;line-height:1.45}.glossary-search-container{background:#0003;border:1px solid #ffffff14;border-radius:8px;align-items:center;margin-bottom:.85rem;padding:0 .75rem;display:flex}.search-icon{color:#64748b;flex-shrink:0}.glossary-search-input{color:#fff;background:0 0;border:none;outline:none;flex:1;padding:.6rem .5rem;font-size:.82rem}.glossary-list{flex-direction:column;gap:.5rem;max-height:280px;padding-right:4px;display:flex;overflow-y:auto}.glossary-list::-webkit-scrollbar{width:3px}.glossary-list::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:3px}.glossary-card{background:#ffffff05;border:1px solid #ffffff0a;border-radius:8px;flex-direction:column;gap:.25rem;padding:.75rem .85rem;display:flex}.glossary-term{color:gold;font-size:.82rem;font-weight:800}.glossary-definition{color:#cbd5e1;font-size:.78rem;line-height:1.4}.no-results{color:#64748b;text-align:center;padding:2rem 0;font-size:.78rem}.typing-indicator{background:#ffffff0f;border-radius:16px 16px 16px 4px;gap:4px;width:max-content;padding:10px 14px;display:flex}.typing-indicator span{background:#94a3b8;border-radius:50%;width:5px;height:5px;animation:1.4s ease-in-out infinite bounce}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{opacity:.4;transform:scale(0)}40%{opacity:1;transform:scale(1)}}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.companion-footer{text-align:center;border-top:1px solid #ffffff0a;padding:1rem}.companion-footer p{color:#475569;text-transform:uppercase;letter-spacing:.1em;margin:0;font-size:.65rem;font-weight:700}.insights-active-title{color:gold;margin:.5rem 0;font-size:.85rem;font-weight:700;line-height:1.4}.pathway-selector{background:#00000040;border:1px solid #ffffff0d;border-radius:10px;gap:2px;margin-bottom:1.25rem;padding:3px;display:flex}.country-tab{color:#64748b;cursor:pointer;text-align:center;background:0 0;border:none;border-radius:7px;flex:1;padding:.4rem 0;font-size:.74rem;font-weight:700;transition:all .2s}.country-tab.active{color:gold;background:#ffd7001f;border:1px solid #ffd70033}.country-tab:hover:not(.active){color:#cbd5e1;background:#ffffff05}.pathway-steps{flex-direction:column;gap:.85rem;margin-bottom:1.5rem;display:flex}.step-card{background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px;padding:1rem;transition:all .2s}.step-card:hover{background:#ffffff08;border-color:#ffd70026;transform:translateY(-2px)}.step-header{align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.step-number{color:#020617;background:gold;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.65rem;font-weight:900;display:flex}.step-title{color:#f1f5f9;font-size:.82rem;font-weight:800}.step-desc{color:#94a3b8;margin:0 0 .6rem;font-size:.75rem;line-height:1.45}.step-footer{color:#cbd5e1;border-top:1px solid #ffffff08;justify-content:space-between;padding-top:.5rem;font-size:.7rem;display:flex}.step-fee strong,.step-timeline strong{color:gold}.curated-profile-card{background:#ffffff08;border:1px solid #ffffff0d;border-radius:14px;margin-top:.5rem;padding:.85rem 1.25rem}.curated-badge{color:gold;text-transform:uppercase;letter-spacing:.1em;background:#ffd7001f;border-radius:4px;margin-bottom:.5rem;padding:3px 8px;font-size:.65rem;font-weight:800;display:inline-block}.specialty-picker-inline{color:#cbd5e1;align-items:center;gap:.5rem;font-size:.82rem;font-weight:500;display:flex}.inline-specialty-select{color:#f8fafc;cursor:pointer;background:#0000004d;border:1px solid #ffffff1a;border-radius:6px;outline:none;padding:4px 8px;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:700;transition:all .2s}.inline-specialty-select:hover{border-color:#ffd70066}.countdown-widget{background:linear-gradient(135deg,#1e3a8a26 0%,#0a0b0e80 100%);border:1px solid #1e3a8a4d;border-radius:16px;padding:1.25rem;box-shadow:inset 0 1px 1px #ffffff0d}.countdown-active-layout{align-items:center;gap:1.25rem;display:flex}.clock-ring{background:radial-gradient(circle,#0f172acc 0%,#1e3a8a40 100%);border:3px double #ffd70080;border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;animation:3s infinite alternate clockGlow;display:flex;box-shadow:0 0 15px #ffd70026}@keyframes clockGlow{0%{border-color:#ffd70066;box-shadow:0 0 10px #ffd7001a}to{border-color:#ffd700b3;box-shadow:0 0 20px #ffd70040}}.clock-days{color:gold;font-size:1.6rem;font-weight:900;line-height:1}.clock-label{text-transform:uppercase;color:#cbd5e1;letter-spacing:.05em;margin-top:2px;font-size:.55rem;font-weight:700}.countdown-pacing-info{flex-direction:column;flex:1;display:flex}.countdown-pacing-info h6{color:#f8fafc;margin:0 0 4px;font-size:.85rem;font-weight:800}.pacing-badge{text-transform:uppercase;border-radius:4px;width:max-content;margin:0 0 8px;padding:2px 8px;font-size:.65rem;font-weight:800;display:inline-block}.pacing-badge.urgency-high{color:#ef4444;background:#ef444426;border:.5px solid #ef44444d}.pacing-badge.urgency-moderate{color:#f59e0b;background:#f59e0b26;border:.5px solid #f59e0b4d}.pacing-badge.urgency-standard{color:#10b981;background:#10b98126;border:.5px solid #10b9814d}.pacing-text{color:#cbd5e1;margin:0 0 10px;font-size:.76rem;line-height:1.4}.edit-date-btn{color:#94a3b8;cursor:pointer;text-align:left;background:0 0;border:none;width:max-content;padding:0;font-size:.72rem;font-weight:700;text-decoration:underline;transition:color .2s}.edit-date-btn:hover{color:gold}.countdown-setup-layout{flex-direction:column;display:flex}.setup-header{align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.setup-icon{color:gold}.countdown-setup-layout h6{color:#f8fafc;margin:0;font-size:.85rem;font-weight:800}.countdown-setup-layout p{color:#cbd5e1;margin:0 0 12px;font-size:.76rem;line-height:1.4}.setup-input-row{gap:8px;display:flex}.setup-date-picker{color:#fff;background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;outline:none;flex:1;padding:8px 12px;font-family:Outfit,sans-serif;font-size:.8rem;transition:all .2s}.setup-date-picker:focus{border-color:#ffd70066}.setup-save-btn{color:#020617;cursor:pointer;background:linear-gradient(135deg,gold 0%,#d4af37 100%);border:none;border-radius:8px;padding:0 16px;font-size:.75rem;font-weight:900;transition:all .2s}.setup-save-btn:hover{transform:scale(1.02)}.specialty-focus-alert{background:#ffffff05;border:1px solid #ffffff0d;border-left:3.5px solid gold;border-radius:14px;padding:1.1rem}.alert-header{align-items:center;gap:.5rem;margin-bottom:.65rem;display:flex}.alert-icon{color:gold}.specialty-focus-alert h6{color:#f8fafc;margin:0;font-size:.84rem;font-weight:800}.alert-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.alert-list li{color:#cbd5e1;padding-left:12px;font-size:.76rem;line-height:1.45;position:relative}@media (width<=480px){.study-companion-trigger{border-radius:50%;width:48px;height:48px;padding:0;top:60%;right:1rem;transform:translateY(-50%)}.trigger-avatar,.avatar-pulse-ring{width:28px;height:28px}.trigger-badge-text{display:none}.study-companion-sidebar{border-left:none;width:100%!important}.companion-header{padding:1rem}.tutor-avatar-persona{width:38px;height:38px}.header-info h3{font-size:1rem}.companion-tabs{margin:.75rem 1rem;padding:.3rem}.tab-btn{padding:.4rem 0;font-size:.75rem}.companion-body{padding:0 1rem}.insights-view,.chat-view,.toolkit-view{gap:1rem}.insights-card{padding:1rem}.message-wrapper{max-width:92%}.message-bubble{padding:.75rem .95rem}.message-text p{font-size:.8rem}.chat-input-area{padding:.5rem 0 1rem}.input-container{padding:.3rem .3rem .3rem .75rem}.chat-view{height:calc(100vh - 140px)}}.alert-list li:before{content:"•";color:gold;position:absolute;left:0}@media (width>=1025px){body.study-companion-open .main-content{transition:all .3s cubic-bezier(.16,1,.3,1);margin-right:420px!important}body.study-companion-open .exam-nav,body.study-companion-open .exam-main-area{transition:all .3s cubic-bezier(.16,1,.3,1);width:calc(100% - 420px)!important;margin-right:420px!important}.main-content,.exam-nav,.exam-main-area{transition:all .3s cubic-bezier(.16,1,.3,1)}}:root{--primary:39 91% 63%;--secondary:20 3% 78%;--tertiary:215 100% 81%;--neutral:40 35% 7%;--surface:40 33% 5%;--on-surface:36 31% 88%;--on-surface-variant:36 30% 76%;--outline:37 15% 55%;--outline-variant:38 19% 26%;--radius-sm:0px;--radius-md:0px;--radius-lg:0px;--font-headline:"Noto Serif", serif;--font-body:"Inter", sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px}body{font-family:var(--font-body);background-color:hsl(var(--neutral));color:#fff;-webkit-font-smoothing:antialiased;margin:0}*{box-sizing:border-box;border-radius:var(--radius-md)}
