/* Light and dark themes. The other stylesheets draw the dark (night) theme; this file only restyles the night
   surfaces for html[data-theme="light"]. Simulated applications inside the lab window are light in both themes. */
.theme-toggle{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;padding:0;border:1px solid #ffffff24;border-radius:50%;background:#ffffff0a;color:#e4e6ed;transition:background .2s,color .2s,border-color .2s}
.theme-toggle:hover{background:#ffffff1a;color:#fff}
.theme-toggle svg:first-child,html[data-theme="light"] .theme-toggle svg:last-child{display:none}
html[data-theme="light"] .theme-toggle svg:first-child{display:block}
.lp-nav .theme-toggle{width:40px;height:40px}

html[data-theme="light"]{--lt-ink:#1f2740;--lt-soft:#4d5670;--lt-dim:#737d93;--lt-line:#e4e7f0;--lt-accent:#6554ba;--lt-teal:#0f8a7e;--lt-gradient:linear-gradient(90deg,#6554ba,#1ea395 45%,#3a78e0 75%,#6554ba)}
html[data-theme="light"] .theme-toggle{background:#fff;border-color:var(--lt-line);color:var(--lt-soft)}
html[data-theme="light"] .theme-toggle:hover{background:#f4f5f9;color:var(--lt-ink)}

/* Campus header */
html[data-theme="light"] .environment-bar{background:linear-gradient(90deg,var(--env-wash,#6554ba14),transparent 55%),#ffffffeb;color:var(--lt-soft);border-bottom-color:var(--lt-line)}
html[data-theme="light"] .environment-bar.environment-learning{--env-wash:#6554ba14;--env-accent:#6554ba;--env-accent-2:#9b8cf5}
html[data-theme="light"] .environment-bar.environment-lab{--env-wash:#1ea39514;--env-accent:#11756c;--env-accent-2:#47cdbe}
html[data-theme="light"] .environment-bar.environment-platform{--env-wash:#5b95ff14;--env-accent:#2d5fd0;--env-accent-2:#5b95ff}
html[data-theme="light"] .campus-brand{color:var(--lt-ink)}
html[data-theme="light"] .campus-brand>svg{color:var(--env-accent,#6554ba)}
html[data-theme="light"] .environment-bar .campus-brand>span{color:var(--lt-dim);border-color:var(--lt-line)}
html[data-theme="light"] .environment-bar nav a{color:var(--lt-soft)}
html[data-theme="light"] .environment-bar nav a:hover{color:var(--lt-ink);background:#1f27400a}
html[data-theme="light"] .environment-bar nav a.active{color:var(--lt-ink);background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a20360d}
html[data-theme="light"] .campus-account-nav .campus-nav-link{color:var(--lt-ink);background:#fff;border-color:var(--lt-line)}
html[data-theme="light"] .campus-account-nav .campus-nav-link:hover,html[data-theme="light"] .campus-account-nav .campus-nav-link:focus-visible{color:var(--lt-ink);background:#f4f5f9}
html[data-theme="light"] .campus-account-nav .campus-nav-link:last-child,html[data-theme="light"] .campus-account-nav .campus-nav-link:last-child:hover{color:#fff;background:var(--learn);border-color:transparent;box-shadow:0 8px 20px -10px #6554ba}
html[data-theme="light"] .preview-switch summary{color:var(--lt-soft);border-color:var(--lt-line);background:#fff}
html[data-theme="light"] .preview-switch[open] summary,html[data-theme="light"] .preview-switch summary:hover{background:#f4f5f9}
@media(max-width:650px){html[data-theme="light"] .environment-bar nav{background:#f1f2f7}}

/* Learning Center hero */
html[data-theme="light"] .learning-hero{color:var(--lt-ink);background:radial-gradient(900px 460px at 88% -30%,#8a6fe02e,transparent 65%),radial-gradient(700px 420px at -5% 130%,#1ea3951f,transparent 70%),linear-gradient(180deg,#f3f1fd,#f7f7fb);border-bottom:1px solid #ebe8f6}
html[data-theme="light"] .learning-hero::before{background-image:radial-gradient(#6554ba40 1px,transparent 1.5px)}
html[data-theme="light"] .learning-header{border-bottom-color:#1f27400f}
html[data-theme="light"] .learning-header>a{color:var(--lt-ink)}
html[data-theme="light"] .learning-header>a svg{color:var(--lt-accent)}
html[data-theme="light"] .learning-header nav a{color:var(--lt-soft)}
html[data-theme="light"] .learning-header nav a:hover{color:var(--lt-ink);background:#1f27400a}
html[data-theme="light"] .learning-header nav a.active{color:var(--lt-ink);background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a20360d}
html[data-theme="light"] .learning-hero h1{color:var(--lt-ink)}
html[data-theme="light"] .learning-hero p{color:var(--lt-soft)}
html[data-theme="light"] .hero-kicker{color:var(--lt-teal)}
html[data-theme="light"] .hero-gradient{background-image:var(--lt-gradient)}
html[data-theme="light"] .learning-hero .btn{background:#fff;border-color:#dcdfe9;color:var(--lt-ink)}
html[data-theme="light"] .learning-hero .btn:hover:not(:disabled){background:#f6f5fc;border-color:#c9c2ee}
html[data-theme="light"] .learning-hero .btn.primary,html[data-theme="light"] .learning-hero .btn.primary:hover:not(:disabled){background:var(--learn);border-color:transparent;color:#fff;box-shadow:0 10px 24px -12px #6554ba}
html[data-theme="light"] .learning-hero .badge{background:#efeafe;color:#5b49b8;box-shadow:none}
html[data-theme="light"] .learning-hero .back-link{color:var(--lt-dim)}
html[data-theme="light"] .learning-hero .back-link:hover{color:var(--lt-ink)}
html[data-theme="light"] .persona-chips strong{color:var(--lt-ink)}
html[data-theme="light"] .persona-chips span{background:#fff;color:#3d4c66;box-shadow:inset 0 0 0 1px var(--lt-line)}
html[data-theme="light"] .learning-progress{background:#fff;box-shadow:inset 0 0 0 1px #e6e3f3,0 20px 40px -24px #6554ba66;-webkit-backdrop-filter:none;backdrop-filter:none}
html[data-theme="light"] .learning-progress>div>strong,html[data-theme="light"] .progress-ring strong{color:var(--lt-ink)}
html[data-theme="light"] .learning-progress>div>strong span{color:#8a90a6}
html[data-theme="light"] .learning-progress>div>span{color:var(--lt-soft)}
html[data-theme="light"] .learning-progress>small{color:var(--lt-dim);border-top-color:#eceef4}
html[data-theme="light"] .progress-ring circle{stroke:#ece9f8}
html[data-theme="light"] .progress-ring strong small{color:var(--lt-dim)}
html[data-theme="light"] #progress-ring-fill stop:first-child{stop-color:#8a6fe0}
html[data-theme="light"] #progress-ring-fill stop:last-child{stop-color:#1ea395}

/* Campus pages: the night cards become light cards with a soft violet wash. */
html[data-theme="light"] :is(.personal-progress,.auth-context,.plan-card.featured){color:var(--lt-ink);border:1px solid #e6e3f3;background:radial-gradient(560px 320px at 100% 0,#8a6fe024,transparent 70%),radial-gradient(420px 300px at 0 100%,#1ea39517,transparent 70%),#fff;box-shadow:0 1px 2px #1a203608,0 24px 50px -30px #6554ba66}
html[data-theme="light"] :is(.personal-progress,.auth-context,.plan-card.featured) .eyebrow{color:var(--lt-teal)}
html[data-theme="light"] .progress-stats strong,html[data-theme="light"] .auth-context h1,html[data-theme="light"] .auth-benefit strong,html[data-theme="light"] .plan-card.featured h2{color:var(--lt-ink)}
html[data-theme="light"] .progress-stats strong small{color:#8a90a6}
html[data-theme="light"] .progress-stats span,html[data-theme="light"] .auth-context>p,html[data-theme="light"] .auth-benefit span,html[data-theme="light"] .plan-card.featured>p,html[data-theme="light"] .plan-card.featured .plan-note{color:var(--lt-soft)}
html[data-theme="light"] .save-indicator{color:var(--lt-dim)!important}
html[data-theme="light"] .personal-progress progress::-webkit-progress-bar{background:#eef0f5}
html[data-theme="light"] .personal-progress .btn{background:#fff;border-color:#d9dfea;color:#3d4c66}
html[data-theme="light"] .personal-progress .btn:hover:not(:disabled){background:#f4f5f9;border-color:#c9d0de}
html[data-theme="light"] .auth-context::before{background-image:radial-gradient(#6554ba40 1px,transparent 1.5px)}
html[data-theme="light"] .auth-benefit>svg{background:#efeafe;color:var(--lt-accent)}
html[data-theme="light"] .auth-context .text-button{color:var(--lt-teal)}
html[data-theme="light"] .plan-card.featured li{color:#3d4c66}
html[data-theme="light"] .plan-card.featured li::before{background:#efeafe;color:var(--lt-accent)}
html[data-theme="light"] .plan-card.featured .plan-price{background-image:var(--lt-gradient)}
html[data-theme="light"] .plan-card.featured .badge.amber{background:#fff4df;color:#a47c30}

/* Lab workspace: a light desk around the same simulated window. */
html[data-theme="light"][data-environment="lab"] body,html[data-theme="light"] .lab-shell{background:#eef1f6}
html[data-theme="light"] .lab-shell .solution-sidebar{background:#fbfbfe;border-right-color:var(--lt-line);color:var(--lt-soft);color-scheme:light}
html[data-theme="light"] .lab-shell .workspace-label{color:var(--lt-teal)}
html[data-theme="light"] .lab-shell .solution-sidebar>h2{color:var(--lt-ink)}
html[data-theme="light"] .lab-shell .solution-sidebar>p,html[data-theme="light"] .persona-switcher small,html[data-theme="light"] .solution-hint,html[data-theme="light"] .solution-launch small{color:var(--lt-dim)}
html[data-theme="light"] .persona-switcher{border-color:var(--lt-line);background:#fff;color:var(--lt-soft);box-shadow:var(--lift)}
html[data-theme="light"] .persona-switcher select{background:#fff;border-color:#d7dde8;color:var(--lt-ink)}
html[data-theme="light"] .solution-sidebar .solution-launch{border-color:var(--lt-line);background:#fff;color:var(--lt-ink);box-shadow:var(--lift)}
html[data-theme="light"] .solution-sidebar .solution-launch:hover:not(:disabled):not(.selected){background:#f7f8fb;border-color:#d0d6e2}
html[data-theme="light"] .solution-launch>svg{color:var(--lt-accent)}
html[data-theme="light"] .solution-sidebar .solution-launch.selected{background:linear-gradient(135deg,#e5f6f3,#f1eefc);border-color:#8fd3cb;color:#0e4f4a;box-shadow:inset 3px 0 #1ea395,0 10px 24px -16px #1ea395}
html[data-theme="light"] .solution-launch.selected>svg,html[data-theme="light"] .solution-sidebar .reset-lab{color:#11756c}
html[data-theme="light"] .lab-shell .sidebar-foot{border-color:var(--lt-line);color:#8a90a6}
html[data-theme="light"] .workstation{background:radial-gradient(900px 520px at 75% -10%,#8a6fe01f,transparent 70%),radial-gradient(700px 480px at 10% 110%,#1ea39514,transparent 70%),#eef1f6}
html[data-theme="light"] .workstation-caption{color:var(--lt-dim)}
html[data-theme="light"] .workstation-caption>span:last-child{color:#3d4c66}
html[data-theme="light"] .computer-frame{box-shadow:0 30px 70px -30px #1a203666,0 0 0 1px #dde1ea}
@media(max-width:650px){html[data-theme="light"] .computer-frame{box-shadow:0 20px 40px -20px #1a203680}}

/* Landing page */
html[data-theme="light"][data-environment="home"],html[data-theme="light"][data-environment="home"] body{background:#f7f7fb}
html[data-theme="light"] .lp{--bg:#f7f7fb;--bg2:#eef0f7;--ink:#1f2740;--soft:#4d5670;--dim:#737d93;--line:rgba(31,39,64,.1);--violet:#6a58d0;--teal:#138f82;background:radial-gradient(1200px 700px at 80% -10%,rgba(138,111,224,.16),transparent 60%),linear-gradient(180deg,#f7f7fb,#eef0f7 45%,#f7f7fb)}
html[data-theme="light"] .lp::before{opacity:.025}
html[data-theme="light"] .lp-gradient,html[data-theme="light"] .lp-stat strong{background-image:var(--lt-gradient)}
html[data-theme="light"] .lp-stat strong{background-size:200% 100%}
html[data-theme="light"] .lp-kicker{color:var(--lt-teal)!important}
html[data-theme="light"] .lp-constellation{filter:brightness(.55) saturate(1.6)}
html[data-theme="light"] .lp-hero-glow{background:radial-gradient(closest-side,rgba(138,111,224,.22),rgba(30,163,149,.08) 55%,transparent)}
html[data-theme="light"] .lp-nav.solid{background:rgba(255,255,255,.82)}
html[data-theme="light"] .lp-brand{color:var(--lt-ink)}
html[data-theme="light"] .lp-brand svg{color:var(--lt-accent)}
html[data-theme="light"] .lp-nav nav a:hover,html[data-theme="light"] .lp-footer nav a:hover{color:var(--lt-ink);background:rgba(31,39,64,.05)}
html[data-theme="light"] .lp-btn.primary{color:#fff;background:var(--learn);box-shadow:0 12px 32px -12px rgba(101,84,186,.8)}
html[data-theme="light"] .lp-btn.primary:hover{box-shadow:0 16px 40px -12px rgba(101,84,186,.9)}
html[data-theme="light"] .lp-btn.ghost{color:var(--lt-ink);background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a203608}
html[data-theme="light"] .lp-btn.ghost:hover{background:#f6f5fc}
html[data-theme="light"] .lp-eyebrow{background:#fff}
html[data-theme="light"] .lp-hero-win{box-shadow:0 60px 120px -50px rgba(31,39,64,.45),0 0 0 1px var(--lt-line)}
html[data-theme="light"] .lp-win{box-shadow:0 30px 70px -30px rgba(31,39,64,.4),0 0 0 1px var(--lt-line)}
html[data-theme="light"] .lp-screen .lp-win{box-shadow:0 40px 90px -40px rgba(31,39,64,.45),0 0 0 1px var(--lt-line),0 0 90px -30px rgba(101,84,186,.35)}
html[data-theme="light"] .lp-chip{color:var(--lt-ink);background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 24px 50px -20px rgba(31,39,64,.35)}
html[data-theme="light"] .lp-scroll-cue span{box-shadow:inset 0 0 0 2px rgba(31,39,64,.25)}
html[data-theme="light"] .lp-scroll-cue span::after{background:var(--lt-ink)}
html[data-theme="light"] :is(.lp-role,.lp-stat){background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a203608,0 20px 40px -30px rgba(31,39,64,.3)}
html[data-theme="light"] .lp-arch{--arch-lane:rgba(101,84,186,.035);--arch-card:#fff;--arch-edge:rgba(77,86,112,.55);--arch-back:rgba(17,117,108,.75)}
html[data-theme="light"] .arch-card{filter:drop-shadow(0 8px 16px rgba(31,39,64,.08))}
html[data-theme="light"] .arch-node{--tone:#6554ba}html[data-theme="light"] .arch-node.blue{--tone:#2d5fd0}html[data-theme="light"] .arch-node.teal{--tone:#11756c}html[data-theme="light"] .arch-node.rose{--tone:#c2416c}html[data-theme="light"] .arch-node.amber{--tone:#a4700f}
html[data-theme="light"] :is(.lp-clock,.lp-role-product,.lp-mini-form span,.lp-mini-mail i:not(.yes),.lp-mini-flow span,.lp-chapters button,.lp-ch-ic){background:rgba(31,39,64,.05)}
html[data-theme="light"] .lp-steps::before,html[data-theme="light"] .lp-progress,html[data-theme="light"] .lp-prog{background:rgba(31,39,64,.1)}
html[data-theme="light"] .lp-steps li>span,html[data-theme="light"] .lp-node{background:#fff;box-shadow:inset 0 0 0 1px rgba(31,39,64,.18)}
html[data-theme="light"] :is(.lp-steps b,.lp-mini-form b,.lp-mini-cart span,.lp-mini-mail b,.lp-mini-flow span,.lp-road b,.lp-ticket blockquote,.lp .lp-cause,.lp-chapters .is-on,.lp-chapters .done,.lp-chapters button:hover,.lp-tags li){color:var(--lt-ink)}
html[data-theme="light"] .lp-joiner.s1 .st-1>span,html[data-theme="light"] .lp-joiner.s2 .st-2>span,html[data-theme="light"] .lp-joiner.s3 .st-3>span,html[data-theme="light"] .lp-joiner.s4 .st-4>span,html[data-theme="light"] .lp-road li.on .lp-node{color:#fff;box-shadow:0 0 22px -4px rgba(30,163,149,.6)}
html[data-theme="light"] .lp-num{color:rgba(31,39,64,.3)}
html[data-theme="light"] .lp-role-screen{background:#f3f4f9}
html[data-theme="light"] .lp-shine{background:radial-gradient(320px circle at var(--mx,50%) 0%,rgba(138,111,224,.12),transparent 60%)}
html[data-theme="light"] .lp-chapters button:hover{background:rgba(31,39,64,.08)}
html[data-theme="light"] .lp-who span{background:#fff;color:var(--lt-ink)}
html[data-theme="light"] .lp-toggle,html[data-theme="light"] .lp-flip{background:#fff;color:var(--lt-ink);box-shadow:inset 0 0 0 1px var(--lt-line)}
html[data-theme="light"] .lp-toggle:hover,html[data-theme="light"] .lp-flip:hover{background:#f4f5f9}
html[data-theme="light"] .lp-ticket-face.front{background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 20px 40px -28px rgba(31,39,64,.35)}
html[data-theme="light"] .lp-ticket-face.back{background:linear-gradient(160deg,#f1eefc,#e6f6f3);box-shadow:inset 0 0 0 1px rgba(101,84,186,.3)}
html[data-theme="light"] .lp-road-base{stroke:rgba(31,39,64,.1)}
html[data-theme="light"] .lp-final::before{background:radial-gradient(closest-side,rgba(138,111,224,.2),transparent)}
html[data-theme="light"] .lp-clock{color:var(--lt-ink)!important;background:#fff}
html[data-theme="light"] .lp-ticket-face.front .lp-ticket-ref span{background:rgba(214,69,95,.1);color:#b2334f}
html[data-theme="light"] .lp-ticket-face.back .lp-ticket-ref span{background:rgba(30,163,149,.14);color:#0e6f65}
html[data-theme="light"] .lp-ticket-actions a{color:#0e6f65}
html[data-theme="light"] .lp-plan{background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a203608,0 20px 40px -30px rgba(31,39,64,.3)}
html[data-theme="light"] .lp-plan.featured{background:radial-gradient(420px 260px at 100% 0,rgba(138,111,224,.16),transparent 70%),radial-gradient(360px 240px at 0 100%,rgba(30,163,149,.1),transparent 70%),#fff;box-shadow:inset 0 0 0 1.5px rgba(101,84,186,.5),0 30px 60px -30px rgba(101,84,186,.45)}
html[data-theme="light"] .lp-plan.featured .lp-plan-price b{background-image:var(--lt-gradient)}
html[data-theme="light"] .lp-plan-name em{color:#fff;background:var(--learn)}
html[data-theme="light"] :is(.lp-next>li,.lp-rm-index button,.lp-rm-item){--tone:#6554ba}
html[data-theme="light"] :is(.lp-next>li,.lp-rm-index button,.lp-rm-item).tone-rose{--tone:#c2416c}html[data-theme="light"] :is(.lp-next>li,.lp-rm-index button,.lp-rm-item).tone-blue{--tone:#2d5fd0}html[data-theme="light"] :is(.lp-next>li,.lp-rm-index button,.lp-rm-item).tone-teal{--tone:#11756c}html[data-theme="light"] :is(.lp-next>li,.lp-rm-index button,.lp-rm-item).tone-amber{--tone:#a4700f}
html[data-theme="light"] :is(.lp-next>li,.lp-rm-principles li){background:#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a203608,0 20px 40px -30px rgba(31,39,64,.3)}
html[data-theme="light"] .lp-next>li.lp-next-all{background:radial-gradient(360px 220px at 100% 0,rgba(138,111,224,.16),transparent 70%),radial-gradient(300px 200px at 0 100%,rgba(30,163,149,.1),transparent 70%),#fff;box-shadow:inset 0 0 0 1.5px rgba(101,84,186,.5),0 30px 60px -30px rgba(101,84,186,.4)}
html[data-theme="light"] :is(.lp-next-all small,.lp-next-all a>span,.lp-rm-principles li>span){color:var(--lt-teal)}
html[data-theme="light"] .lp-rm-item{background:radial-gradient(520px 300px at 0 0,color-mix(in srgb,var(--tone) 8%,transparent),transparent 70%),#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a203608,0 30px 60px -40px rgba(31,39,64,.35)}
html[data-theme="light"] .lp-rm-exercises{background:#f5f6fa;box-shadow:inset 0 0 0 1px var(--lt-line)}
html[data-theme="light"] .lp-rm-meta em{color:#8a5a00;background:rgba(242,184,90,.22)}
html[data-theme="light"] .lp .lp-rm-item h3{color:var(--lt-teal)}
html[data-theme="light"] .lp-rm-suggest button{color:var(--lt-teal)}
html[data-theme="light"] .lp-rm-ask-card{background:radial-gradient(520px 300px at 0 0,rgba(138,111,224,.12),transparent 70%),radial-gradient(420px 260px at 100% 100%,rgba(30,163,149,.08),transparent 70%),#fff;box-shadow:inset 0 0 0 1px var(--lt-line),0 1px 2px #1a203608,0 30px 60px -40px rgba(31,39,64,.35)}
html[data-theme="light"] .lp-rm-form :is(textarea,input){background:#f5f6fa;box-shadow:inset 0 0 0 1px var(--lt-line)}
html[data-theme="light"] .lp-rm-form :is(textarea,input):focus{background:#fff;box-shadow:inset 0 0 0 1.5px #6554ba,0 0 0 4px rgba(101,84,186,.14)}
html[data-theme="light"] .lp .lp-rm-form-note[data-state="sent"]{color:#11756c}
html[data-theme="light"] .lp .lp-rm-form-note[data-state="error"]{color:#c2416c}
