:root{--ink:#17212b;--muted:#657487;--line:rgba(23,33,43,.12);--blue:#159eef;--green:#48cbb9;--orange:#ff8a3d;--yellow:#ffd166;--bg:#f5fafb;--shadow:0 14px 34px rgba(22,42,70,.09)}
html{overflow-x:hidden}
*{box-sizing:border-box}
body.student-hub{margin:0;min-height:100vh;overflow-x:hidden;color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(135deg,#f9fff8 0%,#eef8ff 100%);font-size:14px}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
.hub-layout{display:grid;grid-template-columns:238px minmax(0,1fr);gap:14px;width:100%;max-width:100vw;min-height:100vh;padding:14px;overflow-x:hidden}
.hub-rail{position:sticky;top:14px;height:calc(100vh - 28px);display:flex;flex-direction:column;gap:14px;padding:14px;border:1px solid rgba(255,255,255,.8);border-radius:22px;background:rgba(255,255,255,.84);box-shadow:var(--shadow);backdrop-filter:blur(16px)}
.hub-brand{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:900}
.hub-brand img{width:34px;height:34px;border-radius:11px;object-fit:cover}
.hub-nav{display:grid;gap:4px;overflow:auto;padding-right:2px}
.hub-nav a{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 9px;border-radius:12px;color:#4d5c6f;font-weight:800}
.hub-nav a span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#edf8fb;color:var(--blue);font-size:10px}
.hub-nav a:hover,.hub-nav a.is-active{color:var(--ink);background:linear-gradient(135deg,rgba(21,158,239,.12),rgba(72,203,185,.16))}
.hub-nav a.is-active span{background:var(--ink);color:#fff}
.hub-rail-card{margin-top:auto;padding:14px;border-radius:16px;background:#17212b;color:#fff}
.hub-rail-card strong{display:block}
.hub-rail-card p{margin:8px 0 0;color:rgba(255,255,255,.72);line-height:1.35;font-size:12px}
.hub-ring{width:84px;aspect-ratio:1;display:grid;place-items:center;margin:12px auto;border-radius:50%;background:conic-gradient(var(--green) calc(var(--value)*1%),rgba(255,255,255,.16) 0)}
.hub-ring span{width:58px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:#17212b;font-weight:900}
.hub-main{min-width:0}
.hub-topbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,390px) auto;align-items:center;gap:12px;padding:0 2px 12px}
.hub-eyebrow{margin:0 0 4px;color:var(--blue);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.hub-topbar h1,.hub-view h2{margin:0;letter-spacing:0}
.hub-topbar h1{font-size:28px}
.hub-search{position:relative;display:block}
.hub-search input,.chat-search input,.help-search input{width:100%;min-height:40px;padding:0 14px 0 38px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.82);color:var(--ink);outline:none}
.hub-search span{position:absolute;left:14px;top:50%;width:12px;height:12px;border:2px solid var(--blue);border-radius:50%;transform:translateY(-50%)}
.hub-search span:after{content:"";position:absolute;right:-7px;bottom:-5px;width:8px;height:2px;border-radius:999px;background:var(--blue);transform:rotate(45deg)}
.hub-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.hub-actions button,.hub-pill{min-height:38px;border:0;border-radius:999px;background:#fff;box-shadow:0 8px 22px rgba(23,33,43,.07);color:var(--ink);font-weight:900}
.hub-pill{display:inline-flex;align-items:center;padding:0 14px}
.hub-pill--accent{background:var(--orange);color:#fff}
.hub-actions button{min-width:38px}
.hub-menu-toggle,.hub-menu-scrim,.chat-back{display:none}
.hub-avatar:not(.has-photo){background:var(--ink)!important;color:#fff!important}
.hub-avatar.has-photo,.profile-letter.has-photo{background-size:cover!important;background-position:center!important;color:transparent!important;text-indent:-999px;overflow:hidden}
.hub-signout{min-width:auto!important;padding:0 13px!important;background:#fff!important;color:#b85c14!important;border:1px solid rgba(255,138,61,.32)!important}
.hub-signout:hover{background:#fff3e8!important}
.student-account-popover[hidden]{display:none!important}
.student-account-popover{position:fixed;z-index:140;display:grid;gap:7px;padding:9px;border:1px solid rgba(255,255,255,.9);border-radius:14px;background:#fff;box-shadow:0 18px 44px rgba(23,33,43,.22);animation:accountPopoverIn .12s ease;transform-origin:top right}
.student-account-popover:before{content:"";position:absolute;right:14px;top:-6px;width:12px;height:12px;transform:rotate(45deg);border-left:1px solid rgba(255,255,255,.9);border-top:1px solid rgba(255,255,255,.9);background:#fff}
.student-account-popover button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;min-height:32px;padding:0 11px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-size:13px;font-weight:900;text-decoration:none;box-shadow:none}
@keyframes accountPopoverIn{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}
.hub-actions button[aria-label^="Notifications"]{position:relative}
.hub-actions button[aria-label^="Notifications"][data-has-alert="true"]::after{content:"";position:absolute;right:3px;top:2px;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#ff4d2e;box-shadow:0 0 0 4px rgba(255,77,46,.16)}
.hub-view{animation:hubFade .18s ease}
@keyframes hubFade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.panel,.metric-card,.track-card,.growth-card,.compare-card{border:1px solid rgba(255,255,255,.78);border-radius:16px;background:rgba(255,255,255,.86);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
.panel{padding:14px}
.panel-head,.view-head,.thread-head,.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.panel-head h3,.view-head h2{margin:0}
.panel-head a{color:var(--blue);font-weight:900}
.view-head{margin:0 0 12px}
.view-head h2{font-size:30px}
.hub-view-action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border-radius:999px;background:var(--orange);color:#fff;font-weight:900;box-shadow:0 10px 24px rgba(255,138,61,.18);white-space:nowrap}
.view-head button,.panel button,.track-card button,.compare-card button,.chat-context button,.chat-compose button,.thread-head button,.lesson-brief button,.booking-card button{min-height:34px;padding:0 12px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:900}
.dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:stretch}
.next-lesson{grid-column:span 4;min-height:154px;display:grid;grid-template-rows:auto 1fr;gap:10px;padding:16px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(234,247,255,.92))}
.next-lesson h2{max-width:230px;font-size:24px;line-height:1.08}
.next-lesson .panel-head{margin-bottom:0;align-items:start}
.next-lesson .panel-head strong{padding:6px 10px;border-radius:14px;background:#17212b;color:#fff;font-size:24px;line-height:1}
.lesson-brief{display:grid;grid-template-columns:44px minmax(110px,1fr) auto;gap:10px;align-items:center}
.lesson-brief img{width:44px;height:44px;border-radius:13px;object-fit:cover}
.lesson-brief b,.lesson-brief span{display:block}
.lesson-brief span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.35}
.lesson-actions{display:flex;gap:7px}
.metric-card{grid-column:span 2;min-height:154px;display:flex;flex-direction:column;justify-content:flex-start;padding:16px}
.metric-card span,.growth-card span{display:block;color:var(--muted);font-size:12px;font-weight:800}
.metric-card strong,.growth-card strong{display:block;margin:9px 0 6px;font-size:32px;line-height:1;font-weight:900}
.metric-card small,.growth-card small{color:var(--green);font-weight:900}
.work-grid{display:grid;grid-template-columns:1.25fr .85fr .9fr;gap:12px;margin-top:12px}
.task-row{display:grid;grid-template-columns:90px minmax(0,1fr) 88px auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.task-row:first-of-type{border-top:0}
.task-row span,.task-row em,.muted{color:var(--muted);font-style:normal}
.plan-card strong{display:block;font-size:20px;line-height:1.15}
.plan-card p{color:var(--muted);line-height:1.45}
.mini-bars,.bars{display:flex;align-items:end;gap:6px;height:74px;margin-top:12px}
.mini-bars i,.bars i{flex:1;border-radius:999px 999px 6px 6px;background:var(--blue)}
.mini-bars i:nth-child(1),.bars i:nth-child(1){height:35%}.mini-bars i:nth-child(2),.bars i:nth-child(2){height:54%}.mini-bars i:nth-child(3),.bars i:nth-child(3){height:48%}.mini-bars i:nth-child(4),.bars i:nth-child(4){height:78%}.mini-bars i:nth-child(5),.bars i:nth-child(5){height:96%}.bars i:nth-child(6){height:72%}
.bars--green i{background:var(--green)}
.mini-slot{display:grid;grid-template-columns:88px 1fr;gap:8px;padding:9px 0;border-top:1px solid var(--line)}
.mini-slot:first-of-type{border-top:0}
.mini-slot time{color:var(--blue);font-weight:900}
.student-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:132px;margin-bottom:14px;padding:24px 28px;border:1px solid rgba(255,255,255,.84);border-radius:22px;background:linear-gradient(118deg,rgba(255,255,255,.98),rgba(234,248,251,.96) 60%,rgba(255,243,232,.92));box-shadow:var(--shadow);overflow:hidden}.student-welcome>div:first-child{max-width:720px}.student-welcome span{color:var(--blue);font-size:11px;letter-spacing:.08em}.student-welcome h1{margin:7px 0 6px;font-size:30px;line-height:1.08;letter-spacing:-.025em}.student-welcome p,.student-view-subtitle{margin:0;color:var(--muted);line-height:1.5}.student-welcome-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.student-welcome-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border-radius:999px;background:var(--blue);color:#fff;box-shadow:0 10px 22px rgba(21,158,239,.18)}.student-welcome-actions a+ a{border:1px solid rgba(21,158,239,.24);background:#fff;color:var(--blue);box-shadow:none}
.student-view-subtitle{margin-top:5px;font-size:13px}.student-course-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.student-course-summary article{padding:17px;border:1px solid rgba(255,255,255,.82);border-radius:16px;background:rgba(255,255,255,.9);box-shadow:var(--shadow)}.student-course-summary span,.student-course-summary small{display:block;color:var(--muted);font-size:12px}.student-course-summary strong{display:block;margin:6px 0 5px;font-size:27px}.student-course-summary small{color:var(--green)}
.student-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.student-course-card{overflow:hidden;border:1px solid rgba(255,255,255,.82);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.student-course-cover{display:grid;align-content:end;gap:8px;min-height:168px;padding:20px;color:#fff;background:linear-gradient(125deg,#17212b,#159eef)}.student-course-cover--2{background:linear-gradient(125deg,#173b45,#48cbb9)}.student-course-cover--3{background:linear-gradient(125deg,#63381f,#ff8a3d)}.student-course-cover span{justify-self:start;min-height:25px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.student-course-cover strong{max-width:75%;font-size:22px;line-height:1.15}.student-course-body{padding:17px}.student-course-body>p{min-height:40px;margin:0 0 14px;color:var(--muted);line-height:1.45}.student-course-tutor,.student-course-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.student-course-tutor b{color:var(--ink)}.student-course-progress{height:7px;margin:12px 0;border-radius:999px;background:#e8eef3;overflow:hidden}.student-course-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--green))}.student-course-footer a{color:var(--blue)}
.study-plan-layout,.lesson-columns,.settings-layout,.referral-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px}
.tutor-layout{display:block}
.quiz-panel h3,.generated-plan h3{margin:0 0 12px}
.quiz-progress{height:8px;background:#eaf1f6;border-radius:999px;margin-bottom:14px;overflow:hidden}
.quiz-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--green))}
.quiz-grid,.settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:900}
select,input{min-height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:0 12px;outline:none}
.preference-cloud,.filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.preference-cloud button,.filter-bar button{min-height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-weight:900}
.preference-cloud .is-active,.filter-bar .is-active{background:#17212b;color:#fff}
.generated-plan ol{display:grid;gap:10px;margin:0 0 12px;padding:0;list-style:none}
.generated-plan li{padding:10px;border:1px solid var(--line);border-radius:12px;background:#f7fbfc}
.generated-plan b,.generated-plan span{display:block}
.generated-plan span{color:var(--muted);margin-top:3px}
.filter-bar{margin-bottom:12px}
.tutor-list{display:grid;gap:18px}
#tutors .teacher-result{border-radius:20px}
#tutors .teacher-result__media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center top}
#tutors .teacher-result__media.is-online::after{content:"";position:absolute;right:13px;bottom:13px;width:18px;height:18px;border:4px solid #fff;border-radius:50%;background:#42c985;box-shadow:0 8px 18px rgba(14,151,94,.28);z-index:4}
#tutors .teacher-play{position:absolute;left:50%;top:50%;display:grid;place-items:center;border-radius:50%;transform:translate(-50%,-50%)}
#tutors .teacher-play::before{content:"";width:0;height:0;border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:14px solid #fff}
#tutors .teacher-result__verified{display:inline-grid;place-items:center;border-radius:50%;background:#1687e8}
#tutors .teacher-result__verified::before{content:"";border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translateY(-1px)}
#tutors .match-ring{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;color:#082342;font-weight:900}
#tutors .match-ring::before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,#fff 0 57%,transparent 58%),conic-gradient(#35cfa7 0 86%,#e8f0f7 86% 100%);z-index:0}
#tutors .match-ring span,#tutors .match-ring small{position:relative;z-index:1}
#tutors .teacher-match button{font:inherit;cursor:pointer}
#tutors .teacher-match .btn{border:0}
#tutors .teacher-message-btn{border:2px solid #1687e8}
#tutors .teacher-favorite{padding:0}
#tutors .teacher-profile-icon{font-size:16px}
.compare-card img{width:100%;aspect-ratio:1;border-radius:8px;object-fit:cover}
.event-card p,.help-grid p{margin:7px 0 0;color:var(--muted);line-height:1.35}
.chat-context dl,.compare-card dl{display:grid;grid-template-columns:96px 1fr;gap:8px;margin:12px 0}
dt{color:var(--muted);font-weight:800}dd{margin:0;font-weight:800}
.messages-layout{display:grid;grid-template-columns:305px minmax(0,1fr) 260px;gap:12px;height:calc(100vh - 96px);min-height:620px}
.chat-list,.chat-thread,.chat-context{border:1px solid rgba(255,255,255,.78);border-radius:16px;background:rgba(255,255,255,.88);box-shadow:var(--shadow);overflow:hidden}
.chat-list{padding:12px;overflow:auto}
.chat-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.chat-list-head strong{font-size:18px}
.chat-list-head button{min-height:32px;padding:0 11px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:900}
.chat-search input,.help-search input{padding-left:14px}
.chat-tabs{display:flex;gap:6px;margin:10px 0}
.chat-tabs button{flex:1;min-height:30px;border:0;border-radius:999px;background:#edf8fb;font-weight:900;color:#436171}
.chat-tabs .is-active{background:#17212b;color:#fff}
.chat-requests{display:grid;grid-template-columns:auto 1fr 1fr;gap:6px;align-items:center;margin-bottom:8px;padding:8px;border:1px dashed rgba(21,158,239,.28);border-radius:12px;background:#f7fbfc}
.chat-requests span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}
.chat-requests button{min-height:28px;border:0;border-radius:999px;background:#edf8fb;color:#436171;font-size:12px;font-weight:900}
.chat-list article{display:grid;grid-template-columns:42px minmax(0,1fr) 44px;gap:10px;align-items:center;padding:10px;border-radius:12px}
.chat-list article.is-active{background:#eaf7ff}
.chat-list article{cursor:pointer}
.chat-list article:hover{background:#f4fbff}
.chat-list img,.chat-context img{width:42px;height:42px;border-radius:13px;object-fit:cover}
.chat-list strong,.chat-list p{display:block;max-width:100%;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-list article div{min-width:0}
.chat-list p{color:var(--muted);font-size:12px}
.chat-list time{color:var(--muted);font-size:11px}
.chat-thread{display:flex;flex-direction:column;padding:12px}
.thread-head{padding-bottom:10px;border-bottom:1px solid var(--line)}
.thread-head strong,.thread-head span{display:block}
.thread-head span{color:var(--muted);font-size:12px}
.chat-messages{min-height:0;flex:1;overflow:auto;display:flex;flex-direction:column;padding:6px 2px 12px}
.bubble{max-width:72%;margin:8px 0;padding:10px 12px;border-radius:14px;background:#eef8ff;line-height:1.4}
.bubble--out{align-self:flex-end;background:#17212b;color:#fff}
.bubble span,.bubble time{display:block}
.bubble time{margin-top:6px;color:var(--muted);font-size:11px;font-weight:800}
.bubble--out time{color:rgba(255,255,255,.68)}
.chat-empty{padding:16px;color:var(--muted);font-weight:800;line-height:1.4}
.chat-compose{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:auto}
.chat-compose input{border-radius:999px}
.chat-context{padding:14px}
.chat-context strong,.chat-context span{display:block}
.chat-context span{color:var(--muted);margin:4px 0 12px}
.chat-profile-card{display:grid;gap:14px}
.chat-profile-card__head{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center}
.chat-profile-card__head img{width:56px;height:56px;border-radius:16px;object-fit:cover}
.chat-profile-card__head strong{margin:0;color:var(--ink);font-size:19px;line-height:1.12}
.chat-profile-card__head span{margin:4px 0 0;color:var(--muted);font-weight:800}
.chat-profile-card__link{display:flex;align-items:center;justify-content:center;min-height:40px;border:1px solid #1687e8;border-radius:999px;background:#fff;color:#1687e8;text-decoration:none;font-weight:900}
.chat-profile-card dl{grid-template-columns:88px minmax(0,1fr);gap:10px 12px;margin:0;padding-top:2px}
.chat-profile-card dt{font-size:13px;line-height:1.25}
.chat-profile-card dd{font-size:14px;line-height:1.25}
.chat-profile-card button{width:100%;min-height:42px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:900}
.support-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px}
.support-top h2{margin:0;font-size:34px;line-height:1.08}
.support-top p{margin:6px 0 0;color:var(--muted);font-weight:800}
.support-top button,.support-reply-actions button,.support-help-card button{min-height:42px;border:0;border-radius:12px;background:#1e7bff;color:#fff;padding:0 18px;font-weight:900;box-shadow:0 10px 24px rgba(30,123,255,.18)}
.support-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.support-stats article{border:1px solid #dce8f7;border-radius:18px;background:#fff;padding:18px;box-shadow:0 10px 25px rgba(14,54,100,.04)}
.support-stats span{display:block;margin-bottom:8px;color:var(--muted);font-size:13px;font-weight:800}
.support-stats strong{display:block;color:#0b2344;font-size:30px;line-height:1}
.support-tabs{display:flex;gap:20px;margin:0 0 16px;border-bottom:1px solid #dce8f7;overflow:auto}
.support-tabs button{border:0;background:transparent;padding:12px 0;color:#5f7088;font-weight:900;white-space:nowrap}
.support-tabs button.is-active{color:#1e7bff;border-bottom:3px solid #1e7bff}
.support-create-panel{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:14px;align-items:start;margin-bottom:18px;border:1px solid #dce8f7;background:#fff}
.support-create-panel h3{margin:0 0 6px;font-size:20px}
.support-create-panel p{margin:0;color:var(--muted);line-height:1.45}
.support-create-panel form{display:grid;grid-template-columns:190px minmax(0,1fr) auto;gap:8px;align-items:start}
.support-create-panel select,.support-create-panel input{min-height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:0 12px;outline:none}
.support-create-panel textarea{grid-column:1/3;min-height:78px;resize:vertical;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:10px 12px;outline:none;font:inherit}
.support-create-panel button{min-height:42px;border:0;border-radius:12px;background:var(--orange);color:#fff;font-weight:900}
.support-layout{display:block;min-height:0}
.support-list{display:grid;gap:12px;margin-bottom:22px;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}
.support-list article{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:18px;border:1px solid #dce8f7;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(14,54,100,.035);cursor:pointer}
.support-list article:hover,.support-list article.is-active{border-color:rgba(30,123,255,.36);background:#f8fbff}
.support-list article.has-unread{box-shadow:0 10px 26px rgba(21,158,239,.12)}
.support-ticket-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#eaf3ff;color:#1e7bff;font-size:12px;font-weight:900}
.support-list article div{min-width:0}
.support-list h3{margin:0 0 5px;font-size:17px;line-height:1.25}
.support-list p{display:block;max-width:100%;margin:0;overflow:hidden;color:#75849a;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.support-ticket-id{color:#4c5d74;font-weight:900;white-space:nowrap}
.support-list .chat-badge{position:absolute;right:10px;top:8px}
.support-status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 12px;border-radius:999px;background:#e8f1ff;color:#1e7bff;font-size:12px;font-weight:900;white-space:nowrap}
.support-status.is-waiting_for_support,.support-status.is-open{background:#fff3d9;color:#d88900}
.support-status.is-waiting_for_customer{background:#ffe9ef;color:#e84670}
.support-status.is-resolved,.support-status.is-closed{background:#dcf8ed;color:#12a56d}
.support-thread{display:block;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}
.support-conversation{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;margin-top:6px}
.support-chat,.support-details{border:1px solid #dce8f7;border-radius:20px;background:#fff;padding:22px;box-shadow:0 10px 25px rgba(14,54,100,.04)}
.support-chat .thread-head{align-items:flex-start;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #dce8f7}
.support-chat .thread-head strong{font-size:22px}
.support-messages{min-height:280px;max-height:430px;padding:2px 2px 12px}
.support-reply-box{margin-top:18px;padding-top:16px;border-top:1px solid #dce8f7}
.support-reply-box textarea{width:100%;min-height:110px;border:1px solid #d4e3f5;border-radius:14px;background:#fff;color:var(--ink);padding:14px;font:inherit;resize:vertical;outline:none}
.support-layout{display:grid;grid-template-columns:1fr;gap:18px;min-height:0}
.support-ticket-grid{display:grid;grid-template-columns:minmax(340px,.88fr) minmax(460px,1.12fr);gap:18px;align-items:start}
.support-ticket-grid>*{min-width:0}
.support-ticket-grid .support-create-panel{grid-template-columns:1fr;margin:0;padding:18px;align-self:start}
.support-ticket-grid .support-create-panel form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.support-ticket-grid .support-create-panel form>*{min-width:0}
.support-ticket-grid .support-create-panel textarea{grid-column:1/-1;min-height:116px}
.support-ticket-grid .support-create-panel .support-file{justify-self:start}
.support-ticket-grid .support-create-panel button{justify-self:start;min-width:180px}
.support-ticket-grid .support-list{margin:0}
.support-reply-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.support-details h3,.support-help-card h3{margin:0 0 10px}
.support-details-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e8f0fa;color:#5c6f87}
.support-details-row strong{color:#0b2344;text-align:right}
.support-help-card{margin-top:20px;border-radius:16px;background:#f3f8ff;padding:18px}
.support-help-card p{margin:0 0 12px;color:var(--muted);line-height:1.45}
.support-faq{display:grid;gap:7px;margin-top:12px}
.support-faq b{font-size:13px}
.support-faq button,.support-contact{display:flex;align-items:center;justify-content:center;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-weight:900}
.support-contact{margin-top:12px;background:#17212b;color:#fff;border-color:#17212b}
.support-closed{margin-top:14px;padding:12px;border-radius:12px;background:#f7fbfc;color:var(--muted);font-weight:800}
.support-contact-inline{width:max-content;max-width:100%;padding:0 14px}
.support-file,.support-compose-file{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border:1px solid #1e7bff;border-radius:12px;background:#fff;color:#1e7bff;font-weight:900;white-space:nowrap;cursor:pointer}
.support-file input,.support-compose-file input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.support-compose{grid-template-columns:minmax(0,1fr) auto auto}
.support-attachment{display:grid;gap:6px;margin-top:8px;color:inherit;font-weight:900}
.support-attachment img{display:block;width:min(220px,100%);max-height:160px;border-radius:12px;object-fit:cover;border:1px solid rgba(255,255,255,.65)}
.support-attachment span{font-size:12px;opacity:.82}
.support-thread-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.support-close-ticket{min-height:34px!important;padding:0 12px!important;border:1px solid #12a56d!important;border-radius:12px!important;background:#dcf8ed!important;color:#0f7d55!important;box-shadow:none!important;font-weight:900}
@media(max-width:720px){.support-thread-actions{justify-content:flex-start}.support-close-ticket{width:auto!important}}
.lesson-list h3{margin:0 0 10px}
.lesson-row,.note-row,.payment-history div,.referral-status div{display:grid;grid-template-columns:110px minmax(0,1fr) 140px auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.lesson-row:first-of-type,.note-row:first-of-type,.payment-history div:first-of-type,.referral-status div:first-of-type{border-top:0}
.lesson-row time{color:var(--blue);font-weight:900}
.empty-state{display:grid;gap:4px;margin-top:12px;padding:12px;border-radius:12px;background:#f7fbfc}
.empty-state span{color:var(--muted)}
.empty-state .hub-view-action{justify-self:start;margin-top:8px}
.tracks-grid,.progress-grid,.saved-grid,.community-grid,.help-grid,.wallet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.track-card,.growth-card,.compare-card,.event-card{padding:14px}
.track-card span,.event-card span{color:var(--blue);font-weight:900;font-size:12px}
.track-card h3,.event-card h3{margin:8px 0}
.track-card p{color:var(--muted);line-height:1.4}
meter{width:100%;height:10px}
.track-card.is-current{background:linear-gradient(135deg,#fff,#eafaf7)}
.donut{width:84px;aspect-ratio:1;display:grid;place-items:center;margin-top:12px;border-radius:50%;background:conic-gradient(var(--green) calc(var(--value)*1%),#e9eef2 0)}
.donut b{width:58px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:#fff}
.skill-radar{margin-top:12px}
.radar{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:10px 0}
.radar span{min-height:70px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,rgba(21,158,239,.12),rgba(72,203,185,.14));font-weight:900}
.certificates{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.certificates span{padding:7px 10px;border-radius:999px;background:#fff3e8;color:#b85c14;font-weight:900}
.compare-card{display:grid;gap:8px}
.compare-card img{height:150px}
.wallet-grid{grid-template-columns:1.2fr .8fr 1fr .8fr}
.wallet-main strong{display:block;font-size:42px;font-weight:900}
.package-row{display:flex;gap:8px;flex-wrap:wrap}
.pay-card{padding:10px;border:1px solid var(--line);border-radius:12px;margin-top:8px;background:#fff}
.pay-card span{display:block;margin-top:3px;color:var(--muted);font-size:12px}
.payment-history div{grid-template-columns:70px minmax(0,1fr) 60px}
.referral-layout{grid-template-columns:1fr 360px}
.referral-hero{min-height:360px;padding:30px;background:linear-gradient(135deg,rgba(21,158,239,.16),rgba(72,203,185,.22))}
.referral-hero h2{font-size:42px;max-width:620px}
.referral-hero p{max-width:640px;color:var(--muted);font-weight:700;line-height:1.55}
.referral-code{display:inline-flex;margin:16px 0;padding:12px 18px;border:1px dashed var(--blue);border-radius:14px;background:#fff;font-weight:900;letter-spacing:.08em}
.referral-status div{grid-template-columns:80px 1fr 130px}
.help-search{display:block;margin-bottom:12px}
.settings-layout{grid-template-columns:260px minmax(0,1fr)}
.settings-menu{display:grid;align-content:start;gap:4px}
.settings-menu a{padding:12px;border-radius:12px;color:#4d5c6f;font-weight:900}
.settings-menu a.is-active{background:#edf8fb;color:var(--blue)}
.settings-form h2{grid-column:1/-1}
.avatar-row{grid-column:1/-1;display:flex;align-items:center;gap:14px}
.profile-letter{width:82px;height:82px;display:grid;place-items:center;border-radius:18px;background:#17212b;color:#fff;font-weight:900;font-size:28px}
.settings-list,.settings-note{grid-column:1/-1}
.settings-note{margin:0;color:var(--muted);line-height:1.5;font-weight:800}
.settings-note.is-danger{padding:12px;border:1px solid rgba(255,138,61,.32);border-radius:12px;background:#fff3e8;color:#8f4a12}
.settings-form button{justify-self:start}
.settings-form .danger-action{background:#b85c14!important}
.ai-toolbar{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.ai-status{margin-bottom:12px;padding:10px 12px;border:1px solid rgba(21,158,239,.18);border-radius:12px;background:#edf8fb;color:#436171;font-weight:900}
.ai-status.is-error{border-color:rgba(255,138,61,.34);background:#fff3e8;color:#b85c14}
.ai-tutor-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px}
.ai-study-grid{display:grid;grid-template-columns:1.1fr .8fr .9fr;gap:12px;margin-top:12px}
.ai-chat-panel{min-height:560px;display:flex;flex-direction:column}
.ai-chat-panel .panel-head{align-items:flex-start}
.ai-chat-panel .panel-head p{margin:3px 0 0;color:var(--muted);font-size:12px;font-weight:800}
.ai-chat-panel .panel-head span,.ai-answer-panel .panel-head span{padding:5px 8px;border-radius:999px;background:#edf8fb;color:#436171;font-size:11px;font-weight:900}
.ai-chat-log{min-height:0;flex:1;display:flex;flex-direction:column;gap:10px;overflow:auto;padding:6px 2px 12px}
.ai-message{max-width:78%;padding:10px 12px;border-radius:14px;background:#eef8ff;line-height:1.42}
.ai-message span{display:block;margin-bottom:4px;color:var(--blue);font-size:11px;font-weight:900;text-transform:uppercase}
.ai-message p{margin:0;white-space:normal}
.ai-message.is-user{align-self:flex-end;background:#17212b;color:#fff}
.ai-message.is-user span{color:rgba(255,255,255,.72)}
.ai-quick-prompts{display:flex;gap:8px;flex-wrap:wrap;padding-top:10px;border-top:1px solid var(--line)}
.ai-quick-prompts button{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important}
.ai-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}
.ai-chat-compose input{border-radius:999px}
.ai-profile-panel h3{margin:0 0 12px}
.ai-profile-panel form{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ai-profile-wide,.ai-profile-panel button{grid-column:1/-1}
.ai-profile-panel button{justify-self:start}
.ai-plan-summary,.ai-next-topic,.ai-empty,.ai-feedback{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f7fbfc}
.ai-plan-summary span,.ai-next-topic span,.ai-empty span{color:var(--muted);line-height:1.4}
.ai-week-list{display:grid;gap:8px;margin:10px 0;padding:0;list-style:none}
.ai-week-list li{padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
.ai-week-list b,.ai-week-list span{display:block}
.ai-week-list span{margin-top:4px;color:var(--muted);line-height:1.4}
.ai-task-panel [data-ai-tasks]{display:grid;gap:8px}
.ai-task-row{display:grid!important;gap:4px;width:100%;min-height:auto!important;padding:10px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:#fff!important;color:var(--ink)!important;text-align:left}
.ai-task-row.is-active{border-color:rgba(21,158,239,.38)!important;background:#edf8fb!important}
.ai-task-row span{color:var(--muted);font-size:12px}
.ai-answer-panel form{display:grid;gap:10px}
.ai-answer-panel textarea{width:100%;min-height:172px;resize:vertical;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:12px;outline:none;font:inherit}
.ai-feedback{margin-top:12px;background:#fff3e8}
.ai-feedback strong{font-size:28px;color:#b85c14}
.ai-feedback p{margin:0;color:#6f4b2f;line-height:1.45}
.is-ai-busy button{opacity:.72}
.student-toast{position:fixed;right:18px;bottom:18px;z-index:80;max-width:min(360px,calc(100vw - 36px));padding:12px 14px;border:1px solid rgba(72,203,185,.32);border-radius:14px;background:#17212b;color:#fff;box-shadow:0 20px 60px rgba(23,33,43,.22);font-weight:900}
.student-toast.is-error{border-color:rgba(255,138,61,.46);background:#fff3e8;color:#b85c14}
.student-action-modal[hidden]{display:none}
.student-action-modal{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:14px}
.student-action-modal__backdrop{position:absolute;inset:0;background:rgba(23,33,43,.44);backdrop-filter:blur(4px)}
.student-action-modal__card{position:relative;width:min(520px,100%);max-height:calc(100vh - 28px);overflow:auto;padding:22px;border-radius:20px;background:#fff;box-shadow:0 30px 90px rgba(23,33,43,.28)}
.student-action-modal__card h2{margin:0 38px 12px 0;font-size:24px}
.student-action-modal__close{position:absolute;right:12px;top:12px;min-width:34px;min-height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-weight:900}
.student-modal-copy{margin:0 0 14px;color:var(--muted);line-height:1.5}
.student-modal-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.student-modal-actions button,.student-modal-button,.student-ticket-form button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:900}
.student-modal-button.is-secondary{background:#edf8fb;color:#436171}
.hub-topbar--compact{grid-template-columns:minmax(260px,560px) auto;justify-content:space-between}
.student-live-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}
.student-live-row:first-child{border-top:0}
.student-live-row b,.student-live-row span{min-width:0}
.student-live-row span{grid-column:1;color:var(--muted);line-height:1.4}
.student-live-row.has-unread b{color:var(--ink)}
.student-live-row.has-unread span{font-weight:800;color:#405266}
.student-live-row button{grid-row:1/3;grid-column:2;min-height:30px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-weight:900}
.student-ticket-form{display:grid;gap:12px}
.student-ticket-form textarea{width:100%;min-height:132px;resize:vertical;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:12px;outline:none;font:inherit}
.student-ticket-form button{justify-self:start}
.booking-modal[hidden]{display:none}
.booking-modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center}
.booking-backdrop{position:absolute;inset:0;background:rgba(23,33,43,.46);backdrop-filter:blur(4px)}
.booking-card{position:relative;width:min(860px,calc(100vw - 28px));max-height:calc(100vh - 28px);display:grid;grid-template-columns:270px minmax(0,1fr);overflow:auto;border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(23,33,43,.28)}
.booking-card aside,.booking-card main{padding:24px}
.booking-card aside{border-right:1px solid var(--line)}
.booking-card aside img{width:78px;height:78px;border-radius:22px;object-fit:cover}
.booking-card h2,.booking-card h3{margin:10px 0}
.booking-card p,.booking-card span{color:var(--muted)}
.booking-close{position:absolute;right:14px;top:14px;min-width:34px;background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important}
.duration-switch,.booking-days,.booking-slots{display:grid;gap:8px}
.duration-switch{grid-template-columns:1fr 1fr;margin-top:16px}
.duration-switch button,.booking-days button,.booking-slots button{background:#fff;color:var(--ink);border:1px solid var(--line)}
.duration-switch .is-active,.booking-days .is-active,.booking-slots .is-active{border-color:var(--orange);background:#fff3e8;color:#b85c14}
.booking-days button:disabled,.booking-slots button:disabled,.booking-slots .is-disabled{opacity:.42;cursor:not-allowed;text-decoration:line-through}
.booking-days{grid-template-columns:repeat(7,1fr)}
.booking-days button{min-height:58px;border-radius:12px}
.booking-slots{grid-template-columns:repeat(3,1fr);margin-bottom:14px}
.booking-confirm{width:100%;min-height:44px}
body.is-modal-open{overflow:hidden}
@media(max-width:1280px){.next-lesson{grid-column:span 6}.metric-card{grid-column:span 3}.tracks-grid,.progress-grid,.community-grid,.help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wallet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-course-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1060px){.hub-layout{grid-template-columns:1fr}.hub-rail{position:static;height:auto}.hub-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-topbar,.work-grid,.study-plan-layout,.tutor-layout,.messages-layout,.support-layout,.support-create-panel,.lesson-columns,.settings-layout,.referral-layout,.ai-tutor-layout,.ai-study-grid{grid-template-columns:1fr}.messages-layout{height:auto}.chat-thread{min-height:430px}.support-create-panel form{grid-template-columns:1fr}.support-create-panel textarea{grid-column:auto}.support-layout{min-height:0}.support-thread{min-height:430px}}
@media(max-width:720px){body.has-hub-menu{overflow:hidden}.hub-layout{display:block;padding:8px}.hub-menu-toggle{display:inline-grid;align-content:center;gap:4px;width:40px;height:40px;border:0;border-radius:13px;background:#fff;box-shadow:0 8px 22px rgba(23,33,43,.08)}.hub-menu-toggle span{display:block;width:18px;height:2px;margin:0 auto;border-radius:999px;background:var(--ink)}.hub-menu-scrim{position:fixed;inset:0;z-index:79;border:0;background:rgba(23,33,43,.34);backdrop-filter:blur(2px)}.hub-layout:not(.is-menu-open) .hub-menu-scrim{display:none}.hub-layout.is-menu-open .hub-menu-scrim{display:block}.hub-rail{position:fixed;z-index:80;left:8px;top:8px;bottom:8px;width:min(286px,calc(100vw - 24px));height:auto;padding:12px;border-radius:18px;transform:translateX(calc(-100% - 20px));transition:transform .18s ease;overflow:auto}.hub-layout.is-menu-open .hub-rail{transform:translateX(0)}.hub-rail-card{display:none}.hub-nav{grid-template-columns:1fr}.hub-topbar{position:sticky;top:0;z-index:60;grid-template-columns:auto minmax(0,1fr);padding:0 0 8px;background:linear-gradient(135deg,#f9fff8 0%,#eef8ff 100%)}.hub-actions,.ai-toolbar{justify-content:start;flex-wrap:wrap}.hub-layout.is-messages-view .hub-topbar{grid-template-columns:auto 1fr}.hub-layout.is-messages-view .hub-search,.hub-layout.is-messages-view .hub-actions{display:none}.dashboard-grid,.quiz-grid,.settings-form,.saved-grid,.wallet-grid,.ai-profile-panel form,.student-course-summary,.student-course-grid{grid-template-columns:1fr}.student-welcome{display:grid;padding:20px}.student-welcome h1{font-size:25px}.student-welcome-actions{justify-content:start}.student-welcome-actions a{width:100%}.next-lesson,.metric-card{grid-column:1/-1}.lesson-brief,.task-row,.lesson-row,.note-row,.payment-history div,.referral-status div,.ai-chat-compose{grid-template-columns:1fr}.lesson-actions{flex-wrap:wrap}.radar{grid-template-columns:1fr}.ai-message{max-width:92%}.messages-layout{display:block;height:calc(100dvh - 56px);min-height:0}.chat-list,.chat-thread{height:100%;border-radius:16px}.chat-list{padding:10px}.chat-list-head button,.chat-requests,.chat-context{display:none}.chat-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.chat-tabs button{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;padding:0 4px}.chat-tabs [data-chat-filter="archived"]{display:none}.messages-layout:not(.is-thread-open) .chat-thread{display:none}.messages-layout.is-thread-open .chat-list{display:none}.messages-layout.is-thread-open .chat-thread{display:flex;min-height:0}.chat-back{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 11px;border:1px solid var(--line);border-radius:999px;background:#fff!important;color:var(--ink)!important;font-weight:900}.thread-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.thread-head button:not(.chat-back){padding:0 10px}.chat-messages{min-height:0}.chat-compose{grid-template-columns:minmax(0,1fr) auto}.support-create-panel,.support-list,.support-thread,.support-context{border-radius:16px}.support-layout{display:grid;gap:10px}.support-context{display:none}.support-list article{grid-template-columns:minmax(0,1fr)}.support-list article .chat-badge,.support-list article time{display:none}.booking-card{grid-template-columns:1fr}.booking-card aside{border-right:0;border-bottom:1px solid var(--line)}.booking-days,.booking-slots{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){body.student-hub{max-width:100vw;overflow-x:hidden}.hub-main,.hub-view,.messages-layout,.support-layout,.chat-list,.chat-thread,.support-list,.support-thread{width:100%;max-width:100%;min-width:0;overflow-x:hidden}.chat-list article{max-width:100%;grid-template-columns:42px minmax(0,1fr);overflow:hidden}.chat-list article div,.support-list article div{min-width:0;max-width:100%;overflow:hidden}.chat-list strong,.chat-list p,.support-list strong,.support-list p{width:100%}.chat-list time,.chat-list article .chat-badge{display:none}}
@media(max-width:720px){.support-compose{grid-template-columns:minmax(0,1fr) auto auto}.support-compose-file{padding:0 10px}}

@media(max-width:1060px){.support-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.support-conversation{grid-template-columns:1fr}.support-details{display:grid}.support-list article{grid-template-columns:46px minmax(0,1fr) auto}.support-ticket-id{display:none}}
@media(max-width:720px){.support-top{display:grid;gap:12px}.support-top h2{font-size:28px}.support-top button{justify-self:start}.support-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.support-stats article{padding:14px}.support-tabs{gap:16px}.support-create-panel{display:grid;gap:12px}.support-create-panel form{grid-template-columns:1fr}.support-create-panel textarea{grid-column:auto}.support-list{display:grid;gap:10px}.support-list article{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:14px}.support-list h3{font-size:15px}.support-list p{font-size:12px}.support-list article .support-status,.support-list article .support-ticket-id{justify-self:start}.support-list article .chat-badge{display:inline-grid;right:8px;top:6px}.support-conversation{grid-template-columns:1fr}.support-chat,.support-details{padding:16px;border-radius:16px}.support-details{display:none}.support-chat .thread-head{grid-template-columns:1fr}.support-reply-actions{display:grid;grid-template-columns:1fr}.support-reply-actions button,.support-compose-file{width:100%}.support-messages{min-height:260px;max-height:52vh}.support-reply-box textarea{min-height:96px}}
@media(max-width:1060px){.support-ticket-grid{grid-template-columns:1fr}.support-ticket-grid .support-create-panel form{grid-template-columns:1fr}.support-ticket-grid .support-create-panel textarea{grid-column:auto}.support-ticket-grid .support-create-panel button{min-width:0}}
@media(max-width:720px){.support-layout,.support-ticket-grid{width:100%;max-width:100%;min-width:0;overflow-x:hidden}.support-ticket-grid .support-create-panel{padding:14px}.support-ticket-grid .support-create-panel .support-file,.support-ticket-grid .support-create-panel button{width:100%;justify-self:stretch}}

/* Typography weight normalization */
body.student-hub :where(p,a,button,input,select,textarea,label,li,dt,dd,small,span,em,time,summary,th,td,b,strong){font-weight:400!important}
body.student-hub :where(h1,h2,h3,h4,h5,h6),
body.student-hub :where(h1,h2,h3,h4,h5,h6) :where(span,strong,b,a){font-weight:800!important}
