*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.border{border-width:1px}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}*{box-sizing:border-box}:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#111316;color:#f4f7f5}body{min-width:320px;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.68}.app-shell{min-height:100vh;padding:18px;color:#f4f7f5;background:radial-gradient(circle at 18% 12%,rgba(20,184,166,.16),transparent 26%),radial-gradient(circle at 72% 18%,rgba(251,191,36,.11),transparent 24%),radial-gradient(circle at 82% 78%,rgba(244,63,94,.1),transparent 27%),linear-gradient(135deg,#121413,#191b1c 48%,#101411)}.app-shell.light{color:#18221e;background:radial-gradient(circle at 18% 12%,rgba(20,184,166,.13),transparent 26%),radial-gradient(circle at 72% 18%,rgba(234,179,8,.13),transparent 24%),radial-gradient(circle at 82% 78%,rgba(37,99,235,.09),transparent 27%),linear-gradient(135deg,#f6faf7,#edf4f0,#f8fbff)}.top-bar,.periodic-table-panel,.control-dock,.learning-panel,.time-metric-panel,.chem-lab-search-panel,.chemistry-lab-panel,.info-card,.simulation-wrap{border:1px solid rgba(255,255,255,.11);border-radius:8px;background:#171919c7;box-shadow:0 22px 60px #00000052;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-shell.light .top-bar,.app-shell.light .periodic-table-panel,.app-shell.light .control-dock,.app-shell.light .learning-panel,.app-shell.light .time-metric-panel,.app-shell.light .chem-lab-search-panel,.app-shell.light .chemistry-lab-panel,.app-shell.light .info-card,.app-shell.light .simulation-wrap{border-color:#18221e1f;background:#ffffffd1;box-shadow:0 22px 60px #1f293721}.top-bar{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:16px;width:min(1720px,100%);min-height:82px;margin:0 auto 16px;padding:14px 16px}.brand{display:flex;align-items:center;gap:12px}.brand>svg{color:#2dd4bf;filter:drop-shadow(0 0 12px rgba(45,212,191,.42))}.brand h1{margin:0;font-size:clamp(1.35rem,2vw,2.1rem);letter-spacing:0}.brand p,.muted{margin:3px 0 0;color:#a7b2ad;font-size:.9rem}.app-shell.light .brand p,.app-shell.light .muted{color:#61706a}.mode-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:4px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff0a}.app-shell.light .mode-tabs{border-color:#18221e1a;background:#18221e0a}.mode-tabs button,.icon-button,.toggle,.spawn-button,.builder-button,.builder-result,.preset,.lesson{border:1px solid transparent;color:#eef5f1;background:transparent;transition:transform .16s ease,border-color .16s ease,background .16s ease}.app-shell.light .mode-tabs button,.app-shell.light .icon-button,.app-shell.light .toggle,.app-shell.light .spawn-button,.app-shell.light .builder-button,.app-shell.light .builder-result,.app-shell.light .preset,.app-shell.light .lesson{color:#20302a}.mode-tabs button{min-height:38px;padding:0 12px;border-radius:7px;color:#aeb9b4;font-size:.87rem;font-weight:800;white-space:nowrap}.app-shell.light .mode-tabs button{color:#61706a}.mode-tabs button.active{color:#071412;background:#5eead4}.top-actions{display:flex;align-items:center;gap:8px}.time-control{display:grid;grid-template-columns:auto minmax(118px,150px);grid-template-rows:auto auto;align-items:center;gap:4px 8px;min-width:282px;padding:7px 9px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0b}.app-shell.light .time-control{border-color:#18221e1a;background:#18221e0a}.time-control-label{display:inline-flex;align-items:center;gap:5px;color:#dbe8e3;font-size:.78rem;font-weight:900;text-transform:uppercase}.app-shell.light .time-control-label{color:#31443d}.time-control-label svg{color:#2dd4bf}.time-control-label strong{min-width:44px;color:#5eead4;font-size:.84rem;text-align:right}.app-shell.light .time-control-label strong{color:#0f766e}.time-preset-row{display:flex;justify-content:flex-end;gap:4px}.time-preset-row button{min-width:34px;height:24px;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#dbe8e3;background:#ffffff0a;font-size:.68rem;font-weight:900}.app-shell.light .time-preset-row button{border-color:#18221e1a;color:#31443d;background:#18221e0b}.time-preset-row button.active{color:#071412;border-color:transparent;background:#5eead4}.time-control input[type=range]{grid-column:1 / -1;width:100%;accent-color:#2dd4bf}.time-metric-panel{display:grid;gap:10px;padding:14px}.time-metric-panel.compact{margin-bottom:12px}.time-metric-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.time-metric-header h3,.time-metric-header span{display:inline-flex;align-items:center;gap:7px;margin:0}.time-metric-header h3{color:#e5f2ed;font-size:1rem;font-weight:850}.app-shell.light .time-metric-header h3{color:#1f2d28}.time-metric-header span{min-height:26px;padding:0 8px;border:1px solid rgba(94,234,212,.18);border-radius:999px;color:#5eead4;background:#14b8a614;font-size:.72rem;font-weight:950}.app-shell.light .time-metric-header span{color:#0f766e;border-color:#14b8a62e;background:#14b8a614}.time-metric-value{display:block;padding:12px 14px;border:1px solid rgba(94,234,212,.16);border-radius:8px;color:#a7f3d0;background:#0d171452;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(1.05rem,2vw,1.65rem);font-weight:900;letter-spacing:0;white-space:nowrap;overflow-x:auto}.app-shell.light .time-metric-value{color:#0f766e;border-color:#14b8a633;background:#14b8a612}.time-metric-select{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}.time-metric-select span{color:#9fb0aa;font-size:.72rem;font-weight:950;text-transform:uppercase}.time-metric-select select{min-height:34px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#e7f4ef;background:#0000002e;font:inherit;font-size:.82rem;font-weight:850}.app-shell.light .time-metric-select select{border-color:#18221e1a;color:#20302a;background:#ffffffb8}.time-metric-panel p{margin:0;color:#9fb0aa;font-size:.82rem;line-height:1.35}.app-shell.light .time-metric-panel p{color:#5e6b66}.icon-button{display:grid;width:42px;height:42px;place-items:center;border-color:#ffffff1a;border-radius:8px;background:#ffffff0d}.app-shell.light .icon-button{border-color:#18221e1a;background:#18221e0b}.icon-button:hover,.toggle:hover,.spawn-button:hover,.builder-button:hover,.builder-result:hover,.preset:hover,.lesson:hover{border-color:#5eead46b;transform:translateY(-1px)}.visuals-popover{position:fixed;top:112px;right:max(18px,calc((100vw - 1720px)/2 + 18px));z-index:80;width:min(720px,calc(100vw - 36px));max-height:min(78vh,780px);overflow-y:auto;border-radius:8px;scrollbar-gutter:stable}.visuals-popover .graphics-panel{max-height:none}.periodic-table-panel{position:relative;width:100%;margin:0;padding:14px}.periodic-table-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:0}.periodic-table-panel.expanded .periodic-table-header{align-items:flex-end;margin-bottom:12px}.periodic-table-header h2{margin:0;font-size:1.05rem;letter-spacing:0}.periodic-table-header p{margin:4px 0 0;color:#a7b2ad;font-size:.86rem}.app-shell.light .periodic-table-header p{color:#61706a}.periodic-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:720px}.periodic-legend span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid color-mix(in srgb,var(--legend-color, #94a3b8) 38%,transparent);border-radius:999px;color:#dce7e2;background:color-mix(in srgb,var(--legend-color, #94a3b8) 13%,transparent);font-size:.72rem;font-weight:800}.app-shell.light .periodic-legend span{color:#20302a;background:color-mix(in srgb,var(--legend-color, #94a3b8) 12%,white)}.periodic-legend span[data-category=core-nonmetals]{--legend-color: #38bdf8}.periodic-legend span[data-category=metalloids]{--legend-color: #a78bfa}.periodic-legend span[data-category=transition-metals]{--legend-color: #64748b}.periodic-legend span[data-category=lanthanides]{--legend-color: #f472b6}.periodic-legend span[data-category=actinides]{--legend-color: #fb7185}.periodic-legend span[data-category=noble-gases]{--legend-color: #60a5fa}.periodic-table-count{margin-left:auto;color:#61706a;font-size:.8rem;font-weight:900}.periodic-table-toggle{min-height:36px;padding:0 12px;border:1px solid rgba(94,234,212,.28);border-radius:7px;color:#071412;background:#5eead4;font-size:.84rem;font-weight:900;white-space:nowrap;transition:transform .16s ease,border-color .16s ease,background .16s ease}.periodic-table-toggle:hover{transform:translateY(-1px)}.app-shell.light .periodic-table-toggle{color:#06251f;background:#2dd4bf}.periodic-table-shell{position:relative;overflow-x:auto;padding:2px 2px 4px}.periodic-grid{display:grid;grid-template-columns:repeat(18,minmax(54px,1fr));grid-template-rows:repeat(9,62px);gap:5px;min-width:1080px}.periodic-cell{--periodic-color: #94a3b8;position:relative;display:grid;grid-template-rows:auto 1fr auto auto;min-width:0;min-height:0;padding:5px;border:1px solid color-mix(in srgb,var(--periodic-color) 34%,transparent);border-radius:7px;color:#eff6f3;background:linear-gradient(135deg,color-mix(in srgb,var(--periodic-color) 19%,rgba(255,255,255,.03)),#ffffff06);box-shadow:inset 0 1px #ffffff0f;text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.periodic-cell:hover,.periodic-cell:focus-visible,.periodic-cell.selected{z-index:4;border-color:color-mix(in srgb,var(--periodic-color) 74%,white 8%);background:linear-gradient(135deg,color-mix(in srgb,var(--periodic-color) 28%,rgba(255,255,255,.06)),#ffffff0e);box-shadow:0 12px 28px color-mix(in srgb,var(--periodic-color) 22%,transparent);transform:translateY(-1px)}.app-shell.light .periodic-cell{color:#18221e;background:linear-gradient(135deg,color-mix(in srgb,var(--periodic-color) 17%,white),#ffffffb3)}.app-shell.light .periodic-cell:hover,.app-shell.light .periodic-cell:focus-visible,.app-shell.light .periodic-cell.selected{background:linear-gradient(135deg,color-mix(in srgb,var(--periodic-color) 24%,white),#ffffffe6)}.periodic-number{color:#a7b2ad;font-size:.62rem;font-weight:800;line-height:1}.app-shell.light .periodic-number{color:#61706a}.periodic-cell strong{align-self:center;color:color-mix(in srgb,var(--periodic-color) 78%,white);font-size:clamp(1rem,1.1vw,1.35rem);line-height:1;letter-spacing:0}.app-shell.light .periodic-cell strong{color:color-mix(in srgb,var(--periodic-color) 72%,#18221e 22%)}.periodic-name,.periodic-mass{overflow:hidden;color:#c7d2cc;font-size:.58rem;font-weight:700;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.periodic-mass{color:#9ba7a2}.app-shell.light .periodic-name{color:#33443d}.app-shell.light .periodic-mass{color:#61706a}.element-hover-preview{position:fixed;right:28px;top:110px;z-index:30;display:grid;grid-template-columns:208px minmax(250px,330px);gap:12px;width:min(574px,calc(100vw - 56px));max-height:min(560px,calc(100vh - 132px));overflow:hidden;padding:12px;border:1px solid rgba(94,234,212,.24);border-radius:8px;background:#0f1212f0;box-shadow:0 22px 70px #00000061;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto;overscroll-behavior:contain}.app-shell.light .element-hover-preview{border-color:#18221e1f;background:#fffffff0;box-shadow:0 22px 70px #1f293733}.preview-atom{--atom-color: #38bdf8;position:relative;display:grid;width:208px;height:208px;place-items:center;border-radius:8px;background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--atom-color) 18%,transparent),transparent 45%);background-size:20px 20px,20px 20px,100% 100%;overflow:hidden}.app-shell.light .preview-atom{background:linear-gradient(rgba(24,34,30,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(24,34,30,.045) 1px,transparent 1px),radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--atom-color) 18%,white),transparent 48%);background-size:20px 20px,20px 20px,100% 100%}.preview-nucleus{position:relative;z-index:3;display:grid;width:58px;height:58px;place-items:center;border:1px solid color-mix(in srgb,var(--atom-color) 45%,white);border-radius:50%;color:#071412;background:radial-gradient(circle at 38% 32%,#ffffffeb,color-mix(in srgb,var(--atom-color) 72%,white));box-shadow:0 0 28px color-mix(in srgb,var(--atom-color) 48%,transparent)}.preview-nucleus strong{font-size:1.35rem;line-height:1}.preview-nucleus span{margin-top:-8px;font-size:.72rem;font-weight:900}.preview-shell{position:absolute;left:50%;top:50%;border:1px solid color-mix(in srgb,var(--atom-color) 52%,transparent);border-radius:50%;transform:translate(-50%,-50%)}.preview-electron-orbit{--start-angle: 0deg;position:absolute;left:50%;top:50%;border-radius:50%;animation:previewOrbit linear infinite;transform:translate(-50%,-50%) rotate(var(--start-angle));transform-origin:50% 50%}.preview-electron-orbit i{position:absolute;left:50%;top:-4px;display:block;width:8px;height:8px;border-radius:50%;background:#2dd4bf;box-shadow:0 0 12px #2dd4bfcc;transform:translate(-50%)}@keyframes previewOrbit{0%{transform:translate(-50%,-50%) rotate(var(--start-angle))}to{transform:translate(-50%,-50%) rotate(calc(var(--start-angle) + 360deg))}}.preview-facts{min-width:0}.preview-title{display:flex;align-items:center;gap:10px;margin-bottom:10px}.preview-title>span{display:grid;width:38px;height:38px;place-items:center;border-radius:7px;color:#071412;background:#5eead4;font-weight:900}.preview-title strong{display:block;color:#f4f7f5;font-size:1.05rem}.preview-title small{color:#a7b2ad;font-size:.78rem;font-weight:800}.app-shell.light .preview-title strong{color:#18221e}.app-shell.light .preview-title small{color:#61706a}.preview-description{margin:0 0 10px;color:#cbd7d2;font-size:.78rem;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.app-shell.light .preview-description{color:#43524c}.preview-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0;max-height:342px;overflow:auto;padding-right:2px;overscroll-behavior:contain}.preview-facts div{min-width:0;padding:7px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:#ffffff09}.app-shell.light .preview-facts div{border-color:#18221e14;background:#18221e09}.preview-facts dt{color:#8c9a94;font-size:.66rem;font-weight:900;text-transform:uppercase}.preview-facts dd{overflow-wrap:anywhere;margin:3px 0 0;color:#edf7f3;font-size:.77rem;font-weight:800;line-height:1.25}.app-shell.light .preview-facts dd{color:#20302a}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,420px);gap:16px;width:min(1720px,100%);margin:0 auto}.left-column,.right-column{display:flex;flex-direction:column;gap:16px;min-width:0}.simulation-wrap{position:relative;height:clamp(520px,calc(100vh - 250px),760px);min-height:520px;overflow:hidden;overscroll-behavior:contain;touch-action:none}.simulation-wrap:fullscreen{width:100vw;height:100vh;min-height:100vh;border-radius:0;border:0}.simulation-wrap:fullscreen .simulation-canvas{width:100%;height:100%}.simulation-canvas{display:block;width:100%;height:100%;cursor:grab}.simulation-canvas:active{cursor:grabbing}.chem-lab-viewport-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,290px);gap:12px;align-items:stretch}.chem-lab-viewport-main,.chem-lab-timeline-rail{min-width:0}.chem-lab-timeline-rail{display:flex;height:clamp(520px,calc(100vh - 250px),760px);max-height:clamp(520px,calc(100vh - 250px),760px);min-height:0;flex-direction:column;gap:12px;overflow:hidden}.chem-lab-timeline-rail .time-metric-panel{flex:0 0 auto}.chem-lab-timeline-rail .reaction-timeline{flex:1 1 auto;min-height:0;height:auto;max-height:none;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.molecule-3d-wrap{touch-action:none;background:linear-gradient(rgba(45,74,68,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(45,74,68,.055) 1px,transparent 1px),radial-gradient(circle at 50% 18%,rgba(255,255,255,.04),transparent 28%),linear-gradient(180deg,#eef7f5f2,#e2efeceb 58%,#cde1dce0);background-size:42px 42px,42px 42px,100% 100%,100% 100%}.molecule-3d-canvas{cursor:grab}.molecule-3d-webgl,.molecule-3d-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.molecule-3d-webgl{z-index:1;pointer-events:none;background:transparent}.molecule-3d-overlay{z-index:2}.app-shell.light .molecule-3d-wrap{background:linear-gradient(rgba(45,74,68,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(45,74,68,.06) 1px,transparent 1px),radial-gradient(circle at 50% 18%,rgba(255,255,255,.42),transparent 28%),linear-gradient(180deg,#f8fcfffa,#edf6f2f5 58%,#d3e5e1eb);background-size:42px 42px,42px 42px,100% 100%,100% 100%}.canvas-readout{position:absolute;left:14px;bottom:14px;display:flex;flex-wrap:wrap;gap:8px}.viewport-camera-settings{position:absolute;right:14px;top:14px;z-index:6;display:flex;flex-wrap:wrap;gap:6px;max-width:min(360px,calc(100% - 28px));padding:6px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0a0c0c94;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.viewport-camera-settings button{min-height:30px;padding:0 10px;border:1px solid rgba(255,255,255,.11);border-radius:7px;color:#d7e2de;background:#ffffff0f;font-size:.72rem;font-weight:900;cursor:pointer}.viewport-camera-settings button:hover{border-color:#5eead46b}.viewport-camera-settings button.active{color:#071412;border-color:transparent;background:#5eead4}.composition-workspace .viewport-camera-settings{width:min(560px,calc(100% - 28px));max-width:calc(100% - 28px);justify-content:flex-end}.viewport-chem-search{position:absolute;top:62px;right:14px;z-index:7;width:min(560px,calc(100% - 28px));max-width:calc(100% - 28px);pointer-events:auto}.viewport-chem-search .chem-lab-search-panel{gap:8px;padding:10px;border-color:#5eead42e;background:#0a0c0cbd;box-shadow:0 18px 46px #00000042;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.viewport-chem-search .molecule-builder{margin:0}.viewport-chem-search .builder-search,.viewport-chem-search .builder-button{min-height:38px}.viewport-chem-search .builder-message{margin:0;font-size:.76rem}.viewport-chem-search .chemistry-lab-suggestions{max-height:min(250px,calc(100vh - 280px));overflow:auto}.viewport-chem-search .builder-results{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.app-shell.light .viewport-chem-search .chem-lab-search-panel{border-color:#0d94882e;background:#ffffffdb;box-shadow:0 18px 46px #1f293729}.canvas-readout span{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#d7e2de;background:#0a0c0c9e;font-size:.78rem;font-weight:800}.empty-canvas-hint{position:absolute;left:50%;top:50%;display:grid;width:min(360px,calc(100% - 40px));gap:6px;padding:16px;border:1px solid rgba(94,234,212,.18);border-radius:8px;color:#d7e2de;background:#0a0c0c94;text-align:center;transform:translate(-50%,-50%);pointer-events:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.empty-canvas-hint strong{color:#f4f7f5;font-size:1rem}.empty-canvas-hint span{color:#a7b2ad;font-size:.88rem;line-height:1.45}.app-shell.light .canvas-readout span,.app-shell.light .viewport-camera-settings,.app-shell.light .zoom-controls,.app-shell.light .pan-controls,.app-shell.light .empty-canvas-hint{border-color:#18221e1f;color:#20302a;background:#ffffffb8}.app-shell.light .viewport-camera-settings button{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .viewport-camera-settings button.active{color:#06251f;border-color:transparent;background:#2dd4bf}.app-shell.light .empty-canvas-hint strong{color:#18221e}.app-shell.light .empty-canvas-hint span{color:#61706a}.zoom-controls{position:absolute;z-index:6;top:14px;right:14px;display:flex;align-items:center;gap:6px;padding:6px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0a0c0ca8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto}.zoom-controls button{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#eef5f1;background:#ffffff0f;transition:transform .16s ease,border-color .16s ease,background .16s ease}.app-shell.light .zoom-controls button{border-color:#18221e1c;color:#20302a;background:#18221e0b}.zoom-controls button:hover{border-color:#5eead475;background:#5eead41f;transform:translateY(-1px)}.zoom-controls span{min-width:48px;color:#d7e2de;font-size:.78rem;font-weight:900;text-align:center}.app-shell.light .zoom-controls span{color:#20302a}.camera-guide{position:absolute;z-index:5;top:72px;right:14px;display:grid;gap:7px;width:min(176px,calc(100% - 28px));padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#d7e2de;background:#0a0c0c94;box-shadow:0 16px 36px #0000002e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none}.camera-guide strong{color:#f4f7f5;font-size:.78rem;font-weight:900}.camera-guide span{display:flex;align-items:center;gap:6px;min-width:0;color:#aebbb6;font-size:.74rem;font-weight:800;line-height:1.2}.camera-guide kbd{display:inline-flex;min-height:21px;align-items:center;justify-content:center;padding:0 7px;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#e9fffa;background:#ffffff12;box-shadow:inset 0 -1px #00000042;font:800 .68rem Inter,system-ui,sans-serif;white-space:nowrap}.app-shell.light .camera-guide{border-color:#18221e1f;color:#20302a;background:#ffffffb8;box-shadow:0 16px 36px #1f29371a}.app-shell.light .camera-guide strong{color:#18221e}.app-shell.light .camera-guide span{color:#61706a}.app-shell.light .camera-guide kbd{border-color:#18221e21;color:#20302a;background:#18221e0e;box-shadow:inset 0 -1px #18221e21}.control-dock,.learning-panel,.chemistry-lab-panel,.info-card{padding:14px}.control-dock{display:grid;gap:10px}.dock-title,.section-heading{display:flex;align-items:center;gap:8px;margin-bottom:8px}.dock-title h2,.section-heading h2,.info-card h2{margin:0;font-size:1rem}.dock-title svg,.section-heading svg{color:#5eead4}.control-section{display:grid;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#ffffff07}.app-shell.light .control-section{border-color:#18221e14;background:#18221e06}.control-section-title{color:#a7b2ad;font-size:.72rem;font-weight:950;text-transform:uppercase}.app-shell.light .control-section-title{color:#61706a}.control-section-inline{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.viewport-controls-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:7px}.viewport-controls-list span{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:4px 7px;padding:7px 8px;border-radius:7px;color:#cbd8d3;background:#ffffff0a;font-size:.76rem;line-height:1.2}.viewport-controls-list svg{grid-row:span 2;color:#5eead4}.viewport-controls-list strong{color:#f8fafc;font-size:.72rem;text-transform:uppercase}.app-shell.light .viewport-controls-list span{color:#61706a;background:#18221e0b}.app-shell.light .viewport-controls-list strong{color:#18221e}.control-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 14px}.compact-grid{grid-template-columns:repeat(auto-fit,minmax(154px,1fr))}.slider{display:grid;gap:5px;min-width:0}.slider span{display:flex;justify-content:space-between;gap:10px;color:#d6dfdb;font-size:.82rem;font-weight:800}.app-shell.light .slider span{color:#33443d}.slider strong{color:#5eead4}.slider input{width:100%;accent-color:#5eead4}.element-board,.visual-row,.projection-row,.toggle-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:0}.element-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));align-items:stretch;gap:8px}.pan-controls{position:absolute;z-index:6;top:66px;right:14px;display:grid;grid-template-columns:repeat(3,30px);grid-template-rows:repeat(3,30px);gap:4px;padding:6px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0a0c0c9e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.pan-controls button{display:grid;width:30px;height:30px;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#eef5f1;background:#ffffff0f;transition:transform .16s ease,border-color .16s ease,background .16s ease}.pan-controls button:nth-child(1){grid-column:2;grid-row:1}.pan-controls button:nth-child(2){grid-column:1;grid-row:2}.pan-controls button:nth-child(3){grid-column:2;grid-row:2}.pan-controls button:nth-child(4){grid-column:3;grid-row:2}.pan-controls button:nth-child(5){grid-column:2;grid-row:3}.pan-controls button:hover{border-color:#5eead475;background:#5eead41f;transform:translateY(-1px)}.app-shell.light .pan-controls button{border-color:#18221e1c;color:#20302a;background:#18221e0b}.quick-element-board{grid-template-columns:1fr}.quick-elements .element-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr))}.element-group-hint{margin:8px 0 0;color:#a7b2ad;font-size:.78rem;line-height:1.35}.app-shell.light .element-group-hint{color:#61706a}.element-group{min-width:0;padding:7px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff09}.element-group-title{margin-bottom:7px;color:#a7b2ad;font-size:.72rem;font-weight:900}.element-picker{display:flex;flex-wrap:wrap;gap:5px}.element-picker button{min-width:35px;min-height:31px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#f8fafc;background:#ffffff0a;font-weight:900}.spawn-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:0}.element-picker button.selected{border-color:color-mix(in srgb,var(--atom-color) 74%,white 12%);background:color-mix(in srgb,var(--atom-color) 28%,transparent);box-shadow:0 0 20px color-mix(in srgb,var(--atom-color) 26%,transparent)}.spawn-button,.builder-button,.visual-choice,.toggle{display:inline-flex;align-items:center;justify-content:center;min-height:36px;gap:7px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0d;font-size:.83rem;font-weight:850}.lighting-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.color-slider{grid-template-columns:minmax(0,1fr) auto;align-items:center}.color-slider span{min-width:0}.color-slider input[type=color]{width:44px;height:30px;padding:2px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#ffffff0f}.app-shell.light .color-slider input[type=color]{border-color:#18221e24;background:#18221e0b}.spawn-button.primary{color:#071412;border-color:transparent;background:#5eead4}.molecule-builder{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:10px}.builder-search{display:flex;align-items:center;gap:8px;min-width:0;min-height:40px;padding:0 11px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a7f3d0;background:#ffffff0b}.builder-search input{width:100%;min-width:0;border:0;outline:0;color:#eef5f1;background:transparent}.builder-search input::-moz-placeholder{color:#8c9a94}.builder-search input::placeholder{color:#8c9a94}.builder-button{color:#071412;border-color:transparent;background:#5eead4}.builder-message{grid-column:1 / -1;margin:-2px 0 0;color:#fbbf24;font-size:.8rem;font-weight:800}.builder-message.success{color:#99f6e4}.builder-message.error{color:#fca5a5}.app-shell.light .builder-message.success{color:#047857}.app-shell.light .builder-message.error{color:#b91c1c}.preset-action{display:grid;gap:7px;margin:0 0 10px;padding:10px;border:1px solid rgba(94,234,212,.2);border-radius:8px;background:linear-gradient(135deg,#14b8a61f,#f472b614)}.preset-action button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;gap:7px;padding:0 12px;border:1px solid transparent;border-radius:8px;color:#071412;background:#5eead4;font-size:.83rem;font-weight:900;transition:transform .16s ease,border-color .16s ease,background .16s ease}.preset-action button:hover{border-color:#5eead46b;transform:translateY(-1px)}.preset-action>span{color:#a7b2ad;font-size:.78rem;font-weight:800;line-height:1.35}.app-shell.light .preset-action{border-color:#14b8a63d;background:linear-gradient(135deg,#14b8a61a,#f472b613)}.app-shell.light .preset-action button{color:#06251f;background:#2dd4bf}.app-shell.light .preset-action>span{color:#61706a}.anomer-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.preset-action .anomer-selector button{min-height:34px;border-color:#ffffff1a;color:#d7e2de;background:#ffffff0e}.preset-action .anomer-selector button.active{border-color:transparent;color:#071412;background:#a7f3d0}.form-ring-button{width:100%}.reaction-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.reaction-steps span{display:flex;min-height:34px;align-items:center;justify-content:center;padding:0 7px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a7b2ad;background:#ffffff0b;font-size:.72rem;font-weight:900;line-height:1.15;text-align:center}.reaction-steps span.done{border-color:#5eead440;color:#99f6e4;background:#14b8a61f}.reaction-steps span.active{border-color:#5eead48f;color:#071412;background:#5eead4}.app-shell.light .preset-action .anomer-selector button{border-color:#18221e1a;color:#33443d;background:#18221e0b}.app-shell.light .preset-action .anomer-selector button.active,.app-shell.light .reaction-steps span.active{color:#06251f;background:#99f6e4}.app-shell.light .reaction-steps span{border-color:#18221e1a;color:#61706a;background:#18221e0a}.app-shell.light .reaction-steps span.done{border-color:#14b8a640;color:#047857;background:#14b8a617}.builder-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.builder-result{min-height:52px;padding:9px 10px;border-color:#5eead42e;border-radius:8px;text-align:left;background:#14b8a617}.builder-result.pubchem{border-color:#38bdf833;background:#38bdf814}.builder-result strong,.builder-result span{display:block}.builder-result strong{color:#f8fafc;font-size:.94rem;overflow-wrap:anywhere}.builder-result span{margin-top:2px;color:#a7b2ad;font-size:.76rem}.builder-result.active{border-color:#5eead49e;background:#14b8a62e}.builder-hint{grid-column:1 / -1;margin:0;color:#a7b2ad;font-size:.8rem;font-weight:800}.visual-row,.projection-row{align-items:center}.visual-choice{display:inline-flex;align-items:center;justify-content:center;min-height:38px;gap:7px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#eef5f1;background:#ffffff0d;font-size:.83rem;font-weight:850;transition:transform .16s ease,border-color .16s ease,background .16s ease}.visual-choice:hover{border-color:#5eead46b;transform:translateY(-1px)}.visual-choice.active{color:#071412;border-color:transparent;background:#5eead4}.app-shell.light .visual-choice{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .visual-choice.active{color:#06251f;background:#2dd4bf}.toggle.active{color:#071412;border-color:transparent;background:#a7f3d0}.app-shell.light .spawn-button,.app-shell.light .builder-search,.app-shell.light .builder-button,.app-shell.light .builder-result,.app-shell.light .toggle,.app-shell.light .element-picker button{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .element-group{border-color:#18221e17;background:#18221e09}.app-shell.light .element-group-title{color:#61706a}.app-shell.light .element-picker button.selected{border-color:color-mix(in srgb,var(--atom-color) 72%,#18221e 12%);background:color-mix(in srgb,var(--atom-color) 22%,white);box-shadow:0 0 0 2px #18221e08}.app-shell.light .toggle.active{color:#06251f;background:#99f6e4}.app-shell.light .spawn-button.primary{color:#06251f;background:#2dd4bf}.app-shell.light .builder-search input{color:#20302a}.app-shell.light .builder-button{color:#06251f;background:#2dd4bf}.app-shell.light .builder-result{background:#14b8a614}.app-shell.light .builder-result.pubchem{background:#0ea5e914}.app-shell.light .builder-result strong{color:#18221e}.app-shell.light .builder-result span,.app-shell.light .builder-hint{color:#61706a}.preset-folders{display:grid;gap:10px}.preset-folder{--folder-accent: #5eead4;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff09;overflow:hidden}.preset-folder-covalent{--folder-accent: #5eead4}.preset-folder-ionic{--folder-accent: #60a5fa}.preset-folder-metallic{--folder-accent: #fbbf24}.preset-folder-advanced{--folder-accent: #f472b6}.preset-folder summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;cursor:pointer;list-style-position:inside}.preset-folder summary::marker{color:var(--folder-accent)}.preset-folder summary span{display:grid;min-width:0;gap:2px}.preset-folder summary strong{color:#f8fafc;font-size:.9rem;font-weight:900}.preset-folder summary small{color:#a7b2ad;font-size:.74rem;font-weight:750;line-height:1.25}.preset-folder summary em{min-width:28px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--folder-accent) 50%,transparent);border-radius:999px;color:#fff;background:color-mix(in srgb,var(--folder-accent) 55%,rgba(0,0,0,.3));font-size:.72rem;font-style:normal;font-weight:900;text-align:center}.preset-folder .preset-grid{padding:0 10px 10px}.app-shell.light .preset-folder{border-color:#18221e1a;background:#18221e08}.app-shell.light .preset-folder summary strong{color:#18221e}.app-shell.light .preset-folder summary small{color:#61706a}.preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.preset{min-height:64px;padding:10px;border-color:#ffffff17;border-radius:8px;text-align:left;background:#ffffff0b}.app-shell.light .preset,.app-shell.light .lesson{border-color:#18221e1a;background:#18221e0a}.preset strong{display:block;color:#f8fafc;font-size:1.1rem}.app-shell.light .preset strong,.app-shell.light .lesson span,.app-shell.light .event-list strong{color:#18221e}.preset span{color:#a7b2ad;font-size:.78rem}.app-shell.light .preset span,.app-shell.light .lesson strong,.app-shell.light .lesson-steps,.app-shell.light .plain-text,.app-shell.light .meter-block span,.app-shell.light .explanation p,.app-shell.light .event-list p,.app-shell.light .compact p,.app-shell.light .legend-grid span,.app-shell.light .empty-state,.app-shell.light .atom-title p{color:#61706a}.preset.active,.lesson.active{border-color:#5eead4;background:#14b8a638;color:#f4f7f5;box-shadow:0 0 12px #5eead440}.app-shell.light .lesson.active{border-color:#0d9488;background:#0d94881f;color:#06251f;box-shadow:0 0 10px #0d948826}.lesson-list{display:grid;gap:8px}.lesson{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 8px;min-height:66px;padding:10px;border-color:#ffffff17;border-radius:8px;text-align:left;background:#ffffff0b}.lesson span,.lesson strong{grid-column:1}.lesson span{color:#f8fafc;font-weight:850}.lesson strong{color:#a7b2ad;font-size:.78rem}.lesson svg{grid-column:2;grid-row:1 / 3}.lesson-steps{margin:12px 0 0;padding-left:22px;color:#ccd7d2;font-size:.9rem;line-height:1.5}.lesson-steps li+li{margin-top:6px}.info-panel{display:flex;flex-direction:column;gap:16px}.primary-info{min-height:260px}.atom-title{display:flex;align-items:center;gap:12px;margin-bottom:14px}.inspection-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(116px,148px);gap:14px;align-items:center;margin-bottom:14px}.inspection-hero .atom-title{min-width:0;margin-bottom:0}.inspection-shell-model{position:relative;display:grid;justify-items:center;min-width:0;padding:6px 6px 2px;border:1px solid rgba(94,234,212,.12);border-radius:8px;background:radial-gradient(circle at 50% 50%,rgba(94,234,212,.12),transparent 62%),#ffffff06}.inspection-shell-model svg{display:block;width:min(136px,100%);aspect-ratio:1;overflow:hidden;opacity:.9}.inspection-shell-model>span{max-width:100%;margin-top:-2px;color:#99a7a1;font-size:.62rem;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspection-shell-ring{fill:none;stroke:#0ea5e96b;stroke-width:1.25;filter:drop-shadow(0 0 3px rgba(45,212,191,.16))}.inspection-shell-electrons{transform-box:view-box;transform-origin:center;animation:inspection-orbit var(--spin-duration) linear infinite;animation-delay:var(--spin-delay)}.inspection-electron-dot{fill:#2dd4bf;stroke:#ffffff8c;stroke-width:.6;filter:drop-shadow(0 0 3px rgba(45,212,191,.55))}.inspection-nucleus-glow{opacity:.22;filter:blur(8px)}.inspection-nucleus{stroke:#ffffff52;stroke-width:1}.inspection-nucleus-symbol{fill:#f8fafc;font-size:18px;font-weight:950;text-anchor:middle;paint-order:stroke;stroke:#07141259;stroke-width:2px}@keyframes inspection-orbit{to{transform:rotate(360deg)}}.app-shell.light .inspection-shell-model{border-color:#0d94881f;background:radial-gradient(circle at 50% 50%,rgba(45,212,191,.15),transparent 62%),#ffffff85}.app-shell.light .inspection-shell-model>span{color:#66756f}.inspection-ai-notes{display:grid;gap:8px}.inspection-ai-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.inspection-ai-head strong{display:inline-flex;align-items:center;gap:6px}.inspection-ai-head span{padding:3px 7px;border-radius:999px;color:#071412;background:#99f6e4;font-size:.66rem;font-weight:950;text-transform:uppercase}.inspection-ai-notes ul{display:grid;gap:5px;margin:-2px 0 0;padding-left:18px;color:#cddbd5;font-size:.84rem;line-height:1.38}.inspection-ai-button{justify-self:start}.app-shell.light .inspection-ai-head span{color:#06251f;background:#5eead4}.app-shell.light .inspection-ai-notes ul{color:#34433d}.app-shell.light .inspection-shell-ring{stroke:#0ea5e95c}.app-shell.light .inspection-electron-dot{fill:#0d9488;stroke:#ffffffb8}.app-shell.light .inspection-nucleus-symbol{fill:#17211d;stroke:#ffffff8c}.atom-title>span{display:grid;width:56px;height:56px;place-items:center;border:1px solid color-mix(in srgb,var(--atom-color) 70%,white 12%);border-radius:50%;color:#f8fafc;background:color-mix(in srgb,var(--atom-color) 36%,#111316);box-shadow:0 0 24px color-mix(in srgb,var(--atom-color) 34%,transparent);font-size:1.35rem;font-weight:950}.atom-title h3{margin:0;font-size:1.58rem;line-height:1.03;letter-spacing:0}.atom-title p{margin:5px 0 0;color:#a7b2ad;font-size:1.02rem}.fact-grid{display:grid;grid-template-columns:minmax(118px,.9fr) minmax(0,1fr);gap:8px 12px;margin:0 0 12px}.fact-grid dt{color:#99a7a1;font-size:.78rem}.app-shell.light .fact-grid dt{color:#66756f}.fact-grid dd{min-width:0;margin:0;color:#eef5f1;font-size:.86rem;font-weight:800;overflow-wrap:anywhere}.app-shell.light .fact-grid dd,.app-shell.light .explanation strong,.app-shell.light .meter-block strong{color:#20302a}.plain-text,.explanation p,.event-list p,.compact p{margin:0;color:#b7c3be;font-size:.9rem;line-height:1.55}.meter-block{display:grid;gap:8px;margin:0 0 12px;padding:10px;border:1px solid rgba(20,184,166,.16);border-radius:8px;background:#14b8a612}.meter-block>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.meter-block span{color:#99a7a1;font-size:.78rem;font-weight:800}.meter-block strong{color:#dffcf5;font-size:.78rem}.meter{height:8px;overflow:hidden;border-radius:999px;background:#ffffff14}.meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2dd4bf,#a7f3d0)}.meter-block.danger{border-color:#fb923c33;background:#fb923c14}.meter-block.danger i{background:linear-gradient(90deg,#22c55e,#f59e0b,#ef4444)}.app-shell.light .meter-block{border-color:#14b8a62e;background:#14b8a614}.isotope-card{display:grid;gap:10px;margin:0 0 12px;padding:12px;border:1px solid rgba(94,234,212,.18);border-radius:8px;background:#14b8a60f}.isotope-card-head,.isotope-edit-row,.isotope-edit-row>div{display:flex;align-items:center;gap:8px}.isotope-card-head{justify-content:space-between}.isotope-card-head strong,.isotope-edit-row span{color:#dffcf5;font-size:.82rem;font-weight:900}.isotope-card-head p,.isotope-note{margin:0;color:#a9b8b2;font-size:.8rem;line-height:1.4}.isotope-card-head>span{padding:4px 8px;border-radius:999px;color:#0f766e;background:#2dd4bf2e;font-size:.68rem;font-weight:900;text-transform:uppercase}.isotope-select{display:grid;gap:5px}.isotope-select span{color:#99a7a1;font-size:.72rem;font-weight:900;text-transform:uppercase}.isotope-select select{width:100%;border:1px solid rgba(148,163,184,.24);border-radius:8px;padding:8px 10px;color:#eef5f1;background:#ffffff0f;font-weight:800}.isotope-edit-row{justify-content:space-between}.isotope-edit-row button{width:28px;height:28px;border:1px solid rgba(94,234,212,.28);border-radius:8px;color:#dffcf5;background:#14b8a61f;font-weight:900}.isotope-edit-row button:disabled{opacity:.35}.isotope-high,.isotope-extreme{border-color:#facc1547;background:#facc1514}.app-shell.light .isotope-card{border-color:#0d948829;background:#14b8a614}.app-shell.light .isotope-card-head strong,.app-shell.light .isotope-edit-row span{color:#20302a}.app-shell.light .isotope-card-head p,.app-shell.light .isotope-note{color:#61706a}.app-shell.light .isotope-select span{color:#66756f}.app-shell.light .isotope-select select{color:#20302a;background:#ffffffb8;border-color:#18221e1f}.app-shell.light .isotope-edit-row button{color:#115e59;background:#2dd4bf2e}.app-shell.light .meter{background:#18221e17}.explanation{display:grid;gap:6px;padding:12px;border:1px solid rgba(94,234,212,.15);border-radius:8px;background:#14b8a612}.app-shell.light .explanation{border-color:#14b8a633;background:#14b8a614}.atom-summary{margin-bottom:12px}.geiger-card{display:grid;gap:9px;margin:0 0 12px;padding:12px;border:1px solid rgba(250,204,21,.24);border-radius:8px;background:#facc1514}.geiger-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.geiger-head strong{color:#fef3c7;font-size:.88rem}.geiger-head span{color:#facc15;font-size:.7rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.geiger-dial{--needle-rest: -42deg;--needle-peak: 0deg;position:relative;height:112px;overflow:hidden;border:1px solid rgba(250,204,21,.2);border-radius:8px;background:radial-gradient(circle at 50% 100%,rgba(250,204,21,.22),transparent 54%),linear-gradient(180deg,#0000002e,#0000000a)}.geiger-dial:before{content:"";position:absolute;left:50%;bottom:-62px;width:194px;height:194px;border:2px solid rgba(250,204,21,.32);border-radius:50%;transform:translate(-50%)}.geiger-scale{position:absolute;inset:14px 18px auto;display:flex;justify-content:space-between;color:#fef3c7d1;font-size:.68rem;font-weight:900}.geiger-needle{position:absolute;left:50%;bottom:18px;width:3px;height:78px;border-radius:999px;background:linear-gradient(#fef3c7,#f59e0b);box-shadow:0 0 10px #facc1573;transform:translate(-50%) rotate(var(--needle-rest));transform-origin:50% 100%;animation:geigerNeedle 1.1s infinite cubic-bezier(.18,.9,.2,1)}.geiger-pivot{position:absolute;left:50%;bottom:11px;width:18px;height:18px;border:2px solid rgba(254,243,199,.82);border-radius:50%;background:#5f430b;transform:translate(-50%)}.geiger-reading{position:absolute;left:12px;right:12px;bottom:10px;display:flex;align-items:end;justify-content:space-between;gap:10px;pointer-events:none}.geiger-reading strong{color:#fef3c7;font-size:.92rem}.geiger-reading span{color:#facc15;font-size:.74rem;font-weight:950}.geiger-meter{display:grid;grid-template-columns:repeat(16,1fr);align-items:end;gap:3px;height:34px}.geiger-meter i{height:calc(8px + (var(--tick) % 5) * 4px);border-radius:2px 2px 0 0;background:#facc15;opacity:.28;animation:geigerTick 1.1s infinite ease-in-out;animation-delay:calc(var(--tick) * -.08s)}.geiger-card.medium .geiger-meter i{animation-duration:.86s}.geiger-card.high .geiger-meter i{animation-duration:.62s}.geiger-card.extreme .geiger-meter i{animation-duration:.42s}.geiger-card.medium .geiger-needle{animation-duration:.86s}.geiger-card.high .geiger-needle{animation-duration:.62s}.geiger-card.extreme .geiger-needle{animation-duration:.42s}.geiger-card p{margin:0;color:#d8cda5;font-size:.82rem;line-height:1.45}.compact-facts{margin-bottom:0}.app-shell.light .geiger-card{border-color:#ca8a0447;background:#facc151f}.app-shell.light .geiger-dial{border-color:#ca8a043d;background:radial-gradient(circle at 50% 100%,rgba(250,204,21,.3),transparent 56%),linear-gradient(180deg,#ffffff85,#ffffff2e)}.app-shell.light .geiger-scale{color:#6b5a23}.app-shell.light .geiger-reading strong{color:#3f3215}.app-shell.light .geiger-pivot{background:#fef3c7}.app-shell.light .geiger-head strong{color:#3f3215}.app-shell.light .geiger-card p{color:#574a26}@keyframes geigerTick{0%,to{opacity:.22;transform:scaleY(.55)}45%{opacity:.95;transform:scaleY(1)}}@keyframes geigerNeedle{0%,to{transform:translate(-50%) rotate(var(--needle-rest))}8%{transform:translate(-50%) rotate(var(--needle-peak))}18%{transform:translate(-50%) rotate(calc(var(--needle-rest) + 8deg))}28%{transform:translate(-50%) rotate(calc(var(--needle-rest) - 3deg))}42%{transform:translate(-50%) rotate(var(--needle-rest))}}.explanation strong{color:#eafff9;font-size:.83rem}.event-list,.composition-list{display:grid;gap:8px}.composition-list article{display:grid;gap:3px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0a}.composition-list strong{color:#f8fafc;font-size:1rem}.composition-list span,.composition-list p,.composition-total{margin:0;color:#b7c3be;font-size:.82rem;line-height:1.45}.composition-total{margin-top:10px;color:#99a7a1;font-weight:800}.event-list article{padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0a}.app-shell.light .event-list article{border-color:#18221e17;background:#18221e09}.app-shell.light .composition-list article{border-color:#18221e17;background:#18221e09}.app-shell.light .composition-list strong{color:#18221e}.app-shell.light .composition-list span,.app-shell.light .composition-list p,.app-shell.light .composition-total{color:#61706a}.event-list strong{display:block;margin-bottom:4px;color:#f8fafc;font-size:.86rem}.empty-state{display:grid;min-height:176px;place-items:center;color:#a7b2ad;text-align:center}.empty-state p{max-width:250px}.legend-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.legend-grid span{display:flex;align-items:center;gap:8px;color:#b7c3be;font-size:.8rem;font-weight:800}.legend-grid i{width:12px;height:12px;border-radius:999px}.legend-electron{background:#a7f3d0;box-shadow:0 0 12px #a7f3d0}.legend-covalent{background:#e5e7eb}.legend-ionic{background:#f59e0b}.legend-polar{background:linear-gradient(90deg,#38bdf8,#fb7185)}.legend-metal{background:#67e8f9;box-shadow:0 0 12px #67e8f9}.legend-hbond{background:repeating-linear-gradient(90deg,#38bdf8 0 4px,transparent 4px 8px);border-radius:4px}.legend-shell{border:1px solid rgba(255,255,255,.5)}.app-shell.light .legend-shell{border-color:#18221e80}.compact{background:#fbbf2412}.compact h2{margin-bottom:8px}.lesson-progress{display:flex;align-items:center;gap:10px;margin-bottom:10px}.lesson-progress-bar{flex:1;height:6px;overflow:hidden;border-radius:999px;background:#ffffff14}.app-shell.light .lesson-progress-bar{background:#18221e17}.lesson-progress-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2dd4bf,#5eead4);transition:width .32s ease}.lesson-progress span{color:#a7b2ad;font-size:.78rem;font-weight:800;white-space:nowrap}.app-shell.light .lesson-progress span{color:#61706a}.lesson-steps{margin:0 0 12px;padding-left:22px;color:#ccd7d2;font-size:.9rem;line-height:1.5}.app-shell.light .lesson-steps{color:#61706a}.lesson-steps li.current-step{color:#f4f7f5;font-weight:800}.app-shell.light .lesson-steps li.current-step{color:#18221e}.lesson-study-note{display:grid;gap:10px;margin:0 0 12px}.lesson-study-note div{padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0a}.lesson-study-note strong{display:block;margin-bottom:4px;color:#5eead4;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.02em}.lesson-study-note p{margin:0;color:#cbd5d1;font-size:.84rem;line-height:1.45}.app-shell.light .lesson-study-note div{border-color:#18221e14;background:#18221e09}.app-shell.light .lesson-study-note strong{color:#0d9488}.app-shell.light .lesson-study-note p{color:#44524c}.lesson-steps li+li{margin-top:10px}.lesson-steps li{padding:5px 0}.lesson-buttons{display:flex;align-items:center;gap:10px}.lesson-nav-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:0 18px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#eef5f1;background:#ffffff0d;font-size:.88rem;font-weight:850;transition:transform .16s ease,border-color .16s ease,background .16s ease}.lesson-nav-btn:hover:not(:disabled){border-color:#5eead46b;transform:translateY(-1px)}.lesson-nav-btn:disabled{opacity:.35;cursor:default}.lesson-nav-btn.primary{color:#071412;border-color:transparent;background:#5eead4}.app-shell.light .lesson-nav-btn{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .lesson-nav-btn.primary{color:#06251f;background:#2dd4bf}.lesson-speak-btn{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0d;font-size:1rem;transition:transform .16s ease,border-color .16s ease}.lesson-speak-btn:hover{border-color:#5eead46b;transform:translateY(-1px)}.app-shell.light .lesson-speak-btn{border-color:#18221e1a;background:#18221e0b}.guided-intro{display:grid;gap:14px;padding:16px;border:1px solid rgba(94,234,212,.18);border-radius:8px;background:#14b8a612}.guided-intro h3{margin:0;color:#f4f7f5;font-size:1rem;line-height:1.25}.guided-intro p{margin:0;color:#a7b2ad;font-size:.9rem;line-height:1.5}.guided-intro-actions{display:flex;flex-wrap:wrap;gap:10px}.app-shell.light .guided-intro{border-color:#14b8a633;background:#14b8a614}.app-shell.light .guided-intro h3{color:#18221e}.app-shell.light .guided-intro p{color:#61706a}@media(max-width:1240px){.top-bar,.workspace{grid-template-columns:1fr}.periodic-table-header{display:grid;align-items:start}.periodic-legend{justify-content:flex-start}.mode-tabs,.top-actions{justify-self:start}.right-column{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.info-panel{grid-column:span 1}}.icon-button.active-tool{border-color:#5eead4;color:#5eead4;background:#5eead41f}.app-shell.light .icon-button.active-tool{border-color:#0d9488;color:#0d9488;background:#0d94881a}.label-button{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#eef5f1;background:#ffffff0d;font-size:.87rem;font-weight:800;transition:transform .16s ease,border-color .16s ease,background .16s ease;white-space:nowrap}.label-button:hover{border-color:#5eead46b;transform:translateY(-1px)}.label-button.active{color:#071412;border-color:transparent;background:#5eead4}.label-button.active svg{color:#071412}.app-shell.light .label-button{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .label-button.active{color:#06251f;background:#2dd4bf}.graphics-panel{border:1px solid rgba(255,255,255,.11);border-radius:8px;background:#171919c7;box-shadow:0 22px 60px #00000052;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:grid;gap:10px;padding:14px}.app-shell.light .graphics-panel{border-color:#18221e1f;background:#ffffffd1;box-shadow:0 22px 60px #1f293721}.graphics-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.graphics-panel-title{display:flex;align-items:center;gap:8px}.graphics-panel-title h2{margin:0;font-size:1rem}.graphics-panel-title svg{color:#5eead4}.graphics-panel-close{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#a7b2ad;background:#ffffff0d;transition:transform .16s ease,border-color .16s ease,background .16s ease}.graphics-panel-close:hover{border-color:#5eead46b;color:#eef5f1;transform:translateY(-1px)}.app-shell.light .graphics-panel-close{border-color:#18221e1a;color:#61706a;background:#18221e0b}.app-shell.light .graphics-panel-close:hover{border-color:#0d94886b;color:#20302a}.collapsible-section{overflow:hidden}.collapsible-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;padding:0;border:0;border-radius:0;color:inherit;background:transparent;transition:transform .16s ease}.collapsible-header:hover{transform:translateY(0)}.collapsible-header-left{display:flex;align-items:center;gap:8px}.collapsible-header-left h2{margin:0;font-size:1rem}.collapsible-header-left svg{color:#5eead4}.collapsible-chevron{color:#a7b2ad;transition:transform .22s ease}.collapsible-chevron.rotated{transform:rotate(180deg)}.app-shell.light .collapsible-chevron{color:#61706a}.collapsible-body{margin-top:10px}.graphics-section{display:grid;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#ffffff07}.app-shell.light .graphics-section{border-color:#18221e14;background:#18221e06}.graphics-section-title{color:#a7b2ad;font-size:.72rem;font-weight:950;text-transform:uppercase}.app-shell.light .graphics-section-title{color:#61706a}.graphics-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.graphics-choice{display:inline-flex;align-items:center;justify-content:center;min-height:36px;gap:7px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#eef5f1;background:#ffffff0d;font-size:.83rem;font-weight:850;transition:transform .16s ease,border-color .16s ease,background .16s ease}.graphics-choice:hover{border-color:#5eead46b;transform:translateY(-1px)}.graphics-choice.active{color:#071412;border-color:transparent;background:#5eead4}.app-shell.light .graphics-choice{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .graphics-choice.active{color:#06251f;background:#2dd4bf}.graphics-toggle-grid{display:flex;flex-wrap:wrap;gap:8px}.graphics-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:36px;gap:7px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#eef5f1;background:#ffffff0d;font-size:.83rem;font-weight:850;transition:transform .16s ease,border-color .16s ease,background .16s ease}.graphics-toggle:hover{border-color:#5eead46b;transform:translateY(-1px)}.graphics-toggle.active{color:#071412;border-color:transparent;background:#a7f3d0}.app-shell.light .graphics-toggle{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .graphics-toggle.active{color:#06251f;background:#99f6e4}.graphics-slider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 14px}.graphics-slider{display:grid;gap:5px;min-width:0}.graphics-slider span{display:flex;justify-content:space-between;gap:10px;color:#d6dfdb;font-size:.82rem;font-weight:800}.app-shell.light .graphics-slider span{color:#33443d}.graphics-slider strong{color:#5eead4}.graphics-slider input{width:100%;accent-color:#5eead4}.graphics-slider.color-slider{grid-template-columns:minmax(0,1fr) auto;align-items:center}.graphics-slider.color-slider input[type=color]{width:44px;height:30px;padding:2px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#ffffff0f}.app-shell.light .graphics-slider.color-slider input[type=color]{border-color:#18221e24;background:#18221e0b}@media(max-width:860px){.app-shell,.periodic-table-panel{padding:10px}.periodic-grid{grid-template-columns:repeat(18,50px);grid-template-rows:repeat(9,58px);min-width:960px}.element-hover-preview{left:12px;right:12px;top:96px;grid-template-columns:1fr;width:auto}.preview-atom{width:100%;height:210px}.mode-tabs{width:100%;overflow-x:auto}.control-grid,.right-column{grid-template-columns:1fr}.simulation-wrap{height:clamp(460px,62vh,620px);min-height:460px}.zoom-controls{top:10px;right:10px;gap:4px}.zoom-controls button{width:32px;height:32px}.camera-tooltip-wrap{position:absolute;z-index:5;top:72px;right:14px}.camera-tooltip-btn{display:grid;width:28px;height:28px;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#a7b2ad;background:#0a0c0c94;cursor:help;transition:border-color .16s ease,color .16s ease}.camera-tooltip-btn:hover{border-color:#5eead46b;color:#eef5f1}.app-shell.light .camera-tooltip-btn{border-color:#18221e1f;color:#61706a;background:#ffffffb8}.camera-tooltip{position:absolute;top:34px;right:0;display:grid;gap:7px;width:min(176px,calc(100vw - 44px));padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#d7e2de;background:#0a0c0c94;box-shadow:0 16px 36px #0000002e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .16s ease,transform .16s ease}.camera-tooltip-wrap:hover .camera-tooltip,.camera-tooltip-btn:focus+.camera-tooltip{opacity:1;transform:translateY(0)}.camera-tooltip strong{color:#f4f7f5;font-size:.78rem;font-weight:900}.camera-tooltip span{display:flex;align-items:center;gap:6px;min-width:0;color:#aebbb6;font-size:.74rem;font-weight:800;line-height:1.2}.camera-tooltip kbd{display:inline-flex;min-height:21px;align-items:center;justify-content:center;padding:0 7px;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#e9fffa;background:#ffffff12;box-shadow:inset 0 -1px #00000042;font:800 .68rem Inter,system-ui,sans-serif;white-space:nowrap}.app-shell.light .camera-tooltip{border-color:#18221e1f;color:#20302a;background:#ffffffb8;box-shadow:0 16px 36px #1f29371a}.app-shell.light .camera-tooltip strong{color:#18221e}.app-shell.light .camera-tooltip span{color:#61706a}.app-shell.light .camera-tooltip kbd{border-color:#18221e21;color:#20302a;background:#18221e0e;box-shadow:inset 0 -1px #18221e21}.camera-guide{top:62px;right:10px;width:min(164px,calc(100% - 20px));padding:9px}.camera-guide span{font-size:.7rem}.camera-guide kbd{min-height:20px;padding:0 6px;font-size:.64rem}.guided-modules{display:grid;gap:12px}.guided-module{display:grid;gap:6px}.guided-module-title{color:#a7b2ad;font-size:.75rem;font-weight:950;text-transform:uppercase;letter-spacing:.02em}.app-shell.light .guided-module-title{color:#61706a}.lesson.completed span{display:flex;align-items:center;gap:6px}.lesson-check{color:#5eead4;flex-shrink:0}.app-shell.light .lesson-check{color:#0d9488}.lesson-content{margin-top:12px;padding:12px;border:1px solid rgba(94,234,212,.18);border-radius:8px;background:#14b8a612}.app-shell.light .lesson-content{border-color:#14b8a633;background:#14b8a614}.lesson-progress{display:flex;align-items:center;gap:10px;margin-bottom:10px}.lesson-progress-bar{flex:1;height:6px;overflow:hidden;border-radius:999px;background:#ffffff14}.app-shell.light .lesson-progress-bar{background:#18221e17}.lesson-progress-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2dd4bf,#5eead4);transition:width .32s ease}.lesson-progress span{color:#a7b2ad;font-size:.78rem;font-weight:800;white-space:nowrap}.app-shell.light .lesson-progress span{color:#61706a}.lesson-steps{margin:0 0 12px;padding-left:22px;color:#ccd7d2;font-size:.9rem;line-height:1.5}.app-shell.light .lesson-steps{color:#61706a}.lesson-steps li.current-step{color:#f4f7f5;font-weight:800}.app-shell.light .lesson-steps li.current-step{color:#18221e}.lesson-steps li+li{margin-top:10px}.lesson-steps li{padding:5px 0}.lesson-buttons{display:flex;align-items:center;gap:10px}.lesson-nav-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:0 18px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#eef5f1;background:#ffffff0d;font-size:.88rem;font-weight:850;transition:transform .16s ease,border-color .16s ease,background .16s ease}.lesson-nav-btn:hover:not(:disabled){border-color:#5eead46b;transform:translateY(-1px)}.lesson-nav-btn:disabled{opacity:.35;cursor:default}.lesson-nav-btn.primary{color:#071412;border-color:transparent;background:#5eead4}.app-shell.light .lesson-nav-btn{border-color:#18221e1a;color:#20302a;background:#18221e0b}.app-shell.light .lesson-nav-btn.primary{color:#06251f;background:#2dd4bf}.lesson-speak-btn{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0d;font-size:1rem;transition:transform .16s ease,border-color .16s ease}.lesson-speak-btn:hover{border-color:#5eead46b;transform:translateY(-1px)}.app-shell.light .lesson-speak-btn{border-color:#18221e1a;background:#18221e0b}.lesson-next{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 20px;border:1px solid transparent;border-radius:8px;color:#071412;background:#5eead4;font-size:.87rem;font-weight:900;width:100%;transition:transform .16s ease}.lesson-next:hover{transform:translateY(-1px)}.app-shell.light .lesson-next{color:#06251f;background:#2dd4bf}.lesson-quiz{margin-top:12px;display:grid;gap:12px}.lesson-quiz h3{margin:0;font-size:.95rem}.quiz-card{padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff09;transition:border-color .2s ease}.quiz-card.correct{border-color:#5eead466}.quiz-card.wrong{border-color:#f43f5e59}.app-shell.light .quiz-card{border-color:#18221e17;background:#18221e09}.quiz-question{margin:0 0 8px;color:#eef5f1;font-size:.88rem;font-weight:800;line-height:1.4}.app-shell.light .quiz-question{color:#20302a}}.lesson-quiz{margin-top:12px;display:grid;gap:14px}.lesson-quiz h3{margin:0;font-size:.95rem}.module-assessment-note{margin:-4px 0 2px;color:#b7c3be;font-size:.82rem;line-height:1.45}.app-shell.light .module-assessment-note{color:#61706a}.learning-surfaces,.module-summary-card{display:grid;gap:10px;margin:0 0 12px}.lesson-bridge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.learning-surface-card,.inline-recall-card,.module-summary-card{padding:11px 12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff09}.learning-surface-card.key{border-color:#5eead42e;background:#5eead40f}.learning-surface-card.mistake{border-color:#fbbf2438;background:#fbbf240f}.learning-surface-label{display:block;margin-bottom:5px;color:#5eead4;font-size:.7rem;font-weight:950;letter-spacing:0;text-transform:uppercase}.learning-surface-card p,.inline-recall-card p,.module-summary-card p{margin:0;color:#cbd5d1;font-size:.84rem;line-height:1.45}.learning-objectives,.module-summary-card ul{margin:8px 0 0;padding-left:18px;color:#cbd5d1;font-size:.82rem;line-height:1.45}.concept-chip-row{display:flex;flex-wrap:wrap;gap:6px}.concept-chip-row span{padding:4px 8px;border:1px solid rgba(94,234,212,.2);border-radius:999px;color:#99f6e4;background:#5eead414;font-size:.72rem;font-weight:850}.inline-recall-card{border-color:#60a5fa38;background:#60a5fa0f}.inline-recall-card.correct{border-color:#5eead452;animation:inline-recall-correct .52s ease both}.inline-recall-card.wrong{border-color:#fb718557;animation:inline-recall-wrong .42s ease both}.inline-recall-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:7px;margin-top:9px}.inline-recall-options button{min-height:34px;padding:6px 9px;border:1px solid rgba(255,255,255,.12);border-radius:7px;color:#eef5f1;background:#ffffff0b;font-size:.78rem;font-weight:850;text-align:left;cursor:pointer}.inline-recall-options button.correct{border-color:#5eead4;color:#99f6e4;background:#5eead424;animation:inline-recall-answer-pop .42s ease both}.inline-recall-options button.wrong{border-color:#fb7185;color:#fda4af;background:#f43f5e21;animation:inline-recall-answer-shake .36s ease both}.inline-recall-feedback{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:10px;min-height:34px}.inline-recall-result{display:inline-grid;place-items:center;min-width:78px;min-height:30px;padding:5px 10px;border-radius:999px;font-size:.78rem;font-weight:950;letter-spacing:0;text-transform:uppercase;animation:inline-recall-result-pop .68s cubic-bezier(.18,.9,.24,1.18) both}.inline-recall-result.correct{color:#052e2b;background:#5eead4;box-shadow:0 0 #5eead473}.inline-recall-result.wrong{color:#fff1f2;background:#e11d48}.inline-recall-card small{display:block;color:#b7c3be;font-size:.78rem;line-height:1.4}.inline-recall-reset{flex:0 0 auto;min-height:28px;padding:5px 9px;border:1px solid rgba(94,234,212,.24);border-radius:7px;color:#99f6e4;background:#5eead414;font-size:.73rem;font-weight:900;cursor:pointer;transition:opacity .16s ease,transform .16s ease,background .16s ease}.inline-recall-reset:hover{background:#5eead424}.inline-recall-reset:disabled{cursor:wait;opacity:.42;transform:translateY(1px)}.module-summary-card{margin-top:12px;border-color:#5eead433;background:#5eead40e}.module-summary-card h3{margin:0;color:#f8fffd;font-size:1rem}.module-summary-next{color:#99f6e4!important;font-weight:850}.app-shell.light .learning-surface-card,.app-shell.light .inline-recall-card,.app-shell.light .module-summary-card{border-color:#18221e14;background:#18221e09}.app-shell.light .learning-surface-card.key{border-color:#0d94882e;background:#0d948812}.app-shell.light .learning-surface-card.mistake{border-color:#b453092e;background:#f59e0b14}.app-shell.light .learning-surface-label{color:#0d9488}.app-shell.light .learning-surface-card p,.app-shell.light .inline-recall-card p,.app-shell.light .module-summary-card p,.app-shell.light .learning-objectives,.app-shell.light .module-summary-card ul,.app-shell.light .inline-recall-card small{color:#44524c}.app-shell.light .concept-chip-row span{border-color:#0d94882e;color:#0f766e;background:#0d948814}.app-shell.light .inline-recall-options button{border-color:#18221e1f;color:#20302a;background:#ffffffb8}.app-shell.light .inline-recall-options button.correct{border-color:#0d9488;color:#047857;background:#0d94881f}.app-shell.light .inline-recall-options button.wrong{border-color:#dc2626;color:#b91c1c;background:#dc262614}.app-shell.light .inline-recall-reset{border-color:#0d948838;color:#0f766e;background:#0d948814}.app-shell.light .inline-recall-result.correct{color:#042f2e;background:#2dd4bf}.app-shell.light .inline-recall-result.wrong{color:#fff1f2;background:#dc2626}@keyframes inline-recall-correct{0%{box-shadow:0 0 #5eead400;transform:translateY(0)}35%{box-shadow:0 0 0 6px #5eead429;transform:translateY(-1px)}to{box-shadow:0 0 #5eead400;transform:translateY(0)}}@keyframes inline-recall-wrong{0%,to{transform:translate(0)}25%{transform:translate(-3px)}50%{transform:translate(3px)}75%{transform:translate(-2px)}}@keyframes inline-recall-answer-pop{0%{transform:scale(1)}45%{transform:scale(1.045)}to{transform:scale(1)}}@keyframes inline-recall-answer-shake{0%,to{transform:translate(0)}30%{transform:translate(-2px)}60%{transform:translate(2px)}}@keyframes inline-recall-result-pop{0%{opacity:0;transform:scale(.72) translateY(6px)}50%{opacity:1;transform:scale(1.08) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}.app-shell.light .module-summary-card h3{color:#18221e}.app-shell.light .module-summary-next{color:#0f766e!important}.quiz-card{padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff09;transition:border-color .2s ease}.quiz-card.correct{border-color:#5eead466}.quiz-card.wrong{border-color:#f43f5e59}.app-shell.light .quiz-card{border-color:#18221e17;background:#18221e09}.quiz-question{margin:0 0 10px;color:#eef5f1;font-size:.9rem;font-weight:800;line-height:1.4}.app-shell.light .quiz-question{color:#20302a}.quiz-options{display:grid;gap:12px}.quiz-option{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 16px;border:1px solid rgba(255,255,255,.15);border-radius:8px;width:100%;color:#eef5f1;background:#ffffff0d;font-size:.9rem;font-weight:800;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease;cursor:pointer}.quiz-option:hover:not(:disabled){border-color:#5eead46b;transform:translateY(-1px)}.quiz-option.selected{border-color:#5eead4;background:#5eead426;color:#eef5f1}.quiz-option.correct{border-color:#5eead4;background:#5eead42e;color:#99f6e4}.quiz-option.wrong{border-color:#fb7185;background:#f43f5e26;color:#fda4af}.app-shell.light .quiz-option{border-color:#18221e26;color:#20302a;background:#ffffffd9}.app-shell.light .quiz-option.selected{border-color:#0d9488;background:#0d94881f;color:#06251f}.app-shell.light .quiz-option.correct{border-color:#0d9488;background:#0d948826;color:#047857}.app-shell.light .quiz-option.wrong{border-color:#dc2626;background:#dc26261a;color:#b91c1c}.quiz-option:disabled{cursor:default}.quiz-mark{margin-left:auto;flex-shrink:0}.quiz-option.correct .quiz-mark{color:#5eead4}.quiz-option.wrong .quiz-mark{color:#fb7185}.quiz-explanation{margin:10px 0 0;color:#a7b2ad;font-size:.84rem;font-weight:750;line-height:1.4;padding:10px;border-radius:6px;background:#ffffff08}.app-shell.light .quiz-explanation{color:#61706a;background:#18221e08}.quiz-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.quiz-submit,.quiz-retry,.quiz-continue{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;border:1px solid transparent;border-radius:8px;font-size:.88rem;font-weight:900;transition:transform .16s ease}.quiz-submit{color:#071412;background:#5eead4}.quiz-submit:hover:not(:disabled){transform:translateY(-1px)}.quiz-submit:disabled{opacity:.5;cursor:default}.app-shell.light .quiz-submit{color:#06251f;background:#2dd4bf}.quiz-retry{color:#eef5f1;border-color:#ffffff26;background:transparent}.quiz-retry:hover{border-color:#5eead46b}.app-shell.light .quiz-retry{color:#20302a;border-color:#18221e1f}.quiz-continue{color:#071412;background:#a7f3d0}.quiz-continue:hover{transform:translateY(-1px)}.app-shell.light .quiz-continue{color:#06251f;background:#99f6e4}.quiz-result{display:flex;flex-wrap:wrap;gap:10px;align-items:center;width:100%}.quiz-pass,.quiz-fail{display:flex;align-items:center;gap:6px;width:100%;margin:0;font-size:.9rem;font-weight:800}.quiz-pass{color:#5eead4}.quiz-fail{color:#fb7185}.app-shell.light .quiz-pass{color:#0d9488}.app-shell.light .quiz-fail{color:#e11d48}.lesson-quiz{position:relative}.quiz-feedback-overlay{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;z-index:18;display:grid;place-items:center;pointer-events:none;border-radius:8px;overflow:hidden;animation:quiz-feedback-fade 1.7s ease forwards}.quiz-feedback-overlay.perfect{background:radial-gradient(circle at 50% 30%,rgba(94,234,212,.16),rgba(8,13,12,.08) 58%,transparent 76%)}.quiz-feedback-overlay.zero{background:#7f1d1d1f;animation-duration:1.45s}.quiz-confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.quiz-confetti i{position:absolute;top:-18px;width:8px;height:16px;border-radius:2px;animation:quiz-confetti-fall 1.25s cubic-bezier(.18,.72,.32,1) forwards}.quiz-feedback-card{position:relative;display:grid;place-items:center;gap:6px;min-width:180px;padding:20px 24px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#09110fdb;box-shadow:0 16px 44px #00000047;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:quiz-feedback-pop .56s cubic-bezier(.18,.9,.24,1.18) both}.quiz-feedback-card.perfect{color:#f8fffd;border-color:#5eead46b}.quiz-feedback-card.zero{color:#fecaca;border-color:#f871716b;animation-name:quiz-feedback-shake}.quiz-feedback-card strong:not(.quiz-feedback-x){font-size:1.2rem;font-weight:950}.quiz-feedback-card span{font-size:.86rem;font-weight:850}.quiz-feedback-x{display:grid;place-items:center;width:86px;height:86px;font-size:5.8rem;line-height:.8;font-weight:1000;color:#ef4444;text-shadow:0 0 24px rgba(239,68,68,.32)}.app-shell.light .quiz-feedback-card{background:#ffffffeb;box-shadow:0 16px 44px #0f171424}.app-shell.light .quiz-feedback-card.perfect{color:#064e3b}.app-shell.light .quiz-feedback-overlay.perfect{background:radial-gradient(circle at 50% 30%,rgba(45,212,191,.22),rgba(255,255,255,.18) 58%,transparent 76%)}.app-shell.light .quiz-feedback-overlay.zero{background:#ef444414}@keyframes quiz-confetti-fall{0%{opacity:0;transform:translate3d(0,-20px,0) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate3d(var(--quiz-confetti-drift),360px,0) rotate(540deg)}}@keyframes quiz-feedback-pop{0%{opacity:0;transform:scale(.72) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes quiz-feedback-shake{0%{opacity:0;transform:scale(.72) translate(0)}22%{opacity:1;transform:scale(1) translate(-7px)}36%{transform:scale(1) translate(7px)}52%{transform:scale(1) translate(-4px)}68%{transform:scale(1) translate(4px)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes quiz-feedback-fade{0%,82%{opacity:1}to{opacity:0}}.lesson-overlay-canvas{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;pointer-events:none}.guided-modules{display:grid;gap:24px}.guided-module{display:grid;gap:10px}.guided-module-title{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#a7b2ad;font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.02em;padding:6px 0}.guided-module-count{display:inline-flex;align-items:center;gap:6px;color:#5eead4;font-size:.72rem;font-weight:900;flex-shrink:0;margin-left:8px}.guided-module-count svg{color:#5eead4}.app-shell.light .guided-module-title{color:#61706a}.app-shell.light .guided-module-count{color:#0d9488}.app-shell.light .guided-module-count svg{color:#0d9488}.lesson.completed span{display:flex;align-items:center;gap:6px}.lesson.locked{opacity:.45;cursor:default;pointer-events:none}.lesson.locked:hover{transform:none;border-color:#ffffff17}.lesson-check{color:#5eead4;flex-shrink:0}.lesson.locked .lesson-check{color:#a7b2ad}.app-shell.light .lesson-check{color:#0d9488}.app-shell.light .lesson.locked .lesson-check{color:#8c9a94}.builder-results,.preset-grid,.legend-grid{grid-template-columns:1fr}.composition-workspace{grid-template-columns:minmax(0,1fr);align-items:stretch}.composition-workspace>.right-column{align-self:stretch}.chem-lab-search-panel{display:grid;gap:10px;min-width:0;padding:12px}.chem-lab-search-panel .molecule-builder{margin-bottom:0}.chem-lab-search-panel .builder-search input{min-height:38px}.compact-search-suggestions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;align-items:center}.compact-search-suggestions .chemistry-lab-subhead{margin:0}.compact-search-suggestions .chemistry-chip-row{justify-content:flex-end}.compact-search-suggestions .builder-results{grid-column:1 / -1}.chemistry-lab-panel{display:flex;flex-direction:column;gap:14px;max-height:none;overflow:visible}.chemistry-lab-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.chemistry-lab-title{display:flex;align-items:flex-start;gap:10px}.chemistry-lab-title svg{flex:0 0 auto;margin-top:2px;color:#5eead4}.chemistry-lab-title h2,.chem-card-header h3,.compact-chem-list h4{margin:0;letter-spacing:0}.chemistry-lab-title h2{font-size:1.08rem}.chemistry-lab-title p{margin:3px 0 0;color:#a7b2ad;font-size:.86rem;line-height:1.35}.app-shell.light .chemistry-lab-title p{color:#61706a}.chemistry-search{margin-bottom:0}.source-line{display:flex;flex-wrap:wrap;gap:6px;color:#a7b2ad;font-size:.72rem;font-weight:850}.chemistry-search .source-line{grid-column:1 / -1}.source-line span{min-height:24px;padding:4px 7px;border:1px solid rgba(94,234,212,.16);border-radius:999px;background:#14b8a612}.app-shell.light .source-line{color:#61706a}.app-shell.light .source-line span{border-color:#0d948824;background:#14b8a612}.chemistry-lab-suggestions{display:grid;gap:8px}.chemistry-lab-subhead{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#a7b2ad;font-size:.72rem;font-weight:900;text-transform:uppercase}.chemistry-lab-subhead small{color:#7dd3fc;font-size:.7rem;text-transform:none}.app-shell.light .chemistry-lab-subhead{color:#61706a}.app-shell.light .chemistry-lab-subhead small{color:#0369a1}.chemistry-chip-row,.synonym-row{display:flex;flex-wrap:wrap;gap:6px}.chemistry-chip-row button,.synonym-row span{min-height:30px;padding:5px 9px;border:1px solid rgba(94,234,212,.2);border-radius:999px;color:#99f6e4;background:#14b8a614;font-size:.76rem;font-weight:850}.chemistry-chip-row button.active{color:#071412;background:#5eead4}.app-shell.light .chemistry-chip-row button,.app-shell.light .synonym-row span{border-color:#0d94882e;color:#0f766e;background:#14b8a614}.app-shell.light .chemistry-chip-row button.active{color:#06251f;background:#2dd4bf}.chemistry-results{grid-template-columns:1fr}.chem-lab-card{display:grid;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0b}.app-shell.light .chem-lab-card{border-color:#18221e1a;background:#18221e09}.chem-card-header,.pubchem-title-line,.chemistry-list div,.chemistry-row-button,.compact-chem-list div,.compact-row-button,.percent-bars>div,.percent-row-button{display:flex;align-items:center;justify-content:space-between;gap:10px}.chem-card-header h3{display:inline-flex;align-items:center;gap:7px;font-size:.94rem}.chem-card-header h3 svg{color:#5eead4}.chem-card-header span{padding:3px 7px;border-radius:999px;color:#071412;background:#99f6e4;font-size:.67rem;font-weight:950;text-transform:uppercase}.app-shell.light .chem-card-header span{color:#06251f;background:#5eead4}.composition-hero,.chemistry-metric-grid,.property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.composition-hero>div,.chemistry-metric,.property-grid>div{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0000001f}.composition-hero>div:first-child{grid-column:1 / -1}.app-shell.light .composition-hero>div,.app-shell.light .chemistry-metric,.app-shell.light .property-grid>div{border-color:#18221e14;background:#ffffff9e}.chem-label,.chemistry-metric span,.property-grid span,.chemistry-list span,.compact-chem-list span,.percent-bars span{display:block;color:#a7b2ad;font-size:.7rem;font-weight:950;text-transform:uppercase}.composition-hero strong,.chemistry-metric strong,.property-grid strong,.chemistry-list strong,.compact-chem-list strong,.percent-bars strong{min-width:0;color:#f8fafc;font-size:.9rem;overflow-wrap:anywhere}.composition-hero strong{display:block;margin-top:3px;font-size:1.22rem}.app-shell.light .chem-label,.app-shell.light .chemistry-metric span,.app-shell.light .property-grid span,.app-shell.light .chemistry-list span,.app-shell.light .compact-chem-list span,.app-shell.light .percent-bars span{color:#66766f}.app-shell.light .composition-hero strong,.app-shell.light .chemistry-metric strong,.app-shell.light .property-grid strong,.app-shell.light .chemistry-list strong,.app-shell.light .compact-chem-list strong,.app-shell.light .percent-bars strong{color:#18221e}.chemistry-row-button,.compact-row-button,.percent-row-button,.chemistry-metric.interactive{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer}.chemistry-row-button,.compact-row-button,.percent-row-button{border-top:0;border-right:0;border-left:0;background:transparent}.chemistry-row-button:hover,.compact-row-button:hover,.percent-row-button:hover,.chemistry-metric.interactive:hover{border-color:#5eead457;background:#14b8a614}.chemistry-row-button:focus-visible,.compact-row-button:focus-visible,.percent-row-button:focus-visible,.chemistry-metric.interactive:focus-visible{outline:2px solid rgba(45,212,191,.72);outline-offset:2px}.app-shell.light .chemistry-row-button:hover,.app-shell.light .compact-row-button:hover,.app-shell.light .percent-row-button:hover,.app-shell.light .chemistry-metric.interactive:hover{border-color:#0d948840;background:#14b8a617}.chemistry-list,.percent-bars,.compact-chem-list{display:grid;gap:7px}.chemistry-list div,.chemistry-row-button,.compact-chem-list div,.compact-row-button{padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07)}.app-shell.light .chemistry-list div,.app-shell.light .chemistry-row-button,.app-shell.light .compact-chem-list div,.app-shell.light .compact-row-button{border-bottom-color:#18221e14}.percent-bars>div,.percent-row-button{display:grid;grid-template-columns:34px minmax(0,1fr) 54px}.percent-bars div div{position:relative;height:8px;overflow:hidden;border-radius:999px;background:#ffffff14}.percent-bars i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5eead4,#38bdf8)}.app-shell.light .percent-bars div div{background:#18221e14}.compact-chem-list h4{color:#d1fae5;font-size:.78rem;text-transform:uppercase}.compact-chem-list p,.chemistry-summary,.chemistry-empty{margin:0;color:#a7b2ad;font-size:.86rem;line-height:1.45}.app-shell.light .compact-chem-list h4{color:#0f766e}.app-shell.light .compact-chem-list p,.app-shell.light .chemistry-summary,.app-shell.light .chemistry-empty{color:#56665f}.chemistry-meaning{display:grid;gap:8px;margin:0;padding-left:18px;color:#dbe7e2;font-size:.86rem;line-height:1.42}.app-shell.light .chemistry-meaning{color:#34433d}.ai-insight{display:grid;gap:10px}.ai-insight>p{margin:0;color:#dbe7e2;font-size:.9rem;line-height:1.45}.app-shell.light .ai-insight>p{color:#34433d}.ai-generate-button{justify-self:start}.chem-ai-notes-panel,.chem-viewport-controls,.reaction-builder,.reaction-timeline{box-shadow:0 18px 44px #00000038}.reaction-builder{margin-top:12px}.reaction-action-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.reaction-mode-row,.electron-route-grid{display:grid;gap:6px}.reaction-mode-row{grid-template-columns:repeat(4,minmax(0,1fr))}.electron-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reaction-mode-row button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#aeb9b4;background:#ffffff0a;font-size:.74rem;font-weight:950}.reaction-mode-row button.active{border-color:#5eead49e;color:#071412;background:#5eead4}.reaction-action-grid button,.reaction-builder-actions button,.reaction-score-strip button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.reaction-action-grid button{min-height:36px;padding:0 8px;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#aeb9b4;background:#ffffff0a;font-size:.76rem;font-weight:900}.reaction-action-grid button.active{border-color:#5eead49e;color:#071412;background:#5eead4}.reaction-target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reaction-select-field{display:grid;gap:5px}.reaction-select-field span{color:#a7b2ad;font-size:.7rem;font-weight:950;text-transform:uppercase}.reaction-select-field select{width:100%;min-height:38px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#e7f4ef;background:#0000002e;font:inherit;font-size:.84rem;font-weight:800}.reaction-preview-card{display:grid;gap:8px;padding:10px;border:1px solid rgba(251,191,36,.24);border-radius:8px;background:#fbbf2414}.reaction-preview-card.allowed{border-color:#2dd4bf42;background:#14b8a617}.reaction-preview-status{display:flex;align-items:center;gap:7px}.reaction-preview-status svg{color:#fbbf24}.reaction-preview-card.allowed .reaction-preview-status svg{color:#5eead4}.reaction-preview-card p,.reaction-preview-card ul{margin:0;color:#cddbd5;font-size:.84rem;line-height:1.42}.reaction-preview-card ul{display:grid;gap:4px;padding-left:18px}.reaction-delta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.reaction-delta-grid span{display:grid;gap:2px;min-height:42px;padding:7px 8px;border:1px solid rgba(94,234,212,.18);border-radius:7px;color:#dbe7e2;background:#14b8a614;font-size:.73rem;font-weight:850}.reaction-delta-grid strong{color:#5eead4;font-size:.66rem;text-transform:uppercase}.reaction-reason-list{margin:0;padding-left:18px}.reaction-score-strip{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.reaction-score-strip span,.reaction-score-strip button{min-height:28px;padding:0 8px;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#dbe7e2;background:#ffffff0d;font-size:.72rem;font-weight:950}.reaction-score-strip button{cursor:pointer}.reaction-score-strip .positive{color:#bbf7d0;border-color:#22c55e47;background:#22c55e1f}.reaction-score-strip .negative{color:#fecaca;border-color:#f8717147;background:#f871711f}.reaction-builder-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.reaction-builder-actions .subtle{color:#cbd5d0;background:#ffffff0f}.reaction-builder-actions .builder-button:disabled,.mechanism-confirm-pill button:disabled{cursor:not-allowed}.reaction-step-list{display:grid;gap:8px}.reaction-step-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:stretch}.reaction-step-row.future{opacity:.54}.reaction-step-row.current .reaction-step-body,.reaction-step-row.current .reaction-time-chip{border-color:#5eead46b;box-shadow:0 0 0 2px #2dd4bf1a}.reaction-step-list button{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;width:100%;padding:9px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:inherit;background:#ffffff0a;text-align:left}.reaction-step-list .reaction-time-chip{display:inline-flex;width:auto;min-width:88px;min-height:100%;align-items:center;justify-content:center;padding:8px;color:#5eead4;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.68rem;white-space:nowrap}.reaction-step-list .reaction-step-body{display:grid;grid-template-columns:28px minmax(0,1fr);width:100%}.reaction-step-list .reaction-step-body.static{padding:9px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:inherit;background:#ffffff0a}.reaction-step-list .reaction-step-body>span{display:grid;width:28px;height:28px;place-items:center;border-radius:999px;color:#071412;background:#5eead4;font-size:.78rem;font-weight:950}.reaction-step-list strong,.reaction-step-list small,.reaction-step-list p{display:block}.reaction-step-list small{margin-top:2px;color:#99a7a1;font-size:.73rem;font-weight:850}.reaction-step-list p{margin:5px 0 0;color:#cddbd5;font-size:.8rem;line-height:1.35}.app-shell.light .reaction-action-grid button,.app-shell.light .reaction-mode-row button{border-color:#18221e1a;color:#61706a;background:#18221e0a}.app-shell.light .reaction-mode-row button.active,.app-shell.light .reaction-action-grid button.active{color:#06251f;background:#5eead4}.app-shell.light .reaction-select-field span{color:#66766f}.app-shell.light .reaction-select-field select{border-color:#18221e1a;color:#20302a;background:#ffffffb8}.app-shell.light .reaction-preview-card p,.app-shell.light .reaction-preview-card ul,.app-shell.light .reaction-step-list p{color:#34433d}.app-shell.light .reaction-score-strip span,.app-shell.light .reaction-score-strip button,.app-shell.light .reaction-step-list button,.app-shell.light .reaction-delta-grid span{border-color:#18221e1a;color:#34433d;background:#ffffff9e}.mechanism-handle-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:8}.mechanism-handle{position:absolute;display:grid;width:24px;height:24px;place-items:center;translate:-50% -50%;border:1px solid rgba(255,255,255,.42);border-radius:999px;color:#061512;background:#5eead4;box-shadow:0 8px 18px #0000002e;font-size:.55rem;font-weight:950;pointer-events:auto}.mechanism-handle.target{background:#93c5fd}.mechanism-handle.active{outline:3px solid rgba(45,212,191,.34)}.mechanism-confirm-pill{position:absolute;left:50%;bottom:22px;z-index:12;display:flex;max-width:min(760px,calc(100% - 28px));min-height:38px;align-items:center;gap:8px;padding:7px 9px 7px 12px;border:1px solid rgba(251,191,36,.34);border-radius:999px;color:#f8fafc;background:#0d1714e6;box-shadow:0 16px 36px #0000003d;translate:-50% 0}.mechanism-confirm-pill.allowed{border-color:#2dd4bf6b}.mechanism-confirm-pill span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:850}.mechanism-confirm-pill small{color:#9fb0aa;font-size:.68rem;font-weight:800;white-space:nowrap}.mechanism-confirm-pill button{min-height:26px;padding:0 10px;border:0;border-radius:999px;color:#06251f;background:#5eead4;font-size:.72rem;font-weight:950}.mechanism-confirm-pill button:disabled{opacity:.45}.mechanism-confirm-pill button+button{color:#dbe7e2;background:#ffffff1a}.app-shell.light .mechanism-confirm-pill{color:#20302a;background:#fffffff0}.app-shell.light .mechanism-confirm-pill button+button{color:#34433d;background:#18221e14}.app-shell.light .reaction-step-list small{color:#66766f}.chem-lab-under-viewport{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(340px,1fr) minmax(390px,.95fr);gap:16px;align-items:start}.chem-lab-explanation-stack{display:grid;gap:16px;min-width:0}.chem-lab-under-viewport .info-panel{min-width:0}.chem-lab-analysis-slot{min-width:0;align-self:start}.chem-lab-analysis-slot .chemistry-lab-panel{max-height:clamp(620px,76vh,980px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.chem-ai-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.ai-mini-list{display:grid;gap:6px}.ai-mini-list h4{margin:0;color:#d1fae5;font-size:.78rem;text-transform:uppercase}.ai-mini-list ul{display:grid;gap:6px;margin:0;padding-left:18px;color:#dbe7e2;font-size:.86rem;line-height:1.42}.ai-mini-list p{margin:0;color:#a7b2ad;font-size:.84rem}.app-shell.light .ai-mini-list h4{color:#0f766e}.app-shell.light .ai-mini-list ul{color:#34433d}.app-shell.light .ai-mini-list p{color:#56665f}.chem-viewport-controls{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#171919c7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-shell.light .chem-viewport-controls{border-color:#18221e1f;background:#ffffffd1}.chem-viewport-control-title{display:flex;align-items:flex-start;gap:10px;min-width:0}.chem-viewport-control-title>svg{flex:0 0 auto;margin-top:2px;color:#5eead4}.chem-viewport-control-title h3{margin:0;font-size:.96rem}.chem-viewport-control-title p{margin:2px 0 0;color:#a7b2ad;font-size:.84rem;line-height:1.35}.app-shell.light .chem-viewport-control-title p{color:#61706a}.chem-viewport-controls>.source-line{grid-column:1 / -1}.chem-segmented-control{display:flex;gap:6px;padding:4px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0a}.chem-segmented-control button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 11px;border:0;border-radius:6px;color:#aeb9b4;background:transparent;font-size:.8rem;font-weight:900}.chem-segmented-control button.active{color:#071412;background:#5eead4}.app-shell.light .chem-segmented-control{border-color:#18221e1a;background:#18221e0a}.app-shell.light .chem-segmented-control button{color:#61706a}.app-shell.light .chem-segmented-control button.active{color:#06251f;background:#2dd4bf}.chem-element-picker{position:relative;z-index:35}.chem-element-picker-trigger{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:0 11px 0 7px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#dbe7e2;background:#ffffff0e;font-size:.82rem;font-weight:900;white-space:nowrap}.chem-element-picker-trigger:hover,.chem-element-picker-trigger[aria-expanded=true]{border-color:#5eead461;background:#5eead417}.chem-element-badge{display:grid;min-width:30px;height:30px;place-items:center;border-radius:7px;color:#06251f;background:#5eead4;font-weight:950}.chem-element-dropdown{position:absolute;top:calc(100% + 8px);right:0;display:grid;gap:10px;width:min(720px,calc(100vw - 36px));max-height:min(560px,calc(100vh - 180px));padding:12px;overflow:auto;border:1px solid rgba(94,234,212,.18);border-radius:8px;background:#0e1211f0;box-shadow:0 24px 56px #00000052;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);scrollbar-gutter:stable}.chem-element-search{display:flex;min-height:38px;align-items:center;gap:8px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#99f6e4;background:#ffffff0d}.chem-element-search input{width:100%;min-width:0;border:0;outline:0;color:#eef5f1;background:transparent}.chem-mini-periodic{display:grid;grid-template-columns:repeat(18,minmax(0,1fr));grid-auto-rows:36px;gap:5px;min-width:640px}.chem-mini-periodic.searching{grid-template-columns:repeat(auto-fill,minmax(54px,1fr));grid-auto-rows:44px;min-width:0}.chem-mini-element{display:grid;grid-template-rows:auto 1fr auto;min-width:0;padding:3px 4px;border:1px solid color-mix(in srgb,var(--periodic-color) 55%,transparent);border-radius:7px;color:#f6fffc;background:linear-gradient(135deg,color-mix(in srgb,var(--periodic-color) 22%,transparent),#ffffff09);text-align:left;box-shadow:inset 0 0 0 1px #ffffff06}.chem-mini-element:hover,.chem-mini-element.selected{border-color:color-mix(in srgb,var(--periodic-color) 88%,#5eead4);background:linear-gradient(135deg,color-mix(in srgb,var(--periodic-color) 35%,transparent),#5eead41a);transform:translateY(-1px)}.chem-mini-element span{color:#a7b2ad;font-size:.55rem;font-weight:850;line-height:1}.chem-mini-element strong{color:color-mix(in srgb,var(--periodic-color) 68%,#ffffff);font-size:1rem;line-height:1}.chem-mini-element small{min-width:0;overflow:hidden;color:#cbd5d1;font-size:.48rem;font-weight:800;line-height:1;text-overflow:ellipsis;white-space:nowrap}.app-shell.light .chem-element-picker-trigger{border-color:#18221e1a;color:#34433d;background:#18221e0a}.app-shell.light .chem-element-dropdown{border-color:#0d94882e;background:#fffffff2;box-shadow:0 24px 56px #1f29372e}.app-shell.light .chem-element-search{border-color:#18221e1a;color:#0f766e;background:#18221e0a}.app-shell.light .chem-element-search input{color:#20302a}.app-shell.light .chem-mini-element{color:#20302a;background:linear-gradient(135deg,color-mix(in srgb,var(--periodic-color) 18%,transparent),#ffffffb8)}.app-shell.light .chem-mini-element span,.app-shell.light .chem-mini-element small{color:#61706a}.pubchem-title-line strong{min-width:0;overflow-wrap:anywhere}.pubchem-title-line a{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border:1px solid rgba(94,234,212,.2);border-radius:8px;color:#99f6e4;background:#14b8a614}.app-shell.light .pubchem-title-line a{border-color:#0d94882e;color:#0f766e}.pro-property-grid{grid-template-columns:1fr}.synonym-row{margin-top:2px}.warning-card{border-color:#fbbf2442;background:#fbbf2412}@media(max-width:1100px){.composition-workspace,.chem-lab-viewport-row{grid-template-columns:1fr}.chem-lab-timeline-rail{height:auto;max-height:none;overflow:visible}.chem-lab-timeline-rail .reaction-timeline{flex:none;max-height:280px}.chemistry-lab-panel{max-height:none}}@media(max-width:560px){.reaction-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reaction-target-grid,.composition-hero,.chemistry-metric-grid,.property-grid,.chem-viewport-controls{grid-template-columns:1fr}.chem-element-picker,.chem-element-picker-trigger{width:100%}.chem-element-dropdown{right:auto;left:0;width:calc(100vw - 38px)}.chem-mini-periodic{grid-template-columns:repeat(auto-fill,minmax(45px,1fr));grid-auto-rows:42px;min-width:0}.visuals-popover{top:96px;right:10px;width:calc(100vw - 20px);max-height:calc(100vh - 112px)}.composition-workspace .viewport-camera-settings,.viewport-chem-search{right:10px;width:calc(100% - 20px);max-width:calc(100% - 20px)}.viewport-chem-search{top:62px}.viewport-chem-search .molecule-builder,.viewport-chem-search .builder-results,.chem-lab-under-viewport,.compact-search-suggestions{grid-template-columns:1fr}.compact-search-suggestions .chemistry-chip-row{justify-content:flex-start}.chem-segmented-control{width:100%}.chem-segmented-control button{flex:1}}
