*{box-sizing:border-box}html,body,#app,main{width:100%;height:100%;margin:0;overflow:hidden}body{color:#e9eee8;background:#080f12;font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}#scene{touch-action:none;position:absolute;inset:0}canvas{outline:none;width:100%;height:100%;display:block}header{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:32px;left:38px;right:38px}.identity .eyebrow{letter-spacing:.26em;color:#d3ded8;font-family:Georgia,serif;font-size:14px}h1{color:#f1f3ec;margin:7px 0 0;font:25px/1.4 Georgia,serif}nav{pointer-events:auto;background:#0a1318c9;border:1px solid #ffffff24;border-radius:8px;gap:3px;padding:5px;display:flex}nav a{color:#a5b4b5;border-radius:5px;padding:12px 17px;font-size:14px;text-decoration:none}nav a[aria-current]{color:#e7f2e9;background:#d2e9dd12}.dot,.live-dot{vertical-align:middle;background:#afd7ac;border-radius:50%;width:5px;height:5px;margin-left:7px;display:inline-block}.scene-note{color:#a6b8b5;pointer-events:none;align-items:center;gap:10px;font-size:13px;display:flex;position:absolute;top:120px;left:38px}.scene-note .live-dot{margin:0}.note-divider{opacity:.3}.help{pointer-events:none;position:absolute;bottom:145px;left:38px}.help>span{letter-spacing:.19em;color:#778e8c;font-size:11px}.help p{color:#abbbb5;margin:10px 0;font-size:13px;line-height:1.8}footer{white-space:nowrap;gap:12px;max-width:calc(100% - 24px);display:flex;position:absolute;bottom:49px;left:50%;transform:translate(-50%)}.views,.actions{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b151ce6;border:1px solid #bddcc329;border-radius:9px;align-items:center;gap:2px;padding:5px;display:flex}button{color:#adbeb9;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:11px 14px;font:14px Arial,sans-serif}button.active{color:#f0f5eb;background:#aacbaf17;border-color:#b3d9b633}button:hover,a:hover{color:#fff;background:#b9d8c51c}button:focus-visible,a:focus-visible{outline-offset:3px;outline:2px solid #b0dfc8}button:disabled{opacity:.55;cursor:default}.divider{background:#ffffff20;width:1px;height:21px;margin:0 6px}.bottom-note{text-align:center;letter-spacing:.08em;color:#748b87;pointer-events:none;width:100%;font-size:11px;position:absolute;bottom:22px}.bottom-note span{padding:0 10px}#loading{text-align:center;background:#080f12;flex-direction:column;justify-content:center;align-items:center;gap:20px;font:22px Georgia,serif;display:flex;position:absolute;inset:0}#loading span{background:#b3d9b6;width:32px;height:1px;animation:1s infinite alternate grow}#loading small{max-width:350px;font:14px/1.6 Arial,sans-serif}@keyframes grow{to{opacity:.2;width:110px}}@media (width<=850px){header{top:22px;left:22px;right:22px}.identity .eyebrow{font-size:11px}h1{font-size:20px}nav a{padding:11px;font-size:12px}.scene-note{top:105px;left:22px}.help{display:none}footer{flex-direction:column;align-items:center;gap:7px;bottom:40px}button{padding:10px 12px;font-size:13px}.bottom-note{font-size:10px;bottom:15px}}@media (width<=500px){header{align-items:flex-start;gap:12px}h1{font-size:18px}.identity .eyebrow{letter-spacing:.15em;font-size:9px}nav{gap:0;padding:3px}nav a{padding:10px 8px;font-size:11px}.dot{display:none}.scene-note{gap:7px;font-size:11px;top:97px}.actions button{padding:10px 9px;font-size:12px}#reset{display:none}}.bottom-note{color:#b0c0ba;text-shadow:0 1px 4px #000}.help{text-shadow:0 1px 4px #000}[hidden]{display:none!important}.learn-toggle{color:#d5e8d7;z-index:4;background:#112322e8;border:1px solid #b2d4c64d;font-size:13px;position:absolute;top:153px;left:38px}.learning-open #scene{right:390px}.learning-open header{right:412px}.learning-open header nav{display:none}.learning-open footer{flex-direction:column;align-items:center;gap:5px;max-width:calc(100% - 414px);bottom:38px;left:calc(50% - 195px)}.learning-open .bottom-note{width:calc(100% - 390px);bottom:12px}.learning-open .help{display:none}#learning{overscroll-behavior:contain;z-index:6;scrollbar-width:thin;color:#ccdcd5;background:#0c191df5;border-left:1px solid #bbd9cd26;width:390px;position:absolute;top:0;bottom:0;right:0;overflow-y:auto}.learning-top{justify-content:space-between;align-items:center;padding:18px 20px 10px;display:flex}.learning-top .eyebrow{letter-spacing:.18em;color:#a4c7b7;font-size:10px}.learning-top button{padding:4px 10px;font-size:24px}.lesson-tabs{-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:9px;grid-template-columns:1fr 1fr;gap:3px;margin:0 18px;padding:4px;display:grid}.lesson-tabs button{text-align:left;white-space:normal;padding:10px 8px;font-size:12px}.lesson-tabs button[aria-pressed=true]{color:#e5f3de;background:#bdd9b721;border-color:#bdd9b755}.lesson-body{padding:22px}.lesson-position{color:#8bada2;justify-content:space-between;font-size:11px;display:flex}.lesson-body h2{margin:12px 0;font:25px/1.16 Georgia,serif}.lesson-body p{color:#bacfc5;font-size:14px;line-height:1.65}.lesson-steps{flex-wrap:wrap;gap:5px;margin:20px 0;padding:0;list-style:none;display:flex}.lesson-steps button{border:1px solid #b2d4c62b;min-width:36px;padding:8px;font-size:12px}.lesson-steps button span{display:none}.lesson-steps button[aria-current]{color:#efffe5;background:#b6dca322;border-color:#b6dca3}.lesson-steps button:focus-visible span{margin-left:8px;display:inline}.lesson-body details{border-top:1px solid #a1c0b525;padding:12px 0;font-size:12px;line-height:1.6}.lesson-body summary{cursor:pointer;color:#d6e4db;min-height:24px}.lesson-body details a{color:#aecde3;padding:5px 0;display:block}.lesson-body details p{font-size:12px}.lesson-body .fine,.learning-limit{color:#93ada2;font-size:11px;line-height:1.6}.learn-action{text-align:center;background:#a0c19715;border:1px solid #a9c3b64d;width:100%}.learn-pair,.lesson-navigation{gap:6px;margin:12px 0;display:flex}.learn-pair button,.lesson-navigation button{background:#afcdba10;border:1px solid #afcdba30;flex:1;padding:10px 7px;font-size:12px}.learn-pair button[aria-pressed=true]{color:#e8ffda;border-color:#c8e6b7}.learn-range{color:#c8ddd0;margin:15px 0;font-size:12px;display:block}.learn-range output{float:right;color:#b5db9b}.learn-range input{accent-color:#b5db9b;width:100%;min-height:24px;margin:12px 0;display:block}.learn-field{margin:14px 0;font-size:12px;display:block}.learn-field select{color:#d7e6dc;background:#11232a;border:1px solid #a3c4b540;border-radius:5px;width:100%;margin-top:7px;padding:10px;font-size:13px;display:block}.lab-clock{color:#c9ddbb;margin-top:15px;font-size:12px}#lab-readings table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:10px 0;font-size:11px}#lab-readings th,#lab-readings td{text-align:right;border-bottom:1px solid #aecdbc1c;padding:7px 3px}#lab-readings th:first-child{text-align:left;font-weight:400}#lab-plot svg{background:#061216;border-radius:5px;width:100%}#lab-plot text{fill:#9eb4ae;font:10px Arial}.teaching-key,.gas-key{color:#91cedd;margin:12px 0;font-size:11px}.teaching-key i{clip-path:polygon(0 35%,55% 35%,55% 0,100% 50%,55% 100%,55% 65%,0 65%);background:#8ad5e4;width:15px;height:9px;margin-right:7px;display:inline-block}.gas-key{justify-content:space-between;display:flex}.gas-key span+span{color:#dec795}.learning-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.learning-tag{color:#dcf4dc;pointer-events:auto;white-space:nowrap;background:#0a2025e6;border:1px solid #a8cebd8c;border-radius:16px;padding:7px 9px;font-size:11px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 8px #0008}.learning-tag:hover{background:#274d49}@media (width<=850px){.learn-toggle{top:129px;left:22px}.learning-open #scene{bottom:49%;right:0}.learning-open header{top:12px;left:16px;right:16px}.learning-open header h1{font-size:17px}.learning-open .identity .eyebrow{font-size:9px}.learning-open .scene-note{font-size:10px;top:72px;left:16px}.learning-open .learn-toggle{max-width:155px;padding:9px;font-size:11px;top:12px;left:auto;right:12px}.learning-open #learning{border-top:1px solid #bbd9cd40;border-left:0;width:100%;top:51%}.learning-open footer,.learning-open .bottom-note{display:none}.learning-top{padding:8px 16px 4px}.lesson-tabs{grid-template-columns:repeat(3,1fr);margin:0 12px}.lesson-tabs button{padding:8px 5px;font-size:11px}.lesson-body{padding:16px 20px}.lesson-body h2{font-size:23px}.lesson-steps{margin:12px 0}.learning-tag{padding:6px 8px;font-size:10px}.learning-open .scene-note{display:none}}.learn-scene-tools{gap:5px;margin:12px 18px 0;display:flex}.learn-scene-tools button{background:#c5dbc40a;border:1px solid #b2d4c629;flex:1;padding:8px 4px;font-size:11px}.explore-toggle{z-index:4;color:#d5e8d7;background:#112322ed;border:1px solid #b2d4c64d;font-size:13px;position:absolute;top:153px;left:258px}.learning-open .explore-toggle{display:none}#exploration{z-index:5;overscroll-behavior:contain;scrollbar-width:thin;background:#0b1b20f5;border:1px solid #abcdbc40;border-radius:12px;width:310px;max-height:calc(100% - 345px);padding:16px 20px;position:absolute;bottom:145px;left:24px;overflow-y:auto;box-shadow:0 12px 36px #0005}.explore-heading{justify-content:space-between;align-items:center;display:flex}.explore-heading .eyebrow{letter-spacing:.2em;color:#b3d3bf;font-size:10px}.explore-heading button{padding:0 6px;font-size:24px}#exploration p{color:#bdcfc8;font-size:12px;line-height:1.6}#exploration h2{margin:16px 0 6px;font:22px Georgia,serif}#exploration .organism-name{color:#96b3a5;margin-top:0;font-style:italic}#exploration details{border-top:1px solid #b2d4c630;margin-top:14px;padding-top:12px;font-size:12px;line-height:1.7}#exploration summary{cursor:pointer}#exploration a{color:#b8d8e8}#observed-behavior{color:#d1e8ae!important}.selection-ring{pointer-events:none;border:1px solid #d3ebbd;border-radius:50%;width:48px;height:48px;position:absolute;top:0;left:0;box-shadow:0 0 0 4px #b8dfb015}.magnifier-on:after{content:"2.4×";left:var(--lens-x);top:var(--lens-y);width:var(--lens-size);height:var(--lens-size);pointer-events:none;color:#e3f1e9;text-shadow:0 1px 4px #000;border:1px solid #c6e2db;border-radius:50%;justify-content:center;align-items:flex-end;padding-bottom:8px;font:11px Arial;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #0a151aaa}.prediction-options{gap:7px;margin:16px 0;display:grid}.prediction-options button{text-align:left;border:1px solid #a9c7b840}.prediction-options button[aria-pressed=true]{color:#efffe4;background:#c6e8b524;border-color:#c6e8b5}#challenge-result h3{margin-top:20px;font:21px/1.3 Georgia,serif}@media (width<=850px){.explore-toggle{padding:10px;font-size:12px;top:129px;left:233px}#exploration{width:calc(100% - 24px);max-width:350px;max-height:42%;padding:12px 16px;bottom:135px;left:12px}}@media (width<=500px){.learn-toggle{padding:10px;font-size:11px;left:14px}.explore-toggle{padding:10px 8px;font-size:11px;left:206px}}.explore-scene-tools{gap:4px;margin:10px 0;display:flex}.explore-scene-tools button{border:1px solid #b2d4c62b;flex:1;padding:8px 4px;font-size:10px}@media (width<=850px){.exploration-open #scene{bottom:47%}.exploration-open #exploration{border-left:0;border-right:0;border-radius:0;width:100%;max-width:none;max-height:none;inset:53% 0 0}.exploration-open footer,.exploration-open .bottom-note,.exploration-open .scene-note,.exploration-open .learn-toggle{display:none}.exploration-open header{top:12px;left:16px;right:16px}.exploration-open header nav{display:none}.exploration-open header h1{font-size:17px}.exploration-open .identity .eyebrow{font-size:9px}.exploration-open .explore-toggle{top:12px;left:auto;right:12px}}#fullscreen{z-index:12;right:max(18px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));background:#0b191fed;border:1px solid #abcdbc55;min-height:40px;padding:10px 12px;font-size:12px;position:absolute}:-webkit-any(main:fullscreen,main:-webkit-full-screen,main.aquarium-fullscreen){background:#080f12;width:100vw;height:100dvh;position:fixed;inset:0}:is(main:fullscreen,main:fullscreen,main.aquarium-fullscreen){background:#080f12;width:100vw;height:100dvh;position:fixed;inset:0}main.aquarium-fullscreen header,main.aquarium-fullscreen .help,main.aquarium-fullscreen .scene-note,main.aquarium-fullscreen .bottom-note{display:none}main.aquarium-fullscreen .learn-toggle,main.aquarium-fullscreen .explore-toggle{top:max(14px,env(safe-area-inset-top))}main.aquarium-fullscreen footer{bottom:max(18px,env(safe-area-inset-bottom))}main.aquarium-fullscreen #fullscreen{bottom:auto;top:max(14px,env(safe-area-inset-top))}@media (width<=850px){#fullscreen{padding:8px 10px;font-size:11px;bottom:8px}.bottom-note{display:none}main.aquarium-fullscreen .learn-toggle{top:64px;left:14px}main.aquarium-fullscreen .explore-toggle{top:14px;left:14px}main.aquarium-fullscreen #exploration{max-height:calc(100% - 160px)}main.aquarium-fullscreen.exploration-open #exploration{max-height:none}footer{bottom:56px}}.store-showroom{color:#e9f8fc;background:#062750}.store-showroom #loading{color:#f0fbff;text-shadow:0 2px 12px #00101f;background:#062750}.store-showroom #loading span{background:#40d9ff}.store-showroom header,.store-showroom .scene-note{text-shadow:0 2px 8px #00101f}.store-showroom h1{color:#f0fbff}.store-showroom .identity .eyebrow{color:#b7edff}.store-showroom nav,.store-showroom .views,.store-showroom .actions,.store-showroom .learn-toggle,.store-showroom .explore-toggle,.store-showroom #fullscreen{-webkit-backdrop-filter:none;backdrop-filter:none;background:#071a27ed;border-color:#74cdeb55}.store-showroom button,.store-showroom nav a{color:#c8e5f4}.store-showroom button.active,.store-showroom button[aria-pressed=true],.store-showroom .lesson-steps button[aria-current]{color:#e9faff;background:#40d9ff22;border-color:#40d9ff88}.store-showroom button:hover,.store-showroom a:hover{color:#fff;background:#796ce12e}.store-showroom :focus-visible{outline-color:#40d9ff}.store-showroom .scene-note,.store-showroom .help p,.store-showroom .bottom-note{color:#b8d3e3}.store-showroom .help>span{color:#a0c1d7}.store-showroom .live-dot{background:#40d9ff}.store-showroom #learning,.store-showroom #exploration{color:#dff4ff;background:#071a27f5;border-color:#74cdeb55}.store-showroom .lesson-body p,.store-showroom #exploration p{color:#b8d3e3}.store-showroom .learning-tag{color:#e9faff;background:#08273deb;border-color:#74cdeb88}.store-showroom .selection-ring{border-color:#40d9ff;box-shadow:0 0 0 4px #40d9ff15}:is(.store-showroom main:fullscreen,.store-showroom main.aquarium-fullscreen){background:#062750}.chemistry-summary{z-index:4;color:#c1d7dd;background:#081c2ee6;border:1px solid #accbd12e;max-width:calc(100% - 44px);font-size:11px;position:absolute;top:202px;left:38px}.learning-open .chemistry-summary,.exploration-open .chemistry-summary{display:none}@media (width<=850px){.chemistry-summary{padding:8px;font-size:10px;top:172px;left:22px}}main #scene{top:var(--toolbar-space,130px)}main .aquarium-header{z-index:8;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px 22px;display:grid;top:24px;left:28px;right:28px}.aquarium-header .primary-tools{pointer-events:auto;align-items:stretch;gap:8px;display:flex}.aquarium-header .primary-tools>button{text-align:center;color:#042835;min-width:0;max-width:200px;min-height:50px;text-shadow:none;background:linear-gradient(140deg,#79edee,#42cadd);border:1px solid #a5f8ff;border-radius:9px;flex:1;padding:11px 14px;font-size:13px;font-weight:700;line-height:1.25;display:block;position:static;box-shadow:0 3px 14px #08baca30}.aquarium-header .primary-tools>button:hover{color:#03212e;background:#b4faff;box-shadow:0 4px 18px #40d9ff55}.aquarium-header .primary-tools>button[aria-expanded=true]{color:#003347;background:#d4ffff;border-color:#fff;box-shadow:0 0 0 2px #40d9ff55}.aquarium-header .primary-tools>button:focus-visible{outline-offset:3px;outline:3px solid #fff}.primary-tools .chemistry-preview{white-space:nowrap;font-variant-numeric:tabular-nums;min-height:12px;margin-top:4px;font-size:10px;font-weight:400;display:block}.aquarium-header .scene-note{flex-wrap:wrap;grid-column:1/-1;min-width:0;font-size:11px;line-height:1.4;position:static}.aquarium-header nav{justify-self:end}.aquarium-header nav a{padding:10px;font-size:11px}main.learning-open .aquarium-header{grid-template-columns:1fr;gap:8px;right:410px}main.learning-open .primary-tools>button,main.exploration-open .primary-tools>button{display:block}main.aquarium-fullscreen .aquarium-header{top:max(12px,env(safe-area-inset-top));grid-template-columns:1fr;display:grid;right:150px}main.aquarium-fullscreen .aquarium-header .identity,main.aquarium-fullscreen .aquarium-header nav,main.aquarium-fullscreen .aquarium-header .scene-note{display:none}@media (width<=1100px){main .aquarium-header{grid-template-columns:auto 1fr;gap:10px 16px}.aquarium-header .primary-tools{grid-area:2/1/auto/-1}.aquarium-header nav{grid-area:1/2}.aquarium-header .scene-note{grid-row:3}.aquarium-header .primary-tools>button{max-width:none}}@media (width<=850px){main .aquarium-header,main.learning-open .aquarium-header,main.exploration-open .aquarium-header{grid-template-columns:auto 1fr;gap:9px 10px;top:14px;left:14px;right:14px}.aquarium-header .primary-tools{gap:6px}.aquarium-header .primary-tools>button{min-height:46px;padding:9px 7px;font-size:11px}.primary-tools .chemistry-preview{font-size:8px}.aquarium-header .scene-note{gap:6px;font-size:10px}.learning-open .aquarium-header .primary-tools,.exploration-open .aquarium-header .primary-tools{grid-row:2}.learning-open .aquarium-header .scene-note,.exploration-open .aquarium-header .scene-note{display:none}main.aquarium-fullscreen .aquarium-header{grid-template-columns:1fr;top:56px;right:14px}.aquarium-fullscreen .primary-tools{grid-row:1}.aquarium-header .identity .eyebrow{font-size:9px}.aquarium-header h1{font-size:19px}}@media (height<=500px) and (width<=850px){main .aquarium-header{top:8px}.aquarium-header .identity,.aquarium-header nav,.aquarium-header .scene-note{display:none}.aquarium-header .primary-tools{grid-row:1}main.aquarium-fullscreen .aquarium-header{top:8px;right:130px}}.effects-control{pointer-events:auto;color:#b4d3ce;align-items:center;gap:5px;margin-left:8px;font-size:10px;display:inline-flex}.effects-control select{color:#ddf6f4;max-width:150px;font:inherit;cursor:pointer;background:#092933;border:1px solid #41626a;border-radius:5px;padding:3px 6px}.effects-control select:focus-visible{outline-offset:2px;outline:2px solid #8cedee}.filter-loading{z-index:5000;color:#e4f2eb;background:#07151df5;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.filter-loading button{color:inherit;font:inherit;background:#173c49;border:1px solid #73b0b7;border-radius:8px;padding:12px 22px}#observe{color:#bdf8ec;font-weight:600}#observe[aria-pressed=true]{color:#fff;background:#19505b}.observation-caption{text-align:center;pointer-events:none;color:#e2f4ed;letter-spacing:.04em;text-shadow:0 2px 5px #000;font-size:12px;position:absolute;bottom:125px;left:20px;right:20px}.observing .aquarium-header,.observing footer,.observing .help,.observing .bottom-note,.observing #fullscreen{transition:opacity .7s}.observation-idle .aquarium-header,.observation-idle footer,.observation-idle .help,.observation-idle .bottom-note,.observation-idle #fullscreen{opacity:0}.observation-idle :has(:focus-visible){opacity:1}@media (width<=850px){.views{flex-wrap:wrap;justify-content:center}.observation-caption{font-size:10px;bottom:165px}}@media (prefers-reduced-motion:reduce){.observing .aquarium-header,.observing footer,.observing .help,.observing .bottom-note,.observing #fullscreen{transition:none}}.store-showroom .aquarium-header nav{text-shadow:none;background:#081c2b;border:1px solid #244058;border-radius:12px;flex-wrap:wrap;gap:4px;padding:5px;font-family:Inter,Segoe UI,system-ui,sans-serif}.store-showroom .aquarium-header nav a{color:#c6fbf3;white-space:nowrap;background:#123549;border:1px solid #4db7c7;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:13px 18px;font-size:13px;font-weight:400;display:flex}.store-showroom .aquarium-header nav a:hover{color:#fff;background:#205166}.store-showroom .aquarium-header nav a:focus-visible{outline-offset:4px;outline:2px solid #84eced}@media (width<=640px){.store-showroom .aquarium-header nav{grid-area:2/1/auto/-1;justify-self:stretch}.store-showroom .aquarium-header nav a{flex:1;padding:9px 10px;font-size:12px}.store-showroom .aquarium-header .primary-tools{grid-row:3}.store-showroom .aquarium-header .scene-note{grid-row:4}}
