/* SEKAI Student Glass UI v3 — 2026-08-03 */
:root{
  --sg-bg:#041827;--sg-bg2:#072a43;--sg-panel:rgba(19,65,91,.58);--sg-panel-strong:rgba(13,50,76,.82);
  --sg-line:rgba(196,231,246,.22);--sg-line-strong:rgba(218,244,255,.38);--sg-text:#f7fbff;--sg-muted:#b7cad8;
  --sg-blue:#38a9ff;--sg-cyan:#49e7e5;--sg-green:#63e6ad;--sg-gold:#f3c663;--sg-orange:#ffb84d;--sg-red:#ff7180;--sg-violet:#9a8cff;
  --sg-shadow:0 20px 60px rgba(0,8,20,.34),inset 0 1px 0 rgba(255,255,255,.08);
  --sg-shadow-soft:0 10px 32px rgba(0,10,24,.22),inset 0 1px 0 rgba(255,255,255,.06);
  --sg-radius:26px;--sg-radius-sm:18px;--sg-blur:22px;--sg-max:1440px;
}
*{box-sizing:border-box}
html{min-height:100%;scroll-behavior:smooth;background:var(--sg-bg)}
body.student-login,body.portal-body,body.education-native,body:has(.onboard-main){
  margin:0;min-height:100vh;color:var(--sg-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 85% 12%,rgba(67,225,238,.18),transparent 28%),
    radial-gradient(circle at 8% 38%,rgba(53,119,255,.17),transparent 30%),
    radial-gradient(circle at 78% 72%,rgba(85,255,190,.1),transparent 28%),
    linear-gradient(145deg,var(--sg-bg) 0%,#06253c 52%,#031524 100%);
  background-attachment:fixed;
}
body.student-login:before,body.portal-body:before,body.education-native:before,body:has(.onboard-main):before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.7;
  background-image:linear-gradient(115deg,transparent 35%,rgba(73,231,229,.12) 35.2%,transparent 35.5%),linear-gradient(155deg,transparent 68%,rgba(56,169,255,.1) 68.2%,transparent 68.5%);
  background-size:100% 100%;animation:sgAurora 13s ease-in-out infinite alternate;
}
@keyframes sgAurora{to{transform:translate3d(0,-10px,0) scale(1.015);opacity:.95}}
@keyframes sgFloat{50%{transform:translateY(-5px)}}
@keyframes sgPulse{50%{box-shadow:0 0 0 10px rgba(73,231,229,0),0 0 28px rgba(73,231,229,.45)}}
@keyframes sgRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes sgBar{from{transform:scaleY(.1)}to{transform:scaleY(1)}}
@keyframes sgDash{to{stroke-dashoffset:-120}}
.skip-link{position:fixed;left:12px;top:-80px;z-index:10000;background:#fff;color:#082034;padding:10px 14px;border-radius:10px}.skip-link:focus{top:12px}
a{color:inherit}

/* Shared glass primitives */
.portal-card,.app-card,.onboard-card,.readiness-grid article,.onboard-order>div,.login-card,.login-story,.focus-action-card,.graduation-guide,.student-hero,.kpi-grid article,.dashboard-chart-card,.dashboard-stepper,.dashboard-quick-actions,.glass-status-card,.portal-topbar,.mobile-nav,.edu-appbar,.edu-sidebar,.edu-bottom-nav{
  background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035));
  border:1px solid var(--sg-line);box-shadow:var(--sg-shadow);backdrop-filter:blur(var(--sg-blur)) saturate(135%);-webkit-backdrop-filter:blur(var(--sg-blur)) saturate(135%);
}
.portal-card,.app-card,.onboard-card,.focus-action-card,.graduation-guide,.student-hero,.dashboard-chart-card,.dashboard-stepper,.dashboard-quick-actions{border-radius:var(--sg-radius)}
.portal-card,.app-card,.onboard-card,.dashboard-chart-card{position:relative;overflow:hidden}
.portal-card:before,.app-card:before,.onboard-card:before,.dashboard-chart-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.08),transparent 32%,transparent 72%,rgba(73,231,229,.05))}
.portal-card>* ,.app-card>* ,.onboard-card>* ,.dashboard-chart-card>*{position:relative}
.sg-reveal{opacity:0;transform:translateY(18px)}.sg-reveal.is-visible{animation:sgRise .65s cubic-bezier(.2,.7,.2,1) forwards}
.eyebrow{color:var(--sg-cyan)!important;letter-spacing:.12em;font-weight:850}.eyebrow span{background:var(--sg-green)!important;box-shadow:0 0 18px rgba(99,230,173,.55)}
.primary-btn,.primary-action,.onboard-primary,.login-submit{background:linear-gradient(105deg,#227dff,#2fc9e3 55%,#62e5a7)!important;color:#fff!important;border:0!important;box-shadow:0 10px 28px rgba(34,125,255,.28),inset 0 1px 0 rgba(255,255,255,.25)!important;transition:.22s ease!important}
.primary-btn:hover,.primary-action:hover,.onboard-primary:hover,.login-submit:hover{transform:translateY(-2px);filter:brightness(1.08)}
.secondary-btn,.secondary-action,.onboard-secondary{background:rgba(255,255,255,.07)!important;color:var(--sg-text)!important;border:1px solid var(--sg-line)!important;box-shadow:var(--sg-shadow-soft)!important}
.danger-btn{background:rgba(255,113,128,.12)!important;color:#ffd8dd!important;border:1px solid rgba(255,113,128,.34)!important}
input,select,textarea{color:var(--sg-text)!important;background:rgba(4,24,39,.5)!important;border:1px solid var(--sg-line)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}
input::placeholder,textarea::placeholder{color:#8fa9bb!important}input:focus,select:focus,textarea:focus{outline:0!important;border-color:rgba(73,231,229,.72)!important;box-shadow:0 0 0 4px rgba(73,231,229,.11)!important}
option{background:#0a2a42;color:#fff}
.notice,.edu-notice,.onboard-notice,.login-alert{border:1px solid var(--sg-line)!important;background:rgba(8,35,54,.92)!important;color:#fff!important;border-radius:16px!important;box-shadow:var(--sg-shadow-soft)!important}
.notice.error,.edu-notice.error,.onboard-notice.error,.login-alert{border-color:rgba(255,113,128,.5)!important;background:rgba(91,25,38,.82)!important}
.status-pill{border:1px solid var(--sg-line)!important;background:rgba(255,255,255,.07)!important;color:#dfeef8!important}.status-pill.completed,.status-pill.approved,.status-pill.verified,.status-pill.paid,.status-pill.active{color:#8ff0c7!important;background:rgba(44,194,132,.13)!important;border-color:rgba(99,230,173,.35)!important}.status-pill.pending,.status-pill.sent,.status-pill.partial,.status-pill.in_progress,.status-pill.scheduled{color:#ffd98a!important;background:rgba(255,184,77,.12)!important;border-color:rgba(255,184,77,.32)!important}.status-pill.rejected,.status-pill.revision,.status-pill.cancelled{color:#ffb3bd!important;background:rgba(255,113,128,.12)!important;border-color:rgba(255,113,128,.35)!important}
progress{height:8px;border:0;border-radius:99px;overflow:hidden;background:rgba(255,255,255,.09)}progress::-webkit-progress-bar{background:rgba(255,255,255,.09)}progress::-webkit-progress-value{background:linear-gradient(90deg,var(--sg-blue),var(--sg-cyan),var(--sg-green));border-radius:99px}progress::-moz-progress-bar{background:linear-gradient(90deg,var(--sg-blue),var(--sg-cyan),var(--sg-green));border-radius:99px}

/* Login */
body.student-login{padding:24px;display:grid;place-items:center}
.login-shell{width:min(1180px,100%);display:grid!important;grid-template-columns:1.02fr .98fr;gap:24px;align-items:stretch;margin:auto!important}
.login-story,.login-panel{min-width:0}.login-story{min-height:720px;border-radius:32px;padding:36px!important;display:flex!important;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.login-story:after{content:"日本";position:absolute;right:-12px;bottom:42px;font-size:clamp(100px,15vw,210px);font-weight:900;color:rgba(255,255,255,.025);letter-spacing:-.08em;transform:rotate(-7deg)}
.login-brand{position:relative;z-index:2;display:flex!important;align-items:center;gap:14px;text-decoration:none}.login-brand>span,.portal-brand>span,.edu-brand-mark{background:linear-gradient(145deg,#f8d77c,#b8812b)!important;color:#fff!important;box-shadow:0 12px 28px rgba(204,148,50,.25),inset 0 1px 0 rgba(255,255,255,.45)!important;border-radius:16px!important}
.login-brand b,.portal-brand b{color:#fff!important;letter-spacing:.05em}.login-brand small,.portal-brand small{color:#b9cad7!important;letter-spacing:.2em}
.login-message{position:relative;z-index:2;max-width:620px}.login-kicker{display:inline-flex!important;padding:9px 14px;border:1px solid var(--sg-line);border-radius:99px;background:rgba(255,255,255,.06);color:var(--sg-green)!important}.login-message h1{font-size:clamp(42px,5vw,68px)!important;line-height:1.02!important;letter-spacing:-.055em!important;margin:18px 0!important;background:linear-gradient(90deg,#fff,#70dfff 70%,#8cf1c8);-webkit-background-clip:text;background-clip:text;color:transparent!important}.login-message>p{font-size:18px!important;line-height:1.75!important;color:var(--sg-muted)!important}.login-benefits{display:grid!important;grid-template-columns:repeat(3,1fr);gap:12px!important}.login-benefits>div{background:rgba(255,255,255,.06)!important;border:1px solid var(--sg-line)!important;border-radius:18px!important;padding:16px!important}.login-benefits span{color:var(--sg-cyan)!important}.login-benefits b{color:#fff!important}.login-benefits small,.login-foot{color:var(--sg-muted)!important}
.login-panel{display:grid;align-items:center}.login-card{width:100%!important;border-radius:32px!important;padding:42px!important;background:linear-gradient(145deg,rgba(18,67,94,.78),rgba(10,42,66,.67))!important}.login-card-head small{color:var(--sg-cyan)!important}.login-card-head h2{font-size:36px!important;color:#fff!important}.login-card-head p,.login-help,.login-security{color:var(--sg-muted)!important}.login-form label>span{color:#eaf6fc!important}.login-form input{height:60px!important;border-radius:16px!important;padding:0 18px!important}.password-toggle{color:#bde9ff!important;background:rgba(255,255,255,.08)!important;border:1px solid var(--sg-line)!important;border-radius:12px!important}.login-submit{min-height:60px!important;border-radius:17px!important;font-size:17px!important}.login-security,.login-help{background:rgba(255,255,255,.055)!important;border:1px solid var(--sg-line)!important;border-radius:17px!important}.login-help a{color:var(--sg-cyan)!important}.login-foot{position:relative;z-index:2}

/* Portal shell and header */
.portal-topbar{position:sticky!important;top:12px!important;z-index:70;width:min(var(--sg-max),calc(100% - 32px))!important;margin:12px auto 0!important;border-radius:22px!important;padding:12px 18px!important;background:rgba(5,27,44,.72)!important}
.portal-brand{display:flex!important;align-items:center;gap:10px;text-decoration:none}.portal-brand>span{display:grid!important;place-items:center!important}.topbar-actions a,.user-chip{border:1px solid var(--sg-line)!important;background:rgba(255,255,255,.055)!important;color:#e9f7ff!important;border-radius:13px!important}.user-chip small{color:#9fb6c7!important}.student-switcher select{background:rgba(255,255,255,.07)!important}
.portal-shell{width:min(var(--sg-max),calc(100% - 34px))!important;margin:28px auto 120px!important;display:grid;gap:22px}
.student-hero{padding:34px!important;min-height:245px;display:grid!important;grid-template-columns:1.35fr .7fr .55fr!important;align-items:center;gap:24px;background:linear-gradient(135deg,rgba(35,101,135,.48),rgba(7,42,67,.63))!important;overflow:hidden;position:relative}
.student-hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;top:-220px;background:radial-gradient(circle,rgba(73,231,229,.22),transparent 65%);animation:sgFloat 7s ease-in-out infinite}
.student-hero h1{font-size:clamp(36px,4vw,58px)!important;margin:10px 0!important;color:#fff!important}.student-hero>div>p:last-child{color:var(--sg-muted)!important;font-size:16px}.next-step{background:rgba(255,255,255,.06)!important;border:1px solid var(--sg-line)!important;border-radius:20px!important;color:#fff!important}.next-step small,.next-step span{color:var(--sg-muted)!important}
.hero-progress-ring,.dashboard-donut{--value:50;position:relative;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--sg-green) calc(var(--value)*1%),var(--sg-cyan) calc(var(--value)*1%),rgba(255,255,255,.12) 0);box-shadow:0 0 38px rgba(73,231,229,.2);animation:sgFloat 6s ease-in-out infinite}.hero-progress-ring{width:156px;aspect-ratio:1;margin:auto}.hero-progress-ring:before,.dashboard-donut:before{content:"";position:absolute;inset:14px;border-radius:50%;background:linear-gradient(145deg,#0a304b,#08243a);box-shadow:inset 0 4px 18px rgba(0,0,0,.35)}.hero-progress-ring span,.dashboard-donut span{position:relative;text-align:center}.hero-progress-ring b,.dashboard-donut b{display:block;font-size:34px}.hero-progress-ring small,.dashboard-donut small{color:var(--sg-muted)}
.focus-action-card{display:flex!important;align-items:center;justify-content:space-between;gap:28px;padding:28px!important}.focus-action-card h2{color:#fff!important}.focus-action-card p{color:var(--sg-muted)!important}.focus-meta span{background:rgba(255,255,255,.05)!important;border:1px solid var(--sg-line)!important}.focus-meta small{color:#8facbf!important}.graduation-guide{color:#fff!important}.graduation-guide summary small,.graduation-guide p{color:var(--sg-muted)!important}.graduation-guide article{background:rgba(255,255,255,.045)!important;border:1px solid var(--sg-line)!important}
.portal-nav{position:sticky;top:92px;z-index:55;padding:8px!important;border-radius:18px!important;background:rgba(5,29,47,.82)!important;border:1px solid var(--sg-line)!important;backdrop-filter:blur(18px)}.portal-nav a{color:#b9ccda!important;border-radius:12px!important}.portal-nav a:hover,.portal-nav a:focus{background:rgba(73,231,229,.11)!important;color:#fff!important}
.kpi-grid{gap:14px!important}.kpi-grid article{padding:20px!important;border-radius:20px!important;color:#fff!important;transition:.2s ease}.kpi-grid article:hover{transform:translateY(-3px);border-color:var(--sg-line-strong)}.kpi-grid small,.kpi-grid span{color:var(--sg-muted)!important}.kpi-grid strong{color:#fff!important}.content-grid,.schedule-layout{gap:20px!important}.section-head h2,.portal-card h2,.portal-card h3{color:#fff!important}.section-head p,.portal-card p,.portal-card small{color:var(--sg-muted)}
.journey-item{border-left-color:rgba(125,211,252,.25)!important}.journey-item i{background:rgba(255,255,255,.08)!important;color:#bdeeff!important;border:1px solid var(--sg-line)!important}.journey-item.done i{background:rgba(45,202,139,.22)!important;color:#8ff0c7!important;box-shadow:0 0 18px rgba(45,202,139,.24)}.journey-item.current i{background:rgba(56,169,255,.22)!important;color:#bfe7ff!important;animation:sgPulse 2.6s infinite}.support-card,.schedule-form{background:linear-gradient(145deg,rgba(34,105,135,.32),rgba(255,255,255,.03))!important}.student-code{background:rgba(255,255,255,.055)!important;border:1px solid var(--sg-line)!important}.schedule-item,.invoice-item,.document-item,.payment-history>div,.linked-account,.request-list>div{background:rgba(255,255,255,.045)!important;border:1px solid var(--sg-line)!important;color:#fff!important;border-radius:18px!important}.schedule-item:hover,.invoice-item:hover,.document-item:hover{background:rgba(255,255,255,.07)!important;border-color:var(--sg-line-strong)!important}.schedule-item time,.invoice-icon,.document-title>span{background:linear-gradient(145deg,rgba(56,169,255,.25),rgba(73,231,229,.14))!important;color:#dffaff!important;border:1px solid var(--sg-line)!important}.invoice-item small,.document-item small,.schedule-item small{color:var(--sg-muted)!important}.admin-note{background:rgba(255,184,77,.09)!important;border:1px solid rgba(255,184,77,.25)!important;color:#ffe3ab!important}.profile-score{background:rgba(99,230,173,.12)!important;color:#9ff4ce!important;border:1px solid rgba(99,230,173,.28)!important}.portal-form label span,.profile-form label span{color:#dceaf2!important}.payment-details[open]{background:rgba(3,22,36,.75)!important;border:1px solid var(--sg-line)!important}.empty-inline,.empty-state{background:rgba(255,255,255,.035)!important;border:1px dashed var(--sg-line)!important;color:var(--sg-muted)!important}

/* New dashboard charts / quick actions */
.dashboard-quick-actions{padding:22px;display:grid;gap:16px}.dashboard-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.dashboard-section-head h2{margin:0;font-size:22px}.dashboard-section-head small{color:var(--sg-muted)}
.quick-action-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.quick-action-grid a{min-height:110px;border:1px solid var(--sg-line);border-radius:20px;background:rgba(255,255,255,.052);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-decoration:none;color:#fff;transition:.22s ease}.quick-action-grid a:hover{transform:translateY(-4px);background:rgba(255,255,255,.085);border-color:var(--sg-line-strong)}.quick-action-grid i{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;font-style:normal;font-size:23px;background:linear-gradient(145deg,rgba(56,169,255,.3),rgba(73,231,229,.14));box-shadow:0 8px 22px rgba(0,0,0,.2)}.quick-action-grid a:nth-child(2) i{background:linear-gradient(145deg,rgba(99,230,173,.35),rgba(45,202,139,.12))}.quick-action-grid a:nth-child(3) i{background:linear-gradient(145deg,rgba(243,198,99,.36),rgba(255,184,77,.13))}.quick-action-grid a:nth-child(4) i{background:linear-gradient(145deg,rgba(154,140,255,.38),rgba(101,89,224,.12))}.quick-action-grid a:nth-child(5) i{background:linear-gradient(145deg,rgba(56,169,255,.3),rgba(97,190,255,.12))}.quick-action-grid a:nth-child(6) i{background:linear-gradient(145deg,rgba(73,231,229,.32),rgba(99,230,173,.12))}
.dashboard-analytics{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:16px}.dashboard-chart-card{padding:22px;min-height:240px}.dashboard-chart-card h3{margin:0 0 20px;color:#fff}.dashboard-chart-card p{color:var(--sg-muted)}.sparkline{width:100%;height:145px;overflow:visible}.sparkline .grid{stroke:rgba(255,255,255,.09);stroke-width:1}.sparkline .line{fill:none;stroke:url(#sgLineGradient);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:220;animation:sgDash 8s linear infinite}.sparkline .area{fill:url(#sgAreaGradient)}.sparkline circle{fill:#eaffff;stroke:var(--sg-cyan);stroke-width:4;filter:drop-shadow(0 0 5px rgba(73,231,229,.8))}.chart-labels{display:flex;justify-content:space-between;color:#8facbf;font-size:11px}.bar-chart{height:145px;display:flex;align-items:flex-end;gap:12px;padding:8px 4px 0}.bar-chart span{flex:1;min-width:20px;height:calc(var(--bar)*1%);max-height:100%;border-radius:9px 9px 4px 4px;background:linear-gradient(180deg,var(--bar-color,var(--sg-cyan)),rgba(56,169,255,.45));box-shadow:0 0 18px rgba(56,169,255,.22);transform-origin:bottom;animation:sgBar .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--delay,0s);position:relative}.bar-chart span:after{content:attr(data-label);position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);font-size:10px;color:#9bb1c1;white-space:nowrap}.dashboard-donut{width:150px;aspect-ratio:1;margin:8px auto 18px}.donut-legend{display:grid;gap:8px}.donut-legend span{display:flex;align-items:center;justify-content:space-between;color:var(--sg-muted);font-size:12px}.donut-legend i{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:7px}.donut-legend b{margin-left:auto;color:#fff}.dashboard-stepper{padding:22px}.stepper-row{display:flex;align-items:flex-start;overflow-x:auto;padding:12px 4px 4px;scrollbar-width:none}.stepper-row::-webkit-scrollbar{display:none}.stepper-node{min-width:118px;flex:1;text-align:center;position:relative;color:#90a9ba}.stepper-node:not(:last-child):before{content:"";position:absolute;left:60%;right:-40%;top:22px;height:3px;background:rgba(255,255,255,.12)}.stepper-node.done:not(:last-child):before{background:linear-gradient(90deg,var(--sg-green),var(--sg-cyan))}.stepper-node i{position:relative;z-index:2;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:rgba(255,255,255,.07);border:1px solid var(--sg-line);font-style:normal}.stepper-node.done i{background:rgba(99,230,173,.17);color:#9ff4ce;box-shadow:0 0 18px rgba(99,230,173,.24)}.stepper-node.current i{background:rgba(56,169,255,.2);color:#c8edff;border-color:rgba(73,231,229,.65);animation:sgPulse 2.5s infinite}.stepper-node b{display:block;color:#e8f5fc;font-size:12px}.stepper-node small{display:block;margin-top:4px;font-size:10px;color:#8fa8b9}

/* Mobile bottom nav */
.mobile-nav,.edu-bottom-nav{position:fixed!important;left:50%!important;bottom:max(10px,env(safe-area-inset-bottom))!important;transform:translateX(-50%)!important;width:min(760px,calc(100% - 20px))!important;z-index:95!important;border-radius:22px!important;padding:8px!important;background:rgba(5,29,47,.88)!important}.mobile-nav a,.edu-bottom-nav button{color:#a9bdcb!important;border-radius:15px!important}.mobile-nav a:hover,.mobile-nav a:focus,.edu-bottom-nav button.active{background:linear-gradient(120deg,rgba(56,169,255,.22),rgba(99,230,173,.14))!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(73,231,229,.22)}

/* Education PWA */
.edu-app{color:var(--sg-text)!important;background:transparent!important}.edu-appbar{background:rgba(5,29,47,.78)!important;border-radius:0 0 22px 22px!important;border-color:var(--sg-line)!important}.edu-brand b{color:#fff!important}.edu-brand small{color:#9eb5c4!important}.icon-button,.avatar-button{background:rgba(255,255,255,.07)!important;color:#fff!important;border:1px solid var(--sg-line)!important}.avatar-button{box-shadow:0 0 0 5px rgba(99,230,173,.08)}.edu-sidebar{background:rgba(5,29,47,.76)!important;border-color:var(--sg-line)!important}.sidebar-profile{background:rgba(255,255,255,.05)!important;border:1px solid var(--sg-line)!important}.sidebar-profile b{color:#fff!important}.sidebar-profile small{color:var(--sg-muted)!important}.edu-sidebar button,.edu-sidebar a{color:#a9bdcb!important}.edu-sidebar button.active,.edu-sidebar button:hover{background:linear-gradient(105deg,rgba(56,169,255,.22),rgba(73,231,229,.1))!important;color:#fff!important}.edu-main{background:transparent!important}.edu-screen{color:#fff!important}.welcome-card{background:linear-gradient(135deg,rgba(37,105,139,.48),rgba(7,42,67,.72))!important;border:1px solid var(--sg-line)!important;box-shadow:var(--sg-shadow)!important}.welcome-copy h1{color:#fff!important;font-size:clamp(38px,5vw,62px)!important}.welcome-copy>p{color:var(--sg-muted)!important}.date-chip,.welcome-tags span{background:rgba(255,255,255,.06)!important;border:1px solid var(--sg-line)!important;color:#dff6ff!important}.focus-card{background:rgba(6,30,49,.62)!important;border:1px solid var(--sg-line)!important}.focus-card small,.focus-card span{color:var(--sg-muted)!important}.metric-card{background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035))!important;border:1px solid var(--sg-line)!important;box-shadow:var(--sg-shadow-soft)!important;color:#fff!important}.metric-card small{color:var(--sg-muted)!important}.metric-icon,.action-grid i{background:linear-gradient(145deg,rgba(56,169,255,.28),rgba(73,231,229,.13))!important;color:#dffaff!important}.app-card{color:#fff!important}.section-heading h2,.screen-title h1,.profile-identity h2{color:#fff!important}.section-heading p,.screen-title p,.app-card p,.app-card small{color:var(--sg-muted)!important}.preparation-list>div,.action-grid button,.agenda-row,.note-item,.timeline-item,.habit-list label span,.accordion-list details,.result-row,.attendance-list>div,.competency-list>div,.profile-menu a,.profile-details>div{background:rgba(255,255,255,.045)!important;border:1px solid var(--sg-line)!important;color:#fff!important}.action-grid button:hover,.profile-menu a:hover{background:rgba(255,255,255,.075)!important}.timeline-item.current{background:rgba(73,231,229,.09)!important;border-color:rgba(73,231,229,.38)!important}.score-ring,.discipline-ring{background:conic-gradient(var(--sg-green) calc(var(--score,72)*1%),var(--sg-cyan) 0 78%,rgba(255,255,255,.1) 0)!important;box-shadow:0 0 35px rgba(73,231,229,.18)}.score-ring:after,.discipline-ring:after{background:#092b43!important}.learning-stat>span{background:rgba(56,169,255,.18)!important}.status-chip{background:rgba(99,230,173,.13)!important;color:#9ff4ce!important;border:1px solid rgba(99,230,173,.28)!important}.status-chip.warning{background:rgba(255,184,77,.12)!important;color:#ffd489!important;border-color:rgba(255,184,77,.3)!important}.guide-search{background:rgba(255,255,255,.055)!important;border:1px solid var(--sg-line)!important}.edu-toast{background:rgba(5,29,47,.94)!important;border:1px solid var(--sg-line)!important;color:#fff!important;box-shadow:var(--sg-shadow)!important}

/* Onboarding */
.onboard-main{width:min(1180px,calc(100% - 32px))!important;margin:32px auto 110px!important;color:#fff!important}.onboard-hero{background:linear-gradient(135deg,rgba(37,105,139,.46),rgba(7,42,67,.68))!important;border:1px solid var(--sg-line)!important;border-radius:28px!important;box-shadow:var(--sg-shadow)!important}.onboard-hero h1{color:#fff!important}.onboard-hero p{color:var(--sg-muted)!important}.onboard-order,.readiness-grid{gap:14px!important}.onboard-order>div,.readiness-grid article{border-radius:20px!important;color:#fff!important}.onboard-order small,.readiness-grid small{color:var(--sg-muted)!important}.onboard-order a{color:var(--sg-cyan)!important}.readiness-grid article.done{border-color:rgba(99,230,173,.38)!important;background:rgba(99,230,173,.08)!important}.onboard-head h2{color:#fff!important}.stage-pill{background:rgba(255,184,77,.12)!important;color:#ffd489!important;border:1px solid rgba(255,184,77,.3)!important}.onboard-list a{background:rgba(255,255,255,.05)!important;border:1px solid var(--sg-line)!important;color:#fff!important}.onboard-list small{color:var(--sg-muted)!important}.submission-summary{background:rgba(255,255,255,.045)!important;border:1px solid var(--sg-line)!important}.back-link{color:var(--sg-cyan)!important}

/* Responsive */
@media(max-width:1100px){
 .login-shell{grid-template-columns:1fr}.login-story{min-height:auto}.login-benefits{grid-template-columns:repeat(3,1fr)}
 .student-hero{grid-template-columns:1fr .7fr!important}.hero-progress-ring{grid-column:2;grid-row:1/3}.next-step{grid-column:1}
 .dashboard-analytics{grid-template-columns:1fr 1fr}.dashboard-chart-card:first-child{grid-column:1/-1}.quick-action-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
 body.student-login{padding:0}.login-shell{display:block!important}.login-story{border-radius:0!important;min-height:420px;padding:28px 20px 90px!important}.login-message h1{font-size:42px!important}.login-benefits,.login-foot{display:none!important}.login-panel{margin-top:-62px;position:relative;z-index:3;padding:0 10px 28px}.login-card{padding:28px 20px!important;border-radius:28px!important}.login-card-head h2{font-size:31px!important}
 .portal-topbar{top:6px!important;width:calc(100% - 14px)!important;padding:10px!important}.portal-brand small{display:none}.topbar-actions>a:not(:last-child),.student-switcher{display:none!important}.user-chip{max-width:150px;overflow:hidden}.portal-shell{width:calc(100% - 16px)!important;margin-top:16px!important;gap:14px!important}.portal-nav{display:none!important}
 .student-hero{grid-template-columns:1fr!important;padding:24px 20px!important;min-height:auto}.student-hero h1{font-size:38px!important}.hero-progress-ring{grid-column:auto;grid-row:auto;width:138px;margin:8px auto}.next-step{grid-column:auto}.focus-action-card{display:grid!important;padding:22px!important}.focus-action-card .primary-btn{width:100%}.graduation-guide{padding:18px!important}
 .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.kpi-grid article{padding:17px!important}.content-grid,.schedule-layout,.dashboard-analytics{grid-template-columns:1fr!important}.dashboard-chart-card:first-child{grid-column:auto}.quick-action-grid{grid-template-columns:repeat(3,1fr);gap:9px}.quick-action-grid a{min-height:96px;font-size:12px}.dashboard-quick-actions,.dashboard-chart-card,.dashboard-stepper{padding:18px}.stepper-node{min-width:96px}
 .invoice-item{grid-template-columns:1fr!important}.invoice-actions{justify-content:flex-start!important}.document-grid{grid-template-columns:1fr!important}.profile-form{grid-template-columns:1fr!important}.profile-form .wide{grid-column:auto!important}
 .edu-appbar{left:0!important;right:0!important}.edu-sidebar{display:none!important}.edu-main{padding-bottom:110px!important}.welcome-card{grid-template-columns:1fr!important}.focus-card{margin-top:16px}.home-grid,.learning-grid,.character-grid,.profile-layout,.today-layout{grid-template-columns:1fr!important}.metric-scroll{grid-template-columns:repeat(4,minmax(170px,1fr))!important;overflow-x:auto;padding-bottom:5px}.app-card{border-radius:22px!important}.edu-bottom-nav{display:flex!important}.screen-title{display:block!important}.screen-title>*+*{margin-top:14px}.guide-search{width:100%!important}.learning-overview{grid-template-columns:1fr!important}.score-ring-card{grid-template-columns:1fr!important;text-align:center}.score-ring{margin:auto}.discipline-hero{grid-template-columns:1fr!important}.profile-identity{padding-top:28px!important}
 .onboard-main{width:calc(100% - 16px)!important;margin-top:16px!important}.onboard-order,.readiness-grid{grid-template-columns:1fr 1fr!important}.onboard-card,.onboard-hero{padding:22px!important}
}
@media(max-width:430px){
 .login-message h1{font-size:36px!important}.login-story{min-height:390px}.login-card{padding:24px 16px!important}
 .portal-topbar .portal-brand b{font-size:13px}.topbar-actions{gap:5px!important}.user-chip{display:none!important}.portal-shell{margin-bottom:104px!important}.student-hero h1{font-size:33px!important}.student-hero{padding:20px 17px!important}.focus-meta{grid-template-columns:1fr!important}.kpi-grid{gap:9px!important}.kpi-grid strong{font-size:22px!important}.quick-action-grid{grid-template-columns:repeat(3,1fr)}.quick-action-grid a{padding:10px 4px}.quick-action-grid i{width:40px;height:40px}.dashboard-chart-card{min-height:210px}.hero-progress-ring{width:126px}.mobile-nav a,.edu-bottom-nav button{font-size:10px!important}.mobile-nav span,.edu-bottom-nav i{font-size:19px!important}
 .onboard-order,.readiness-grid{grid-template-columns:1fr!important}.onboard-hero h1{font-size:32px!important}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.sg-reveal{opacity:1!important;transform:none!important}}

/* Section-specific glass dashboards */
.schedule-summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:0 0 20px}.schedule-summary-strip article{display:flex;align-items:center;gap:13px;padding:17px;border-radius:19px;background:rgba(255,255,255,.045);border:1px solid var(--sg-line);box-shadow:var(--sg-shadow-soft)}.schedule-summary-strip i{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;font-style:normal;background:linear-gradient(145deg,rgba(56,169,255,.3),rgba(73,231,229,.12));color:#e3faff;font-size:20px}.schedule-summary-strip span{min-width:0}.schedule-summary-strip small,.schedule-summary-strip em{display:block;color:var(--sg-muted);font-style:normal;font-size:10px}.schedule-summary-strip b{display:block;color:#fff;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:3px 0}
.finance-overview{display:grid;grid-template-columns:.95fr .7fr 1.2fr;gap:16px;margin:0 0 18px}.finance-overview>article{border-radius:22px;background:rgba(255,255,255,.045);border:1px solid var(--sg-line);box-shadow:var(--sg-shadow-soft);padding:20px}.finance-summary-glass{display:grid;grid-template-columns:1fr 1fr;gap:12px}.finance-summary-glass>div{display:flex;align-items:center;gap:10px;padding:12px;border-radius:15px;background:rgba(255,255,255,.04);border:1px solid rgba(196,231,246,.12)}.finance-summary-glass i{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:rgba(56,169,255,.18);font-style:normal;color:#bfe9ff}.finance-summary-glass small{display:block;font-size:10px}.finance-summary-glass b{display:block;color:#fff;margin-top:3px;font-size:14px}.finance-summary-glass .good{color:#86efc1}.finance-summary-glass .wait{color:#ffd184}.finance-summary-glass .danger{color:#ff9eaa}.finance-ring-panel{text-align:center}.finance-donut{width:136px;margin:0 auto 10px}.finance-ring-panel p{font-size:11px;margin:0}.finance-trend-panel{min-width:0}.finance-mini-bars{height:150px;display:flex;align-items:flex-end;gap:9px;padding:18px 4px 22px}.finance-mini-bars>span{flex:1;min-width:18px;height:calc(var(--bar)*1%);max-height:100%;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#63e6ad,#268be5);position:relative;transform-origin:bottom;animation:sgBar .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--delay)}.finance-mini-bars span b{position:absolute;top:-18px;left:50%;transform:translateX(-50%);font-size:9px;color:#d9f8ff}.finance-mini-bars span:after{content:attr(data-label);position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);font-size:9px;color:#90a9ba;white-space:nowrap}.finance-mini-bars>em{margin:auto;color:var(--sg-muted);font-style:normal;font-size:12px}.payment-method-note{display:flex;align-items:center;gap:12px;padding:14px 16px;margin:0 0 18px;border:1px solid rgba(99,230,173,.25);border-radius:17px;background:rgba(99,230,173,.065)}.payment-method-note>span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:rgba(99,230,173,.16);color:#9ff4ce}.payment-method-note b{display:block}.payment-method-note small{display:block;color:var(--sg-muted);margin-top:2px}
.document-overview-glass{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:22px;margin:0 0 18px;border-radius:22px;background:rgba(255,255,255,.045);border:1px solid var(--sg-line);box-shadow:var(--sg-shadow-soft)}.document-donut{width:132px;margin:0}.document-overview-glass h3{font-size:21px;margin:5px 0 12px}.document-overview-glass h3 strong{font-size:32px;color:#78edbd}.document-overview-glass p:last-child{margin:10px 0 0;font-size:12px}.document-overview-glass .primary-btn{white-space:nowrap}
.profile-overview-glass{display:grid;grid-template-columns:auto 1fr minmax(160px,.35fr);align-items:center;gap:22px;padding:22px;margin:0 0 20px;border-radius:22px;background:linear-gradient(135deg,rgba(56,169,255,.12),rgba(99,230,173,.055));border:1px solid var(--sg-line);box-shadow:var(--sg-shadow-soft)}.profile-avatar-glass{width:88px;height:88px;display:grid;place-items:center;border-radius:50%;font-size:28px;font-weight:900;background:linear-gradient(145deg,#47b6ff,#54e5bc);color:#052038;box-shadow:0 0 0 7px rgba(73,231,229,.08),0 12px 30px rgba(0,0,0,.25)}.profile-overview-glass h3{font-size:25px;margin:4px 0}.profile-overview-glass p{margin:0}.profile-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.profile-tags span{padding:6px 10px;border-radius:99px;background:rgba(255,255,255,.06);border:1px solid var(--sg-line);font-size:10px;color:#cde4f1}.profile-completion{text-align:right}.profile-completion>b{display:block;font-size:32px;color:#7ceec0}.profile-completion small{display:block;margin:2px 0 10px}.profile-completion progress{width:100%}
@media(max-width:1000px){.finance-overview{grid-template-columns:1fr 1fr}.finance-trend-panel{grid-column:1/-1}.document-overview-glass{grid-template-columns:auto 1fr}.document-overview-glass .primary-btn{grid-column:1/-1}.profile-overview-glass{grid-template-columns:auto 1fr}.profile-completion{grid-column:1/-1;text-align:left}}
@media(max-width:680px){.schedule-summary-strip,.finance-overview{grid-template-columns:1fr}.finance-trend-panel{grid-column:auto}.finance-summary-glass{grid-template-columns:1fr 1fr}.document-overview-glass{grid-template-columns:1fr;text-align:center}.document-donut{margin:auto}.profile-overview-glass{grid-template-columns:1fr;text-align:center}.profile-avatar-glass{margin:auto}.profile-tags{justify-content:center}.profile-completion{text-align:center}.schedule-summary-strip article{padding:14px}.finance-overview>article{padding:17px}}
@media(max-width:390px){.finance-summary-glass{grid-template-columns:1fr}.finance-mini-bars{gap:6px}.document-overview-glass h3{font-size:18px}}