@import url("https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@300;400;500;600;700;800;900&display=swap");
:root{--ink:#241b3a;--muted:#706783;--purple:#7558f6;--purple2:#9b6df6;--cyan:#25c7d9;--pink:#ff6d8e;--orange:#ff9a5a;--green:#34c987;--line:#ebe7f3;--soft:#f8f5ff;--white:#fff;--shadow:0 24px 70px rgba(74,51,126,.12);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Roboto Slab",Roboto,Georgia,serif;font-optical-sizing:auto;color:var(--ink);background:linear-gradient(180deg,#fff8fb 0,#f8f5ff 38%,#f7fbff 100%);min-height:100vh;overflow-x:hidden}.page-orb{position:fixed;border-radius:50%;filter:blur(8px);pointer-events:none;z-index:-1;opacity:.55}.orb-one{width:420px;height:420px;background:radial-gradient(circle,rgba(255,137,173,.23),transparent 68%);top:-120px;left:-120px}.orb-two{width:520px;height:520px;background:radial-gradient(circle,rgba(117,88,246,.17),transparent 68%);right:-180px;top:260px}.shell{width:min(1180px,calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(235,231,243,.76)}.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,var(--purple),var(--pink) 58%,var(--orange));color:#fff;font-weight:900;font-size:22px;box-shadow:0 9px 24px rgba(117,88,246,.26)}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-size:20px;letter-spacing:-.5px}.brand-copy small{margin-top:5px;font-size:11px;color:var(--muted);font-weight:600;letter-spacing:.02em}.nav{display:flex;align-items:center;gap:25px}.nav a{color:#5e5670;text-decoration:none;font-size:14px;font-weight:700;transition:.2s}.nav a:hover{color:var(--purple)}.nav-cta{padding:11px 17px;border-radius:14px;background:linear-gradient(90deg,#7659f6,#36cbd5);color:white!important;box-shadow:0 8px 20px rgba(117,88,246,.18)}.hero-section{padding:70px 0 58px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid #e7defe;background:rgba(255,255,255,.8);border-radius:999px;color:#685d7c;font-size:12px;font-weight:800;box-shadow:0 8px 24px rgba(94,76,143,.06)}.live-dot,.online-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(52,201,135,.1)}.hero-copy h1{font-size:clamp(44px,5.7vw,76px);line-height:.98;margin:24px 0 22px;letter-spacing:-3.5px;max-width:720px}.hero-copy h1 span{background:linear-gradient(90deg,#ef5d82,#7b5ef5 55%,#22bfd1);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{font-size:18px;line-height:1.72;color:var(--muted);max-width:650px;margin:0}.hero-actions{display:flex;align-items:center;gap:12px;margin-top:30px}.primary-btn,.secondary-btn,.light-btn{border:0;cursor:pointer;font:inherit;font-weight:800;text-decoration:none;border-radius:16px;transition:.2s}.primary-btn{padding:15px 20px;background:linear-gradient(95deg,#7659f6,#a16cf2 48%,#32c8d6);color:#fff;box-shadow:0 14px 32px rgba(117,88,246,.25)}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(117,88,246,.3)}.primary-btn span{margin-left:8px}.secondary-btn{padding:14px 19px;color:#5e4bb8;background:#fff;border:1px solid #e6e0f4}.secondary-btn:hover{background:#faf8ff}.trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:25px;font-size:12px;color:#736987;font-weight:650}.trust-row span::first-letter{color:var(--green)}.assistant-card{background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.9);border-radius:30px;padding:18px;box-shadow:var(--shadow);position:relative}.assistant-card:before{content:"";position:absolute;inset:-1px;border-radius:31px;padding:1px;background:linear-gradient(135deg,rgba(255,109,142,.25),rgba(117,88,246,.16),rgba(37,199,217,.25));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.assistant-top{display:flex;align-items:center;gap:11px;padding:4px 3px 15px}.assistant-avatar{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;color:#fff;font-size:13px;font-weight:900;background:linear-gradient(145deg,#6f54f7,#fb6f97)}.assistant-top>div:nth-child(2){display:flex;flex-direction:column}.assistant-top strong{font-size:15px}.assistant-top small{display:flex;align-items:center;gap:7px;margin-top:4px;color:#7d748d;font-size:11px}.assistant-top .online-dot{width:6px;height:6px;box-shadow:none}.public-pill{margin-left:auto;font-size:9px;font-weight:900;letter-spacing:.09em;color:#6d56cc;background:#f1ecff;padding:7px 9px;border-radius:999px}.chat-window{height:295px;overflow-y:auto;padding:13px;background:linear-gradient(180deg,#fbfaff,#fff9fb);border:1px solid #f0ebf5;border-radius:21px;scrollbar-width:thin}.message{display:flex;gap:9px;margin:7px 0 13px;animation:rise .2s ease}.message.user-message{justify-content:flex-end}.bubble-icon{flex:0 0 27px;width:27px;height:27px;border-radius:9px;background:linear-gradient(135deg,#785bf5,#ff718f);display:grid;place-items:center;color:#fff;font-size:11px;font-weight:900;margin-top:2px}.bubble-content{max-width:84%;background:#fff;border:1px solid #ede8f4;border-radius:6px 16px 16px 16px;padding:11px 13px;box-shadow:0 7px 20px rgba(57,43,89,.05);font-size:13px;line-height:1.55}.bubble-content strong{font-size:13px}.bubble-content p{margin:5px 0 0;color:#665e76}.user-message .bubble-content{background:linear-gradient(135deg,#7458f4,#9170f5);color:#fff;border:0;border-radius:16px 6px 16px 16px}.source-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.source-tag{font-size:9.5px;padding:4px 7px;border-radius:999px;background:#f5f1ff;color:#6754ae;border:1px solid #e8e0fb}.typing{display:inline-flex;gap:4px;align-items:center;height:14px}.typing i{width:5px;height:5px;border-radius:50%;background:#9b90ab;animation:blink 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.quick-prompts{display:flex;gap:7px;overflow-x:auto;padding:12px 1px 9px;scrollbar-width:none}.quick-prompts::-webkit-scrollbar{display:none}.quick-prompts button{white-space:nowrap;border:1px solid #e8e1f8;background:#faf8ff;color:#675995;padding:8px 10px;border-radius:999px;font-size:10.5px;font-weight:750;cursor:pointer}.quick-prompts button:hover{border-color:#cabef7;background:#f5f1ff}.ask-bar{display:flex;gap:9px;margin-top:1px}.ask-bar input{flex:1;min-width:0;border:1px solid #ded8e8;background:#fff;border-radius:16px;padding:14px 15px;font-size:13px;color:var(--ink);outline:none;transition:.2s}.ask-bar input:focus{border-color:#a997f5;box-shadow:0 0 0 4px rgba(117,88,246,.08)}.ask-bar button{width:78px;border:0;border-radius:16px;color:#fff;background:linear-gradient(135deg,#7659f5,#2cc6d9);font-weight:800;cursor:pointer;box-shadow:0 9px 20px rgba(117,88,246,.18)}.ask-bar button b{display:none}.assistant-note{font-size:10px;color:#82798e;margin:10px 3px 1px}.topic-section{padding:70px 0 76px}.section-heading{text-align:center;max-width:760px;margin:0 auto 35px}.section-heading>span,.mini-label{font-size:10px;letter-spacing:.18em;font-weight:900;color:#e76183}.section-heading h2,.guidance-panel h2,.campus-card h2{font-size:clamp(30px,4vw,46px);line-height:1.07;letter-spacing:-1.7px;margin:10px 0 12px}.section-heading p{color:var(--muted);line-height:1.65;margin:0}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.topic-card{text-align:left;border:1px solid #eee9f5;background:rgba(255,255,255,.9);border-radius:23px;padding:22px;cursor:pointer;min-height:220px;box-shadow:0 12px 35px rgba(64,46,101,.055);transition:.25s;color:var(--ink);font:inherit}.topic-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(80,55,133,.11);border-color:#dfd4fb}.icon-wrap{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#fff0f5,#f1edff);font-style:normal;font-size:20px;margin-bottom:18px}.topic-card strong{display:block;font-size:17px;margin-bottom:9px}.topic-card span{display:block;color:#766d83;font-size:13px;line-height:1.58}.topic-card em{display:block;margin-top:17px;color:#765bf1;font-size:12px;font-style:normal;font-weight:850}.guidance-section{padding:35px 0 80px}.guidance-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch}.guidance-panel,.journey-card{border-radius:28px;padding:34px}.guidance-panel{background:linear-gradient(145deg,#fff 0,#fff8fb 44%,#f5f1ff 100%);border:1px solid #eee7f6}.guidance-panel p{color:var(--muted);line-height:1.7}.interest-cloud{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.interest-cloud button{border:1px solid #e6dff4;background:#fff;border-radius:999px;padding:10px 13px;font-size:12px;color:#5e5473;font-weight:750;cursor:pointer}.interest-cloud button:hover{border-color:#bcaef3;color:#684fd1}.journey-card{background:#29203f;color:#fff;box-shadow:0 24px 55px rgba(42,31,66,.18)}.journey-head{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.journey-head span{font-size:9px;letter-spacing:.15em;color:#c9bbff;font-weight:900}.journey-head b{font-size:22px;line-height:1.2}.journey-card ol{list-style:none;padding:0;margin:0}.journey-card li{display:flex;gap:13px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1)}.journey-card li>span{width:32px;height:32px;flex:0 0 32px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.1);color:#d9d0ff;font-size:10px;font-weight:900}.journey-card strong{font-size:13px}.journey-card p{margin:3px 0 0;font-size:11px;color:#c8c0d4;line-height:1.5}.full-btn{width:100%;margin-top:20px}.campus-section{padding:0 0 80px}.campus-card{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;background:linear-gradient(110deg,#7a5af5,#9d6df3 48%,#36c6d4);color:#fff;padding:40px 42px;border-radius:30px;box-shadow:0 24px 60px rgba(117,88,246,.22)}.campus-card .mini-label{color:#fce7ff}.campus-card h2{max-width:590px;margin-top:10px}.campus-card p{max-width:650px;color:rgba(255,255,255,.83);line-height:1.65;margin-bottom:0}.campus-actions{display:grid;gap:9px}.light-btn{padding:13px 15px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);color:#fff;text-align:left;backdrop-filter:blur(10px)}.light-btn:hover{background:rgba(255,255,255,.2);transform:translateX(3px)}footer{padding:26px 0 38px}.footer-inner{border-top:1px solid #e8e2ee;padding-top:24px;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center}.footer-brand .brand-mark{width:37px;height:37px;border-radius:12px;font-size:17px}.footer-brand .brand-copy strong{font-size:15px}.footer-brand .brand-copy small{font-size:9px}.footer-inner p{margin:0;color:#847a90;font-size:11px;text-align:center}.footer-inner>a{color:#6d57c9;text-decoration:none;font-size:11px;font-weight:800}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes blink{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@keyframes rise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:960px){.nav a:not(.nav-cta){display:none}.hero-section{padding-top:45px}.hero-grid,.guidance-grid,.campus-card{grid-template-columns:1fr}.hero-grid{gap:35px}.hero-copy{text-align:center}.hero-lead{margin:auto}.hero-actions,.trust-row{justify-content:center}.topic-grid{grid-template-columns:repeat(2,1fr)}.campus-actions{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.shell{width:min(100% - 24px,1180px)}.header-inner{height:68px}.brand-copy small{display:none}.nav-cta{padding:10px 13px}.hero-section{padding:34px 0 40px}.hero-copy h1{font-size:44px;letter-spacing:-2.2px}.hero-lead{font-size:15px}.hero-actions{flex-direction:column}.primary-btn,.secondary-btn{width:100%;text-align:center}.trust-row{display:none}.assistant-card{padding:13px;border-radius:23px}.assistant-card:before{border-radius:24px}.chat-window{height:315px}.topic-section{padding:45px 0}.topic-grid{grid-template-columns:1fr}.topic-card{min-height:auto}.guidance-panel,.journey-card{padding:25px}.campus-card{padding:29px 24px}.campus-actions{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-brand{justify-content:center}.footer-inner>a{text-align:center}.ask-bar button{width:56px}.ask-bar button span{display:none}.ask-bar button b{display:block}.section-heading h2,.guidance-panel h2,.campus-card h2{font-size:31px}}

/* Public trust, legal and policy footer */
.assistant-note{margin-top:10px;padding:11px 13px;border:1px solid rgba(122,92,255,.12);background:linear-gradient(135deg,#fff9fb,#faf7ff);border-radius:12px;line-height:1.45;color:#665e78;font-size:.82rem}
.assistant-note strong{color:#4a405f}
.site-footer{margin-top:0;background:linear-gradient(135deg,#211b36,#31234f);color:#f8f5ff}
.footer-main{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(180px,.7fr) minmax(180px,.7fr);gap:44px;padding:48px 0 30px}
.footer-about p{max-width:650px;color:#d8d1e8;line-height:1.7;margin:14px 0 0}
.footer-about .footer-verify{font-size:.88rem;color:#fff}
.site-footer .footer-brand{color:#fff}
.site-footer .brand-copy small{color:#cabfdd}
.footer-links{display:flex;flex-direction:column;gap:10px}
.footer-links strong{font-size:.95rem;margin-bottom:5px;color:#fff}
.footer-links a{color:#d8d1e8;text-decoration:none;font-size:.9rem;transition:.2s ease}
.footer-links a:hover{color:#fff;transform:translateX(2px)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 0 25px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;color:#bdb3d1;font-size:.78rem}

.policy-body{background:linear-gradient(135deg,#fff7fb,#f7f3ff);min-height:100vh;color:#342c48}
.policy-header{padding:22px 0}
.policy-shell{width:min(100% - 40px,1000px);margin:auto}
.policy-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px}
.policy-home{color:#6f51dc;text-decoration:none;font-weight:700}
.policy-card{background:#fff;border:1px solid rgba(112,81,220,.10);border-radius:26px;padding:36px;box-shadow:0 18px 55px rgba(68,46,97,.08);margin:10px auto 42px}
.policy-card .policy-kicker{display:inline-flex;padding:7px 11px;border-radius:999px;background:#f1ecff;color:#6a4fc9;font-size:.76rem;font-weight:800;letter-spacing:.06em}
.policy-card h1{font-size:clamp(2rem,4vw,3.1rem);margin:16px 0 8px;line-height:1.08;color:#392d51}
.policy-card .effective{color:#7b718d;font-size:.88rem;margin-bottom:24px}
.policy-alert{padding:16px 18px;border-radius:16px;background:linear-gradient(135deg,#fff1f5,#f6f1ff);border:1px solid rgba(235,91,114,.14);margin:20px 0;color:#4a405f;line-height:1.6}
.policy-card h2{font-size:1.18rem;margin:28px 0 8px;color:#4a3a68}
.policy-card p,.policy-card li{line-height:1.72;color:#5e556f}
.policy-card ul{padding-left:22px}
.policy-card a{color:#6c50d6}
.policy-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px;padding-top:22px;border-top:1px solid #eee8f5}
.policy-nav a{padding:8px 11px;border-radius:999px;background:#f6f2ff;text-decoration:none;font-size:.82rem}
@media(max-width:760px){.footer-main{grid-template-columns:1fr;gap:28px;padding-top:36px}.policy-card{padding:24px}.policy-shell{width:min(100% - 24px,1000px)}}

.payment-safety{border:1px solid rgba(235,120,75,.22);background:linear-gradient(135deg,rgba(255,248,239,.96),rgba(255,242,246,.96));}


/* Dedicated public Trust & Safety section - kept outside the chat card */
.safety-section{padding:6px 0 76px}
.safety-heading{text-align:center;max-width:790px;margin:0 auto 24px}
.safety-heading>span{font-size:10px;letter-spacing:.18em;font-weight:900;color:#e76183}
.safety-heading h2{font-size:clamp(27px,3.5vw,39px);line-height:1.12;letter-spacing:-1.25px;margin:9px 0 9px;color:var(--ink)}
.safety-heading p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.safety-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.safety-card{display:flex;align-items:flex-start;gap:15px;padding:22px 23px;border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 13px 34px rgba(64,46,101,.06);border:1px solid #ece6f3}
.safety-card .safety-icon{width:43px;height:43px;flex:0 0 43px;border-radius:14px;display:grid;place-items:center;font-weight:900;font-size:17px}
.safety-card strong{display:block;color:#443757;font-size:15px;margin:1px 0 7px}
.safety-card p{margin:0;color:#71677d;font-size:12.5px;line-height:1.65}
.safety-card p b{color:#51465f;font-weight:800}
.safety-verify{background:linear-gradient(145deg,#fff 0,#fff8fb 100%);border-color:#f0dfe7}
.safety-verify .safety-icon{background:#fff0f5;color:#dc5e7d}
.safety-payment{background:linear-gradient(145deg,#fff 0,#fff9ee 100%);border-color:#f0e2cf}
.safety-payment .safety-icon{background:#fff3df;color:#b66a22}
.safety-policy-links{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;margin-top:17px;color:#b1a7bc;font-size:11px}
.safety-policy-links a{color:#715dc3;text-decoration:none;font-weight:750}
.safety-policy-links a:hover{text-decoration:underline}
@media(max-width:760px){.safety-section{padding:0 0 54px}.safety-grid{grid-template-columns:1fr}.safety-card{padding:18px}.safety-heading{margin-bottom:19px}.safety-heading h2{font-size:28px}.safety-card p{font-size:12px}}

/* VEL AI voice input / spoken reply controls */
.voice-tools{display:flex;align-items:center;gap:8px;min-height:32px;margin:8px 1px 8px;flex-wrap:wrap}
.voice-toggle,.voice-language{border:1px solid #e2dced;background:#faf8ff;color:#5d5271;border-radius:999px;font:inherit;font-size:11px;font-weight:750;height:30px}
.voice-toggle{padding:0 11px;cursor:pointer;transition:.2s}
.voice-toggle:hover{border-color:#b9a8f3;background:#f4f0ff}.voice-toggle.is-off{color:#81778f;background:#f6f4f8}.voice-toggle:disabled{opacity:.55;cursor:not-allowed}
.voice-language{padding:0 9px;outline:none;cursor:pointer}
.voice-status{font-size:10px;color:#7e738e;min-height:14px;flex:1}
.ask-bar .voice-input-btn{width:48px;flex:0 0 48px;background:linear-gradient(135deg,#fff1f6,#f1edff);color:#7659f5;border:1px solid #e5dcf5;box-shadow:none;font-size:18px;transition:.2s}
.ask-bar .voice-input-btn:hover{transform:translateY(-1px);border-color:#bcaef3}
.ask-bar .voice-input-btn.is-listening{background:linear-gradient(135deg,#ffedf2,#ffe0e9);color:#e55477;box-shadow:0 0 0 5px rgba(229,84,119,.10);animation:velaiMicPulse 1.05s infinite}
.ask-bar .voice-input-btn:disabled{opacity:.42;cursor:not-allowed;transform:none}
.ask-bar .ask-submit{width:78px;background:linear-gradient(135deg,#7659f5,#2cc6d9);color:#fff}
.velai-speaking .voice-toggle{box-shadow:0 0 0 4px rgba(117,88,246,.08);border-color:#b7a8ef}
@keyframes velaiMicPulse{0%,100%{box-shadow:0 0 0 4px rgba(229,84,119,.08)}50%{box-shadow:0 0 0 8px rgba(229,84,119,.13)}}
@media(max-width:650px){.voice-tools{gap:6px}.voice-status{flex-basis:100%}.voice-language{max-width:140px}.ask-bar .voice-input-btn{width:44px;flex-basis:44px}.ask-bar .ask-submit{width:56px}}

/* Structured VEL AI course-guidance answers */
.chat-window{height:390px;padding:14px 14px 18px}
.bot-message{align-items:flex-start}
.bot-message .bubble-content{max-width:min(92%,760px);width:auto;white-space:normal;padding:13px 14px}
.user-message .bubble-content{max-width:min(82%,620px);white-space:pre-wrap;word-break:break-word}
.answer-copy{white-space:pre-wrap;word-break:break-word;line-height:1.68;color:#4f465f}
.structured-answer{max-width:min(96%,820px)!important;width:min(96%,820px);padding:0!important;overflow:hidden;background:#fff;border-color:#e9e2f4}
.course-answer-card{padding:18px 19px 16px;display:block;min-width:0}
.course-answer-kicker{display:block;font-size:9px;letter-spacing:.15em;font-weight:900;color:#7659e8;margin-bottom:6px}
.course-answer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.course-answer-card h3{font-size:18px;line-height:1.3;letter-spacing:-.3px;color:#332846;margin:0}
.answer-intro{margin:0 0 12px!important;color:#6a6077!important;font-size:12.5px;line-height:1.65}
.course-meta{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0 2px}
.course-pill{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#f4f0ff;color:#6650be;border:1px solid #e6defc;font-size:9.5px;font-weight:850;line-height:1}
.course-section{margin-top:14px;padding-top:13px;border-top:1px solid #f0ebf5}
.course-section-title{font-size:11px;letter-spacing:.02em;color:#4d405f;margin:0 0 8px;font-weight:900}
.course-overview p{font-size:12.5px;line-height:1.65;color:#655b71;margin:0}
.course-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 9px}
.course-list li{min-width:0;padding:9px 10px;border:1px solid #eee8f6;background:linear-gradient(145deg,#fff,#fbf9ff);border-radius:12px;font-size:11.5px;line-height:1.45;color:#5f566b}
.course-item-name{display:block;color:#443750;font-size:11.5px;margin-bottom:2px}
.course-item-desc{display:block;color:#776d81;font-size:10.5px}
.course-section-careers .course-list li{background:linear-gradient(145deg,#fff,#f7fbff);border-color:#e4eef3}
.course-guidance-note,.course-safety-note{margin-top:14px;padding:11px 12px;border-radius:13px;font-size:11px;line-height:1.55}
.course-guidance-note{background:linear-gradient(135deg,#f5f0ff,#f4fbff);border:1px solid #e3dafb;color:#5e5370}
.course-safety-note{background:#fff9f2;border:1px solid #f2e6d5;color:#756654}
.answer-followups{margin-top:15px;padding-top:13px;border-top:1px solid #f0ebf5}
.answer-followup-label{font-size:9.5px;font-weight:900;color:#81768d;margin-bottom:7px;text-transform:uppercase;letter-spacing:.08em}
.answer-followup-row{display:flex;flex-wrap:wrap;gap:6px}
.answer-followup{border:1px solid #e2daf6;background:#faf8ff;color:#6652bd;border-radius:999px;padding:7px 9px;font:inherit;font-size:9.5px;font-weight:780;cursor:pointer;line-height:1.2;text-align:left;transition:.18s}
.answer-followup:hover{background:#f3efff;border-color:#c8baf2;transform:translateY(-1px)}
.approved-source{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:11px;border-top:1px dashed #e9e3f0}
.approved-source-badge{font-size:9.5px;font-weight:850;color:#477b68;background:#f0faf5;border:1px solid #d9eee4;padding:5px 8px;border-radius:999px}
.approved-source-details{font-size:9.5px;color:#756985}
.approved-source-details summary{cursor:pointer;color:#6c58bd;font-weight:750}
.approved-source-details ul{margin:6px 0 0;padding-left:16px;color:#81778d}
.comparison-title{margin-bottom:6px!important}
.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}
.comparison-programme{min-width:0;border:1px solid #e9e2f4;border-radius:16px;padding:13px;background:linear-gradient(145deg,#fff,#fbfaff)}
.comparison-programme h4,.discovery-programme h4{margin:0;color:#423650;font-size:13px;line-height:1.35}
.comparison-label{font-size:8.5px;font-weight:900;letter-spacing:.08em;color:#8a7b9a;margin:11px 0 5px}
.comparison-focus{margin:0!important;font-size:10.8px!important;line-height:1.55!important;color:#685f73!important}
.comparison-mini-list{padding-left:16px;margin:0;display:grid;gap:4px}
.comparison-mini-list li{font-size:9.8px;line-height:1.4;color:#62586e}
.discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.discovery-programme{border:1px solid #eae4f3;border-radius:15px;padding:12px;background:#fff}
.discovery-programme p{font-size:10.8px!important;line-height:1.55!important;color:#6d6378!important;margin:8px 0 0!important}

@media(max-width:650px){
  .chat-window{height:430px;padding:10px}
  .bot-message .bubble-content{max-width:96%}
  .structured-answer{width:96%!important;max-width:96%!important}
  .course-answer-card{padding:15px 14px 13px}
  .course-answer-card h3{font-size:16px}
  .course-list,.comparison-grid,.discovery-grid{grid-template-columns:1fr}
  .course-list li{padding:9px}
  .answer-followup-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}
  .answer-followup-row::-webkit-scrollbar{display:none}
  .answer-followup{white-space:nowrap;flex:0 0 auto}
  .approved-source{align-items:flex-start}
}


/* Extended VEL AI guidance, approved fees and alumni dashboard */
.extended-guidance-answer .guidance-section-text{margin:0;color:#655b71;font-size:12px;line-height:1.65}
.guidance-list{grid-template-columns:1fr}.guidance-list li{background:linear-gradient(145deg,#fff,#fbf9ff)}
.fee-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.fee-group{border:1px solid #ebe4f4;border-radius:15px;padding:13px;background:linear-gradient(145deg,#fff,#fbfaff);min-width:0}.fee-group h4{margin:0 0 5px;color:#423650;font-size:13px;line-height:1.35}.fee-quota{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f3efff;color:#6953bd;font-size:9px;font-weight:850}.fee-items{margin-top:9px;display:grid;gap:5px}.fee-item-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed #eee8f3}.fee-item-row:last-child{border-bottom:0}.fee-item-row strong{display:block;color:#554a62;font-size:10.5px}.fee-item-row small{display:block;color:#8a8092;font-size:9px;margin-top:2px}.fee-amount{color:#3e7d68;font-size:12px;white-space:nowrap}.fee-payment-note{margin-top:13px;padding:11px 12px;border-radius:13px;background:#fff8ee;border:1px solid #f1e0c8;color:#6d604f;font-size:10.5px;line-height:1.55}
.alumni-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:12px 0}.alumni-stat{border:1px solid #ebe4f5;border-radius:12px;padding:9px;background:#faf8ff;text-align:center}.alumni-stat b{display:block;color:#6550d0;font-size:17px}.alumni-stat span{display:block;color:#7b7187;font-size:8.5px;margin-top:2px}.alumni-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.alumni-profile{border:1px solid #e9e3f2;border-radius:14px;padding:12px;background:#fff;min-width:0}.alumni-profile h4{margin:0;color:#453850;font-size:12.5px}.alumni-meta{display:block;color:#85798f;font-size:9px;margin:3px 0 7px}.alumni-profile p{margin:5px 0!important;font-size:10.5px!important;color:#655a70!important;line-height:1.5!important}.alumni-line{font-size:9.8px;line-height:1.45;color:#655a70;margin-top:5px}
@media(max-width:650px){.fee-group-grid,.alumni-grid{grid-template-columns:1fr}.alumni-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Public Events live cards · 2026-09-14 R1 */
.event-summary-meta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}
.public-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.public-event-card{overflow:hidden;border:1px solid rgba(115,86,220,.18);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#fcfaff 100%);box-shadow:0 8px 22px rgba(77,53,148,.07)}
.public-event-thumb{width:100%;height:150px;display:block;object-fit:cover;background:#f4efff}
.public-event-body{padding:14px}
.public-event-topline{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:8px}
.public-event-bucket,.public-event-type{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800;letter-spacing:.02em}
.public-event-bucket{background:#efe9ff;color:#6445c8}
.public-event-type{background:#eefaf6;color:#23785e}
.public-event-card h4{margin:0 0 9px;font-size:1rem;line-height:1.35;color:#302251}
.public-event-detail{font-size:.84rem;line-height:1.45;color:#625a73;margin-top:4px}
.public-event-excerpt{margin:10px 0 0;font-size:.87rem;line-height:1.55;color:#564f65}
.public-event-card .answer-followup{margin-top:11px}
@media (max-width:760px){.public-events-grid{grid-template-columns:1fr}.public-event-thumb{height:180px}}

/* Public Events photo gallery · R1 */
.public-event-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px 10px 0}
.public-event-gallery.is-single{grid-template-columns:1fr;padding:0}
.public-event-gallery a,.public-event-gallery span{display:block;min-width:0;border-radius:12px;overflow:hidden;background:#f4f0ff}
.public-event-gallery .public-event-thumb{width:100%;height:96px;display:block;object-fit:cover}
.public-event-gallery.is-single .public-event-thumb{height:190px}
@media(max-width:640px){.public-event-gallery .public-event-thumb{height:82px}.public-event-gallery.is-single .public-event-thumb{height:160px}}

/* VEL AI public faculty directory · 2026-09-15 R4 */
.faculty-directory-answer{width:min(100%,1240px);max-width:1240px;padding:0!important;overflow:hidden;border:1px solid #e9e1f4!important;border-radius:24px!important;background:#fff!important;box-shadow:0 18px 52px rgba(71,52,116,.11)!important}
.faculty-directory-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 20px;background:linear-gradient(135deg,#fff 0%,#fff8fc 50%,#f6f2ff 100%);border-bottom:1px solid #ece4f5}
.faculty-directory-heading{min-width:0}.faculty-directory-heading h3{margin:4px 0 7px!important;color:#261b3e!important;font-size:22px!important;line-height:1.24!important}.faculty-directory-heading .answer-intro{margin:0!important;max-width:860px;color:#71677d!important;font-size:12px!important;line-height:1.65!important}
.faculty-count-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:82px;height:68px;padding:0 14px;border-radius:18px;background:linear-gradient(135deg,#6d3ee8 0%,#9b4fd5 54%,#e14f95 100%);color:#fff;box-shadow:0 10px 25px rgba(119,66,198,.22);flex:0 0 auto}.faculty-count-badge strong{font-size:23px;line-height:1;font-weight:900}.faculty-count-badge span{margin-top:5px;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.92}
.faculty-leadership-box{margin:20px 26px 0;border:1px solid #e8dcf8;border-radius:18px;padding:16px 17px;background:linear-gradient(135deg,#fff 0%,#fff8fc 58%,#f8f4ff 100%);box-shadow:0 7px 22px rgba(78,57,132,.06)}
.faculty-leadership-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.faculty-leadership-title h4{margin:4px 0 0;color:#2d214d;font-size:15px}.faculty-leader-row{display:grid;grid-template-columns:auto minmax(190px,1fr) minmax(270px,2fr);gap:15px;align-items:center}.faculty-leader-photo,.faculty-leader-avatar{display:block;width:72px;height:84px;min-width:72px;border-radius:16px;object-fit:cover;object-position:center top;background:#f1ebfa;border:1px solid #e5dbf1;box-shadow:0 6px 18px rgba(107,70,160,.14)}.faculty-leader-avatar{display:grid;place-items:center;background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;font-weight:900;font-size:23px}.faculty-leader-meta strong{display:block;color:#241b3d;font-size:14px;line-height:1.35}.faculty-leader-meta small{display:block;color:#8a8097;font-size:10px;margin-top:5px}.faculty-leader-info{min-width:0}.faculty-public-designation{font-size:12px;font-weight:850;color:#6045b0}.faculty-public-department{font-size:11px;color:#6f6880;margin-top:4px}.faculty-leader-email{display:block;width:max-content;max-width:100%;margin-top:8px;color:#6840c5;text-decoration:none;font-size:11px;font-weight:750;word-break:break-all}.faculty-leader-info .faculty-profile-link{margin-top:9px}
.faculty-department-section{padding:20px 26px 2px}.faculty-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.faculty-section-heading strong{color:#302347;font-size:13.5px}.faculty-section-heading span{color:#8a8196;font-size:10.5px}.faculty-department-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:10px}.faculty-department-btn{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;width:100%;border:1px solid #e9e0f5;border-radius:15px;background:#fff;padding:12px 13px;text-align:left;cursor:pointer;box-shadow:0 5px 15px rgba(82,60,132,.045);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.faculty-department-btn:hover{transform:translateY(-1px);border-color:#d8c7f0;box-shadow:0 9px 22px rgba(82,60,132,.09)}.faculty-department-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#f1eaff,#fff1f7);font-size:16px}.faculty-department-text{min-width:0}.faculty-department-text strong{display:block;color:#49378a;font-size:11.5px;line-height:1.35}.faculty-department-text small{display:block;color:#8a8097;font-size:9.5px;margin-top:3px}.faculty-department-arrow{color:#aa91cf;font-size:16px;font-weight:900}
.faculty-strength-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:9px;margin:20px 26px 0}.faculty-strength-lead,.faculty-strength-item{min-height:66px;border:1px solid #ece5f4;border-radius:15px;padding:11px 14px;background:#fff}.faculty-strength-lead{display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#f5efff,#fff5f9)}.faculty-strength-lead span{color:#7c708b;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.faculty-strength-lead strong{margin-top:3px;color:#5a3fb6;font-size:22px;line-height:1}.faculty-strength-item{display:flex;align-items:center;gap:10px}.faculty-strength-item strong{display:grid;place-items:center;min-width:36px;height:36px;border-radius:11px;background:#f4f0fa;color:#6042bd;font-size:14px}.faculty-strength-item span{color:#62586e;font-size:10.5px;font-weight:750;line-height:1.3}
.faculty-table-shell{margin:14px 26px 24px;border:1px solid #e7dfef;border-radius:19px;background:#fbfafd;box-shadow:0 8px 26px rgba(73,56,118,.06);overflow:hidden}.faculty-table-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e9e2f1;background:#fff}.faculty-table-caption strong{display:block;color:#302444;font-size:13px}.faculty-table-caption span{display:block;margin-top:3px;color:#91879d;font-size:9.7px;line-height:1.4}.faculty-order-note{padding:6px 10px;border-radius:999px;background:#f6f1ff;color:#7254bd;font-size:9px;font-weight:850;white-space:nowrap}
.faculty-rank-section{margin:13px;border:1px solid #e8e1f0;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 4px 14px rgba(70,53,112,.035)}.faculty-rank-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;background:linear-gradient(90deg,#faf7ff 0%,#fff 72%);border-bottom:1px solid #ebe5f2}.faculty-rank-title{min-width:0}.faculty-rank-title strong{display:block;color:#5f43ad;font-size:11.5px;font-weight:900;letter-spacing:.035em;text-transform:uppercase}.faculty-rank-title span{display:block;margin-top:2px;color:#94899f;font-size:9.2px}.faculty-rank-count{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:10px;background:#eee6ff;color:#6c50b6;font-size:11px;font-weight:900}
.faculty-table-scroll{overflow:auto}.faculty-directory-table{width:100%;min-width:1060px;border-collapse:separate;border-spacing:0;table-layout:auto;font-size:11px}.faculty-directory-table thead th{text-align:left;padding:9px 11px;background:#fcfbfd;color:#74687f;border-bottom:1px solid #ece7f1;font-size:9px;font-weight:900;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}.faculty-directory-table thead th:first-child{text-align:center}.faculty-directory-table tbody td{padding:10px 11px;border-bottom:1px solid #f1edf4;vertical-align:middle;color:#554d60;line-height:1.45;background:#fff}.faculty-directory-table tbody tr:last-child td{border-bottom:0}.faculty-data-row:hover td{background:#fdfbff}.faculty-col-serial{width:40px;text-align:center!important;color:#a097a7!important;font-weight:800}.faculty-col-person{min-width:230px;width:25%}.faculty-col-designation{min-width:150px;width:15%}.faculty-col-department{min-width:180px;width:18%}.faculty-col-role{min-width:125px;width:12%}.faculty-col-qualification{min-width:180px;width:18%;color:#6a6172!important}.faculty-col-email{min-width:175px;width:17%}.faculty-col-profile{width:104px;text-align:center}.faculty-table-person{display:flex;align-items:center;gap:12px;min-width:0}.faculty-table-photo,.faculty-table-avatar{display:block;width:60px;height:70px;min-width:60px;flex:0 0 60px;border-radius:13px;object-fit:cover;object-position:center top;background:#f2edf8;border:1px solid #e5ddec;box-shadow:0 4px 12px rgba(114,78,180,.10)}.faculty-table-avatar{display:grid;place-items:center;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;font-weight:900;font-size:17px}.faculty-table-person-meta{min-width:0}.faculty-table-person-meta strong{display:block;color:#2a203f;font-size:11.8px;line-height:1.35;font-weight:850}.faculty-table-person-meta small{display:block;color:#91889c;font-size:9px;margin-top:5px}.faculty-designation-text{display:inline-block;color:#4d3c82;font-weight:800;font-size:10.5px}.faculty-role-pills{display:flex;flex-wrap:wrap;gap:5px;margin:0}.faculty-role-pill{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border-radius:999px;border:1px solid #e8e0f2;background:#f8f5fb;color:#6e6379;font-size:8.5px;font-weight:850;white-space:nowrap}.faculty-role-pill.is-hod{border-color:#f3d1a0;background:#fff7e9;color:#9b620e}.faculty-role-pill.is-principal{border-color:#d9c9fb;background:#f4efff;color:#643fbd}.faculty-role-pill.is-dean{border-color:#bfe4dc;background:#edf9f6;color:#2b7765}.faculty-role-pill.is-iqac{border-color:#cce0f7;background:#f1f7ff;color:#3f6c9f}.faculty-email-link{display:inline-block;color:#6841c5;text-decoration:none;font-weight:700;font-size:9.8px;word-break:break-all}.faculty-email-link:hover{text-decoration:underline}.faculty-profile-link{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:7px 10px;background:linear-gradient(135deg,#7044df,#9b4fd0,#dd4d93);color:#fff!important;text-decoration:none!important;font-size:9px;font-weight:850;white-space:nowrap;box-shadow:0 4px 10px rgba(114,67,188,.16)}.faculty-profile-link:hover{filter:brightness(.98);transform:translateY(-1px)}
.faculty-directory-answer>.answer-followup-row,.faculty-directory-answer>.approved-source{margin-left:26px;margin-right:26px}.faculty-directory-answer>.approved-source{margin-bottom:22px}
@media(max-width:980px){.faculty-strength-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.faculty-leader-row{grid-template-columns:auto 1fr}.faculty-leader-info{grid-column:1/-1}.faculty-order-note{display:none}}
@media(max-width:720px){.faculty-directory-hero{padding:19px 16px 16px}.faculty-directory-heading h3{font-size:18px!important}.faculty-count-badge{min-width:64px;height:58px;border-radius:15px}.faculty-count-badge strong{font-size:19px}.faculty-leadership-box,.faculty-table-shell{margin-left:14px;margin-right:14px}.faculty-department-section{padding-left:14px;padding-right:14px}.faculty-department-grid{grid-template-columns:1fr}.faculty-section-heading{align-items:flex-start;flex-direction:column;gap:2px}.faculty-strength-strip{margin-left:14px;margin-right:14px}.faculty-table-topbar{padding:12px 13px}.faculty-rank-section{margin:10px}.faculty-rank-heading{padding:10px 12px}.faculty-table-scroll{overflow:visible}.faculty-directory-table{min-width:0;display:block}.faculty-directory-table thead{display:none}.faculty-directory-table tbody{display:block}.faculty-directory-table .faculty-data-row{display:grid;grid-template-columns:1fr 1fr;margin:10px;border:1px solid #e9e2f0;border-radius:15px;overflow:hidden;box-shadow:0 5px 15px rgba(70,53,112,.045)}.faculty-directory-table .faculty-data-row td{display:block;width:auto!important;min-width:0!important;padding:9px 11px;border-bottom:1px solid #f0ebf3;background:#fff}.faculty-directory-table .faculty-data-row td::before{content:attr(data-label);display:block;margin-bottom:4px;color:#9a90a4;font-size:8px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.faculty-directory-table .faculty-data-row .faculty-col-serial{display:none}.faculty-directory-table .faculty-data-row .faculty-col-person{grid-column:1/-1;padding:12px 13px}.faculty-directory-table .faculty-data-row .faculty-col-person::before{display:none}.faculty-directory-table .faculty-data-row .faculty-col-qualification,.faculty-directory-table .faculty-data-row .faculty-col-email{grid-column:1/-1}.faculty-directory-table .faculty-data-row .faculty-col-profile{text-align:left;border-bottom:0}.faculty-table-photo,.faculty-table-avatar{width:60px;height:70px;min-width:60px;flex-basis:60px}.faculty-table-person-meta strong{font-size:12.5px}.faculty-directory-answer>.answer-followup-row,.faculty-directory-answer>.approved-source{margin-left:14px;margin-right:14px}}
@media(max-width:480px){.faculty-directory-hero{gap:10px}.faculty-count-badge{min-width:58px;padding:0 10px}.faculty-strength-strip{grid-template-columns:1fr 1fr}.faculty-strength-lead,.faculty-strength-item{min-height:58px}.faculty-leader-photo,.faculty-leader-avatar{width:64px;height:74px;min-width:64px}.faculty-directory-table .faculty-data-row{grid-template-columns:1fr;margin:9px}.faculty-directory-table .faculty-data-row td{grid-column:1/-1!important}.faculty-section-heading span{font-size:9.5px}.faculty-rank-title strong{font-size:10.8px}}

/* === VEL AI Internal Login R1 · 16-Sep-2026 =============================== */
.nav-login{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 13px;border-radius:999px;border:1px solid #dfd3ee;background:linear-gradient(135deg,#fff,#faf6ff);color:#6845bd!important;font-size:11px!important;font-weight:850!important;text-decoration:none!important;white-space:nowrap;box-shadow:0 5px 14px rgba(86,56,135,.06)}
.nav-login:hover{border-color:#cab8e7;background:#f8f2ff;transform:translateY(-1px)}
.nav-login.is-authenticated{border-color:#cde8de;background:linear-gradient(135deg,#f3fff9,#f8f4ff);color:#326f5e!important}
.internal-context-bar[hidden]{display:none!important}.internal-context-bar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid #eee7f4;border-bottom:1px solid #eee7f4;background:linear-gradient(90deg,#fbf7ff,#fff9fc 50%,#f4fcff)}
.internal-user-context{min-width:0}.internal-user-context strong{display:block;color:#342649;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.internal-user-context span{display:block;margin-top:2px;color:#887d92;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workspace-control{display:flex;align-items:center;gap:7px;color:#7c6f89;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.workspace-control select{min-width:122px;max-width:190px;border:1px solid #dfd5eb;border-radius:10px;background:#fff;color:#594075;padding:7px 28px 7px 9px;font:inherit;font-size:9.5px;font-weight:850;text-transform:none;letter-spacing:0;outline:none;cursor:pointer}.workspace-control select:focus{border-color:#9b79dc;box-shadow:0 0 0 3px rgba(118,82,223,.08)}
.internal-logout{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:10px;border:1px solid #ecdce6;background:#fff;color:#9a456a!important;text-decoration:none!important;font-size:9px;font-weight:850;white-space:nowrap}.internal-logout:hover{background:#fff4f8}
.public-pill.is-internal{background:linear-gradient(135deg,#6e4bd8,#ab4fc5,#da518f);color:#fff;border-color:transparent;box-shadow:0 5px 13px rgba(122,70,185,.18)}
@media(max-width:880px){.nav-login{padding:8px 10px}.internal-context-bar{grid-template-columns:1fr auto}.workspace-control{grid-column:1/2}.internal-logout{grid-column:2/3;grid-row:1/3}.internal-user-context{grid-column:1/2}}
@media(max-width:600px){.nav-login{font-size:0!important;width:36px;height:36px;padding:0}.nav-login:before{content:'🔐';font-size:14px}.nav-login.is-authenticated:before{content:'👤'}.internal-context-bar{grid-template-columns:1fr;padding:10px 12px;gap:8px}.workspace-control,.internal-user-context,.internal-logout{grid-column:1!important;grid-row:auto!important}.workspace-control{justify-content:space-between}.workspace-control select{flex:1;max-width:none}.internal-logout{justify-self:start}}

/* Secure in-chat institutional authentication */
.chat-auth-card{margin-top:12px;padding:13px;border:1px solid #e8e0f3;border-radius:16px;background:linear-gradient(135deg,#fff,#fbf8ff);box-shadow:0 10px 28px rgba(83,58,122,.07)}
.chat-auth-step{display:flex;align-items:center;gap:9px;margin-bottom:10px;color:#5d526b;font-size:11px;font-weight:800}
.chat-auth-step-no{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#eee8ff;color:#684bd1;font-size:10px}.chat-auth-step-no.is-current{background:linear-gradient(135deg,#7558f4,#da5b9c);color:#fff}.chat-auth-step-copy{letter-spacing:.02em}
.chat-auth-form{display:flex;gap:8px;align-items:stretch}.chat-auth-form input{min-width:0;flex:1;border:1px solid #ddd4e9;background:#fff;border-radius:12px;padding:11px 12px;font:inherit;font-size:12.5px;color:#2c2237;outline:none}.chat-auth-form input:focus{border-color:#9c87e9;box-shadow:0 0 0 3px rgba(117,88,246,.08)}
.chat-auth-primary{border:0;border-radius:12px;padding:11px 13px;background:linear-gradient(135deg,#7356ee,#c455c0,#ea678e);color:#fff;font:inherit;font-size:11.5px;font-weight:850;cursor:pointer;box-shadow:0 8px 18px rgba(113,74,201,.17);text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.chat-auth-primary:disabled{opacity:.65;cursor:wait}.chat-auth-anchor{margin-top:10px}.chat-auth-link{border:0;background:transparent;color:#674ec8;padding:9px 2px 0;font:inherit;font-size:10.5px;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.chat-auth-privacy{margin-top:10px;color:#857a90;font-size:9.7px;line-height:1.5}.chat-auth-error{margin-bottom:10px;padding:9px 10px;border:1px solid #ffd4dc;border-radius:10px;background:#fff2f5;color:#963249;font-size:10.5px;line-height:1.45}.chat-auth-session{margin:0 0 10px;padding:9px 10px;border-radius:10px;background:#f5f1ff;color:#6f6380;font-size:10px;line-height:1.45}
@media(max-width:650px){.chat-auth-form{flex-direction:column}.chat-auth-primary{width:100%}.chat-auth-card{padding:12px}.chat-auth-form input{width:100%}}

.chat-student-check-note{margin-bottom:10px;color:#6f6380;font-size:10.5px;line-height:1.5}
.chat-auth-choice-row{display:flex;gap:9px;flex-wrap:wrap}
.chat-auth-choice{border:1px solid #dfd5eb;border-radius:12px;padding:11px 14px;font:inherit;font-size:11.5px;font-weight:850;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.chat-auth-choice:hover{transform:translateY(-1px)}
.chat-auth-choice.is-yes{border:0;background:linear-gradient(135deg,#7356ee,#c455c0,#ea678e);color:#fff;box-shadow:0 8px 18px rgba(113,74,201,.17)}
.chat-auth-choice.is-no{background:#fff;color:#5f536c}
@media(max-width:650px){.chat-auth-choice-row{flex-direction:column}.chat-auth-choice{width:100%}}

/* R5 — authenticated conversational Bonafide workspace */
.bona-shell{margin-top:8px;border:1px solid #eadff2;border-radius:18px;background:linear-gradient(145deg,#fff,#fdfaff);box-shadow:0 12px 30px rgba(94,64,125,.08);overflow:hidden}
.bona-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 17px;border-bottom:1px solid #eee6f4;background:linear-gradient(135deg,#fff7fb,#f7f4ff)}
.bona-head h3{margin:3px 0 1px;font-size:16px;color:#34253f}.bona-kicker{font-size:9px;font-weight:900;letter-spacing:.12em;color:#8b4bc4}.bona-muted{font-size:10px;color:#83778d;line-height:1.45}.bona-section,.bona-apply{padding:14px 16px;border-bottom:1px solid #f0e9f5}.bona-section h4,.bona-apply h4{margin:0 0 10px;font-size:12px;color:#493753}
.bona-request-card{padding:12px;margin:9px 0;border:1px solid #ebe3f1;border-radius:14px;background:#fff}.bona-request-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:8px}.bona-request-top strong{font-size:11.5px;color:#3c2c46}.bona-stage{display:inline-flex;align-items:center;white-space:nowrap;padding:5px 8px;border-radius:999px;font-size:8.8px;font-weight:900;letter-spacing:.03em}.bona-stage.is-pending{background:#fff1d8;color:#966100}.bona-stage.is-approved{background:#e8f8ef;color:#237448}.bona-stage.is-closed{background:#f8e9ed;color:#9c4057}
.bona-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.bona-kv{display:flex;justify-content:space-between;gap:10px;padding:6px 8px;border-radius:9px;background:#faf8fc;font-size:9.5px}.bona-k{color:#8c8194}.bona-v{color:#493a52;font-weight:700;text-align:right;overflow-wrap:anywhere}.bona-empty{padding:12px;border:1px dashed #ddd2e6;border-radius:12px;background:#fcfbfd;color:#82778a;font-size:10.5px}.bona-warning{margin:10px 0;padding:10px 11px;border:1px solid #ffd5df;border-radius:12px;background:#fff5f7;color:#8e374d;font-size:10.5px;line-height:1.45}.bona-warning p{margin:4px 0 0}.bona-readonly-note{margin-bottom:11px;padding:9px 10px;border-radius:11px;background:#f4f0ff;color:#645475;font-size:9.8px;line-height:1.45}
.bona-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bona-field{display:flex;flex-direction:column;gap:5px;font-size:9.5px;font-weight:800;color:#695b73}.bona-field input,.bona-field select,.bona-field textarea,.bona-inline-remarks{width:100%;border:1px solid #dfd5e7;border-radius:10px;background:#fff;padding:9px 10px;font:inherit;font-size:10.5px;color:#3c3043;outline:none}.bona-field input:focus,.bona-field select:focus,.bona-field textarea:focus,.bona-inline-remarks:focus{border-color:#9e82df;box-shadow:0 0 0 3px rgba(126,86,202,.08)}.bona-field textarea{resize:vertical;min-height:62px}.bona-form>.bona-field:last-of-type{grid-column:1/-1}.bona-detail-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;border:1px dashed #ddd1e7;border-radius:12px;background:#fcfaff}.bona-detail-grid[hidden]{display:none}.bona-checks{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px}.bona-checks label{display:flex;align-items:center;gap:6px;font-size:9.5px;color:#665872}.bona-checks input{width:auto}.bona-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.bona-btn{border:0;border-radius:10px;padding:9px 12px;font:inherit;font-size:9.8px;font-weight:900;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.bona-btn.primary{background:linear-gradient(135deg,#7558ef,#bd54c4,#eb6b92);color:#fff;box-shadow:0 8px 18px rgba(117,88,239,.15)}.bona-btn.secondary{border:1px solid #dfd5e7;background:#fff;color:#674f86}.bona-btn.danger{background:#fff0f3;color:#9b3d56;border:1px solid #f2cbd5}.bona-btn:disabled{opacity:.55;cursor:wait}.bona-confirm{margin-top:12px;padding:12px;border:1px solid #dccff0;border-radius:13px;background:linear-gradient(135deg,#faf7ff,#fff)}.bona-confirm>strong{display:block;margin-bottom:8px;font-size:11.5px;color:#493653}.bona-success-id{display:inline-flex;margin-top:7px;padding:6px 9px;border-radius:9px;background:#e8f8ef;color:#237448;font-size:10px;font-weight:900}.bona-refresh{margin:12px 16px}.bona-admin-note{margin:14px 16px;padding:12px;border:1px solid #e1d5ec;border-radius:13px;background:#fbf8ff;font-size:10px;color:#64576e}.bona-admin-note p{margin:5px 0 10px;line-height:1.5}.bona-inline-remarks{margin-top:8px}.bona-certificate-card{border-left:3px solid #56b984}
@media(max-width:650px){.bona-head{flex-direction:column}.bona-mini-grid,.bona-form,.bona-detail-grid{grid-template-columns:1fr}.bona-form>.bona-field:last-of-type,.bona-detail-grid,.bona-checks{grid-column:auto}.bona-request-top{flex-direction:column}.bona-stage{align-self:flex-start}.bona-actions .bona-btn{flex:1}.bona-kv{align-items:flex-start}.bona-v{text-align:left}}

/* Bonafide conversational R6 - guided choices and profile gate */
.bot-message .bubble-content.structured-answer{flex:1 1 760px;width:auto!important;max-width:900px!important;min-width:0}
.bona-shell{width:100%}
.bona-question-section{background:linear-gradient(135deg,#fff,#fcf8ff)}
.bona-question-grid,.bona-option-grid,.bona-purpose-grid{display:flex;flex-wrap:wrap;gap:7px}
.bona-question-chip{border:1px solid #dfd3f3;background:#fff;color:#6650b5;border-radius:999px;padding:7px 10px;font:inherit;font-size:9.6px;font-weight:850;cursor:pointer;transition:.18s;text-align:left}
.bona-question-chip:hover{transform:translateY(-1px);border-color:#bda9ef;background:#f8f4ff;box-shadow:0 6px 16px rgba(94,64,125,.08)}
.bona-profile-gate{margin:13px 16px;padding:13px;border:1px solid #f0c9d2;border-radius:14px;background:linear-gradient(135deg,#fff5f7,#fffafd)}
.bona-profile-gate-head{display:flex;gap:10px;align-items:flex-start}.bona-profile-gate-head strong{display:block;color:#8d344c;font-size:11.5px}.bona-profile-gate-head p{margin:4px 0 0;color:#7b6370;font-size:10px;line-height:1.5}
.bona-lock-icon{width:27px;height:27px;flex:0 0 27px;border-radius:9px;display:grid;place-items:center;background:#ffe4eb;color:#a73c58;font-weight:950}
.bona-option-section{background:#fff}.bona-option-grid .bona-question-chip{border-radius:11px;background:linear-gradient(135deg,#faf7ff,#fff);min-width:128px;color:#533f72}
.bona-purpose-grid .bona-question-chip{background:#fbfbff;color:#5d5370}
.bona-profile-ok{margin:12px 16px;padding:12px 13px;border-radius:13px;background:#edf9f2;border:1px solid #c9ead7;color:#286b47}.bona-profile-ok strong{font-size:11.5px}.bona-profile-ok p{margin:4px 0 0;font-size:10px}
@media(max-width:650px){.bot-message .bubble-content.structured-answer{flex:1 1 auto;max-width:96%!important}.bona-question-grid,.bona-option-grid,.bona-purpose-grid{display:grid;grid-template-columns:1fr}.bona-question-chip{width:100%;border-radius:10px}.bona-profile-gate .bona-actions{display:grid;grid-template-columns:1fr}.bona-profile-gate .bona-btn{width:100%}}
.bona-chat-answer{padding:14px 16px 2px;color:#51465e;font-size:12px;line-height:1.62;white-space:pre-wrap}.bona-chat-answer+.bona-shell{margin-top:8px}

/* Bonafide R7 — complete missing student profile inside chat */
.bona-profile-form{margin-top:12px}.bona-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bona-profile-field textarea{min-height:76px;resize:vertical}.bona-profile-input[type=file]{padding:8px;background:#fff}.bona-profile-privacy{margin-top:9px;padding:9px 10px;border-radius:10px;background:#f7f4fb;color:#756980;font-size:9.5px;line-height:1.45}.bona-profile-message{margin-top:9px;font-size:10px;line-height:1.45}.bona-profile-message.is-error{padding:9px 10px;border:1px solid #f2cbd5;border-radius:10px;background:#fff1f4;color:#973b54}.bona-profile-message.is-success{padding:9px 10px;border:1px solid #c9ead7;border-radius:10px;background:#edf9f2;color:#286b47}
@media(max-width:650px){.bona-profile-grid{grid-template-columns:1fr}}

/* ===== Bonafide R8: canonical live preview inside chat ===== */
.bona-live-preview{position:relative;margin:12px 0 2px;border:1px solid #ded4eb;border-radius:15px;background:#f4f1f7;overflow:hidden;box-shadow:0 10px 24px rgba(68,48,88,.08)}
.bona-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:11px 12px;background:linear-gradient(135deg,#fff,#f8f4ff);border-bottom:1px solid #e6ddec}
.bona-preview-head h4{margin:2px 0 1px;font-size:11.5px;color:#493653}.bona-preview-head p{margin:0}.bona-preview-actions{display:flex;gap:6px;flex-wrap:wrap}
.bona-draft-ribbon{position:absolute;top:66px;right:-34px;z-index:2;transform:rotate(35deg);min-width:170px;padding:5px 30px;text-align:center;background:#b64d70;color:#fff;font-size:8px;font-weight:950;letter-spacing:.08em;box-shadow:0 3px 10px rgba(98,41,61,.2);pointer-events:none}
.bona-preview-frame{display:block;width:100%;height:735px;border:0;background:#eef2f7}
.bona-live-preview:fullscreen{background:#eef2f7;padding:14px;overflow:auto}.bona-live-preview:fullscreen .bona-preview-frame{height:calc(100vh - 92px)}
@media(max-width:650px){.bona-preview-head{flex-direction:column}.bona-preview-frame{height:510px}.bona-draft-ribbon{top:92px;right:-48px}.bona-preview-actions .bona-btn{width:100%}}

/* ===== Bonafide R9 — human guided flow + beautiful live A4 preview ===== */
.bot-message .bubble-content.bonafide-answer{width:min(96vw,1080px)!important;max-width:1080px!important;flex:1 1 980px}
.bona-human-banner,.bona-human-prompt{display:flex;gap:11px;align-items:flex-start;padding:14px 16px;background:linear-gradient(135deg,#fffafc,#f8f5ff 62%,#f4fbff);border-bottom:1px solid #eee7f4}
.bona-human-prompt{margin:0 0 12px;padding:11px 12px;border:1px solid #e9e0f2;border-radius:14px;background:linear-gradient(135deg,#fff,#fbf8ff)}
.bona-human-prompt.compact{margin-bottom:10px}
.bona-human-avatar{width:34px;height:34px;min-width:34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#7558ef,#c64dc4,#ff7b7b);color:#fff;font-size:9px;font-weight:950;letter-spacing:.04em;box-shadow:0 7px 16px rgba(117,88,239,.18)}
.bona-human-banner strong,.bona-human-prompt strong{display:block;color:#382746;font-size:12px;line-height:1.45}
.bona-human-banner p,.bona-human-prompt p{margin:4px 0 0;color:#776b80;font-size:10.5px;line-height:1.55}
.bona-flow-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:12px 16px;border-bottom:1px solid #f0e8f4;background:#fff}
.bona-flow-step{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;padding:8px 7px;border:1px solid #eee7f2;border-radius:11px;background:#faf9fc;color:#9a8fa3;font-size:9px;font-weight:850}
.bona-flow-step.active{border-color:#cbbaf0;background:#f7f3ff;color:#664aae;box-shadow:0 6px 15px rgba(105,73,174,.07)}
.bona-flow-step.done{border-color:#c8e9d7;background:#effaf4;color:#26734a}.bona-flow-step.locked{opacity:.65}
.bona-flow-number{width:20px;height:20px;min-width:20px;border-radius:7px;display:grid;place-items:center;background:#eee9f3;color:#7e7189;font-size:8.5px}.bona-flow-step.active .bona-flow-number{background:#7658ee;color:#fff}.bona-flow-step.done .bona-flow-number{background:#42ad76;color:#fff}
.bona-flow-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bona-guided-section{padding-top:14px}
.bona-type-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bona-type-card{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:'icon title' 'icon desc' 'icon action';column-gap:10px;text-align:left;border:1px solid #e6ddec;border-radius:15px;background:linear-gradient(145deg,#fff,#fcf9ff);padding:12px 13px;color:#493a55;font:inherit;cursor:pointer;transition:.18s;box-shadow:0 7px 20px rgba(70,48,99,.04)}
.bona-type-card:hover{transform:translateY(-2px);border-color:#bda9ea;box-shadow:0 12px 25px rgba(76,52,113,.10)}.bona-type-icon{grid-area:icon;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#f3efff,#fff1f6);font-size:16px}.bona-type-card strong{grid-area:title;color:#3c2d47;font-size:11px}.bona-type-card small{grid-area:desc;color:#7c7184;font-size:9.4px;line-height:1.45;margin-top:3px}.bona-type-card em{grid-area:action;margin-top:7px;color:#7558d8;font-style:normal;font-size:9px;font-weight:900}
.bona-purpose-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bona-purpose-card{display:flex;flex-direction:column;gap:3px;text-align:left;border:1px solid #e8e0ee;border-radius:12px;background:#fff;padding:10px 11px;color:#51415c;font:inherit;cursor:pointer;transition:.16s}.bona-purpose-card:hover{border-color:#bea9e8;background:#faf7ff;transform:translateY(-1px)}.bona-purpose-card strong{font-size:10px;color:#493654}.bona-purpose-card small{font-size:8.9px;color:#81758a;line-height:1.4}
.bona-success-conversation{display:flex;gap:11px;align-items:flex-start;padding:13px;border-radius:13px;background:linear-gradient(135deg,#edf9f2,#f8fffb);border:1px solid #c9ead7}.bona-success-check{width:31px;height:31px;min-width:31px;border-radius:10px;display:grid;place-items:center;background:#36a66e;color:#fff;font-size:17px;font-weight:950}.bona-success-conversation strong{display:block;color:#246644;font-size:11.5px}.bona-success-conversation p{margin:4px 0 0!important;color:#4e735f!important;font-size:10px!important;line-height:1.5!important}
.bona-live-preview{margin:16px 0 6px;border-radius:20px;background:#e7ebf1;border:1px solid #d7dce5;box-shadow:0 18px 42px rgba(35,39,55,.12);overflow:hidden}
.bona-preview-head{padding:14px 15px;background:rgba(255,255,255,.97);border-bottom:1px solid #dde2ea;align-items:center}.bona-preview-copy h4{font-size:13px;margin:3px 0 2px;color:#342a3f}.bona-preview-copy .bona-muted{font-size:9.8px;max-width:580px}
.bona-preview-actions{align-items:center}.bona-preview-actions .bona-btn{min-height:34px;padding:8px 11px}.bona-preview-actions .bona-icon-btn{width:36px;padding:8px 0;font-size:16px;line-height:1}
.bona-preview-stage{padding:14px;background:radial-gradient(circle at 50% 5%,#f6f8fb 0,#e7ebf1 72%)}
.bona-preview-frame{display:block;width:100%;height:clamp(760px,82vh,960px);border:0;border-radius:12px;background:#e9edf3;box-shadow:inset 0 0 0 1px rgba(95,103,121,.10)}
.bona-draft-ribbon{top:76px;right:-31px;min-width:188px;padding:6px 34px;font-size:8.5px;background:linear-gradient(90deg,#a53e63,#cf5578)}
.bona-live-preview:fullscreen{padding:16px;background:#dfe4eb}.bona-live-preview:fullscreen .bona-preview-stage{height:calc(100vh - 92px);padding:10px}.bona-live-preview:fullscreen .bona-preview-frame{height:100%}
@media(max-width:760px){.bot-message .bubble-content.bonafide-answer{width:96%!important;max-width:96%!important}.bona-flow-steps{grid-template-columns:repeat(5,minmax(54px,1fr));overflow-x:auto;justify-content:start}.bona-type-card-grid,.bona-purpose-card-grid{grid-template-columns:1fr}.bona-preview-stage{padding:7px}.bona-preview-frame{height:650px}.bona-preview-actions{width:100%;display:grid;grid-template-columns:44px 1fr 44px 1fr}.bona-preview-actions .bona-btn{width:auto!important}.bona-draft-ribbon{top:116px;right:-46px}}
@media(max-width:480px){.bona-human-banner,.bona-human-prompt{padding:11px}.bona-flow-steps{padding:9px 10px}.bona-flow-step{padding:7px 5px}.bona-flow-label{font-size:8px}.bona-preview-frame{height:560px}.bona-preview-head{padding:11px}.bona-preview-copy h4{font-size:11.5px}}
.bona-status-journey{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:11px 0 7px;padding-top:2px}.bona-status-journey:before{content:"";position:absolute;left:9%;right:9%;top:14px;height:2px;background:#ece6f0;z-index:0}.bona-status-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:5px;color:#9b91a2;text-align:center}.bona-status-dot{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#f0edf3;border:2px solid #fff;box-shadow:0 0 0 1px #e9e2ed;font-size:8px;font-weight:950}.bona-status-step small{font-size:8.3px;font-weight:850}.bona-status-step.done{color:#28764d}.bona-status-step.done .bona-status-dot{background:#dff5e8;color:#28764d;box-shadow:0 0 0 1px #bfe4cf}.bona-status-step.active{color:#7652b3}.bona-status-step.active .bona-status-dot{background:#eee7ff;color:#7652b3;box-shadow:0 0 0 2px #d6c7f7}.bona-status-step.bad{color:#a33f58}.bona-status-step.bad .bona-status-dot,.bona-status-step.closed .bona-status-dot{background:#fde8ed;color:#a33f58;box-shadow:0 0 0 1px #f4cbd5}.bona-current-stage{padding:7px 9px;border-radius:9px;background:#f6f2ff;color:#664b97;font-size:9.3px;font-weight:850}.bona-current-stage.is-closed{background:#fff0f3;color:#963d55}

/* R10 Bonafide complete role workflow */
.bona-human-note{margin-top:9px;padding:9px 11px;border:1px solid #eadff2;border-radius:11px;background:linear-gradient(135deg,#fff9fd,#fbf8ff);font-size:10px;line-height:1.5;color:#5c4c67}
.bona-admin-review-panel{margin-top:12px;padding:14px;border:1px solid #d9cceb;border-radius:16px;background:linear-gradient(145deg,#fff,#fbf8ff);box-shadow:0 10px 24px rgba(72,45,101,.08)}
.bona-admin-review-head h4{margin:4px 0 5px;font-size:14px;color:#3f3150}.bona-admin-review-head p{margin:0 0 10px}.bona-admin-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}
.bona-admin-fee-box{margin-top:12px;padding:12px;border:1px solid #e4d8ed;border-radius:14px;background:#fdfbff}.bona-admin-fee-box h5{margin:0 0 10px;font-size:11.5px;color:#4b385a}
.bona-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bona-admin-field{display:flex;flex-direction:column;gap:5px;font-size:9.5px;font-weight:800;color:#675872}.bona-admin-input{width:100%;border:1px solid #ddd1e7;border-radius:10px;background:#fff;padding:9px 10px;font:inherit;font-size:10.5px;color:#3c3043;outline:none}.bona-admin-input:focus{border-color:#9e82df;box-shadow:0 0 0 3px rgba(126,86,202,.08)}
.bona-admin-years{margin-top:11px}.bona-admin-years>strong{display:block;margin-bottom:7px;font-size:10px;color:#4e4058}.bona-year-chips{display:flex;gap:7px;flex-wrap:wrap}.bona-year-chip{display:flex;align-items:center;gap:5px;border:1px solid #ddd1e7;border-radius:999px;background:#fff;padding:6px 9px;font-size:9px;font-weight:800;color:#5c4a69;cursor:pointer}.bona-year-chip input{accent-color:#8059d8}
.bona-admin-toggle{display:flex;align-items:center;gap:7px;margin-top:11px;font-size:9.5px;font-weight:800;color:#5a4c64}.bona-admin-toggle input{accent-color:#8059d8}.bona-admin-actions{margin-top:12px}.bona-admin-action-status{margin-top:8px;min-height:14px;font-size:9.5px;font-weight:700;color:#6a5876}
@media(max-width:720px){.bona-admin-grid,.bona-admin-summary{grid-template-columns:1fr}.bona-admin-review-panel{padding:11px}.bona-year-chip{padding:6px 8px}}

/* MCP R2 — strict active-role module results */
.mcp-answer{max-width:min(920px,96%)}.mcp-shell{display:grid;gap:12px;margin-top:10px}.mcp-head{display:flex;justify-content:space-between;gap:12px;padding:15px 16px;border:1px solid #eadff5;border-radius:18px;background:linear-gradient(135deg,#fff,#fff7fc 52%,#f6f3ff);box-shadow:0 8px 24px rgba(80,48,120,.07)}.mcp-kicker{display:block;font-size:9px;font-weight:900;letter-spacing:.11em;color:#9a3f83}.mcp-head h3{margin:4px 0 3px;font-size:17px;color:#443052}.mcp-muted{font-size:11px;color:#766b80;line-height:1.45}.mcp-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px}.mcp-summary-cell{padding:10px 11px;border:1px solid #eee7f4;border-radius:13px;background:#fff}.mcp-summary-value{display:block;margin-top:3px;color:#443052;font-size:12px}.mcp-section{padding:12px;border:1px solid #eee5f5;border-radius:16px;background:#fff}.mcp-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px;color:#51385e}.mcp-section-head span{font-size:10px;color:#897b92}.mcp-record-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:9px}.mcp-record-card{padding:11px;border:1px solid #f0e9f5;border-radius:13px;background:linear-gradient(180deg,#fff,#fcfaff)}.mcp-record-title{display:block;color:#4e365a;font-size:12px;margin-bottom:7px}.mcp-record-grid{display:grid;gap:4px}.mcp-record-row{display:grid;grid-template-columns:minmax(82px,.8fr) minmax(0,1.2fr);gap:7px;font-size:10.5px}.mcp-record-label{color:#8a7a94;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.mcp-record-value{color:#4d4452;overflow-wrap:anywhere}.mcp-scope-note,.mcp-empty{padding:10px 12px;border-radius:12px;background:#f8f5fb;color:#6c5e76;font-size:10.5px;line-height:1.45}.mcp-open-btn{display:inline-flex;width:max-content;padding:9px 13px;border-radius:12px;background:linear-gradient(135deg,#6f55d9,#c84b8f,#f29442);color:#fff!important;text-decoration:none;font-size:10.5px;font-weight:850;box-shadow:0 8px 18px rgba(129,66,158,.18)}

/* R5 — role-scoped action forms inside VEL AI chat */
.mcp-action-panel{margin:14px 0 0;padding:14px;border:1px solid #eadffc;border-radius:18px;background:linear-gradient(180deg,#fff,#fff9fd);box-shadow:0 8px 22px rgba(104,65,154,.07)}
.mcp-action-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.mcp-action-head p{margin:4px 0 0}.mcp-action-form{margin-top:12px;padding:13px;border:1px solid #eee5f7;border-radius:16px;background:#fff}.mcp-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mcp-action-field{display:flex;flex-direction:column;gap:6px}.mcp-action-field-wide{grid-column:1/-1}.mcp-action-input{width:100%;box-sizing:border-box;border:1px solid #ddd3ec;border-radius:11px;padding:10px 11px;background:#fff;color:#30283a;font:inherit;outline:none}.mcp-action-input:focus{border-color:#9367ef;box-shadow:0 0 0 3px rgba(147,103,239,.1)}textarea.mcp-action-input{resize:vertical}.mcp-action-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.mcp-btn{border:0;border-radius:11px;padding:9px 13px;font-weight:800;cursor:pointer}.mcp-btn.primary{background:linear-gradient(135deg,#7c5cff,#9a63ef);color:#fff}.mcp-btn.secondary{background:#f2edff;color:#6040bb}.mcp-btn.danger{background:#ffe9ed;color:#b4233d}.mcp-btn:disabled{opacity:.55;cursor:not-allowed}.mcp-action-status{margin-top:10px;font-size:12px;font-weight:700;color:#675b73}.mcp-load-box{display:grid;gap:9px;margin-top:12px}.mcp-load-card,.mcp-decision-card{border:1px solid #eee6f6;border-radius:14px;padding:11px;background:#fff}.mcp-load-card .mcp-muted,.mcp-decision-card .mcp-muted{margin-top:3px}.mcp-alt-choice{margin:8px 0;font-size:12px;font-weight:700;color:#5e506a}.mcp-alt-search{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:9px}.mcp-alt-results{grid-column:1/-1;display:grid;gap:6px}.mcp-alt-result{border:1px solid #e5d9f4;border-radius:10px;padding:8px 10px;background:#fbf8ff;color:#4e3a6d;text-align:left;cursor:pointer}.mcp-alt-result:hover{background:#f3edff}.mcp-decision-card{margin-top:9px}.mcp-decision-card>.mcp-action-input{margin-top:9px}.mcp-cancel-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #f0e7f6;font-size:12px}
@media(max-width:760px){.mcp-action-grid{grid-template-columns:1fr}.mcp-action-field-wide{grid-column:auto}.mcp-alt-search{grid-template-columns:1fr}.mcp-alt-results{grid-column:auto}.mcp-cancel-row{align-items:flex-start;flex-direction:column}}


/* ==========================================================================
   VEL AI CLASSIC R16 — RESPONSIVE ONLY
   Keeps the original VEL AI visual design intact. No second theme layer.
   ========================================================================== */
:root{
  --surface:var(--white);--surface2:var(--soft);--line2:#f2edf8;
  --grad:linear-gradient(135deg,var(--purple),var(--pink) 58%,var(--cyan));
  --red:#d85170;--muted2:#92889d;
  --shadow-sm:0 8px 24px rgba(74,51,126,.07);
  --shadow-md:0 18px 48px rgba(74,51,126,.12);
  --r-sm:14px;--r-md:18px;--r-lg:23px;--r-xl:28px;
}

/* Safe media and rich responses */
img,svg,video,iframe{max-width:100%} img,video{height:auto}
#assistant img,#assistant video,#assistant iframe,.answer-copy img,.public-event-card img{max-width:100%;height:auto}
.structured-answer,.mcp-answer,.bonafide-answer{display:block;width:100%;min-width:0;max-width:100%}
.structured-answer>*,.mcp-answer>*,.bonafide-answer>*{min-width:0;max-width:100%}
.structured-answer table,.mcp-answer table,.bonafide-answer table{width:100%}

/* The original design, but the chat now grows with the screen. */
.chat-window{height:clamp(360px,44dvh,610px);min-height:340px}
.assistant-card{min-width:0}
.hero-grid>*{min-width:0}
.bubble-content{overflow-wrap:anywhere;word-break:normal}

/* Logged-in users get a large workspace, without changing the original card language. */
body.velai-workspace-mode .hero-section{padding:18px 0 22px;min-height:calc(var(--velai-vh,100dvh) - 76px)}
body.velai-workspace-mode .hero-grid{grid-template-columns:minmax(0,1fr);gap:0;align-items:stretch}
body.velai-workspace-mode .hero-copy{display:none}
body.velai-workspace-mode .assistant-card{width:100%;min-height:calc(var(--velai-vh,100dvh) - 118px);display:flex;flex-direction:column}
body.velai-workspace-mode .chat-window{height:auto;min-height:430px;flex:1;max-height:none}
body.velai-workspace-mode .quick-prompts{flex:0 0 auto}
body.velai-workspace-mode .voice-tools,body.velai-workspace-mode .ask-bar{flex:0 0 auto}
body.velai-workspace-mode .topic-section,
body.velai-workspace-mode .guidance-section,
body.velai-workspace-mode .campus-section,
body.velai-workspace-mode .safety-section,
body.velai-workspace-mode .site-footer{display:none}

/* Dynamic module cards/forms: auto-fit rather than fixed columns. */
.mcp-summary-grid,.mcp-record-list,.bona-admin-summary{
  grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))
}
.mcp-action-grid,.bona-form,.bona-detail-grid,.bona-admin-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))
}
.mcp-action-field-wide,.bona-form>.bona-field:last-of-type,.bona-detail-grid{grid-column:1/-1}
.mcp-record-card,.mcp-section,.mcp-action-panel,.mcp-action-form,.bona-shell,.bona-section,.bona-apply{min-width:0;max-width:100%}

/* Wide result tables scroll inside the answer, never widen the page. */
.faculty-table-scroll,.mcp-table-scroll,.bona-table-scroll{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.faculty-directory-table,.mcp-shell table,.bona-shell table{max-width:100%}

/* Public events / directory selectors emitted by the existing JS. */
.public-event-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border-radius:16px;overflow:hidden}
.public-event-gallery.is-single{grid-template-columns:minmax(0,1fr)}
.public-event-gallery a{display:block;line-height:0}.public-event-thumb{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--soft)}
.public-event-gallery.is-single .public-event-thumb{aspect-ratio:16/9}
.public-event-topline{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.public-event-detail{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 12px}

/* Bonafide and action details remain compact but readable. */
.bona-status-journey{max-width:100%}.bona-preview-frame{height:clamp(560px,70dvh,920px)}
.bona-type-card-grid,.bona-purpose-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr))}
.mcp-alt-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}

/* SEO programme pages use the same original theme rather than a second theme. */
.programme-page{background:linear-gradient(180deg,#fff8fb 0,#f8f5ff 46%,#f7fbff 100%)}
.mobile-nav{display:none;position:relative}.mobile-nav summary{list-style:none;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}
.mobile-nav-panel{position:absolute;right:0;top:48px;display:grid;min-width:220px;padding:10px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow);z-index:100}
.mobile-nav-panel a{padding:10px 11px;border-radius:10px;text-decoration:none;color:#5e5670;font-size:12px;font-weight:750}.mobile-nav-panel a:hover{background:#faf8ff}
.programme-hero,.programme-index-hero{padding:62px 0 46px}.breadcrumb{display:flex;gap:8px;align-items:center;color:#918497;font-size:10px;margin-bottom:22px}.breadcrumb a{color:var(--purple);text-decoration:none}
.programme-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:28px;align-items:start}
.programme-hero h1,.programme-index-hero h1{margin:10px 0 14px;font-size:clamp(38px,5vw,62px);line-height:1;letter-spacing:-2.4px;color:var(--ink)}
.programme-hero p,.programme-index-hero p{max-width:760px;color:var(--muted);font-size:15px;line-height:1.7}
.section-kicker{font-size:10px;letter-spacing:.17em;color:var(--pink);font-weight:900}
.programme-summary,.content-panel{padding:22px;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:0 12px 35px rgba(64,46,101,.055)}
.programme-summary ul,.content-panel ul{margin:11px 0 0;padding-left:18px;color:var(--muted);font-size:12px;line-height:1.65}
.programme-content{padding:0 0 68px}.programme-content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:16px}.content-panel h2{margin:0 0 9px;font-size:19px}.content-panel p{color:var(--muted);font-size:12px;line-height:1.63}.programme-cta{grid-column:1/-1}
.programme-index-hero{text-align:center}.programme-index-hero p{margin-left:auto;margin-right:auto}
.programme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(245px,100%),1fr));gap:16px}.programme-card{display:flex;flex-direction:column;min-height:205px;padding:20px;border:1px solid var(--line);border-radius:23px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 12px 35px rgba(64,46,101,.055);transition:.2s}.programme-card:hover{transform:translateY(-3px);box-shadow:0 20px 45px rgba(80,55,133,.11);border-color:#dfd4fb}.programme-card.featured{background:linear-gradient(145deg,#fff,#fff8fb 50%,#f5f1ff)}.programme-code{display:inline-flex;align-self:flex-start;padding:6px 8px;border-radius:9px;background:#f2ecff;color:#664dd0;font-size:9px;font-weight:900;letter-spacing:.06em}.programme-card h3{margin:16px 0 8px;font-size:16px}.programme-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.58}.programme-link{margin-top:auto;padding-top:16px;color:var(--purple);font-size:11px;font-weight:850}
.conversion-panel{display:grid;grid-template-columns:minmax(0,1.3fr) auto;gap:28px;align-items:center;padding:34px;border-radius:28px;background:linear-gradient(135deg,var(--purple),var(--pink) 62%,var(--cyan));color:#fff;box-shadow:0 22px 55px rgba(117,88,246,.19)}.conversion-panel h2{margin:8px 0;font-size:clamp(28px,4vw,44px);line-height:1.08}.conversion-panel p{margin:0;color:rgba(255,255,255,.88);line-height:1.62}.conversion-actions{display:flex;flex-direction:column;gap:8px;min-width:210px}.conversion-actions a,.conversion-actions button{padding:12px 14px;border-radius:14px;text-align:center;text-decoration:none;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.14);color:#fff;font-size:11px;font-weight:850;cursor:pointer}.primary-white{background:#fff!important;color:#6747ca!important;border-color:#fff!important}

/* Accessibility and safe-area handling from the R14 audit, adapted to the original tokens. */
.site-header,.policy-header{padding-top:env(safe-area-inset-top,0px)}
.site-footer,.policy-shell{padding-bottom:env(safe-area-inset-bottom,0px)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--purple);outline-offset:2px;border-radius:10px}

@media(pointer:coarse){
  .mcp-action-input,.bona-field input,.bona-field select,.bona-field textarea,.bona-inline-remarks,.bona-profile-input,.bona-admin-input,input[type=text],input[type=password],input[type=search],input[type=email],input[type=date],input[type=number],select,textarea{font-size:16px}
  .prompt-btn,.mcp-btn,.bona-btn,.chat-auth-choice,.answer-followup{min-height:44px}
}
@media(max-width:980px){
  .shell{width:min(940px,calc(100% - 24px))}
  .hero-section{padding:44px 0 46px}.hero-grid{grid-template-columns:1fr;gap:34px}.hero-copy{max-width:760px;margin-inline:auto;text-align:center}.hero-lead{margin-inline:auto}.hero-actions,.trust-row{justify-content:center}.assistant-card{width:min(900px,100%);margin-inline:auto}.nav{gap:12px}.nav>a:not(.nav-cta):not(.nav-login){display:none}
  .programme-hero-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .shell{width:calc(100% - 18px)}.site-header .header-inner{height:66px}.brand-copy small{display:none}.hero-section{padding:26px 0 30px}.hero-copy h1{font-size:clamp(38px,11vw,52px);letter-spacing:-2.3px}.hero-lead{font-size:15px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions>*{width:100%}.trust-row{gap:8px;justify-content:flex-start;text-align:left}.assistant-card{padding:12px;border-radius:24px}.assistant-top{padding:2px 2px 11px}.chat-window{height:clamp(380px,52dvh,590px);min-height:340px;padding:10px}.quick-prompts{padding:10px 0 8px}.ask-bar{gap:6px}.ask-bar input{font-size:16px;padding:13px 12px}.ask-bar button{width:58px}.voice-tools{flex-wrap:wrap}
  body.velai-workspace-mode .hero-section{padding:8px 0 10px}.velai-workspace-mode .assistant-card{min-height:calc(var(--velai-vh,100dvh) - 82px);border-radius:22px}.velai-workspace-mode .chat-window{min-height:300px}.internal-context-bar{grid-template-columns:1fr;gap:8px}.workspace-control{justify-content:space-between}.workspace-control select{flex:1;max-width:none}.internal-logout{justify-self:start}
  .public-event-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mcp-alt-search{grid-template-columns:minmax(0,1fr)}
  .programme-hero,.programme-index-hero{padding:42px 0 34px}.programme-hero h1,.programme-index-hero h1{font-size:36px}.conversion-panel{grid-template-columns:1fr;padding:24px 20px}.conversion-actions{min-width:0}.programme-content-grid{grid-template-columns:1fr}.programme-cta{grid-column:auto}
}
@media(max-width:460px){
  .shell{width:calc(100% - 12px)}.brand-mark{width:40px;height:40px}.brand-copy strong{font-size:18px}.nav-cta{padding:10px 12px}.hero-copy h1{font-size:clamp(35px,12vw,46px)}.chat-window{height:clamp(360px,50dvh,520px)}.bubble-content{max-width:90%}.assistant-card{padding:9px;border-radius:21px}.public-event-gallery{grid-template-columns:1fr}.mcp-summary-grid,.mcp-record-list,.mcp-action-grid,.bona-form,.bona-detail-grid,.bona-admin-grid,.bona-admin-summary,.bona-type-card-grid,.bona-purpose-card-grid{grid-template-columns:1fr}.bona-preview-frame{height:520px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ==========================================================================\n   VEL AI CLASSIC R17 — LARGE CHAT GEOMETRY ONLY\n   Preserves the Classic R16 visual theme. Changes only available workspace\n   width/height and responsive use of space. No colour, radius, typography or\n   workflow/business-rule changes.\n   ========================================================================== */

/* Public desktop: give the assistant more of the hero and more vertical room. */
.hero-section > .hero-grid,
.hero-section .shell.hero-grid{
  width:min(1420px,calc(100% - 36px));
  grid-template-columns:minmax(330px,.72fr) minmax(620px,1.28fr);
  gap:42px;
}
.assistant-card{width:100%}
.chat-window{
  height:clamp(470px,56dvh,720px);
  min-height:470px;
}

/* On large monitors, expand rather than leaving unused space. */
@media(min-width:1500px){
  .hero-section > .hero-grid,
  .hero-section .shell.hero-grid{width:min(1540px,calc(100% - 48px));grid-template-columns:minmax(360px,.70fr) minmax(720px,1.30fr);gap:48px}
  .chat-window{height:clamp(520px,60dvh,780px)}
}

/* Logged-in workspace: almost the complete viewport becomes the assistant. */
body.velai-workspace-mode .hero-section > .hero-grid,
body.velai-workspace-mode .hero-section .shell.hero-grid{
  width:min(1740px,calc(100% - 24px));
  max-width:none;
}
body.velai-workspace-mode .hero-section{
  min-height:calc(var(--velai-vh,100dvh) - 76px);
  padding:10px 0 12px;
}
body.velai-workspace-mode .assistant-card{
  width:100%;
  max-width:none;
  min-height:calc(var(--velai-vh,100dvh) - 98px);
}
body.velai-workspace-mode .chat-window{
  flex:1 1 auto;
  height:auto;
  min-height:520px;
  max-height:none;
}

/* Let large internal results use the newly available chat width. */
body.velai-workspace-mode .bot-message .bubble-content.structured-answer,
body.velai-workspace-mode .bot-message .bubble-content.bonafide-answer{
  width:min(100%,1480px)!important;
  max-width:min(100%,1480px)!important;
  flex:1 1 1180px;
}
body.velai-workspace-mode .mcp-answer,
body.velai-workspace-mode .mcp-shell,
body.velai-workspace-mode .bona-shell,
body.velai-workspace-mode .structured-answer{
  width:100%;
  max-width:100%;
}

/* Medium laptops/tablets: stack early instead of squeezing the classic card. */
@media(max-width:1120px){
  .hero-section > .hero-grid,
  .hero-section .shell.hero-grid{
    width:min(1040px,calc(100% - 24px));
    grid-template-columns:minmax(0,1fr);
    gap:32px;
  }
  .hero-copy{max-width:820px;margin-inline:auto;text-align:center}
  .hero-lead{margin-inline:auto}
  .hero-actions,.trust-row{justify-content:center}
  .assistant-card{width:min(1040px,100%);margin-inline:auto}
  .chat-window{height:clamp(500px,60dvh,720px);min-height:460px}
}

/* Phones: preserve the old card look, but make the conversation substantially larger. */
@media(max-width:720px){
  .hero-section > .hero-grid,
  .hero-section .shell.hero-grid{width:calc(100% - 18px)}
  .chat-window{height:clamp(440px,58dvh,640px);min-height:400px}
  body.velai-workspace-mode .hero-section > .hero-grid,
  body.velai-workspace-mode .hero-section .shell.hero-grid{width:calc(100% - 10px)}
  body.velai-workspace-mode .assistant-card{min-height:calc(var(--velai-vh,100dvh) - 76px)}
  body.velai-workspace-mode .chat-window{min-height:340px}
  body.velai-workspace-mode .bot-message .bubble-content.structured-answer,
  body.velai-workspace-mode .bot-message .bubble-content.bonafide-answer{width:97%!important;max-width:97%!important;flex:1 1 auto}
}

@media(max-width:460px){
  .chat-window{height:clamp(420px,56dvh,590px);min-height:380px}
  body.velai-workspace-mode .hero-section > .hero-grid,
  body.velai-workspace-mode .hero-section .shell.hero-grid{width:calc(100% - 6px)}
  body.velai-workspace-mode .assistant-card{min-height:calc(var(--velai-vh,100dvh) - 70px)}
  body.velai-workspace-mode .chat-window{min-height:320px}
}


/* R18 MOTOROLA SLAB TYPOGRAPHY — typography only; Classic R17 geometry/colors preserved */
button,input,select,textarea{font-family:"Roboto Slab",Roboto,Georgia,serif}
.brand-copy strong,.hero-copy h1,.section-heading h2,.guidance-panel h2,.campus-card h2,.programme-hero h1,.programme-index-hero h1{font-family:"Roboto Slab",Roboto,Georgia,serif}
.bubble-content,.structured-answer,.mcp-answer,.bonafide-answer,.mcp-shell,.bona-shell{font-family:"Roboto Slab",Roboto,Georgia,serif}


/* ==========================================================================\n   VEL AI R18.1 — STABLE LOGIN LAYOUT\n   Authentication changes content and permissions only. It must NOT reflow the\n   Classic public shell into a different full-screen geometry.\n   ========================================================================== */

/* Desktop: authenticated mode keeps exactly the same hero/chat geometry as public mode. */
body.velai-workspace-mode .hero-section{
  min-height:0;
  padding:70px 0 58px;
}
body.velai-workspace-mode .hero-section > .hero-grid,
body.velai-workspace-mode .hero-section .shell.hero-grid{
  width:min(1420px,calc(100% - 36px));
  max-width:none;
  grid-template-columns:minmax(330px,.72fr) minmax(620px,1.28fr);
  gap:42px;
  align-items:center;
}
body.velai-workspace-mode .hero-copy{display:block}
body.velai-workspace-mode .assistant-card{
  width:100%;
  max-width:none;
  min-height:0;
  display:block;
}
body.velai-workspace-mode .chat-window{
  height:clamp(470px,56dvh,720px);
  min-height:470px;
  max-height:none;
  flex:none;
}
body.velai-workspace-mode .quick-prompts,
body.velai-workspace-mode .voice-tools,
body.velai-workspace-mode .ask-bar{flex:none}
body.velai-workspace-mode .topic-section,
body.velai-workspace-mode .guidance-section,
body.velai-workspace-mode .campus-section,
body.velai-workspace-mode .safety-section,
body.velai-workspace-mode .site-footer{display:block}

/* Authenticated result cards may use the assistant width, but never alter the shell itself. */
body.velai-workspace-mode .bot-message .bubble-content.structured-answer,
body.velai-workspace-mode .bot-message .bubble-content.bonafide-answer{
  width:min(100%,1000px)!important;
  max-width:100%!important;
  flex:1 1 auto;
}
body.velai-workspace-mode .mcp-answer,
body.velai-workspace-mode .mcp-shell,
body.velai-workspace-mode .bona-shell,
body.velai-workspace-mode .structured-answer{width:100%;max-width:100%}

@media(min-width:1500px){
  body.velai-workspace-mode .hero-section > .hero-grid,
  body.velai-workspace-mode .hero-section .shell.hero-grid{
    width:min(1540px,calc(100% - 48px));
    grid-template-columns:minmax(360px,.70fr) minmax(720px,1.30fr);
    gap:48px;
  }
  body.velai-workspace-mode .chat-window{height:clamp(520px,60dvh,780px);min-height:520px}
}

@media(max-width:1120px){
  body.velai-workspace-mode .hero-section{padding:44px 0 46px}
  body.velai-workspace-mode .hero-section > .hero-grid,
  body.velai-workspace-mode .hero-section .shell.hero-grid{
    width:min(1040px,calc(100% - 24px));
    grid-template-columns:minmax(0,1fr);
    gap:32px;
  }
  body.velai-workspace-mode .hero-copy{max-width:820px;margin-inline:auto;text-align:center}
  body.velai-workspace-mode .hero-lead{margin-inline:auto}
  body.velai-workspace-mode .hero-actions,
  body.velai-workspace-mode .trust-row{justify-content:center}
  body.velai-workspace-mode .assistant-card{width:min(1040px,100%);margin-inline:auto;min-height:0}
  body.velai-workspace-mode .chat-window{height:clamp(500px,60dvh,720px);min-height:460px}
}

@media(max-width:720px){
  body.velai-workspace-mode .hero-section{padding:26px 0 30px}
  body.velai-workspace-mode .hero-section > .hero-grid,
  body.velai-workspace-mode .hero-section .shell.hero-grid{width:calc(100% - 18px)}
  body.velai-workspace-mode .assistant-card{min-height:0;border-radius:24px}
  body.velai-workspace-mode .chat-window{height:clamp(440px,58dvh,640px);min-height:400px}
  body.velai-workspace-mode .bot-message .bubble-content.structured-answer,
  body.velai-workspace-mode .bot-message .bubble-content.bonafide-answer{width:97%!important;max-width:97%!important}
}

@media(max-width:460px){
  body.velai-workspace-mode .hero-section > .hero-grid,
  body.velai-workspace-mode .hero-section .shell.hero-grid{width:calc(100% - 12px)}
  body.velai-workspace-mode .assistant-card{min-height:0;border-radius:21px}
  body.velai-workspace-mode .chat-window{height:clamp(420px,56dvh,590px);min-height:380px}
}
