/* Immersive research art direction. The underlying tool layout stays semantic. */
body.immersive-workshop, body.immersive-tool {
  color-scheme: dark;
  --paper: #080b13; --surface: #121824; --paper-2: #111824;
  --ink: #eef3ff; --muted: #a3afc6; --line: #aec7ff21;
  --accent: #7c9eff; --accent-deep: #9bb6ff; --accent-soft: #809dff1a;
  --danger: #ff9caa; --warning: #f0c076;
  --shadow: 0 16px 50px #0003, inset 0 1px 0 #c4d6ff0a;
  background: #080b13; color: var(--ink); isolation: isolate;
}
.ambient-scene { position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; background: #080b13; }
.ambient-light { position: absolute; width: 75vw; height: 75vw; border-radius: 50%; filter: blur(100px); opacity: .09; background: radial-gradient(ellipse, #395ccf, transparent 62%); }
.ambient-light-one { top: -35vw; right: -15vw; }
.ambient-light-two { left: -35vw; top: 40vh; background: radial-gradient(ellipse,#5751b1,transparent 65%); opacity: .07; }
.motion-on .ambient-light-one { animation: ambient-drift 42s ease-in-out infinite alternate; }
.motion-on .ambient-light-two { animation: ambient-drift 52s ease-in-out infinite alternate-reverse; }
.texture-grain { position: absolute; inset: 0; opacity: .055; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.55' filter='url(%23n)'/%3E%3C/svg%3E"); }
.particle-field { position: absolute; width: 100%; height: 100%; opacity: .22; }
.reading-progress { position: fixed; height: 1px; inset: 0 auto auto 0; width: 100%; z-index: 100; transform: scaleX(var(--reading-progress, 0)); transform-origin: left; background: linear-gradient(90deg,#526fed,#b7c8ea); pointer-events: none; }
.immersive-workshop .sidebar { background: #0d111ccc; border-right: 1px solid #c2d3ff16; backdrop-filter: blur(28px); }
.immersive-workshop .sidebar::before { content: ''; position: absolute; top: 0; right: 0; height: 35%; width: 1px; background: linear-gradient(transparent,#8ca9ff70,transparent); }
.immersive-workshop .brand { margin-bottom: 46px; }
.immersive-workshop .brand-monogram { color: #e1eaff; text-shadow: 0 0 28px #a2b8ff25; }
.immersive-workshop .main-nav > a { transition: background .3s,border-color .3s,color .3s,transform .3s; }
.immersive-workshop .main-nav > a:hover { transform: translateX(3px); background: #8faeff0c; }
.immersive-workshop .main-nav > a.is-active { background: linear-gradient(110deg,#6885ed2e,#6c82d60d); border-color: #8dacf847; box-shadow: inset 3px 0 #8faaff, 0 0 24px #718fff09; }
.immersive-workshop .site-header { background: #0a0f1a85; border-color: #c2d3ff13; backdrop-filter: blur(20px); }
.immersive-workshop .breadcrumb strong { color: #dce6fc; }
.immersive-workshop .header-avatar { color: #bed0ff; background: linear-gradient(140deg,#364565,#172137); border: 1px solid #a1beff33; }
.immersive-workshop .private-badge { color: #91a0bd; }
.motion-toggle { display: inline-flex; align-items: center; justify-content: center; flex: none; gap: 7px; min-height: 34px; padding: 6px 11px; border: 1px solid #a9c0ff25; border-radius: 30px; color: #b7c6e2; background: #718fdc0b; font-size: .75rem; cursor: pointer; }
.motion-toggle:hover { border-color: #a9c0ff65; color: #fff; }
.motion-dot, .signal-dot { display: inline-block; flex: none; width: 5px; height: 5px; border-radius: 50%; background: #adc1ff; box-shadow: 0 0 9px #b2cfff; }
.motion-off .motion-dot { background: #78859c; box-shadow: none; }
.immersive-workshop .workspace-content { max-width: 1600px; }
.immersive-workshop .hero { position: relative; isolation: isolate; display: flex; align-items: center; min-height: 540px; margin: 24px 0 46px; padding: 58px 44px 85px; overflow: hidden; border: 1px solid #a2bdff1c; border-radius: 20px; background: #0b101c; box-shadow: 0 24px 60px #0002; }
.hero-art { position: absolute; inset: -2%; z-index: -3; overflow: hidden; transform: translate3d(var(--hero-x,0px),calc(var(--hero-y,0px) + var(--hero-scroll,0px)),0) scale(1.025); will-change: transform; }
.hero-art img { width: 100%; height: 100%; object-fit: cover; object-position: center 52%; opacity: .82; }
.hero-shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,#080e1af0 0%,#0b1221bd 33%,#0b122140 64%,#070d1610),linear-gradient(0deg,#0b1221de,transparent 44%,#090f2014); }
.hero-content { position: relative; z-index: 2; width: 100%; pointer-events: none; }
.hero-content a { pointer-events: auto; }
.immersive-workshop .hero .hero-eyebrow { display: flex; align-items: center; gap: 9px; margin-bottom: 28px; color: #c0cdeb; font-size: .75rem; letter-spacing: .16em; }
.immersive-workshop .hero h1 { font-family: 'Segoe UI',Arial,sans-serif; font-size: clamp(3.2rem,5.4vw,6.8rem); font-weight: 500; letter-spacing: -.065em; line-height: 1.05; margin: 0 0 26px; }
.immersive-workshop .hero h1 .hero-title-line { display: block; color: #f0f5ff; }
.immersive-workshop .hero h1 .hero-title-outline { font-weight: 300; background: linear-gradient(110deg,#f1f6ff 10%,#a4b9eb 38%,#cad7fa 64%,#6d81ac 90%); color: transparent; background-clip: text; -webkit-background-clip: text; }
.immersive-workshop .hero h1 .title-dot { color: #94b4ff; -webkit-text-fill-color: #94b4ff; }
.immersive-workshop .hero-copy { color: #b4c2df; font-size: 1rem; line-height: 1.85; letter-spacing: .12em; }
.hero-actions { display: flex; gap: 26px; align-items: center; margin-top: 28px; }
.immersive-workshop .button-dark, .immersive-workshop .button-accent, .immersive-tool .button-primary, .immersive-tool .button-accent { position: relative; overflow: hidden; background: linear-gradient(110deg,#afc4ef,#7f9bdc); border: 1px solid #c1d6ff52; box-shadow: inset 0 1px 0 #fff3; color: #101c36; }
.immersive-workshop .button-dark:hover, .immersive-tool .button-primary:hover, .immersive-tool .button-accent:hover { box-shadow: 0 8px 24px #0002; transform: translateY(-2px); background: linear-gradient(110deg,#c0d0f1,#94abe0); }
.button-dark::after, .button-primary::after, .button-accent::after { content: ''; position: absolute; inset: -70% auto -70% -90%; width: 45%; transform: rotate(24deg); background: linear-gradient(90deg,transparent,#fff5,transparent); pointer-events: none; }
.motion-on .button-dark:hover::after, .motion-on .button-primary:hover::after, .motion-on .button-accent:hover::after { animation: button-sheen .75s ease-out; }
.hero-secondary { display: inline-flex; align-items: center; gap: 18px; color: #d4def3; font-size: .875rem; text-decoration: none; }
.hero-secondary:hover { color: #fff; }
.hero-secondary span { transition: transform .25s; }.hero-secondary:hover span { transform: translate(3px,-3px); }
.hero-foot { position: absolute; bottom: 25px; left: 44px; right: 38px; display: flex; align-items: center; justify-content: space-between; gap: 16px; color: #a8b8d8; font-size: .75rem; letter-spacing: .045em; }
.hero-coordinate { color: #8091b2; font: .75rem var(--mono); }
.scroll-cue { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; color: #c8d5ef; }
.scroll-cue i { height: 22px; width: 13px; border: 1px solid #abbde37a; border-radius: 10px; position: relative; }
.scroll-cue i::after { content: ''; position: absolute; left: 5px; top: 4px; width: 1px; height: 6px; background: #c1d4ff; }
.motion-on .scroll-cue i::after { animation: scroll-tick 2s ease-in-out infinite; }
.hero-art-label { position: absolute; top: 36px; right: 34px; text-align: right; font: .6875rem/1.8 var(--mono); color: #7488a7; letter-spacing: .13em; }
.hero-art-label b { font-weight: 400; font-size: .625rem; color: #687c9e; }
.hero-orbital { position: absolute; z-index: -1; width: 310px; height: 310px; top: 18%; right: 3%; border: 1px solid #8cb1ef09; border-radius: 50%; transform: rotate(-25deg); pointer-events: none; opacity: .45; }
.hero-orbital i { position: absolute; inset: -18px; border: 1px solid #b6d4ff07; border-radius: 50%; }
.hero-orbital i:nth-child(2) { display: none; }
.hero-orbital span { position: absolute; top: 48px; left: 37px; width: 3px; height: 3px; border-radius: 50%; background: #b4c8eb; }
.motion-on .hero-orbital { animation: orbit-motion 80s linear infinite; }
.immersive-workshop .section-intro { margin-bottom: 22px; }
.immersive-workshop .section-intro h2 { font-size: 1.25rem; font-weight: 500; letter-spacing: .04em; }
.immersive-workshop .section-intro h2::before { content: ''; display: inline-block; width: 18px; height: 1px; vertical-align: middle; margin-right: 12px; background: #a5bfff; box-shadow: 0 0 12px #9abaff; }
.immersive-workshop .section-meta { color: #899cbf; letter-spacing: .1em; }
.immersive-workshop .calendar-card, .immersive-workshop .weather-card, .immersive-workshop .reminder-form, .immersive-workshop .reminder-list-panel { position: relative; border-color: #b6cfff24; background: linear-gradient(135deg,#1c263790,#131b2aac); backdrop-filter: blur(18px); box-shadow: var(--shadow); }
.immersive-workshop .calendar-card::before, .immersive-workshop .reminder-list-panel::before { content: ''; position: absolute; left: 10%; right: 10%; height: 1px; top: -1px; background: linear-gradient(90deg,transparent,#acc8ff69,transparent); }
.immersive-workshop .calendar-header h3 { color: #d8e5ff; }
.immersive-workshop .calendar-controls button { background: #b3cfff07; border-color: #a4c1ff22; color: #bfceeb; }
.immersive-workshop .calendar-controls button:hover { background: #a4bbf524; color: white; }
.immersive-workshop .calendar-weekdays { color: #8195b8; }
.immersive-workshop .calendar-day { color: #c8d4eb; }
.immersive-workshop .calendar-day:hover { background: #a6c0ff15; }
.immersive-workshop .calendar-day.is-outside { color: #61718c; }
.immersive-workshop .calendar-day.is-today { border-color: #a2bdff55; }
.immersive-workshop .calendar-day.is-selected { color: #10213f; background: linear-gradient(140deg,#c1d4ff,#799df1); box-shadow: 0 0 18px #7197fa42; border-color: #b9cdff; }
.immersive-workshop .calendar-day.has-events::after { background: #9dbbff; box-shadow: 0 0 5px #7d9fee; }
.immersive-workshop .calendar-day.is-selected.has-events::after { background: #254879; }
.immersive-workshop .agenda-list > p, .immersive-workshop .hero-copy { color: #a6b7d5; }
.immersive-workshop .today-card { position: relative; overflow: hidden; border-color: #a6bdff2f; background: radial-gradient(ellipse at 90% 0,#607dbc34,transparent 70%),linear-gradient(130deg,#23304a,#111b2f); }
.immersive-workshop .today-card::after { content: ''; position: absolute; inset: 0; background: repeating-linear-gradient(115deg,transparent 0 24px,#bad6ff06 25px 26px,transparent 27px 54px); pointer-events: none; }
.immersive-workshop .today-card > strong { font-weight: 300; color: #dfebff; text-shadow: 0 0 22px #a1beff23; }
.motion-on .live-label i { animation: signal-pulse 3s infinite; }
.immersive-workshop .weather-card { background: radial-gradient(ellipse at 110% 0,#bc994326,transparent 65%),#131d2bca; }
.immersive-workshop .weather-main > span { text-shadow: 0 0 26px #f2bb5259; }
.immersive-workshop .weather-source, .immersive-workshop .weather-meta { color: #95a7c4; }
.immersive-workshop .tools-section { padding-top: 46px; }
.immersive-workshop .browser-tools-grid { gap: 20px; perspective: 1200px; }
.immersive-workshop .mini-tool-card { position: relative; display: flex; padding: 0 25px 24px; overflow: hidden; border: 1px solid #b5cfff22; border-radius: 15px; background: linear-gradient(145deg,#202a3dab,#121b29e8); box-shadow: 0 14px 34px #0002; transform: perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); transition: transform .4s ease-out,border-color .4s,box-shadow .4s; }
.immersive-workshop .mini-tool-card::after { content: ''; pointer-events: none; position: absolute; inset: 0; background: radial-gradient(500px circle at var(--pointer-x,50%) var(--pointer-y,0%),#b0cfff14,transparent 55%); opacity: 0; transition: opacity .4s; }
.immersive-workshop .mini-tool-card:hover, .immersive-workshop .mini-tool-card:focus-within { border-color: #b2cdff4c; box-shadow: 0 20px 42px #0003; }
.immersive-workshop .mini-tool-card:hover::after { opacity: 1; }
.material-image { position: relative; margin: 0 -25px 24px; height: 200px; overflow: hidden; background: #0b1321; }
.material-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#172132 0%,transparent 55%),linear-gradient(90deg,#0813272e,transparent); }
.material-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: .68; filter: saturate(.75) contrast(.94); transition: transform 1.4s cubic-bezier(.2,.7,.2,1),opacity .8s,filter .8s; }
.material-card:hover .material-image img { transform: scale(1.035); opacity: .8; filter: saturate(.88) contrast(.97); }
.material-card-3 .material-image img { object-position: 72% 55%; filter: saturate(.72) brightness(.84); }
.material-card-3:hover .material-image img { transform: scale(1.035); }
.material-index { position: absolute; top: 18px; left: 23px; z-index: 1; color: #d2e2ff; font: .8rem var(--mono); }
.material-caption { position: absolute; bottom: 8px; left: 25px; z-index: 1; color: #a9bce0; font: .6875rem var(--mono); letter-spacing: .17em; }
.immersive-workshop .tool-card-top { margin-bottom: 14px; }
.immersive-workshop .tool-icon { background: #a2bdff0d; border: 1px solid #9fc0ff30; color: #a9c3ff; }
.immersive-workshop .tool-icon-teal { background: #80d4cd0c; border-color: #80d4cd2a; color: #9ddad5; }
.immersive-workshop .tool-icon-violet { background: #c6a6ff0b; border-color: #c6a6ff2a; color: #cbb5f9; }
.immersive-workshop .tool-kind { color: #8e9fbf; }
.immersive-workshop .mini-tool-card h3 { color: #eef4ff; font-size: 1.22rem; font-weight: 500; }
.immersive-workshop .mini-tool-card > p { font-size: .9375rem; color: #a6b5d0; }
.immersive-workshop .tool-link { border-color: #a6c1ff1a; color: #b8cfff; padding-top: 18px; }
.immersive-workshop .tool-link:hover { color: #fff; }
.immersive-workshop .tools-privacy { color: #8295b7; margin-block: 18px 27px; }
.immersive-workshop .tool-card { position: relative; overflow: hidden; background: linear-gradient(120deg,#23314a99,#101c2ecc); border-color: #a8c6ff29; padding-block: 29px; }
.immersive-workshop .tool-card::after { content: ''; position: absolute; right: 40px; top: -75px; width: 240px; height: 240px; border: 1px solid #a9caff0d; border-radius: 50%; box-shadow: 0 0 0 30px #a9caff04,0 0 0 60px #a9caff03; pointer-events: none; }
.immersive-workshop .quick-copy, .immersive-workshop .quick-launch { z-index: 1; }
.immersive-workshop .quick-icon, .immersive-workshop .quick-launch { background: #a7c3ff0a; color: #acc4ee; border-color: #a7c3ff30; }
.immersive-workshop .quick-launch:hover { color: #fff; background: #708ccd30; box-shadow: 0 0 30px #6e96ed30; }
.immersive-workshop .card-kicker, .immersive-workshop .quick-footnote, .immersive-workshop .quick-copy .text-button { color: #90a9d4; }
.immersive-workshop .reminder-section { padding-top: 50px; }
.immersive-workshop input, .immersive-workshop textarea { background: #080f1aaa; color: #e5eeff; border-color: #a2beef2d; }
.immersive-workshop input:focus, .immersive-workshop textarea:focus { border-color: #b0c7ff8a; box-shadow: 0 0 0 3px #93b0f51a,0 0 22px #6289e315; }
.immersive-workshop input::placeholder, .immersive-workshop textarea::placeholder { color: #7183a2; }
.immersive-workshop .reminder-item { border-color: #a6c1ff15; }
.immersive-workshop .date-block { background: #9cbcff0d; border: 1px solid #a4c5ff20; }
.immersive-workshop .date-block strong { color: #b5ccf5; }
.immersive-workshop .date-block span { color: #92a7ce; }
.immersive-workshop .reminder-copy h3 { color: #e2ebff; }
.immersive-workshop .empty-state strong { color: #b7c8e8; }
.immersive-workshop .form-message.is-success { color: #a0dfca; }
.immersive-workshop .button-outline { border-color: #a1bbf63b; background: #92b0fa0c; color: #c6d8fa; }
.immersive-workshop .resume-cta { margin-top: 50px; padding-block: 38px; }
.immersive-workshop footer { color: #7d91b5; }

/* A full image entrance, with a glass login panel over the same research scene. */
.immersive-workshop .login-shell { position: relative; isolation: isolate; grid-template-columns: 1.25fr 1fr; background: transparent; }
.immersive-workshop .login-intro { position: relative; isolation: isolate; overflow: hidden; background: #0b1220; min-height: 100svh; }
.login-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 66% 50%; z-index: -3; opacity: .95; }
.login-art-shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(0deg,#080e1bf2,transparent 65%),linear-gradient(90deg,#080e1b9c,transparent 80%); }
.motion-on .login-art { animation: art-breathe 40s ease-in-out infinite alternate; }
.immersive-workshop .login-brand { position: relative; color: #d3e1ff; }
.immersive-workshop .login-editorial { padding: 160px 0 80px; margin: auto 0 0; }
.immersive-workshop .login-editorial h1 { font-family: 'Segoe UI',Arial,sans-serif; font-size: clamp(3rem,5.8vw,6rem); line-height: 1.08; letter-spacing: -.065em; font-weight: 400; color: #e4eeff; text-shadow: 0 5px 30px #0004; }
.immersive-workshop .login-editorial h1 .login-title-small { font-size: .75em; color: #e3eaff; }
.immersive-workshop .login-editorial .title-dot { color: #9ec0ff; }
.immersive-workshop .login-editorial > p.login-art-copy { font-size: 1rem; letter-spacing: .06em; color: #b5c7e8; }
.immersive-workshop .login-capabilities { color: #a4b9e0; border-color: #b4cffa28; }
.immersive-workshop .login-panel { position: relative; background: radial-gradient(ellipse at 90% 0,#30498733,transparent 55%),#0a111edd; border-left: 1px solid #b2caff24; }
.immersive-workshop .login-card { position: relative; width: min(410px,100%); padding: 34px; border: 1px solid #a8c4ff28; border-radius: 18px; background: linear-gradient(130deg,#27375050,#18243928); box-shadow: 0 28px 90px #0004,inset 0 1px #c3d6ff12; backdrop-filter: blur(24px); }
.immersive-workshop .login-card::before { content: ''; position: absolute; top: -1px; left: 20%; right: 20%; height: 1px; background: linear-gradient(90deg,transparent,#b0cdff90,transparent); }
.immersive-workshop .login-lock { color: #bfd4ff; border-color: #b4cfff30; background: #93b6ff0b; box-shadow: 0 0 25px #99b9ff0c; }
.immersive-workshop .login-card h2 { font-weight: 400; color: #e1ebfd; }
.immersive-workshop .login-profile { color: #a5b9df; border-color: #a2c2ff21; }
.immersive-workshop .login-bottom { color: #8095b8; }
.login-motion { margin-top: 30px; }
.motion-on .login-card { animation: entrance-card 1.2s cubic-bezier(.22,1,.36,1) both; }
.motion-on .hero-content > * { animation: entrance-card 1s cubic-bezier(.22,1,.36,1) both; }
.motion-on .hero-content h1 { animation-delay: .12s; }
.motion-on .hero-content .hero-copy { animation-delay: .25s; }
.motion-on .hero-content .hero-actions { animation-delay: .38s; }
.reveal { transition: opacity .8s cubic-bezier(.22,1,.36,1),translate .8s cubic-bezier(.22,1,.36,1); }
.motion-on .reveal[data-ready]:not(.is-visible) { opacity: 0; translate: 0 26px; }
.motion-on .reveal.is-visible { opacity: 1; translate: 0 0; }
.motion-on .mini-tool-card.reveal { transition: opacity .8s,translate .8s,transform .35s,border-color .4s,box-shadow .4s; }

/* Keep scientific working surfaces readable against the atmospheric background. */
.immersive-tool .tool-header { background: #0b1221cf; backdrop-filter: blur(24px); border-color: #b4ceff1d; }
.immersive-tool .tool-hero { position: relative; isolation: isolate; overflow: hidden; padding-top: 48px; padding-bottom: 42px; margin-bottom: 20px; border-bottom: 1px solid #abc7ff20; }
.immersive-tool .tool-hero::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#080d18 28%,#080d18bf 65%,#080d1888),url('/assets/research-hero-subtle.webp') right 56% / cover; opacity: .72; }
.immersive-tool .tool-hero h1 { color: #e4edff; font-weight: 400; letter-spacing: -.035em; }
.immersive-tool .tool-hero .eyebrow { color: #92abd4; }
.immersive-tool .tool-hero > p:last-child { color: #a8bad8; max-width: 790px; }
.immersive-tool .panel, .immersive-tool .step { background: linear-gradient(140deg,#1d293cac,#111b2cec); border-color: #a3c1ff29; box-shadow: var(--shadow); }
.immersive-tool .panel-head { background: #b4ceff03; border-color: #a6c1ff1c; }
.immersive-tool label, .immersive-tool .label { color: #bccae3; }
.immersive-tool input, .immersive-tool select, .immersive-tool textarea { background: #0c1525; color: #e0eaff; border-color: #a4beef35; }
.immersive-tool .button, .immersive-tool .chip { color: #c5d6f8; background: #8eaff913; border-color: #a3c2ff35; }
.immersive-tool .button-primary, .immersive-tool .button-accent { color: #101c36; background: linear-gradient(110deg,#adc6ff,#7697ec); }
.immersive-tool .button-danger { color: #f4a0b2; border-color: #dc8c9d3f; }
.immersive-tool .button-quiet:hover { background: #a7c0ff22; }
.immersive-tool .chip[aria-pressed='true'], .immersive-tool .chip.active { color: #d6e4ff; background: #86a8ff30; border-color: #a4c1ff70; }
.immersive-tool .subpanel, .immersive-tool .row-card, .immersive-tool .formula-box, .immersive-tool .message-box { background: #91b3ff09; color: #bdcdec; border-color: #a8c4ff24; }
.immersive-tool table { background: #0f1928; }
.immersive-tool th { background: #1a2940; color: #aabddd; }
.immersive-tool td, .immersive-tool th { border-color: #bdd5ff19; }
.immersive-tool tbody tr:hover, .immersive-tool .table-wrap tbody tr.is-selected { background: #90b4ff12; }
.immersive-tool .metric { background: linear-gradient(135deg,#283c6090,#1a2a4655); border: 1px solid #a0bfff2a; box-shadow: inset 0 1px 0 #c5ddff08; }
.immersive-tool .empty { background: #92b4ff05; color: #9eafd0; }
.immersive-tool .message-box.error { color: #ffb4c2; background: #a4324820; }
.immersive-tool .message-box.warning { color: #e5c498; background: #bc811718; }
.immersive-tool .message-box.success { color: #a5e0c8; background: #27764c20; }
.immersive-tool .element-button { background: #91aff80d; color: #c9d9f8; border-color: #a0bcf330; }
.immersive-tool .element-button.selected { background: #6585d369; border-color: #abc4ff70; }
.immersive-tool summary { color: #b8c9ed; }
.immersive-tool .file-drop { background: #93b4fc08; border-color: #93b4fc50; }
.immersive-tool .file-drop.drag { background: #93b4fc1f; }
.immersive-tool .file-list li { background: #95b7ff07; }
.immersive-tool .tech-note { background: #9cbeff0b; }
.immersive-tool .log { background: #080f1c; color: #b7cce9; }
.immersive-tool .progress { background: #a0bcff1a; }
.immersive-tool .progress > span { background: linear-gradient(90deg,#6f8dea,#9fd6e3); box-shadow: 0 0 10px #719cfd6b; }
.immersive-tool .change-path { background: #9ab9ff0a; }
.immersive-tool .launcher-hero { position: relative; isolation: isolate; }
.immersive-tool .launcher-hero::before { content: ''; position: absolute; inset: -30px -24px 0; z-index: -1; background: linear-gradient(90deg,#080d18f2,#080d18a8),url('/assets/research-hero-subtle.webp') center / cover; opacity: .62; border-radius: 18px; }
.motion-off *, .motion-off *::before, .motion-off *::after { animation: none !important; }
.motion-off .hero-art, .motion-off [data-tilt] { transform: none !important; }
.motion-off .reveal { opacity: 1 !important; translate: none !important; }
.motion-off .particle-field { opacity: 0; }
@keyframes ambient-drift { to { transform: translate(10vw,15vh) scale(1.15); } }
@keyframes art-breathe { from { transform: scale(1); } to { transform: scale(1.07) translateY(-10px); } }
@keyframes orbit-motion { to { transform: rotate(335deg); } }
@keyframes signal-pulse { 50% { opacity: .35; box-shadow: 0 0 12px #b4d7ff; } }
@keyframes scroll-tick { 60% { transform: translateY(6px); opacity: .3; } }
@keyframes button-sheen { to { left: 150%; } }
@keyframes entrance-card { from { opacity: 0; translate: 0 22px; filter: blur(5px); } to { opacity: 1; translate: 0 0; filter: blur(0); } }
@media (max-width: 1200px) {
  .immersive-workshop .hero { min-height: 520px; padding-left: 32px; }
  .hero-foot { left: 32px; right: 25px; }.hero-coordinate { display: none; }
  .material-image { height: 170px; }.immersive-workshop .browser-tools-grid { gap: 15px; }
}
@media (max-width: 760px) {
  .immersive-workshop .hero { margin-top: 18px; min-height: 570px; padding: 42px 28px 85px; }
  .immersive-workshop .hero h1 { font-size: clamp(3rem,9vw,5rem); }
  .hero-art img { object-position: 68% center; }.hero-art-label { display: none; }
  .hero-orbital { width: 230px; height: 230px; right: 5%; top: 12%; }
  .hero-shade { background: linear-gradient(90deg,#080e1adc,#0b122147),linear-gradient(0deg,#0b1221ed,transparent 55%); }
  .hero-foot { left: 28px; right: 28px; }
  .immersive-workshop .mini-tool-card { display: flex; }.material-image { height: 220px; }
  .immersive-workshop .login-shell { grid-template-columns: 1fr; }
  .immersive-workshop .login-intro { min-height: 460px; padding: 28px; }
  .immersive-workshop .login-editorial { margin-top: auto; padding: 130px 0 12px; }
  .immersive-workshop .login-editorial h1 { font-size: 4rem; }
  .immersive-workshop .login-editorial h1 br { display: initial; }
  .immersive-workshop .login-editorial > p.login-art-copy { display: block; margin-bottom: 0; font-size: .875rem; }
  .immersive-workshop .login-panel { border-left: 0; padding: 32px 22px 28px; }
  .immersive-workshop .login-card { padding: 26px; width: min(460px,100%); }
  .immersive-workshop .login-lock { display: grid; }
}
@media (max-width: 520px) {
  .immersive-workshop .sidebar { background: #0a101ee8; }.immersive-workshop .brand { margin-bottom: 0; }
  .immersive-workshop .private-badge { display: none; }.immersive-workshop .header-meta { gap: 0; }
  .motion-toggle { font-size: .75rem; min-height: 30px; padding: 4px 9px; }
  .immersive-workshop .workspace-content { padding-inline: 14px; }
  .immersive-workshop .hero { min-height: 540px; padding: 38px 24px 80px; border-radius: 17px; margin-bottom: 32px; }
  .immersive-workshop .hero .hero-eyebrow { font-size: .625rem; letter-spacing: .09em; margin-bottom: 35px; }
  .immersive-workshop .hero h1 { font-size: clamp(2.7rem,11vw,3.9rem); letter-spacing: -.06em; }
  .immersive-workshop .hero-copy { font-size: .875rem; letter-spacing: .04em; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 20px; margin-top: 28px; }
  .hero-foot { left: 24px; right: 24px; flex-wrap: wrap; gap: 10px; font-size: .625rem; }
  .hero-foot .scroll-cue { font-size: .75rem; }.hero-orbital { right: -50px; top: 28px; }
  .immersive-workshop .section-intro h2 { font-size: 1.1rem; }.immersive-workshop .section-meta { font-size: .625rem; }
  .immersive-workshop .tools-section, .immersive-workshop .reminder-section { padding-top: 35px; }
  .immersive-workshop .mini-tool-card { padding: 0 23px 25px; }.material-image { margin-inline: -23px; height: 220px; }
  .ambient-light { filter: blur(50px); }.particle-field { opacity: .25; }
  .immersive-workshop .login-intro { min-height: 430px; }.immersive-workshop .login-editorial h1 { font-size: 3.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-art, [data-tilt] { transform: none !important; }.reveal { opacity: 1 !important; translate: none !important; }.particle-field { display: none; }
}
@media print {
  .ambient-scene, .reading-progress, .motion-toggle { display: none !important; }
  body.immersive-tool { background: #fff; color: #111; --ink:#111; --muted:#444; --line:#ddd; --surface:#fff; }
  .immersive-tool table, .immersive-tool .panel, .immersive-tool .metric, .immersive-tool .formula-box, .immersive-tool th { background: white; color: #111; box-shadow: none; }
  .immersive-tool .metric span, .immersive-tool .metric strong { color: #111; }
}
