
/* ============================================================
   MALTA TUTORS V42 — IMMERSIVE MOTION EDITION
   Built over V41 four-mode system
   ============================================================ */

:root{
  --mt42-ease:cubic-bezier(.2,.7,.2,1);
  --mt42-glow:0 0 60px color-mix(in srgb,var(--mt41-accent) 22%, transparent);
  --mt42-panel:color-mix(in srgb,var(--mt41-surface-solid) 88%, transparent);
}

/* premium page transition */
.mt42-pageveil{
  position:fixed;inset:0;z-index:999999;pointer-events:none;
  background:
    radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--mt41-primary) 32%, transparent),transparent 28rem),
    radial-gradient(circle at 70% 70%,color-mix(in srgb,var(--mt41-accent) 25%, transparent),transparent 30rem),
    var(--mt41-bg);
  opacity:0;transition:opacity .25s ease;
}
.mt42-pageveil.on{opacity:.92}

/* Signature animated learning path */
.mt42-path{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  z-index:0;
}
.mt42-path svg{width:100%;height:100%;display:block}
.mt42-path path{
  fill:none;
  stroke:url(#mt42grad);
  stroke-width:2.2;
  opacity:.55;
  stroke-linecap:round;
  stroke-dasharray:9 13;
  animation:mt42Dash 18s linear infinite;
}
@keyframes mt42Dash{to{stroke-dashoffset:-440}}

/* Hero choreography */
.mt42-hero-shell{position:relative;overflow:hidden;isolation:isolate}
.mt42-hero-glow{
  position:absolute;border-radius:50%;filter:blur(16px);opacity:.36;z-index:0;pointer-events:none;
  animation:mt42Drift 14s ease-in-out infinite;
}
.mt42-hero-glow.g1{width:24rem;height:24rem;background:var(--mt41-primary);right:6%;top:12%}
.mt42-hero-glow.g2{width:18rem;height:18rem;background:var(--mt41-accent);right:28%;bottom:3%;animation-delay:-5s}
.mt42-hero-glow.g3{width:15rem;height:15rem;background:var(--mt41-accent3);left:-5%;top:28%;animation-delay:-8s}
@keyframes mt42Drift{50%{transform:translate3d(30px,-24px,0) scale(1.08)}}

.mt42-hero-content{position:relative;z-index:2}
.mt42-floating-chip{
  position:absolute;
  z-index:3;
  padding:9px 12px;
  border-radius:13px;
  background:color-mix(in srgb,var(--mt41-surface-solid) 75%, transparent);
  border:1px solid var(--mt41-border);
  backdrop-filter:blur(18px);
  box-shadow:var(--mt41-shadow);
  color:var(--mt41-text);
  font-size:10px;
  font-weight:900;
  animation:mt42Float 5.5s ease-in-out infinite;
}
.mt42-floating-chip span{display:block;font-size:8px;color:var(--mt41-muted);margin-top:3px;font-weight:700}
.mt42-floating-chip.c1{right:8%;top:19%}
.mt42-floating-chip.c2{right:2%;top:52%;animation-delay:-2s}
.mt42-floating-chip.c3{right:29%;bottom:7%;animation-delay:-3.5s}
@keyframes mt42Float{50%{transform:translateY(-10px) rotate(.6deg)}}

/* Theme specific hero personality */
html[data-theme="dark"] .mt42-floating-chip{
  background:rgba(17,24,59,.74);border-color:rgba(255,255,255,.12)
}
html[data-theme="colorful"] .mt42-hero-shell{
  background:
    radial-gradient(circle at 78% 18%,rgba(255,54,151,.16),transparent 24rem),
    radial-gradient(circle at 26% 10%,rgba(84,84,255,.18),transparent 24rem),
    radial-gradient(circle at 50% 82%,rgba(0,223,215,.13),transparent 25rem)!important;
}
html[data-theme="corporate"] .mt42-floating-chip{
  border-radius:9px!important;box-shadow:0 15px 42px rgba(20,60,100,.10)!important
}

/* Mega navigation */
.mt42-mega{
  position:fixed;
  left:50%;top:84px;transform:translateX(-50%) translateY(-8px);
  width:min(1120px,calc(100% - 32px));
  padding:20px;
  display:none;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  border-radius:22px;
  background:color-mix(in srgb,var(--mt41-surface-solid) 90%, transparent);
  border:1px solid var(--mt41-border);
  box-shadow:0 40px 120px rgba(14,22,70,.24);
  backdrop-filter:blur(26px) saturate(1.3);
  z-index:99990;
}
.mt42-mega.open{display:grid;animation:mt42Menu .22s var(--mt42-ease) both}
@keyframes mt42Menu{from{opacity:0;transform:translateX(-50%) translateY(-12px) scale(.985)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
.mt42-mega-col{
  padding:16px;border-radius:15px;background:color-mix(in srgb,var(--mt41-surface-solid) 72%, transparent);
  border:1px solid var(--mt41-border)
}
.mt42-mega-col small{font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--mt41-primary)}
.mt42-mega-col h4{font-size:17px;margin:6px 0 9px;color:var(--mt41-text)}
.mt42-mega-col a{display:block;padding:7px 0;color:var(--mt41-muted);font-size:10px;font-weight:800}
.mt42-mega-col a:hover{color:var(--mt41-primary)}

/* Subject universe */
.mt42-subject-universe{
  position:relative;
  min-height:520px;
  border-radius:28px;
  overflow:hidden;
  margin-top:24px;
  background:
    radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--mt41-primary) 18%, transparent),transparent 18rem),
    radial-gradient(circle at 70% 30%,color-mix(in srgb,var(--mt41-accent) 12%, transparent),transparent 15rem),
    linear-gradient(145deg,var(--mt41-dark-section),var(--mt41-dark-section2));
  box-shadow:var(--mt41-shadow-xl);
  border:1px solid rgba(255,255,255,.10);
}
.mt42-universe-core{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:180px;height:180px;border-radius:50%;
  display:grid;place-items:center;text-align:center;
  background:radial-gradient(circle at 35% 30%,#fff 0 5%,var(--mt41-accent2) 10%,var(--mt41-accent) 35%,var(--mt41-primary) 72%,#141739);
  color:#fff;box-shadow:0 0 0 22px rgba(255,255,255,.04),0 0 0 48px rgba(255,255,255,.025),0 0 85px color-mix(in srgb,var(--mt41-accent) 55%, transparent);
}
.mt42-universe-core b{font-size:22px;line-height:1}.mt42-universe-core span{font-size:8px;opacity:.8}
.mt42-orbit{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  border:1px solid rgba(255,255,255,.12);border-radius:50%;
  animation:mt42Spin 34s linear infinite;
}
.mt42-orbit.o1{width:340px;height:340px}
.mt42-orbit.o2{width:470px;height:470px;animation-duration:44s;animation-direction:reverse}
.mt42-subject{
  position:absolute;
  width:108px;min-height:54px;
  padding:10px;border-radius:13px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.13);
  backdrop-filter:blur(16px);
  color:#fff;font-size:9px;font-weight:900;
  display:flex;align-items:center;gap:7px;
  transform:translate(-50%,-50%);
  cursor:pointer;
  transition:transform .22s ease,background .22s ease;
}
.mt42-subject:hover{transform:translate(-50%,-50%) scale(1.08);background:rgba(255,255,255,.17)}
.mt42-subject i{font-style:normal;font-size:18px}
@keyframes mt42Spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.mt42-orbit .mt42-subject{animation:mt42Counter 34s linear infinite}
.mt42-orbit.o2 .mt42-subject{animation-duration:44s;animation-direction:reverse}
@keyframes mt42Counter{to{rotate:-360deg}}

/* Learning journey */
.mt42-journey{
  display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:24px;
}
.mt42-step{
  position:relative;padding:17px;border-radius:16px;
  background:var(--mt41-surface);border:1px solid var(--mt41-border);
  box-shadow:0 14px 40px rgba(28,37,98,.08);
  transition:transform .2s ease,border-color .2s ease;
}
.mt42-step:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--mt41-primary) 38%,var(--mt41-border))}
.mt42-step small{font-size:8px;color:var(--mt41-primary);font-weight:900}
.mt42-step b{display:block;margin-top:7px;font-size:14px;color:var(--mt41-text)}
.mt42-step span{display:block;margin-top:5px;font-size:9px;color:var(--mt41-muted);line-height:1.45}
.mt42-step:after{
  content:"→";position:absolute;right:-10px;top:50%;transform:translateY(-50%);
  color:var(--mt41-primary);font-weight:900
}
.mt42-step:last-child:after{display:none}

/* Portal command centre */
.mt42-command{
  margin-top:24px;display:grid;grid-template-columns:1.1fr .9fr;gap:12px;
}
.mt42-command-panel{
  min-height:310px;border-radius:22px;padding:22px;
  background:
    radial-gradient(circle at 90% 5%,color-mix(in srgb,var(--mt41-accent) 22%, transparent),transparent 16rem),
    linear-gradient(145deg,var(--mt41-dark-section),var(--mt41-dark-section2));
  color:#fff;border:1px solid rgba(255,255,255,.09);box-shadow:var(--mt41-shadow-xl)
}
.mt42-dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:8px;margin-top:18px}
.mt42-db{
  min-height:110px;padding:13px;border-radius:13px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08)
}
.mt42-db b{display:block;font-size:24px}.mt42-db span{font-size:8px;color:#c9d2e7}
.mt42-family{
  border-radius:22px;padding:22px;background:var(--mt41-surface);border:1px solid var(--mt41-border);box-shadow:var(--mt41-shadow)
}
.mt42-person{
  padding:12px;border-radius:13px;margin-top:9px;
  background:color-mix(in srgb,var(--mt41-surface-solid) 74%,transparent);border:1px solid var(--mt41-border)
}
.mt42-person b{font-size:11px;color:var(--mt41-text)}.mt42-person span{display:block;font-size:8px;color:var(--mt41-muted);margin-top:3px}

/* Exam countdown */
.mt42-countdown{
  display:grid;grid-template-columns:1.05fr .95fr;gap:12px;margin-top:24px;
}
.mt42-count-card,.mt42-plan-card{
  border-radius:22px;padding:22px;border:1px solid var(--mt41-border);background:var(--mt41-surface);box-shadow:var(--mt41-shadow)
}
.mt42-date-row{display:flex;gap:8px;margin-top:12px}
.mt42-date-row input{flex:1}
.mt42-count-value{font-size:56px;line-height:.9;font-weight:900;letter-spacing:-.06em;color:var(--mt41-primary);margin-top:18px}
.mt42-count-value span{font-size:13px;letter-spacing:0;color:var(--mt41-muted);font-weight:800}
.mt42-phase{padding:10px 12px;border-radius:12px;margin-top:8px;background:color-mix(in srgb,var(--mt41-primary) 8%,var(--mt41-surface-solid));border:1px solid var(--mt41-border)}
.mt42-phase b{font-size:10px;color:var(--mt41-text)}.mt42-phase span{display:block;font-size:8px;color:var(--mt41-muted);margin-top:3px}

/* Persistent intelligent launcher */
.mt42-launcher{
  position:fixed;right:18px;bottom:82px;z-index:13000;
}
.mt42-launch-btn{
  width:54px;height:54px;border-radius:18px!important;border:0!important;
  background:linear-gradient(135deg,var(--mt41-primary),var(--mt41-secondary),var(--mt41-accent))!important;
  color:#fff!important;font-size:20px!important;box-shadow:0 18px 50px rgba(70,78,210,.32)!important;
}
.mt42-launch-menu{
  position:absolute;right:0;bottom:64px;width:250px;padding:10px;border-radius:18px;
  background:color-mix(in srgb,var(--mt41-surface-solid) 92%,transparent);border:1px solid var(--mt41-border);
  box-shadow:0 32px 90px rgba(20,28,80,.24);backdrop-filter:blur(24px);display:none
}
.mt42-launch-menu.open{display:block;animation:mt42Menu .2s var(--mt42-ease) both}
.mt42-launch-menu a{
  display:flex;align-items:center;gap:9px;padding:10px;border-radius:11px;color:var(--mt41-text);font-size:10px;font-weight:900
}
.mt42-launch-menu a:hover{background:color-mix(in srgb,var(--mt41-primary) 8%,var(--mt41-surface-solid))}
.mt42-launch-menu small{display:block;padding:7px 9px;color:var(--mt41-muted);font-size:8px}

/* mobile rails */
.mt42-swipe{
  display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,78%);gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;
}
.mt42-swipe>*{scroll-snap-align:start}
.mt42-swipe::-webkit-scrollbar{height:5px}.mt42-swipe::-webkit-scrollbar-thumb{background:var(--mt41-border);border-radius:99px}

/* mode-aware accent */
html[data-theme="corporate"] .mt42-subject-universe{border-radius:16px}
html[data-theme="corporate"] .mt42-orbit{opacity:.55}
html[data-theme="light"] .mt42-command-panel{background:linear-gradient(145deg,#0d2b57,#1a5f89)!important}
html[data-theme="colorful"] .mt42-command-panel{background:linear-gradient(145deg,#31105f,#4220a0 52%,#0d778b)!important}

/* Responsive */
@media(max-width:980px){
  .mt42-mega{grid-template-columns:1fr 1fr;top:76px}
  .mt42-journey{grid-template-columns:1fr 1fr}
  .mt42-step:after{display:none}
  .mt42-command,.mt42-countdown{grid-template-columns:1fr}
  .mt42-subject-universe{min-height:480px}
}
@media(max-width:680px){
  .mt42-mega{grid-template-columns:1fr;max-height:70vh;overflow:auto}
  .mt42-journey{display:grid;grid-auto-flow:column;grid-auto-columns:82%;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory}
  .mt42-step{scroll-snap-align:start}
  .mt42-subject-universe{min-height:430px}
  .mt42-orbit.o2{width:365px;height:365px}
  .mt42-orbit.o1{width:270px;height:270px}
  .mt42-universe-core{width:140px;height:140px}
  .mt42-subject{width:86px;font-size:8px}
  .mt42-dashboard-grid{grid-template-columns:1fr 1fr}
  .mt42-launcher{bottom:75px;right:10px}
  .mt42-floating-chip{display:none}
}
@media(prefers-reduced-motion:reduce){
  .mt42-path path,.mt42-orbit,.mt42-orbit .mt42-subject,.mt42-hero-glow,.mt42-floating-chip{animation:none!important}
}
