/* Forest light: a bounded dark canvas inside the existing light learning shell. */
.fx-lab{min-width:0}.fx-scene{position:relative;min-height:330px;overflow:hidden;background:#172e28;color:#edf2d4;isolation:isolate;border-radius:3px}.fx-art{position:relative;height:330px;display:grid;place-items:center;padding:35px}.fx-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:30px 30px;pointer-events:none}.fx-orb{position:absolute;width:130px;height:130px;border-radius:50%;background:#d8b170;left:12%;top:12%}.fx-orb-b{background:#688d76;width:170px;height:170px;left:auto;right:8%;top:auto;bottom:9%}.fx-object{position:relative;width:220px;max-width:100%;height:210px;display:flex;flex-direction:column;justify-content:center;gap:17px;padding:25px;background:#335843;border:1px solid #b4c99a66;border-radius:20px;z-index:1}.fx-object strong{font-size:32px;line-height:1.25;font-weight:500;letter-spacing:1px}.fx-overline{font-size:9px;letter-spacing:2px}.fx-small{font-size:11px}.fx-scene-label{position:absolute;bottom:12px;left:17px;z-index:2;font:9px/1.5 monospace;letter-spacing:1.5px;color:#b4c8b8}.fx-controls{padding:18px 20px;background:#edf2e7;border-top:1px solid var(--line);display:grid;gap:10px}.fx-range-label{display:flex;justify-content:space-between;gap:12px;font-size:13px}.fx-value{font-family:monospace;font-weight:600}.fx-range{width:100%;min-width:0;min-height:32px;accent-color:#456d4e;cursor:pointer}.fx-actions{display:flex;gap:8px;flex-wrap:wrap}.fx-actions button{min-height:42px}.fx-select-label{display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:12px}.fx-select{max-width:65%;padding:9px;border:1px solid #b5c7a8;border-radius:6px;background:#fbfcf4;color:#294131}.fx-note{font-size:13px;line-height:1.85;margin:0;padding:16px 20px;min-height:75px;color:#496345;background:#f5f7ef}.fx-lab button:focus-visible,.fx-lab input:focus-visible,.fx-lab select:focus-visible{outline:3px solid #bd8c38;outline-offset:3px}.fx-glass .fx-object{background:#dfffe91a;border-color:#efffde66;box-shadow:0 15px 40px #0003}.fx-soft,.fx-layers{background:#d6e1cd;color:#304831}.fx-soft .fx-orb,.fx-layers .fx-orb{display:none}.fx-soft .fx-object,.fx-layers .fx-object{background:#d6e1cd;border:0}.fx-soft .fx-scene-label,.fx-layers .fx-scene-label{color:#47634b}.fx-glow .fx-object{border:1px solid #c6ed99;background:#1b372e}.fx-spotlight .fx-orb,.fx-gradient .fx-orb{opacity:.2}.fx-blend .fx-object,.fx-duotone .fx-object{isolation:isolate;overflow:hidden;border:0;padding:0;background:#f4eacc}.fx-color{position:absolute;border-radius:50%;width:155px;height:155px;top:27px;left:-5%;background:#d79b46}.fx-color-b{left:45%;background:#478d86}.fx-blend-word{position:relative;z-index:2;text-align:center;letter-spacing:5px;color:#152f27;font-weight:700;pointer-events:none}.fx-duotone .fx-color{inset:0;width:100%;height:100%;border-radius:0;background:#db9855;mix-blend-mode:multiply}.fx-duotone .fx-color-b{background:#456d79;mix-blend-mode:screen}.fx-clip .fx-object,.fx-reveal .fx-object{background:linear-gradient(125deg,#456f55,#273d34);border-radius:0}.fx-mask .fx-object{background:#bfcf9c;color:#223a2a}.fx-textfill .fx-object{background:#19392e;border:0;align-items:center}.fx-filled-text{font-size:62px!important;line-height:1.1!important;background:linear-gradient(90deg,#ffda96,#82d1b4,#f5edd4,#ffda96);background-size:250% 100%;background-clip:text;-webkit-background-clip:text}.fx-flip .fx-object{transform-style:preserve-3d;background:transparent;border:0;padding:0}.fx-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;gap:25px;align-items:center;justify-content:center;background:#52775c;border:1px solid #c5d6a7;border-radius:18px}.fx-back{transform:rotateY(180deg);background:#8a673b;color:#fff3d9}.fx-face small{font-size:11px;letter-spacing:2px}.fx-parallax .fx-object{width:100%;height:230px;background:transparent;border:0;padding:0}.fx-depth{position:absolute;inset:10% -10% auto;height:150px;display:flex;justify-content:center;padding-top:20px;background:#476e61;clip-path:polygon(0 40%,20% 10%,40% 40%,65% 0,100% 40%,100% 100%,0 100%);font-size:13px}.fx-depth.mid{top:35%;background:#72916c}.fx-depth.near{top:60%;background:#bccb89;color:#1c3b29}.fx-easing .fx-object{width:100%;height:180px;border:0;background:transparent;gap:40px;padding:0}.fx-lane{position:relative;height:35px;border-bottom:1px solid #b7c49777}.fx-lane small{position:absolute;top:-19px;font-size:11px}.fx-runner{position:absolute;top:5px;left:calc(100% - 24px);width:24px;height:24px;background:#d9c089;border-radius:50%}.fx-runner.curve{background:#a9d3b0}.fx-stagger .fx-object{background:transparent;border:0;padding:0;height:auto}.fx-item{display:block;padding:16px 20px;background:#55765b;border:1px solid #afc69866;border-radius:9px;font-size:15px}.fx-ripple .fx-object{background:transparent;border:0;padding:0}.fx-ripple-target{position:relative;isolation:isolate;overflow:hidden;min-height:90px;width:100%;background:#b8ce94;color:#203c2c;border:1px solid #d9e9c7;border-radius:14px;font:inherit;cursor:pointer}.fx-ripple-target:active{background:#e0d3a8}.fx-wave{position:absolute;width:20px;height:20px;border-radius:50%;background:#fff6d5;pointer-events:none}.fx-morph .fx-object{background:#a8c78f;color:#183b2b;align-items:center;text-align:center}.fx-preview{position:relative;width:100%;height:100%;display:grid;place-items:center;background:#243f34;color:#dbe5b8;overflow:hidden}.fx-preview i{position:absolute;width:110px;height:110px;border:1px solid #d8c29166;border-radius:50%;background:linear-gradient(120deg,#d5ae6355,#83a18c44);transform:translate(35px,15px)}.fx-preview b{font-size:47px;z-index:1;font-weight:400;text-shadow:0 0 17px #d5eab833}.fx-preview small{position:absolute;bottom:12px;left:12px;font:7px monospace;letter-spacing:1px;color:#adc2a7}.fx-preview-soft,.fx-preview-layers{background:#cedbc1;color:#4e6e49}.fx-preview-soft b{padding:5px 20px;border-radius:12px;box-shadow:8px 8px 16px #a8b99c,-8px -8px 16px #eaf7dd}.fx-preview-gradient,.fx-preview-textfill{background:linear-gradient(130deg,#2c5545,#9a9a65,#d6b77e)}.fx-preview-glow b{color:#daffad;text-shadow:0 0 18px #d2ff9d}.fx-preview-tilt i,.fx-preview-perspective i{border-radius:6px;transform:perspective(200px) rotateY(35deg)}.spotlight-demo.fx-lab{padding:0}.spotlight-demo .fx-scene,.spotlight-demo .fx-art{min-height:290px;height:290px}.fx-learning-note{padding:18px 22px;border-left:3px solid #8ba465;background:#edf2e6;font-size:13px;line-height:1.9;margin:0 0 28px}.fx-learning-note b{display:block;margin-bottom:4px}.fx-disabled .fx-orb{opacity:.3}
@media(max-width:680px){#domains{flex-wrap:wrap}.domain-button{flex:1 1 42%}.domain-button:last-of-type{flex-basis:100%}.fx-art{padding:35px 20px}.fx-scene,.fx-art{height:310px;min-height:310px}.fx-controls{padding:16px}.fx-note{padding:14px 16px;font-size:12px}.fx-object{width:200px;height:200px}.fx-object strong{font-size:28px}.fx-preview b{font-size:36px}.fx-preview small{font-size:6px;left:7px}.fx-select-label{font-size:12px}}
