.arduino-app,.arduino-admin{--ink: #17211e;--muted: #6e7d78;--line: #dfe8e4;--panel: #fff;--green: #087f6f;--green-dark: #06685c;--mint: #dff5ef;--gold: #f2b643;min-width:1180px;min-height:100vh;color:var(--ink);background:#eef3f1;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.arduino-app button,.arduino-app input,.arduino-app textarea,.arduino-admin button,.arduino-admin input,.arduino-admin textarea{font:inherit}.arduino-app button,.arduino-admin button{color:inherit;cursor:pointer}.arduino-topbar{min-height:74px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 18px;border-bottom:1px solid #dbe5e1;background:#fffffff7;box-shadow:0 3px 16px #2041380f;position:relative;z-index:80}.arduino-brand-group{display:flex;align-items:center;gap:7px;min-width:0}.arduino-brand{display:flex;align-items:center;gap:11px;padding:0;background:none;text-align:left}.arduino-brand img{width:50px;height:50px;flex:0 0 auto;object-fit:contain}.arduino-brand>span:last-child{display:grid;line-height:1}.arduino-brand strong{color:var(--ink);font-size:17px;font-weight:900;letter-spacing:0}.arduino-brand b{margin-top:6px;color:#7b718d;font-size:11px;letter-spacing:0}.arduino-navigation-wrap{position:relative}.arduino-header-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;color:#5f5585;background:#f1edff;transition:transform .13s ease,background .13s ease,box-shadow .13s ease}.arduino-header-icon:hover,.arduino-header-icon.active{color:#342e48;background:#fff0bf;box-shadow:0 7px 16px #503c281a;transform:translateY(-1px)}.arduino-navigation-menu{position:absolute;z-index:70;top:calc(100% + 9px);right:0;width:220px;display:grid;gap:5px;padding:9px;border:1px solid #e5dccf;border-radius:12px;background:#fffffffa;box-shadow:0 18px 44px #4333252e}.arduino-navigation-menu>span{padding:6px 8px 4px;color:#8a8196;font-size:10px;font-weight:950;letter-spacing:.12em}.arduino-navigation-menu button{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:8px;color:#5f5585;background:transparent;font-size:13px;font-weight:900;text-align:left}.arduino-navigation-menu button:hover,.arduino-navigation-menu button.active{color:#332d45;background:#f1edff}.arduino-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.arduino-top-actions>button,.score-pill{height:36px;display:flex;align-items:center;gap:6px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:11px;font-weight:800;white-space:nowrap}.arduino-top-actions .stage-pill{min-width:116px;justify-content:space-between}.score-pill{color:#89651d;border-color:#f0dbad;background:#fff9e9}.arduino-top-actions .icon-button{width:36px;justify-content:center;padding:0;color:#6f7a77}.arduino-top-actions .home-button{color:#5f5585;border-color:#ebe6fb;background:#f1edff}.arduino-top-actions .home-button:hover{color:#342e48;background:#e8e1ff}.arduino-mobile-tabs{display:none}.stage-picker{position:fixed;z-index:50;top:62px;right:18px;width:490px;max-height:calc(100vh - 90px);overflow:auto;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 20px 60px #18302a33}.stage-picker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.stage-picker-head button{width:28px;height:28px;border-radius:7px;background:#edf3f1;font-size:20px}.stage-picker section{padding:10px 0;border-top:1px solid #edf1ef}.stage-picker section h3{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:12px}.stage-picker section h3 span{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;color:#fff;font-size:10px}.stage-picker section h3 small{display:flex;align-items:center;gap:4px;margin-left:auto;color:#98a39f;font-size:8px;font-weight:700}.stage-picker section div{display:grid;grid-template-columns:1fr 1fr;gap:5px}.stage-picker section div button{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:7px;background:#f4f7f6;text-align:left;font-size:10px;font-weight:700}.stage-picker section div button.active{color:#fff;background:var(--green)}.stage-picker section div button.locked{color:#a4aeaa;background:#f6f8f7;cursor:not-allowed}.project-list{display:grid;gap:7px}.project-entry{display:grid;grid-template-columns:1fr 32px 32px;gap:5px}.project-entry>button{display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#f8faf9}.project-entry>button:first-child{display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;text-align:left}.project-list button span{display:grid;gap:3px}.project-list small{color:var(--muted)}.arduino-toast{position:fixed;z-index:100;top:80px;left:50%;transform:translate(-50%);padding:11px 18px;border:1px solid #b7dfd4;border-radius:999px;color:#076a5d;background:#ecfff9;box-shadow:0 10px 30px #0f41372e;font-size:12px;font-weight:800}.arduino-workbench{height:calc(100vh - 128px);min-height:600px;display:grid;grid-template-columns:230px minmax(500px,1fr) minmax(380px,36vw);gap:1px;background:#dbe5e1}.component-library,.circuit-column,.code-column{min-width:0;overflow:hidden;background:var(--panel)}.component-library{display:flex;flex-direction:column;padding:16px 13px 12px}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin:0 3px 12px}.panel-heading>div{display:grid;gap:2px}.tiny-label{color:var(--green);font-size:8px;font-weight:800;letter-spacing:.2em}.panel-heading h2{margin:0;font-size:15px}.panel-heading>svg{color:#96a5a0}.component-search{height:34px;display:flex;align-items:center;gap:7px;margin-bottom:11px;padding:0 9px;border:1px solid var(--line);border-radius:8px;color:#91a09b;background:#f6f9f8}.component-search input{width:100%;min-width:0;border:0;outline:0;color:var(--ink);background:transparent;font-size:10px}.component-list{display:grid;gap:5px;overflow-y:auto;padding-right:3px}.component-list>button{min-height:64px;display:grid;grid-template-columns:58px 1fr 15px;align-items:center;gap:8px;padding:6px 8px;border:1px solid transparent;border-radius:9px;background:#f7f9f8;text-align:left}.component-list>button:hover{border-color:#b9dfd5;background:#effaf7;transform:translate(2px)}.component-list>button>span:nth-child(2){display:grid;gap:3px}.component-list strong{font-size:10px}.component-list small{color:#93a09c;font-size:8px}.component-list>button>svg{color:#9ba7a3}.library-tip{display:flex;gap:8px;margin-top:auto;padding:10px;border-radius:9px;color:#6c623f;background:#fff9e9;font-size:9px;line-height:1.5}.library-tip svg{flex:0 0 auto;color:#d39b2e}.arduino-glyph{width:44px;height:34px;display:grid;place-items:center;border:2px solid #087f6f;border-radius:6px;color:#fff;background:#079989;box-shadow:inset 0 0 0 3px #ffffff24,0 2px 4px #143c322e;position:relative;font-size:8px}.arduino-glyph i{width:7px;height:7px;border:1px solid rgba(255,255,255,.9);border-radius:50%;position:absolute;top:4px;right:4px}.arduino-glyph.realistic-part{width:58px;height:42px;display:block;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none}.realistic-part svg{width:100%;height:100%;display:block;overflow:visible;filter:drop-shadow(0 2px 2px rgba(25,52,45,.22))}.uno-board{fill:#087c72;stroke:#075f58;stroke-width:2}.uno-edge{fill:none;stroke:#ffffff38;stroke-width:1}.uno-header rect{fill:#1c2525;stroke:#060a0a;stroke-width:.8}.uno-header circle{fill:#9a7644;stroke:#d4bb7b;stroke-width:.55}.uno-header .pin-glint{fill:#202827;stroke:none}.usb-port>path:first-child{fill:#aeb8b8;stroke:#747e7e;stroke-width:1.2}.usb-port>path:nth-child(2){fill:#d9dfdf;stroke:#8c9696;stroke-width:.7}.usb-port>path:nth-child(3){fill:#4b5555}.usb-port circle{fill:#697373}.power-jack>path{fill:#202525;stroke:#080b0b;stroke-width:1}.power-jack circle:first-of-type{fill:#0b0e0e;stroke:#3c4443;stroke-width:1.5}.power-jack circle:last-of-type{fill:#a4aaa8;stroke:#565e5c}.main-chip rect,.usb-chip rect{fill:#202424;stroke:#080a0a;stroke-width:1}.main-chip path,.usb-chip path{fill:none;stroke:#b8b9ac;stroke-width:1.6}.main-chip circle,.usb-chip circle{fill:#aaa}.crystal rect{fill:#c6cdcb;stroke:#747d7a}.crystal path{stroke:#eef1f0;stroke-width:.7}.reset rect:first-child{fill:#d6d9d6;stroke:#787e7a}.reset rect:last-child{fill:#b83c38;stroke:#76221f}.uno-leds circle{stroke-width:.7}.uno-leds .uno-power-led{fill:#7edc79;stroke:#d9ffd6;filter:drop-shadow(0 0 1.5px #65d85f)}.uno-leds .uno-tx-led{fill:#8a7844;stroke:#b8a86e}.uno-leds .uno-built-in-led{fill:#625b32;stroke:#9a8d45;transition:fill .12s ease,filter .12s ease}.simulation-led-active .uno-built-in-led{fill:#ffe45c;stroke:#fff4a8;filter:drop-shadow(0 0 2px #ffe34d) drop-shadow(0 0 5px #ffc928)}.simulation-led-active.simulation-led-blinking .uno-built-in-led{animation:uno-led-blink var(--led-blink-duration,2s) steps(1,end) infinite}.capacitors circle:first-child{fill:#c4cbc8;stroke:#68706d;stroke-width:.8}.capacitors circle:last-child{fill:#4b5451;stroke:none}.uno-silk{fill:#e3f4ef;stroke:#dceeea;stroke-width:.65;font-family:Arial,sans-serif;font-size:4px;letter-spacing:.2px}.uno-silk text{stroke:none}.uno-silk .uno-mark{font-size:10px;font-weight:800;letter-spacing:1px}.board-screws circle:first-child{fill:#dbe9e4}.board-screws circle:last-child{fill:#406f68}.breadboard-shadow{fill:#202c2933}.breadboard-body{fill:#f9faf8;stroke:#c7cbc7;stroke-width:1.2}.breadboard-groove{fill:none;stroke:#d4d7d3;stroke-width:1}.breadboard-groove:nth-of-type(1){stroke:#b8bdb8}.rail-red{fill:none;stroke:#e55251;stroke-width:.9}.rail-blue{fill:none;stroke:#4a79c3;stroke-width:.9}.rail-marks{font:700 5px Arial,sans-serif;fill:#7b817e}.breadboard-holes circle{fill:#555c59;stroke:#b9bdb9;stroke-width:.45}.breadboard-labels{fill:#9a9e9a;font:4px Arial,sans-serif}.breadboard-brand{fill:#afb2ae;font:700 5px Arial,sans-serif;letter-spacing:.4px}.glyph-led{width:22px;height:29px;justify-self:center;border:0;border-radius:50% 50% 5px 5px;color:#fff;background:#ef4242;box-shadow:inset -5px -3px #6400002e,0 0 10px #ef424247}.glyph-led:after{content:"";width:2px;height:11px;background:#777;position:absolute;bottom:-10px}.glyph-rgb-led{width:25px;height:29px;justify-self:center;border:0;border-radius:50% 50% 4px 4px;background:conic-gradient(#e44848,#58b46e,#488cdd,#e44848)}.glyph-resistor{height:15px;border:0;color:#5e391e;background:repeating-linear-gradient(90deg,#d9ae62 0,#d9ae62 8px,#a54431 9px,#a54431 12px,#d9ae62 13px,#d9ae62 17px,#333 18px,#333 21px);box-shadow:none}.glyph-button{width:34px;height:29px;border-color:#333;color:#fff;background:#555}.glyph-button:before{content:"";width:15px;height:8px;border-radius:3px;background:#d94949;position:absolute;top:-4px}.glyph-potentiometer{width:33px;height:33px;border-color:#517e93;background:#67a5c2;border-radius:50%}.glyph-piezo{width:34px;height:34px;border-color:#252c2b;color:#fff;background:#3a4542;border-radius:50%}.glyph-servo{border-color:#31579b;background:#477ac9}.glyph-ultrasonic{border-color:#358c8b;background:#43aead}.glyph-ultrasonic:before,.glyph-ultrasonic:after{content:"";width:12px;height:12px;border:2px solid #d7e7e5;border-radius:50%;position:absolute;left:4px}.glyph-ultrasonic:after{left:auto;right:4px}.glyph-temperature{border-color:#463c34;background:#60544b}.glyph-light-sensor{width:31px;height:31px;border-color:#a97928;color:#594515;background:radial-gradient(circle,#f8db72,#c99532);border-radius:50%}.circuit-column{display:flex;flex-direction:column;background:#f8faf9;position:relative}.mission-strip{min-height:60px;display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--line);background:#fff}.mission-strip>span{width:35px;height:35px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;color:#fff;font-size:13px;font-weight:800}.mission-strip>div{min-width:0;display:grid;gap:3px}.mission-strip small{color:var(--green);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.mission-strip strong{overflow:hidden;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.mission-strip button{display:flex;align-items:center;gap:5px;margin-left:auto;padding:7px 9px;border-radius:7px;color:#976d1c;background:#fff5d8;font-size:9px;font-weight:800}.hint-banner{padding:8px 14px;border-bottom:1px solid #f0dfb6;color:#755c27;background:#fff9e9;font-size:10px}.workspace-toolbar{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 11px 0 14px;border-bottom:1px solid var(--line);background:#fff}.workspace-toolbar>div{display:flex;align-items:center;gap:7px}.workspace-toolbar strong{font-size:11px}.workspace-toolbar>div:first-child>span{color:#9aa6a2;font-size:8px}.workspace-toolbar button{min-height:27px;display:grid;place-items:center;padding:0 7px;border:1px solid var(--line);border-radius:6px;background:#f7f9f8;font-size:9px}.workspace-toolbar button:disabled{opacity:.38;cursor:default}.workspace-toolbar button.active{color:#fff;border-color:var(--green);background:var(--green)}.workspace-toolbar>div:last-child>button:first-child{display:flex;gap:4px}.zoom-control{height:27px;display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;background:#f7f9f8;overflow:hidden}.zoom-control button{border:0;border-radius:0}.zoom-control b{min-width:39px;text-align:center;font-size:8px}.circuit-workspace{flex:1;min-height:0;overflow:hidden;background-color:#f8faf9;background-image:radial-gradient(#cbd7d3 1px,transparent 1px);background-size:18px 18px;position:relative}.circuit-workspace.wire-active{cursor:crosshair;background-color:#f2faf7}.workspace-canvas{width:850px;height:560px;transform-origin:0 0;position:relative;transition:transform .12s ease}.wire-layer{width:100%;height:100%;overflow:visible;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.wire-layer .wire-visible{fill:none;stroke-width:3.5;stroke-linecap:round;filter:drop-shadow(0 1px 0 white);transition:stroke-width .12s ease,filter .12s ease}.wire-layer .wire-hit{fill:none;stroke:transparent;stroke-width:18;pointer-events:stroke;cursor:pointer}.wire-layer .selected-wire .wire-visible{stroke-width:6;filter:drop-shadow(0 0 2px white) drop-shadow(0 0 4px #28a993)}.workspace-toolbar button.cancel-wire{color:#b74940;border-color:#f0c4bf;background:#fff5f3}.placed-component{width:90px;min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px;border:2px solid transparent;border-radius:10px;background:#ffffffc7;box-shadow:0 5px 12px #1b383114;position:absolute}.placed-component.placed-arduino-uno,.placed-component.placed-breadboard{width:150px;min-height:100px;padding:9px 8px 6px;background:#ffffff94}.placed-component:hover,.placed-component.selected{border-color:#41ae9c;box-shadow:0 8px 18px #087f6f2e}.placed-component.wire-source{border-color:#e65a4f;box-shadow:0 0 0 4px #e65a4f26}.placed-component .arduino-glyph{width:54px;height:40px}.placed-component .realistic-part{width:136px;height:84px}.placed-component .glyph-breadboard{width:140px;height:68px}.placed-component .glyph-led{width:26px;height:35px}.placed-component .glyph-led.simulation-led-active{background:#ff4d4d;box-shadow:inset -4px -3px #6400001f,0 0 10px #ff4d4d,0 0 24px #ff3737cc;filter:brightness(1.35)}.placed-component .glyph-led.simulation-led-active.simulation-led-blinking{animation:external-led-blink var(--led-blink-duration,2s) steps(1,end) infinite}.placed-component .glyph-resistor{height:16px}.placed-component small{max-width:136px;overflow:hidden;color:#53625e;font-size:8px;font-weight:800;white-space:nowrap;text-overflow:ellipsis}.empty-workspace{width:300px;display:grid;place-items:center;gap:7px;color:#97a6a1;position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);text-align:center}.empty-workspace strong{color:#63716d;font-size:13px}.empty-workspace span{font-size:9px}.selection-status{height:27px;display:flex;align-items:center;gap:6px;padding:0 12px;border-top:1px solid var(--line);color:#82908c;background:#fff;font-size:8px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}@keyframes uno-led-blink{0%,49.99%{fill:#ffe45c;stroke:#fff4a8;filter:drop-shadow(0 0 2px #ffe34d) drop-shadow(0 0 5px #ffc928)}50%,to{fill:#625b32;stroke:#9a8d45;filter:none}}@keyframes external-led-blink{0%,49.99%{filter:brightness(1.45);box-shadow:inset -4px -3px #6400001f,0 0 10px #ff4d4d,0 0 24px #ff3737cc}50%,to{filter:brightness(.55);box-shadow:inset -5px -3px #64000047,0 0 2px #ef42422e}}@media(prefers-reduced-motion:reduce){.simulation-led-active.simulation-led-blinking .uno-built-in-led,.placed-component .glyph-led.simulation-led-active.simulation-led-blinking{animation:none}}.code-column{display:flex;flex-direction:column;background:#17211f}.arduino-code-heading{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid #32403c;color:#eaf2ef;background:#202c29}.arduino-code-heading>div{display:flex;align-items:center;gap:7px}.arduino-code-heading strong{font-size:11px}.arduino-code-heading span{padding:4px 8px;border-radius:5px;color:#9fb0aa;background:#17211f;font-family:SFMono-Regular,Consolas,monospace;font-size:8px}.code-editor-wrap{flex:1;min-height:260px;display:grid;grid-template-columns:42px 1fr;overflow:hidden;background:#192320}.line-numbers{overflow:hidden;padding:13px 0;border-right:1px solid #2d3a36;color:#60716b;background:#17201e;font-family:SFMono-Regular,Consolas,monospace;font-size:10px;line-height:1.66;text-align:right;-webkit-user-select:none;user-select:none}.line-numbers span{display:block;padding-right:10px}.code-editor-wrap textarea{width:100%;height:100%;resize:none;border:0;outline:0;padding:13px 15px;color:#d8e8e2;caret-color:#f5bc4f;background:transparent;font-family:SFMono-Regular,Consolas,monospace;font-size:10px;line-height:1.66;-moz-tab-size:2;tab-size:2}.simulation-checks{height:39px;display:flex;align-items:center;gap:6px;padding:0 11px;border-top:1px solid #2d3a36;border-bottom:1px solid #2d3a36;background:#202c29}.simulation-checks span{display:flex;align-items:center;gap:4px;padding:4px 7px;border-radius:5px;color:#84968f;background:#19221f;font-size:8px;font-weight:700}.simulation-checks i{width:14px;height:14px;display:grid;place-items:center;border:1px solid #55665f;border-radius:50%;font-style:normal}.simulation-checks span.pass{color:#75d2ad}.simulation-checks span.pass i{color:#15221e;border-color:#75d2ad;background:#75d2ad}.simulation-checks span.fail{color:#ff8d82}.simulation-checks span.fail i{border-color:#ff8d82}.console-panel{height:148px;display:flex;flex-direction:column}.console-tabs{height:32px;display:flex;align-items:center;gap:4px;padding:0 10px;border-bottom:1px solid #2d3a36;background:#1c2724}.console-tabs button{height:100%;padding:0 8px;border-bottom:2px solid transparent;color:#72847d;background:none;font-size:8px;font-weight:800}.console-tabs button.active{color:#cae3da;border-color:#50b9a6}.console-tabs span{margin-left:auto;color:#61726c;font-family:SFMono-Regular,Consolas,monospace;font-size:7px}.console-output{flex:1;overflow:auto;padding:8px 12px;color:#8fa29b;font-family:SFMono-Regular,Consolas,monospace;font-size:8px;line-height:1.45}.console-output p{display:flex;gap:7px;margin:0 0 3px}.console-output p span{color:#48b8a3}.console-output p.error{color:#ef8076}.simulation-bar{height:60px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 17px;border-top:1px solid #d8e2de;background:#fff;position:relative;z-index:20;box-shadow:0 -4px 18px #1e3c340f}.sim-left{display:flex;align-items:center;gap:7px;color:#75847f;font-size:9px;font-weight:700}.connection-light{width:8px;height:8px;border-radius:50%;background:#afbbb7;box-shadow:0 0 0 3px #edf1f0}.connection-light.online{background:#25a27f;box-shadow:0 0 0 3px #d9f2e9}.sim-controls,.project-actions{display:flex;align-items:center;gap:6px}.sim-controls button,.project-actions button{height:34px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid var(--line);border-radius:8px;color:#65736f;background:#f6f8f7;font-size:9px;font-weight:800}.sim-controls .run-button{min-width:155px;color:#fff;border-color:var(--green);background:var(--green);box-shadow:0 7px 15px #087f6f2e}.sim-controls .run-button:hover{background:var(--green-dark)}.project-actions{justify-self:end}.project-actions .save-button{color:var(--green);border-color:#a8d8cc;background:#ecfaf6}.arduino-leaderboard{position:fixed;z-index:25;top:68px;right:0;bottom:0;left:0;overflow:auto;padding:36px max(28px,calc((100vw - 1100px)/2)) 60px;background:radial-gradient(circle at 86% 8%,rgba(242,182,67,.2),transparent 26%),linear-gradient(145deg,#eff8f5,#f8f7f1)}.leaderboard-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.leaderboard-hero span{display:block;color:var(--green);font-size:10px;font-weight:900;line-height:1.6;letter-spacing:.18em}.leaderboard-hero h1{margin:17px 0 16px;font-size:30px;line-height:1.35;letter-spacing:-.04em}.leaderboard-hero p{margin:0;color:var(--muted);font-size:12px;line-height:1.8}.leaderboard-hero button{display:flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:10px;font-weight:800;line-height:1.4}.my-arduino-rank{display:flex;align-items:center;gap:10px;margin-top:20px;padding:13px 17px;border:1px solid #a9d9cd;border-radius:12px;color:#146f62;background:#e8faf5}.my-arduino-rank span{font-size:11px;font-weight:700}.my-arduino-rank strong{margin-left:auto;font-size:19px}.my-arduino-rank b{min-width:100px;text-align:right;font-size:12px}.leaderboard-error{padding:10px 12px;border-radius:8px;color:#9e4037;background:#ffebe8;font-size:11px}.rank-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:14px;margin:30px auto 22px;max-width:760px}.podium-card{min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#ffffffe6;box-shadow:0 14px 32px #23463c14;position:relative}.podium-card.place-1{min-height:205px;border-color:#eed08b;background:linear-gradient(180deg,#fffaf0,#fff)}.podium-card.empty{visibility:hidden}.podium-medal{color:#c69a34;position:absolute;top:14px;right:14px}.podium-card>i{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-size:17px;font-style:normal;font-weight:900}.podium-card strong{margin-top:5px;font-size:13px}.podium-card>b{color:#b7851f;font-size:11px}.podium-card p{display:flex;align-items:center;gap:4px;margin:2px 0;color:#8b671d;font-size:12px;font-weight:900}.podium-card small{color:var(--muted);font-size:9px}.rank-table{max-width:920px;margin:30px auto 0;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#ffffffeb;box-shadow:0 12px 32px #23463c0f}.rank-table-head,.rank-row{display:grid;grid-template-columns:70px minmax(180px,1fr) 130px 160px;align-items:center;gap:12px}.rank-table-head{padding:14px 18px;color:#87958f;background:#f1f5f3;font-size:9px;font-weight:800;line-height:1.5}.rank-row{min-height:64px;padding:11px 18px;border-top:1px solid #edf1ef;font-size:11px;line-height:1.55}.rank-row.mine{background:#eaf9f5}.rank-row>span{display:flex;align-items:center;gap:8px}.rank-row>span:first-child{color:#b68a2e;font-weight:900}.rank-row>span:nth-child(2) i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#65a99a;font-style:normal;font-size:10px;font-weight:900}.rank-row>span:nth-child(2) small{padding:3px 6px;border-radius:999px;color:var(--green);background:#d9f3ec;font-size:8px;font-weight:900}.rank-row>span:nth-child(3){color:var(--muted)}.rank-row>span:last-child{justify-content:flex-end;color:#89651d;font-weight:900}.empty-rankings{margin:0;padding:44px 38px;color:var(--muted);text-align:center;font-size:11px;line-height:1.7}.arduino-admin{min-width:960px;background:#f3f6f5}.arduino-admin-access{min-width:320px;display:flex;min-height:100vh;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#31413c;text-align:center}.arduino-admin-access>svg{color:var(--green)}.arduino-admin-access h1{margin:7px 0 0;font-size:22px}.arduino-admin-access p{margin:0;color:var(--muted);font-size:12px}.arduino-admin-access button{display:flex;align-items:center;gap:7px;margin-top:10px;padding:10px 14px;border-radius:9px;color:#fff;background:var(--green);font-size:10px;font-weight:800}.arduino-admin>header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line);background:#fff}.arduino-admin>header>div{display:flex;gap:8px}.arduino-admin>header>div button{height:34px;display:flex;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#f7f9f8;font-size:10px;font-weight:800}.admin-layout{min-height:calc(100vh - 68px);display:grid;grid-template-columns:300px 1fr}.admin-layout>aside{max-height:calc(100vh - 68px);overflow:auto;padding:24px 18px;border-right:1px solid var(--line);background:#fff}.admin-layout>aside>span{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.14em}.admin-layout>aside>h1{margin:7px 0 22px;font-size:20px}.arduino-admin-tabs{display:grid;gap:6px;margin:0 0 22px}.arduino-admin-tabs button{min-height:38px;display:flex!important;align-items:center;gap:8px;padding:0 11px!important;border:1px solid var(--line);border-radius:8px;background:#f7f9f8!important;font-size:10px!important;font-weight:800}.arduino-admin-tabs button.active{color:#fff!important;border-color:var(--green);background:var(--green)!important}.admin-layout>aside section{margin-bottom:17px}.admin-layout>aside h2{display:flex;align-items:center;gap:7px;margin:0 0 5px;font-size:11px}.admin-layout>aside h2 i{width:21px;height:21px;display:grid;place-items:center;border-radius:6px;color:#fff;font-size:8px;font-style:normal}.admin-layout>aside section button{width:100%;display:block;padding:7px 10px 7px 29px;border-radius:7px;color:#687671;background:none;text-align:left;font-size:9px}.admin-layout>aside section button.active{color:var(--green);background:#e9f7f3;font-weight:800}.admin-editor{padding:32px clamp(30px,5vw,80px)}.arduino-user-admin{min-width:0;overflow:auto}.arduino-user-admin .admin-user-management{margin-top:24px}.arduino-user-admin .admin-user-list{max-height:calc(100vh - 300px)}.admin-editor-head{display:flex;align-items:flex-start;justify-content:space-between;max-width:900px}.admin-editor-head span{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.13em}.admin-editor-head h2{margin:5px 0;font-size:27px}.admin-editor-head p{margin:0;color:var(--muted);font-size:11px}.admin-editor-head button{display:flex;align-items:center;gap:7px;padding:10px 15px;border-radius:9px;color:#fff;background:var(--green);font-size:10px;font-weight:800}.admin-notice{max-width:900px;padding:9px 12px;border-radius:8px;color:#087363;background:#e4f8f2;font-size:10px}.admin-form{max-width:900px;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 10px 30px #1e3c340d}.admin-form label{display:grid;gap:7px;color:#42514c;font-size:10px;font-weight:800}.admin-form label:nth-child(2),.admin-form label:nth-child(3),.admin-form label:nth-child(4),.admin-form label:last-child{grid-column:span 2}.admin-form input,.admin-form textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:8px;outline:0;padding:10px 12px;color:var(--ink);background:#fbfcfc;font-size:11px;font-weight:500;line-height:1.5}.admin-form input:focus,.admin-form textarea:focus{border-color:#67b8a9;box-shadow:0 0 0 3px #e3f6f1}.admin-code{min-height:200px;color:#d9ebe4!important;background:#17211f!important;font-family:SFMono-Regular,Consolas,monospace!important}.admin-meta{grid-column:span 2;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.admin-meta span{display:grid;gap:3px;padding:14px;border-radius:9px;color:var(--muted);background:#f3f7f5;font-size:9px}.admin-meta b{color:var(--green);font-size:19px}@media(max-width:1300px){.arduino-workbench{grid-template-columns:205px minmax(480px,1fr) 390px}.project-actions button{padding:0 8px}}@media(max-width:780px){.arduino-app{min-width:0;height:100dvh;min-height:0;overflow:hidden}.arduino-topbar{min-height:64px;height:64px;gap:8px;padding:7px 10px}.arduino-brand img{width:42px;height:42px}.arduino-brand strong{font-size:14px}.arduino-brand b{display:none}.arduino-top-actions{min-width:0;gap:5px}.arduino-top-actions>button,.score-pill{height:38px;padding:0 9px}.arduino-top-actions .stage-pill{min-width:0;max-width:112px}.arduino-top-actions .stage-pill span{overflow:hidden;text-overflow:ellipsis}.arduino-top-actions .home-button{display:none}.score-pill{gap:3px;font-size:10px}.arduino-header-icon,.arduino-top-actions .icon-button{width:38px;height:38px}.arduino-navigation-menu{position:fixed;top:62px;right:10px;width:min(260px,calc(100vw - 20px))}.stage-picker{inset:64px 8px auto;width:auto;max-height:calc(100dvh - 76px);padding:13px;border-radius:12px}.stage-picker section div{grid-template-columns:1fr}.arduino-toast{top:72px;width:max-content;max-width:calc(100vw - 24px);text-align:center}.arduino-mobile-tabs{height:49px;display:grid;grid-template-columns:repeat(3,1fr);padding:5px 7px;border-bottom:1px solid var(--line);background:#fff}.arduino-mobile-tabs button{min-width:0;display:flex;align-items:center;justify-content:center;gap:5px;border-radius:8px;color:#788681;background:transparent;font-size:10px;font-weight:850;white-space:nowrap}.arduino-mobile-tabs button.active{color:#fff;background:var(--green);box-shadow:0 5px 12px #087f6f2e}.arduino-workbench{height:calc(100dvh - 185px);min-height:0;display:block;background:var(--panel)}.arduino-workbench>.mobile-panel{display:none;width:100%;height:100%}.arduino-workbench>.mobile-panel.mobile-active{display:flex}.component-library{padding:12px 10px 10px}.panel-heading{margin-bottom:8px}.component-search{flex:0 0 42px;margin-bottom:8px}.component-search input{font-size:16px}.component-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.component-list>button{min-height:76px;grid-template-columns:54px minmax(0,1fr) 14px;padding:7px 6px}.component-list>button:hover{transform:none}.component-list strong{font-size:11px}.library-tip{display:none}.mission-strip{min-height:58px;padding:8px 10px}.mission-strip strong{font-size:10px}.mission-strip button{flex:0 0 auto;min-height:38px;padding:0 9px}.workspace-toolbar{height:auto;min-height:49px;padding:5px 8px;gap:5px}.workspace-toolbar>div{gap:4px}.workspace-toolbar>div:first-child>span{display:none}.workspace-toolbar button{min-width:36px;min-height:36px}.workspace-toolbar>div:last-child>button:first-child{font-size:0}.workspace-toolbar>div:last-child>button:first-child svg{width:17px;height:17px}.zoom-control{height:36px}.zoom-control button{min-width:32px}.zoom-control b{min-width:34px}.circuit-workspace{overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y}.workspace-canvas{min-width:850px;min-height:560px}.selection-status{flex:0 0 31px;height:31px;font-size:9px}.arduino-code-heading{flex:0 0 46px;height:46px}.code-editor-wrap{min-height:0}.code-editor-wrap textarea,.line-numbers{font-size:16px;line-height:1.55}.simulation-checks{flex:0 0 45px;height:45px;overflow-x:auto}.simulation-checks span{flex:0 0 auto;font-size:9px}.console-panel{flex:0 0 128px;height:128px}.console-tabs button,.console-output{font-size:10px}.simulation-bar{height:72px;grid-template-columns:1fr auto;gap:6px;padding:7px 9px max(7px,env(safe-area-inset-bottom))}.sim-left{display:none}.sim-controls{min-width:0;gap:5px}.sim-controls button,.project-actions button{height:44px;min-width:44px;padding:0 9px;font-size:9px}.sim-controls .run-button{min-width:118px}.project-actions button:not(.save-button){display:none}.project-actions .save-button{font-size:0}.project-actions .save-button svg{width:19px;height:19px}.arduino-leaderboard{top:64px;right:0;bottom:0;left:0;padding:24px 14px 48px}.leaderboard-hero{align-items:flex-start}.leaderboard-hero h1{margin:10px 0;font-size:24px}.leaderboard-hero p{font-size:11px}.leaderboard-hero button{flex:0 0 auto;padding:10px;font-size:0}.rank-podium{grid-template-columns:1fr;align-items:stretch;gap:8px;margin:20px 0}.podium-card,.podium-card.place-1{min-height:120px}.rank-table{overflow-x:auto}.rank-table-head,.rank-row{min-width:610px}}@media(max-width:420px){.arduino-brand>span:last-child{display:none}.arduino-top-actions .stage-pill{max-width:104px}.component-list{grid-template-columns:1fr}.sim-controls button{padding:0 7px}.sim-controls .run-button{min-width:105px}.sim-controls button svg{width:15px;height:15px}}:root{--taskbar-height: 54px}.computer-shell{min-width:320px;min-height:100vh;height:100dvh;overflow:hidden;color:#202638;font-family:Segoe UI,Pretendard,ui-sans-serif,system-ui,sans-serif;background:#91cde8}.computer-shell button,.computer-shell input,.computer-shell textarea{font:inherit}.computer-shell button{color:inherit}.computer-shell.wallpaper-sky .computer-desktop{background:radial-gradient(circle at 62% 68%,#ccefff 0 7%,transparent 29%),radial-gradient(ellipse at 28% 35%,rgba(255,255,255,.78),transparent 22%),linear-gradient(145deg,#78bee8,#bde7f3 48%,#75aee3)}.computer-shell.wallpaper-mint .computer-desktop{background:radial-gradient(circle at 66% 36%,rgba(255,255,255,.6),transparent 24%),linear-gradient(135deg,#56c8b5,#bce6cc 48%,#65b8d7)}.computer-shell.wallpaper-sunset .computer-desktop{background:radial-gradient(circle at 72% 30%,#ffe89b,transparent 14%),linear-gradient(145deg,#7866c9,#ef88a4 52%,#f6bd7c)}.computer-shell.wallpaper-space .computer-desktop{background:radial-gradient(circle at 74% 20%,#bca9ff 0 1%,transparent 12%),radial-gradient(circle at 22% 28%,#fff 0 1px,transparent 2px),linear-gradient(145deg,#172247,#384c83 55%,#191e3a)}.computer-top-strip{position:fixed;z-index:1000;top:12px;left:16px;right:16px;height:42px;display:flex;justify-content:space-between;pointer-events:none}.computer-top-strip>button,.computer-score,.computer-account-save{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 14px;border:1px solid rgba(255,255,255,.58);border-radius:13px;color:#26324c;background:#ffffffbf;box-shadow:0 9px 28px #1f3f5b26;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;font-size:12px;font-weight:800}.computer-top-strip>button{cursor:pointer}.computer-account-save{position:absolute;left:50%;transform:translate(-50%);color:#526071}.computer-account-save.saved{color:#227a55;background:#effff7d1}.computer-account-save.syncing svg{animation:computer-save-spin 1s linear infinite}.computer-account-save.error{color:#a43f46;background:#ffeff0e0}@keyframes computer-save-spin{to{transform:rotate(360deg)}}.computer-score{gap:7px}.computer-score svg{color:#f39d1a}.computer-score span{padding:3px 7px;border-radius:7px;color:#fff;background:#6656e7;font-size:10px}.computer-score i{width:58px;height:6px;overflow:hidden;border-radius:9px;background:#dfe3eb}.computer-score i b{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#ffbe42,#ef6e9b)}.computer-desktop{position:relative;height:calc(100dvh - var(--taskbar-height));overflow:hidden;-webkit-user-select:none;user-select:none}.desktop-greeting{position:absolute;top:86px;right:clamp(28px,7vw,110px);display:grid;gap:5px;color:#202f48c7;text-align:right;text-shadow:0 1px rgba(255,255,255,.6)}.desktop-greeting span{display:flex;justify-content:flex-end;align-items:center;gap:7px;font-size:13px;font-weight:700}.desktop-greeting strong{font-size:clamp(22px,3vw,38px);letter-spacing:-.04em}.desktop-icons{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none}.desktop-icons>button{position:absolute;width:92px;min-height:83px;display:grid;place-items:center;gap:4px;padding:7px 4px;border-radius:7px;background:transparent;cursor:default;pointer-events:auto;font-size:11px;font-weight:650;text-shadow:0 1px rgba(255,255,255,.8)}.desktop-icons>button:hover,.desktop-icons>button.selected{background:#ffffff52;outline:1px solid rgba(255,255,255,.48)}.desktop-icons>button:active{cursor:grabbing}.desktop-trash-icon{color:#55718d;background:linear-gradient(145deg,#f4fbff,#b8d4e8)}.desktop-context-menu{position:absolute;z-index:850;width:150px;display:grid;gap:2px;padding:5px;border:1px solid rgba(255,255,255,.8);border-radius:9px;background:#fafcfef5;box-shadow:0 14px 32px #192a3e40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.desktop-context-menu button{min-height:34px;display:flex;align-items:center;gap:8px;padding:0 9px;border-radius:6px;background:transparent;cursor:pointer;color:#182235;font-size:10px;text-align:left}.desktop-context-menu button:hover{background:#e7edf4}.desktop-context-menu svg{width:14px}.computer-app-icon{--app-color:#6558e8;width:45px;height:45px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(145deg,color-mix(in srgb,var(--app-color),#fff 16%),var(--app-color));box-shadow:0 5px 10px #222a4129}.computer-app-icon svg{width:25px}.computer-app-icon.compact{width:28px;height:28px;border-radius:8px;box-shadow:0 3px 7px #222a4121}.computer-app-icon.compact svg{width:17px}.computer-window{position:absolute;width:min(720px,calc(100vw - 190px));height:min(570px,calc(100dvh - 150px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.75);border-radius:12px;background:#f8fafdf5;box-shadow:0 28px 70px #142b454a,0 2px 9px #142b4521;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);resize:both}.window-calculator{width:340px;height:515px}.window-notes{width:min(620px,calc(100vw - 190px));height:min(490px,calc(100dvh - 150px))}.window-browser{width:min(900px,calc(100vw - 150px));height:min(650px,calc(100dvh - 120px))}.computer-window.maximized{left:8px!important;top:62px!important;width:calc(100% - 16px)!important;height:calc(100% - 70px)!important;border-radius:10px;resize:none}.window-titlebar{height:45px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding-left:13px;background:#f7f9fce6;cursor:grab}.window-titlebar>span{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700}.window-titlebar>div{height:100%;display:flex}.window-titlebar button{width:45px;height:100%;display:grid;place-items:center;background:transparent;cursor:pointer}.window-titlebar button:hover{background:#e7e9ed}.window-titlebar button.window-close:hover{color:#fff;background:#e54a55}.window-titlebar button svg{width:14px}.window-content{flex:1;min-height:0;overflow:auto;background:#fff}.computer-taskbar{position:fixed;z-index:1100;left:0;right:0;bottom:0;height:var(--taskbar-height);display:flex;align-items:center;justify-content:center;gap:3px;padding:5px 14px;border-top:1px solid rgba(255,255,255,.65);background:#ebf3f9d1;box-shadow:0 -3px 20px #2a42581a;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.computer-taskbar>button{position:relative;width:42px;height:42px;display:grid;place-items:center;border-radius:6px;background:transparent;cursor:pointer;transition:.12s}.computer-taskbar>button:hover,.computer-taskbar>button.active{background:#ffffffbf;transform:translateY(-2px)}.computer-taskbar>button.running:after{content:"";position:absolute;bottom:1px;width:7px;height:3px;border-radius:4px;background:#497bd8}.computer-taskbar>button>svg{width:21px}.windows-logo{width:22px;height:22px;display:grid;grid-template-columns:1fr 1fr;gap:2px}.windows-logo i{background:#397bea}.taskbar-tray{position:absolute;right:15px;display:flex;align-items:center;gap:10px;font-size:11px}.taskbar-tray svg{width:16px}.taskbar-tray span{display:grid;text-align:right;line-height:1.35}.taskbar-tray small{font-size:10px}.computer-taskbar>button.minimized{opacity:.68}.computer-taskbar>button.minimized:after{background:#7f8998}.computer-start{position:absolute;z-index:900;left:50%;bottom:13px;width:min(580px,calc(100vw - 30px));overflow:hidden;border:1px solid rgba(255,255,255,.8);border-radius:14px;background:#f4f8fcf0;box-shadow:0 30px 80px #17304d59;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);transform:translate(-50%)}.computer-start>label{height:42px;display:flex;align-items:center;gap:9px;margin:28px 34px 20px;padding:0 13px;border:1px solid #cbd4df;border-bottom:2px solid #397bea;border-radius:7px;background:#fff}.computer-start>label input{width:100%;border:0;outline:0;background:transparent;font-size:12px}.start-heading{display:flex;justify-content:space-between;align-items:center;padding:0 38px 13px;font-size:12px}.start-heading span{display:flex;align-items:center;gap:2px;padding:5px 8px;border-radius:5px;background:#fff;font-size:10px}.start-apps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px 5px;padding:0 25px 22px}.start-apps button{display:grid;place-items:center;gap:7px;padding:7px 2px;border-radius:8px;background:transparent;cursor:pointer;font-size:10px}.start-apps button:hover{background:#ffffffe6}.start-recommended{padding:4px 38px 18px}.start-recommended>strong{font-size:12px}.start-recommended button{width:100%;display:flex;align-items:center;gap:12px;margin-top:10px;padding:8px;border-radius:9px;background:transparent;text-align:left;cursor:pointer}.start-recommended button:hover{background:#fff}.recommend-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;color:#fff;background:linear-gradient(145deg,#7d68ed,#e36fa1)}.recommend-icon svg{width:20px}.start-recommended button>span:last-child{display:grid;gap:3px}.start-recommended small{color:#70798a}.computer-start footer{height:58px;display:flex;justify-content:space-between;align-items:center;padding:0 45px;background:#dee8f294}.computer-start footer span{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700}.computer-start footer img{width:33px;height:33px;object-fit:contain;border-radius:50%;background:#fff}.computer-start footer button{width:34px;height:34px;display:grid;place-items:center;border-radius:7px;background:transparent}.computer-start footer svg{width:17px}.computer-toast{position:absolute;z-index:1000;right:22px;bottom:18px;display:flex;align-items:center;gap:9px;padding:12px 17px;border:1px solid rgba(255,255,255,.8);border-radius:12px;color:#65470c;background:#fff6c2f0;box-shadow:0 16px 35px #303c4a38;font-size:12px;font-weight:800;animation:toast-in .25s ease-out}.computer-toast svg{color:#f3a31c}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}}.learn-app{min-height:100%;padding:22px;background:#f4f6fb}.learn-hero{min-height:145px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;padding:22px 28px;border-radius:15px;color:#fff;background:linear-gradient(135deg,#6558e8,#8d71ed 54%,#e78fb6)}.learn-hero>div{display:grid;gap:7px}.learn-hero span{font-size:11px;opacity:.85}.learn-hero strong{font-size:23px}.learn-hero p{margin:0;font-size:11px}.learn-hero img{align-self:flex-end;width:118px;height:118px;object-fit:contain;filter:drop-shadow(0 9px 8px rgba(37,24,80,.2))}.lesson-heading{margin:20px 2px 13px}.lesson-heading>div{display:flex;justify-content:space-between;margin-bottom:8px;font-size:12px}.lesson-heading span{color:#706f83}.lesson-heading i{height:7px;display:block;overflow:hidden;border-radius:9px;background:#e1e3eb}.lesson-heading i b{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#685be8,#ec75a7)}.lesson-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.lesson-list button{min-height:75px;display:grid;grid-template-columns:40px 1fr 22px;align-items:center;gap:10px;padding:10px 13px;border:1px solid #e5e7ee;border-radius:11px;background:#fff;cursor:pointer;text-align:left}.lesson-list button:hover{border-color:#9e95e8;transform:translateY(-1px)}.lesson-list button.done{background:#f2fbf6}.lesson-list button>span{width:37px;height:37px;display:grid;place-items:center;border-radius:10px;color:#6558e8;background:#efedff}.lesson-list button.done>span{color:#269566;background:#daf4e7}.lesson-list svg{width:18px}.lesson-list button>div{display:grid;gap:4px}.lesson-list small{color:#7b8190;font-size:10px}.lesson-list button>i{color:#8b91a0}.files-app,.settings-app{height:100%;display:grid;grid-template-columns:160px 1fr}.files-app aside,.settings-app aside{display:flex;flex-direction:column;gap:6px;padding:22px 13px;background:#f4f6f9}.files-app aside span,.files-app aside button,.settings-app aside span,.settings-app aside strong{width:100%;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;background:transparent;font-size:11px;text-align:left}.files-app aside button{cursor:pointer}.files-app aside button:hover,.files-app aside button.active,.settings-app aside strong{color:#315fae;background:#e2ecfb;font-weight:700}.files-app aside svg,.settings-app aside svg{width:16px}.files-app>section,.settings-app>section{position:relative;min-width:0;overflow:auto;padding:18px 22px}.files-toolbar{display:flex;align-items:center;gap:10px;padding-bottom:13px;border-bottom:1px solid #e9eaf0}.files-toolbar button{display:flex;align-items:center;gap:6px;min-height:32px;padding:7px 10px;border-radius:7px;color:#fff;background:#477dd7;cursor:pointer;font-size:10px;font-weight:700}.files-toolbar .files-back{width:32px;justify-content:center;padding:0;color:#51596a;background:#edf0f5}.files-toolbar .files-back:disabled{opacity:.42;cursor:default}.files-toolbar svg{width:15px}.new-item-actions{display:flex;gap:5px}.new-item-actions button:last-child{color:#3d608e;background:#e4edf9}.files-toolbar .files-path{min-width:0;display:flex;align-items:center;margin-left:auto;color:#707889;font-size:10px}.files-toolbar .files-path button{min-height:auto;padding:4px;color:#627085;background:transparent}.files-toolbar .files-path svg{flex:0 0 auto}.files-toolbar .files-path b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.files-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:17px 1px 13px}.files-heading>div{display:flex;align-items:baseline;gap:8px}.files-heading h3{margin:0;font-size:16px}.files-heading p,.files-heading>span{margin:0;color:#8a92a0;font-size:9px}.file-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.file-grid>button{min-width:0;min-height:108px;display:grid;place-items:center;align-content:center;gap:4px;padding:9px 5px;border:1px solid #e7e8ed;border-radius:9px;background:#fff;cursor:pointer;font-size:10px}.file-grid>button:hover{border-color:#8bb1e8;background:#f4f8fe;box-shadow:0 5px 13px #2f538017;transform:translateY(-1px)}.file-grid>button>span:not(.file-photo-thumb){max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-grid svg{width:38px;height:38px}.file-grid svg.file-folder{color:#edae24;fill:#ffd86f}.file-grid svg.file-blue{color:#4a8fe1;fill:#a9cdf7}.file-grid small{color:#9197a4;font-size:8px}.file-photo-thumb{width:54px;height:48px;display:grid;place-items:center;overflow:hidden;border:3px solid #fff;border-radius:6px;background:linear-gradient(145deg,#bde8f8,#ffe3a4);box-shadow:0 2px 7px #2a344329}.file-photo-thumb img{width:100%;height:100%;object-fit:contain}.files-empty{min-height:230px;display:grid;place-items:center;align-content:center;gap:6px;color:#9aa1ad;text-align:center}.files-empty svg{width:50px;height:50px;color:#e5ad31;fill:#ffdb76}.files-empty strong{color:#616a7a;font-size:12px}.files-empty span{font-size:9px}.file-dialog-backdrop{position:absolute;z-index:20;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:16px;background:#28314152;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.file-create-dialog{width:min(340px,100%);display:grid;grid-template-columns:48px 1fr;gap:13px;padding:20px;border:1px solid rgba(255,255,255,.8);border-radius:13px;background:#fff;box-shadow:0 22px 50px #1b273a42}.file-create-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;color:#d89516;background:#fff1c6}.file-create-icon.document{color:#397cce;background:#e1edfb}.file-create-icon svg{width:24px}.file-create-dialog h4{margin:2px 0 5px;font-size:14px}.file-create-dialog p{margin:0;color:#7b8391;font-size:9px}.file-create-dialog label{grid-column:1/-1;display:grid;gap:6px;color:#596273;font-size:10px;font-weight:700}.file-create-dialog input{height:37px;padding:0 10px;border:1px solid #cdd3dd;border-radius:7px;outline:0}.file-create-dialog input:focus{border-color:#4a82d8;box-shadow:0 0 0 3px #4a82d821}.file-create-dialog footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px}.file-create-dialog footer button{min-height:33px;display:flex;align-items:center;gap:5px;padding:0 12px;border-radius:7px;background:#edf0f4;cursor:pointer;font-size:10px;font-weight:700}.file-create-dialog footer button:last-child{color:#fff;background:#477dd7}.file-create-dialog footer svg{width:14px}.file-viewer-backdrop{padding:20px}.file-viewer{width:min(520px,100%);height:min(400px,100%);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.85);border-radius:12px;background:#fff;box-shadow:0 25px 60px #18253957}.file-viewer>header{min-height:44px;display:flex;align-items:center;justify-content:space-between;padding-left:14px;border-bottom:1px solid #e8eaf0;background:#f7f8fa}.file-viewer>header span{min-width:0;display:flex;align-items:center;gap:8px}.file-viewer>header b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.file-viewer>header svg{width:17px;color:#477dd7}.file-viewer>header button{width:43px;align-self:stretch;display:grid;place-items:center;background:transparent;cursor:pointer}.file-viewer>header button:hover{color:#fff;background:#e54a55}.photo-viewer{flex:1;min-height:0;display:grid;place-items:center;align-content:center;gap:8px;padding:16px;overflow:hidden;background:linear-gradient(145deg,#e7f4fa,#fff6dc)}.photo-viewer img{max-width:85%;max-height:270px;object-fit:contain;filter:drop-shadow(0 12px 11px rgba(49,58,71,.15))}.photo-viewer p{margin:0;color:#717988;font-size:9px}.document-viewer{flex:1;min-height:0;display:flex;flex-direction:column}.document-viewer textarea{flex:1;min-height:0;resize:none;padding:20px;border:0;outline:0;background:#fffdf8;font-size:13px;line-height:1.75}.document-viewer footer{min-height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;border-top:1px solid #e8e8e8;color:#8a929e;font-size:9px}.document-viewer footer button{display:flex;align-items:center;gap:5px;padding:7px 11px;border-radius:7px;color:#fff;background:#477dd7;cursor:pointer;font-size:10px;font-weight:700}.document-viewer footer svg{width:14px}.trash-link{position:relative}.trash-link i{min-width:17px;height:17px;display:grid;place-items:center;margin-left:auto;border-radius:9px;color:#fff;background:#df5a65;font-size:8px;font-style:normal}.paste-toolbar{color:#38633e!important;background:#e3f3e5!important}.empty-trash-button{color:#b43e49!important;background:#fae5e7!important}.file-context-menu{position:absolute;z-index:35;width:168px;display:grid;gap:2px;padding:5px;border:1px solid rgba(255,255,255,.85);border-radius:9px;background:#fafbfdfa;box-shadow:0 16px 34px #18243640;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.file-context-menu button{min-height:34px;display:flex;align-items:center;gap:9px;padding:0 9px;border-radius:6px;background:transparent;cursor:pointer;font-size:10px;text-align:left}.file-context-menu button:hover{background:#e9edf4}.file-context-menu button:disabled{color:#aeb3bc;cursor:default}.file-context-menu button.danger{color:#c43d49}.file-context-menu button.danger:hover{background:#fbe7e9}.file-context-menu svg{width:15px}.file-context-menu>i{height:1px;margin:3px 4px;background:#e1e4e9}.file-grid>button.dragging{opacity:.42;transform:scale(.96)}.file-grid>button.drop-target,.files-app aside button.drop-target{color:#245d9f;background:#dcecff;outline:2px solid #4a8cdd;outline-offset:-2px}.files-app>section.drop-target-area:after{content:"여기에 놓아 이동";position:absolute;z-index:8;right:18px;bottom:16px;padding:7px 11px;border:1px dashed #397bd3;border-radius:8px;color:#255e9e;background:#e7f2ff;font-size:9px;font-weight:700;pointer-events:none}.file-delete-dialog{width:min(350px,100%);display:grid;grid-template-columns:48px 1fr;gap:13px;padding:20px;border-radius:13px;background:#fff;box-shadow:0 22px 50px #1b273a47}.file-delete-dialog>span{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;color:#c83f4a;background:#fde6e8}.file-delete-dialog>span svg{width:23px}.file-delete-dialog h4{margin:2px 0 5px;font-size:14px}.file-delete-dialog p{margin:0;color:#727b8a;font-size:9px;line-height:1.55}.file-delete-dialog footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px}.file-delete-dialog footer button{min-height:33px;padding:0 12px;border-radius:7px;background:#edf0f4;cursor:pointer;font-size:10px;font-weight:700}.file-delete-dialog footer button:last-child{color:#fff;background:#d84954}.notes-app{height:100%;display:flex;flex-direction:column}.notes-app>div{height:39px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;border-bottom:1px solid #e6e7eb;font-size:10px}.notes-app button{padding:5px 10px;border-radius:6px;color:#fff;background:#477dd7;cursor:pointer}.notes-app textarea{flex:1;resize:none;padding:24px;border:0;outline:0;color:#303642;background:#fffdf8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;line-height:1.8}.notes-app footer{height:27px;display:flex;justify-content:flex-end;align-items:center;gap:20px;padding:0 10px;border-top:1px solid #e8e8e8;font-size:9px}.calculator-app{height:100%;padding:15px;background:#f4f5f7}.calc-memory{display:flex;justify-content:space-between;align-items:center;font-weight:700}.calc-memory svg{width:17px}.calculator-app output{height:83px;display:flex;justify-content:flex-end;align-items:center;overflow:hidden;font-size:36px;font-weight:600}.calculator-app>div:last-child{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.calculator-app button{height:54px;border:1px solid #e3e4e8;border-radius:5px;background:#fff;cursor:pointer;font-weight:650}.calculator-app button:hover{background:#e9edf4}.calculator-app button.equals{color:#fff;background:#4d7ed2}.calculator-app button:nth-child(15),.calculator-app button:nth-child(17){grid-column:span 2}.paint-app{height:100%;display:flex;flex-direction:column;background:#e9ebef}.paint-toolbar{min-height:56px;display:flex;align-items:center;gap:10px;padding:8px 14px;background:#fff}.paint-toolbar input{width:35px;height:35px;padding:2px;border:0}.paint-toolbar button{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:6px;background:#eceff4;cursor:pointer;font-size:10px}.paint-toolbar button:last-child{margin-left:auto;color:#fff;background:#477dd7}.paint-toolbar svg{width:17px}.paint-canvas{position:relative;flex:1;margin:17px;overflow:hidden;background:#fff;box-shadow:0 3px 12px #1e263124;touch-action:none}.paint-canvas>i{position:absolute;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%)}.paint-canvas>span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;gap:10px;color:#a0a6b1;font-size:12px;pointer-events:none}.paint-canvas>span svg{width:36px;height:36px}.win11-notepad{position:relative;color:#111827;background:#fff}.win11-notepad button{color:#111827;background:transparent}.notepad-tabs{min-height:39px;flex:0 0 auto;display:flex;align-items:end!important;justify-content:flex-start!important;gap:2px;padding:5px 8px 0!important;overflow-x:auto;background:#f1f3f6}.notepad-tabs>button{min-width:128px;max-width:190px;height:34px;display:flex;align-items:center;gap:6px;padding:0 8px;border-radius:7px 7px 0 0;background:#e4e7ec;font-size:10px}.notepad-tabs>button.active{background:#fff}.notepad-tabs button>svg{width:14px;color:#397ad0}.notepad-tabs button>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.notepad-tabs button>i{width:20px;height:20px;display:grid;place-items:center;border-radius:4px}.notepad-tabs button>i:hover{background:#dde1e7}.notepad-tabs button>i svg{width:12px}.notepad-tabs>button.new-note-tab{min-width:30px;width:30px;justify-content:center;background:transparent}.notepad-menubar{min-height:34px;flex:0 0 auto;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:1px;padding:2px 7px!important;overflow:visible;background:#fff}.notepad-menubar>div{position:relative;height:auto!important}.notepad-menubar>div>button{padding:5px 9px}.notepad-menubar>div>button:hover{background:#edf0f4}.notepad-menubar section{position:absolute;z-index:12;top:29px;left:0;width:210px;display:grid;gap:2px;padding:5px;border:1px solid #dfe2e7;border-radius:8px;background:#fff;box-shadow:0 12px 28px #1b273933}.notepad-menubar section button{min-height:31px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;border-radius:5px;text-align:left}.notepad-menubar section button:hover{background:#edf1f6}.notepad-menubar section button:disabled{color:#a6abb3}.notepad-menubar section i{height:1px;margin:3px;background:#e1e4e8}.notepad-menubar kbd{color:#707887;font-family:inherit;font-size:8px}.notepad-menubar section svg{width:13px}.notepad-menubar>label{display:flex;align-items:center;gap:5px;margin-left:auto;color:#616a78;font-size:9px}.notepad-menubar select{height:26px;padding:0 22px 0 7px;border:1px solid #d6dae1;border-radius:5px;color:#111;background:#fff;font-size:9px}.notepad-find{min-height:43px!important;flex:0 0 auto;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px;padding:5px 8px!important;background:#f5f6f8}.notepad-find label{min-width:130px;height:31px;display:flex;align-items:center;gap:5px;padding:0 7px;border:1px solid #ccd2db;border-radius:6px;background:#fff}.notepad-find label svg{width:14px;color:#667181}.notepad-find input{min-width:0;width:100%;border:0;outline:0;color:#111;background:transparent;font-size:10px}.notepad-find button{height:30px;padding:0 8px;border:1px solid #d5dae2;background:#fff;font-size:9px;white-space:nowrap}.win11-notepad>textarea{flex:1;min-height:0;width:100%;resize:none;padding:18px 20px;border:0;outline:0;color:#000!important;background:#fff!important;line-height:1.6;-moz-tab-size:4;tab-size:4;overflow:auto}.win11-notepad>footer{min-height:27px;flex:0 0 auto;display:flex;justify-content:flex-end;gap:18px;padding:0 10px;border-top:1px solid #e3e5e9;color:#333;background:#f8f9fa;font-size:8px}.win11-paint{color:#111827;background:#dfe3e8}.win11-paint button{color:#111827}.paint-commandbar{min-height:37px;flex:0 0 auto;display:flex;align-items:center;gap:3px;padding:3px 8px;border-bottom:1px solid #dfe2e7;background:#fff}.paint-commandbar button{min-height:29px;display:flex;align-items:center;gap:5px;padding:0 8px;border-radius:5px;background:transparent;cursor:pointer;font-size:9px}.paint-commandbar button:hover{background:#edf1f5}.paint-commandbar button:disabled{opacity:.35}.paint-commandbar svg{width:15px}.paint-commandbar>i{width:1px;height:20px;margin:0 3px;background:#dfe2e7}.paint-ribbon{min-height:74px;flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:7px 11px;border-bottom:1px solid #d8dce2;background:#f8f9fb;overflow-x:auto}.paint-ribbon>section{display:flex;gap:3px}.paint-ribbon>section button{width:50px;height:57px;display:grid;place-items:center;align-content:center;gap:2px;border-radius:6px;background:transparent;cursor:pointer;font-size:8px}.paint-ribbon>section button:hover,.paint-ribbon>section button.active{background:#dceafa;outline:1px solid #8cb5e9}.paint-ribbon>section svg{width:20px}.paint-ribbon>i{width:1px;height:50px;flex:0 0 auto;background:#d8dce1}.paint-ribbon>label{display:grid;grid-template-columns:auto 78px;align-items:center;gap:3px 7px;color:#333;font-size:8px}.paint-ribbon>label b{grid-column:2;text-align:center}.paint-ribbon input[type=range]{width:78px;accent-color:#397bd3}.paint-colors{display:grid;grid-template-columns:repeat(6,22px);gap:3px}.paint-colors button,.paint-colors input{width:22px;height:22px;padding:0;border:2px solid #fff;border-radius:4px;box-shadow:0 0 0 1px #bec3ca;cursor:pointer}.paint-colors button.selected{box-shadow:0 0 0 2px #397bd3}.paint-workspace{flex:1;min-height:0;overflow:auto;padding:18px;background:#d7dbe1}.paint-canvas-wrap{position:relative;background:#fff;box-shadow:0 3px 12px #19222f40;transform-origin:top left}.paint-canvas-wrap canvas{width:100%;height:100%;display:block;background:#fff;cursor:crosshair;touch-action:none}.win11-paint>footer{min-height:29px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-top:1px solid #d6dae0;color:#333;background:#f8f9fa;font-size:8px}.win11-paint>footer div{display:flex;align-items:center;gap:6px}.win11-paint>footer svg{width:13px}.win11-paint>footer input{width:90px;accent-color:#397bd3}.browser-bar{height:47px;display:flex;align-items:center;gap:11px;padding:0 14px;background:#f0f2f5}.browser-bar>svg{width:17px}.browser-bar label{flex:1;height:31px;display:flex;align-items:center;gap:7px;padding:0 11px;border-radius:16px;background:#fff;color:#677180;font-size:10px}.browser-bar label svg{width:14px}.browser-app section{padding:26px;text-align:center;background:linear-gradient(180deg,#f4fbff,#fff)}.safe-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:20px;color:#25815e;background:#ddf5e9;font-size:9px;font-weight:700}.safe-badge svg{width:12px}.browser-app h2{margin:13px 0 6px;font-size:24px}.browser-app p{margin:0;color:#75808f;font-size:11px}.browser-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:24px}.browser-cards button{min-height:120px;display:grid;place-items:center;gap:5px;padding:12px;border:1px solid #e4e8ee;border-radius:12px;background:#fff;cursor:pointer}.browser-cards button:hover{border-color:#6da1e9;transform:translateY(-2px)}.browser-cards b{font-size:34px}.browser-cards span{font-size:10px;font-weight:700}.browser-cards svg{width:14px;color:#7f8792}.browser-app{height:100%;display:flex;flex-direction:column;color:#202638;background:#fff}.browser-bar{min-height:49px;height:auto;gap:5px;padding:0 10px;border-bottom:1px solid #dde2e8;background:#eef1f5}.browser-bar>button{width:31px;height:31px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:transparent;cursor:pointer}.browser-bar>button:hover{background:#dfe4ea}.browser-bar>button:disabled{opacity:.32;cursor:default}.browser-bar svg{width:16px}.browser-bar form{flex:1;height:34px;display:flex;align-items:center;gap:5px;padding:0 5px 0 12px;border:1px solid transparent;border-radius:18px;background:#fff}.browser-bar form:focus-within{border-color:#5290de;box-shadow:0 0 0 2px #5290de1f}.browser-bar form>svg{color:#34936b}.browser-bar input{min-width:0;flex:1;border:0;outline:0;color:#172033;background:transparent;font-size:11px}.browser-bar form button{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:transparent;cursor:pointer;color:#667181}.browser-bar form button:hover{background:#edf1f6}.browser-bar form button.bookmarked{color:#e3a11e}.browser-bar form button.browser-go{color:#fff;background:#477dd7}.browser-bar form button.browser-go:hover{background:#376bc0}.browser-bookmarks{min-height:35px;display:flex;align-items:center;gap:5px;padding:4px 10px;overflow-x:auto;border-bottom:1px solid #e5e8ed;background:#fafbfc;white-space:nowrap}.browser-bookmarks>span{display:flex;align-items:center;gap:4px;margin-right:3px;color:#596476;font-size:9px;font-weight:800}.browser-bookmarks>span svg{width:12px;color:#e3a11e}.browser-bookmarks button{max-width:150px;height:26px;display:flex;align-items:center;gap:5px;padding:0 8px;overflow:hidden;border-radius:6px;background:transparent;cursor:pointer;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.browser-bookmarks button:hover{background:#e8edf3}.browser-bookmarks button svg{width:12px;flex:0 0 auto;color:#4b82c7}.browser-bookmarks small{color:#8a929e;font-size:9px}.browser-page{flex:1;min-height:0;overflow:auto;background:#fff}.browser-page>section{min-height:100%;padding:30px;text-align:center;background:linear-gradient(180deg,#f2faff,#fff 62%)}.browser-cards{max-width:760px;margin:24px auto 0}.browser-cards button{min-height:132px;gap:7px;padding:14px;border-color:#e1e7ee;border-radius:13px}.browser-cards button:hover{box-shadow:0 8px 24px #365f8f1a}.browser-cards>button>b{font-size:35px}.browser-cards button>span{display:grid;gap:4px}.browser-cards strong{font-size:11px}.browser-cards small{color:#7b8492;font-size:9px;font-weight:400}.browser-article{position:relative}.browser-article>button{position:absolute;top:18px;left:20px;display:flex;align-items:center;gap:5px;padding:7px 10px;border-radius:7px;background:#e8f1fb;cursor:pointer;color:#386da9;font-size:9px;font-weight:700}.browser-article>button svg{width:13px}.browser-article-icon{display:block;margin-bottom:9px;font-size:53px}.browser-facts{max-width:590px;display:grid;gap:9px;margin:25px auto 0;text-align:left}.browser-facts article{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:11px;padding:13px;border:1px solid #e3e8ee;border-radius:11px;background:#fff;box-shadow:0 5px 16px #2f4c6c0f}.browser-facts article b{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#587fd7;font-size:11px}.browser-facts article span{font-size:11px;line-height:1.55}.browser-external{height:100%;min-height:300px;background:radial-gradient(circle at 50% 35%,#fff 0 13%,transparent 40%),linear-gradient(145deg,#eef7ff,#f7f4ff)}.browser-external>div{height:100%;min-height:360px;display:grid;place-items:center;align-content:center;gap:9px;padding:25px;text-align:center}.browser-external>div>span{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;color:#fff;background:linear-gradient(145deg,#4a82ce,#6658d8);box-shadow:0 10px 24px #455bae38}.browser-external>div>span svg{width:27px}.browser-external>div strong{margin-top:4px;font-size:16px}.browser-external>div p{max-width:440px;line-height:1.65}.browser-external a{display:flex;align-items:center;gap:6px;margin-top:6px;padding:10px 15px;border-radius:8px;color:#fff;background:#477dd7;box-shadow:0 5px 14px #477dd733;font-size:10px;font-weight:700;text-decoration:none}.browser-external a:hover{background:#376bc0}.browser-external a svg{width:14px}.browser-external small{color:#8a929e;font-size:9px}.settings-app h2{margin:5px 0;font-size:20px}.settings-app section>p{margin:0 0 23px;color:#727b89;font-size:11px}.settings-app h3{font-size:12px}.wallpaper-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.wallpaper-picker button{position:relative;aspect-ratio:1.45;border:3px solid transparent;border-radius:8px;cursor:pointer}.wallpaper-picker button.sky{background:linear-gradient(145deg,#78bee8,#d4eef5,#75aee3)}.wallpaper-picker button.mint{background:linear-gradient(145deg,#56c8b5,#bce6cc,#65b8d7)}.wallpaper-picker button.sunset{background:linear-gradient(145deg,#7866c9,#ef88a4,#f6bd7c)}.wallpaper-picker button.space{background:linear-gradient(145deg,#172247,#4c5f9a,#191e3a)}.wallpaper-picker button.selected{border-color:#477dd7}.wallpaper-picker svg{position:absolute;top:5px;right:5px;width:15px;padding:2px;border-radius:50%;color:#fff;background:#477dd7}.dark-toggle{display:flex;align-items:center;justify-content:space-between;margin-top:25px;padding:14px;border:1px solid #e2e5ea;border-radius:10px}.dark-toggle span{display:flex;align-items:center;gap:9px;font-size:11px}.dark-toggle svg{width:18px;color:#5d67a0}.dark-toggle input{width:36px;height:20px;accent-color:#477dd7}.settings-app aside button{width:100%;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;background:transparent;cursor:pointer;font-size:11px;text-align:left}.settings-app aside button:hover,.settings-app aside button.active{color:#315fae;background:#e2ecfb;font-weight:700}.settings-app aside button svg{width:16px}.settings-app section{background:#fff}.setting-toggle{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px 14px;border:1px solid #e2e5ea;border-radius:11px;background:#fff}.setting-toggle>span{min-width:0;display:flex;align-items:center;gap:11px}.setting-toggle>span>svg{width:20px;flex:0 0 auto;color:#5d67a0}.setting-toggle>span>span{display:grid;gap:3px}.setting-toggle b{font-size:11px}.setting-toggle small{color:#7b8492;font-size:9px;line-height:1.35}.setting-toggle input{width:37px;height:21px;flex:0 0 auto;accent-color:#477dd7}.language-options{display:grid;gap:9px}.language-options button{min-height:72px;display:grid;grid-template-columns:43px 1fr 23px;align-items:center;gap:12px;padding:11px 14px;border:1px solid #e2e6ec;border-radius:11px;background:#fff;cursor:pointer;text-align:left}.language-options button:hover{border-color:#91b5e7;background:#f7faff}.language-options button.selected{border-color:#5689d2;background:#edf5ff;box-shadow:0 0 0 2px #5689d21a}.language-options button>span{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,#557fd2,#7162dc);font-size:18px;font-weight:800}.language-options button>div{display:grid;gap:5px}.language-options button b{font-size:12px}.language-options button small{color:#727c8c;font-size:9px}.language-options button>svg{width:19px;color:#3874c7}.settings-note{display:flex;align-items:center;gap:11px;margin-top:18px;padding:13px;border-radius:10px;color:#376f59;background:#e9f7f0}.settings-note>svg{width:20px}.settings-note>span{display:grid;gap:3px}.settings-note b{font-size:10px}.settings-note small{font-size:9px}.accessibility-card{padding:15px;border:1px solid #e2e5ea;border-radius:11px;background:#fff}.accessibility-card label{display:flex;align-items:center;justify-content:space-between;gap:12px}.accessibility-card label>span{display:flex;align-items:center;gap:11px}.accessibility-card label svg{width:20px;color:#5d67a0}.accessibility-card label span span{display:grid;gap:3px}.accessibility-card label b{font-size:11px}.accessibility-card label small{color:#7b8492;font-size:9px}.accessibility-card output{padding:4px 8px;border-radius:7px;color:#315fae;background:#e7f0fc;font-size:10px;font-weight:800}.accessibility-card>input{width:100%;margin:17px 0 5px;accent-color:#477dd7}.scale-labels{display:flex;justify-content:space-between;align-items:center;color:#8a929d;font-size:8px}.scale-labels button{padding:4px 7px;border-radius:5px;color:#4e6f9e;background:#edf2f8;cursor:pointer;font-size:8px}.help-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:21px}.help-quick article{min-height:130px;display:grid;place-items:center;align-content:center;gap:7px;padding:12px;border:1px solid #e3e7ed;border-radius:11px;background:#fff;text-align:center}.help-quick article svg{width:25px;color:#557fd2}.help-quick article b{font-size:11px}.help-quick article span{color:#747e8e;font-size:9px;line-height:1.5}.settings-faq{display:grid;gap:7px}.settings-faq details{overflow:hidden;border:1px solid #e2e6ec;border-radius:9px;background:#fff}.settings-faq summary{padding:11px 13px;cursor:pointer;font-size:10px;font-weight:700}.settings-faq details p{margin:0;padding:0 13px 12px;color:#707a89;font-size:9px;line-height:1.55}.computer-shell .window-content{zoom:var(--computer-text-scale,1)}.computer-high-contrast .computer-window{border:2px solid #121826;box-shadow:0 0 0 2px #fff,0 25px 65px #00000073}.computer-high-contrast button:focus-visible,.computer-high-contrast input:focus-visible,.computer-high-contrast summary:focus-visible{outline:3px solid #ffb000!important;outline-offset:2px}.computer-high-contrast .window-content button,.computer-high-contrast .setting-toggle,.computer-high-contrast .accessibility-card{border-color:#3c4658}.computer-reduced-motion *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.computer-dark .computer-window,.computer-dark .window-content,.computer-dark .notes-app textarea{color:#e7e9ef;background:#1f2534f5}.computer-dark .window-titlebar,.computer-dark .paint-toolbar,.computer-dark .browser-cards button,.computer-dark .lesson-list button,.computer-dark .file-grid>button,.computer-dark .file-create-dialog,.computer-dark .file-viewer,.computer-dark .file-context-menu,.computer-dark .file-delete-dialog{color:#e7e9ef;background:#292f3e}.computer-dark .learn-app,.computer-dark .files-app aside,.computer-dark .settings-app aside,.computer-dark .calculator-app,.computer-dark .browser-app section{color:#e7e9ef;background:#212736}.computer-dark .calculator-app button{color:#e7e9ef;background:#343b4a}.computer-dark .document-viewer textarea{color:#eef0f5;background:#222836}.computer-dark .settings-app>section{color:#e7e9ef;background:#212736}.computer-dark .setting-toggle,.computer-dark .language-options button,.computer-dark .accessibility-card,.computer-dark .help-quick article,.computer-dark .settings-faq details{color:#e7e9ef;border-color:#444c5e;background:#2b3242}.computer-dark .settings-note{color:#b9ead5;background:#254138}.computer-dark .settings-app aside button.active,.computer-dark .settings-app aside button:hover{color:#bad5ff;background:#35435c}.computer-shell input,.computer-shell textarea,.document-viewer textarea,.notes-app textarea{color:#000;caret-color:#000}.document-viewer textarea{color:#000!important;background:#fffdf8!important}.file-viewer.document{color:#111;background:#fff}.file-viewer.document>header{color:#111;background:#f7f8fa}.computer-dark .win11-notepad,.computer-dark .win11-paint,.computer-dark .win11-notepad textarea,.computer-dark .win11-paint canvas{color:#000;background:#fff}.win11-notepad>textarea:focus,.win11-notepad>textarea:focus-visible,.document-viewer textarea:focus,.document-viewer textarea:focus-visible{border:0!important;outline:0!important;box-shadow:none!important}@media(max-width:560px){.computer-account-save{display:none}}@media(max-width:760px){.computer-window{left:8px!important;top:65px!important;width:calc(100vw - 16px);height:calc(100dvh - 130px);resize:none}.window-calculator{width:min(340px,calc(100vw - 16px));left:50%!important;transform:translate(-50%)}.desktop-greeting{display:none}.desktop-icons>button{width:82px}.computer-score i{display:none}.computer-top-strip{left:8px;right:8px}.computer-top-strip>button{padding:0 10px}.computer-taskbar{justify-content:flex-start;padding-left:7px}.computer-taskbar>button:nth-of-type(n+6){display:none}.taskbar-tray{right:8px}.start-apps{grid-template-columns:repeat(4,1fr)}.lesson-list,.files-app,.settings-app{grid-template-columns:1fr}.files-app aside,.settings-app aside{display:none}.files-app>section{padding:12px}.files-toolbar{flex-wrap:wrap;gap:6px}.files-toolbar .files-path{order:3;width:100%;margin-left:0}.files-heading>span{display:none}.file-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.file-grid>button{min-height:94px;padding-inline:3px}.browser-cards{grid-template-columns:1fr}.browser-cards button{min-height:73px;grid-template-columns:45px 1fr 20px;text-align:left}.learn-hero img{width:88px}.computer-toast{right:10px}.wallpaper-picker{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.settings-app{grid-template-rows:auto 1fr}.settings-app aside{display:flex;flex-direction:row;gap:3px;padding:6px;overflow-x:auto;border-bottom:1px solid #e1e5eb}.settings-app aside strong{display:none}.settings-app aside button{width:auto;flex:1 0 auto;justify-content:center;padding:7px 9px;font-size:9px}.settings-app aside button svg{width:14px}.settings-app>section{padding:14px}.help-quick{grid-template-columns:1fr}.help-quick article{min-height:82px;grid-template-columns:30px 1fr;text-align:left}.help-quick article svg{grid-row:1/3}.language-options button{grid-template-columns:38px 1fr 20px}.language-options button>span{width:37px;height:37px}}.window-word{width:min(1040px,calc(100vw - 130px));height:min(720px,calc(100dvh - 105px))}.word-app{height:100%;display:flex;flex-direction:column;overflow:hidden;color:#172033;background:#eef1f5;font-family:Segoe UI,Pretendard,sans-serif}.word-app button,.word-app input,.word-app select{color:inherit}.word-topbar{min-height:38px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:0 10px;color:#fff;background:#285fab}.word-quick{display:flex;align-items:center;gap:4px}.word-quick>svg{width:19px}.word-quick b{margin-right:8px;font-size:11px}.word-quick button{width:27px;height:27px;display:grid;place-items:center;border-radius:4px;color:#fff;background:transparent;cursor:pointer}.word-quick button:hover{background:#ffffff2e}.word-quick button svg{width:14px}.word-topbar>label{display:flex;align-items:center;gap:8px}.word-topbar>label input{width:190px;padding:5px 10px;border:1px solid rgba(255,255,255,.2);border-radius:5px;color:#fff;background:#0000001a;text-align:center;font-size:10px}.word-topbar>label span{display:flex;align-items:center;gap:3px;color:#d9f5e5;font-size:8px;white-space:nowrap}.word-topbar>label span.unsaved{color:#ffe0a1}.word-topbar>label svg{width:11px}.word-print{justify-self:end;display:flex;align-items:center;gap:5px;padding:6px 10px;border-radius:5px;color:#164d92!important;background:#fff;cursor:pointer;font-size:9px;font-weight:700}.word-print svg{width:14px}.word-tabs{min-height:31px;display:flex;align-items:flex-end;gap:2px;padding-left:10px;background:#fff}.word-tabs button{height:29px;padding:0 13px;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:9px}.word-tabs button:hover{background:#edf3fb}.word-tabs button.active{color:#245a9e;border-color:#2868ba;font-weight:800}.word-ribbon{min-height:88px;flex:0 0 auto;display:flex;align-items:stretch;gap:4px;padding:6px 8px;border-block:1px solid #d9dee6;background:#fbfcfd;overflow-x:auto}.word-ribbon-group{position:relative;display:flex;align-items:center;gap:3px;padding:0 9px 14px 5px;border-right:1px solid #d8dde5}.word-ribbon-group>small{position:absolute;left:0;right:7px;bottom:0;color:#7f8793;text-align:center;font-size:7px}.word-ribbon-group>button,.word-ribbon-group>div>button{min-width:38px;height:52px;display:grid;place-items:center;align-content:center;gap:2px;padding:4px;border-radius:5px;background:transparent;cursor:pointer;font-size:7px}.word-ribbon-group button:hover,.word-ribbon-group button.active{background:#dfebf9;outline:1px solid #9cbde5}.word-ribbon-group button svg{width:19px;height:19px}.word-file-tools button{min-width:48px}.word-font{min-width:210px;display:grid;gap:4px}.word-font>div{display:flex;gap:3px}.word-font select{height:25px;min-width:112px;border:1px solid #c8cdd6;border-radius:3px;background:#fff;font-size:9px}.word-font select:last-child{min-width:48px;width:48px}.word-font>div:nth-child(2) button{min-width:29px;width:29px;height:27px;padding:2px}.word-font>div:nth-child(2) button span{display:none}.word-font>div:nth-child(2) button svg{width:15px}.word-color{position:relative;width:29px;height:27px;display:grid;place-items:center;overflow:hidden;border-radius:4px;cursor:pointer;font-weight:800}.word-color:hover{background:#dfebf9}.word-color input{position:absolute;inset:auto 2px 1px;width:25px;height:5px;padding:0;border:0}.word-paragraph{min-width:156px;display:grid;gap:3px}.word-paragraph>div{display:flex}.word-paragraph button{min-width:31px!important;width:31px!important;height:27px!important}.word-paragraph button span{display:none}.word-paragraph button svg{width:15px}.word-find{width:100%;display:flex;align-items:center;gap:6px;padding:10px}.word-find label{height:31px;display:flex;align-items:center;gap:6px;padding:0 8px;border:1px solid #cdd3db;border-radius:5px;background:#fff}.word-find label svg{width:14px;color:#6680a1}.word-find input{width:145px;border:0;outline:0;font-size:9px}.word-find button{height:31px;padding:0 10px;border-radius:5px;color:#fff;background:#3471c4;cursor:pointer;font-size:9px}.word-find span{color:#3976b9;font-size:9px}.word-workspace{flex:1;min-height:0;overflow:auto;padding:25px;background:#d6d9de}.word-paper{position:relative;width:calc(var(--word-page-width) * var(--word-zoom));min-height:calc(var(--word-page-min-height) * var(--word-zoom));margin:0 auto 28px;padding:calc(var(--word-page-margin) * var(--word-zoom));color:#111827;background:#fff;box-shadow:0 3px 18px #151f2d3d}.word-header,.word-footer{position:absolute;left:calc(var(--word-page-margin) * var(--word-zoom));right:calc(var(--word-page-margin) * var(--word-zoom));min-height:18px;color:#6b7280;font-size:calc(10px * var(--word-zoom));outline:none}.word-header{top:calc(9px * var(--word-zoom));padding-bottom:4px;border-bottom:1px solid #eceff2}.word-footer{bottom:calc(9px * var(--word-zoom));display:flex;justify-content:center;gap:8px;padding-top:4px;border-top:1px solid #eceff2}.word-footer>span:first-child:not(:empty){margin-right:auto}.word-footer b{font-weight:500}.word-editor{min-height:calc((var(--word-page-min-height) - var(--word-page-margin) * 2) * var(--word-zoom));padding:calc(15px * var(--word-zoom)) 0;outline:0;font-size:calc(16px * var(--word-zoom));line-height:1.65;column-gap:calc(28px * var(--word-zoom));column-rule:1px solid #e5e7eb}.word-editor h1{margin:.4em 0 .8em;color:#193b69;font-size:2em}.word-editor p{margin:.55em 0}.word-editor table{width:100%;margin:1em 0;border-collapse:collapse;break-inside:avoid}.word-editor td{min-width:55px;padding:7px;border:1px solid #405b7e}.word-editor tr:first-child{color:#fff;background:#3d75b9;font-weight:700}.word-figure{margin:1em auto;text-align:center;break-inside:avoid}.word-figure img{max-width:75%;max-height:340px;border-radius:4px}.word-figure figcaption,.word-caption,.word-chart figcaption{color:#596273;font-size:.78em;text-align:center}.word-chart{max-width:460px;margin:1.3em auto;padding:14px;border:1px solid #d5dae1;border-radius:5px;background:#fafbfc;text-align:center;break-inside:avoid}.word-chart>div{height:180px;display:flex;align-items:flex-end;justify-content:center;gap:18px;margin:16px 0;border-bottom:1px solid #707987}.word-chart-bar{position:relative;width:48px;min-height:8px;color:#fff;background:linear-gradient(#62a1ee,#2b67b1)}.word-chart-bar b{position:absolute;top:-19px;left:0;right:0;color:#30435c;font-size:11px}.word-chart-bar span{position:absolute;left:0;right:0;bottom:-18px;color:#5d6570;font-size:9px}.word-status{min-height:27px;display:flex;align-items:center;gap:18px;padding:0 13px;border-top:1px solid #cfd4dc;color:#4e5867;background:#f9fafb;font-size:8px}.word-status label{display:flex;align-items:center;gap:6px;margin-left:auto}.word-status input{width:100px;accent-color:#326dbc}.word-status b{width:32px}.word-dialog-backdrop{position:absolute;z-index:20;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#111c2b61}.word-dialog{width:min(430px,90%);overflow:hidden;border:1px solid #d8dce3;border-radius:10px;background:#fff;box-shadow:0 18px 50px #111c2b4d}.word-dialog>header{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid #e5e7eb;font-size:11px}.word-dialog>header button{width:28px;height:28px;display:grid;place-items:center;border-radius:5px;background:transparent;cursor:pointer}.word-dialog>header button:hover{background:#eef1f5}.word-dialog>header svg{width:15px}.word-open-list{max-height:330px;display:grid;gap:5px;padding:10px;overflow:auto}.word-open-list>button{min-height:56px;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid #e4e7eb;border-radius:7px;background:#fff;cursor:pointer;text-align:left}.word-open-list>button:hover{border-color:#7aa6dd;background:#f1f7fe}.word-open-list>button>svg{width:25px;color:#3271c4}.word-open-list>button span{min-width:0;display:grid;gap:3px}.word-open-list small{overflow:hidden;color:#79818e;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.word-open-list p{color:#8a929e;text-align:center;font-size:10px}.word-symbols{display:grid;grid-template-columns:repeat(8,1fr);gap:5px;padding:15px}.word-symbols button{aspect-ratio:1;border:1px solid #dde1e7;border-radius:5px;background:#fff;cursor:pointer;font-size:18px}.word-symbols button:hover{color:#1f62ad;border-color:#6da0dc;background:#eaf3ff}.word-dialog-form{display:grid;gap:12px;padding:18px}.word-dialog-form>p{margin:0;color:#707987;font-size:9px}.word-dialog-form label{display:grid;grid-template-columns:95px 1fr;align-items:center;gap:10px;font-size:10px}.word-dialog-form input,.word-dialog-form select{min-width:0;height:32px;padding:0 8px;border:1px solid #cdd2da;border-radius:5px;background:#fff}.word-dialog-form input[type=range]{padding:0}.word-dialog-form>button{height:34px;margin-left:auto;padding:0 18px;border-radius:5px;color:#fff;background:#3471c4;cursor:pointer;font-size:9px;font-weight:700}.word-column-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:18px}.word-column-options>button{display:grid;gap:8px;padding:14px 8px;border:1px solid #d9dde4;border-radius:7px;background:#fff;cursor:pointer}.word-column-options>button:hover,.word-column-options>button.active{border-color:#568dce;background:#edf5ff}.word-column-options>button span{height:70px;display:flex;gap:4px;padding:7px;background:#f6f7f9}.word-column-options i{flex:1;background:repeating-linear-gradient(#bbc3cd 0 2px,transparent 2px 7px)}@media(max-width:760px){.window-word{width:calc(100vw - 16px)}.word-topbar{grid-template-columns:1fr auto}.word-topbar>label{display:none}.word-tabs button{padding:0 8px}.word-ribbon{min-height:78px}.word-ribbon-group{padding-inline:3px}.word-ribbon-group>button{min-width:34px}.word-find{min-width:700px}.word-workspace{padding:12px}.word-paper{margin-left:0}.word-status span:nth-child(2),.word-status span:nth-child(3){display:none}}@media print{body *{visibility:hidden!important}.word-paper,.word-paper *{visibility:visible!important}.word-paper{position:absolute;left:0;top:0;width:100%!important;min-height:100%!important;box-shadow:none}}.window-excel{width:min(1120px,calc(100vw - 115px));height:min(740px,calc(100dvh - 95px))}.excel-app{height:100%;display:flex;flex-direction:column;overflow:hidden;color:#17231c;background:#f3f5f4;font-family:Segoe UI,Pretendard,sans-serif}.excel-app button,.excel-app input,.excel-app select{font:inherit;color:inherit}.excel-titlebar{min-height:38px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:0 10px;color:#fff;background:#217346}.excel-titlebar>div{display:flex;align-items:center;gap:4px}.excel-titlebar>div>svg{width:20px}.excel-titlebar>div b{margin-right:7px;font-size:11px}.excel-titlebar button{min-height:27px;display:flex;align-items:center;gap:5px;padding:0 8px;border-radius:4px;color:#fff;background:transparent;cursor:pointer;font-size:8px}.excel-titlebar button:hover{background:#ffffff29}.excel-titlebar button svg{width:14px}.excel-titlebar>label{display:flex;align-items:center;gap:8px}.excel-titlebar>label input{width:190px;padding:5px 9px;border:1px solid rgba(255,255,255,.25);border-radius:4px;color:#fff;background:#0000001c;text-align:center;font-size:10px}.excel-titlebar>label span{display:flex;align-items:center;gap:3px;color:#d9f5e5;font-size:8px}.excel-titlebar>label svg{width:11px}.excel-titlebar>button{justify-self:end;color:#145f38;background:#fff;font-weight:700}.excel-tabs{min-height:31px;display:flex;align-items:flex-end;padding-left:9px;background:#fff}.excel-tabs button{height:29px;padding:0 12px;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:9px}.excel-tabs button:hover{background:#edf7f1}.excel-tabs button.active{color:#14643a;border-color:#217346;font-weight:800}.excel-ribbon{min-height:88px;flex:0 0 auto;display:flex;align-items:stretch;padding:5px 7px;border-block:1px solid #d6ddd9;background:#fbfcfb;overflow-x:auto}.excel-group{position:relative;flex:0 0 auto;display:flex;padding:0 6px 14px;border-right:1px solid #d8dedb}.excel-group>div{display:flex;align-items:center;gap:2px}.excel-group>small{position:absolute;left:3px;right:3px;bottom:0;color:#748078;text-align:center;font-size:7px}.excel-group button,.excel-color{min-width:44px;height:58px;display:grid;place-items:center;align-content:center;gap:2px;padding:3px;border-radius:5px;background:transparent;cursor:pointer;font-size:7px}.excel-group button:hover,.excel-group button.active,.excel-color:hover{background:#dff0e7;outline:1px solid #85b69b}.excel-group button svg,.excel-color svg{width:19px;height:19px}.excel-color{position:relative}.excel-color input{position:absolute;inset:auto 6px 14px;width:30px;height:5px;padding:0;border:0;opacity:.9}.excel-function-icon{display:grid;place-items:center;width:22px;height:22px;color:#217346;font-size:17px;font-weight:800}.excel-record-dot{width:17px;height:17px;border-radius:50%;background:#df3f49;box-shadow:inset 0 0 0 3px #fff,0 0 0 1px #c8323d}.excel-formula{min-height:31px;display:grid;grid-template-columns:100px 25px 1fr;align-items:center;border-bottom:1px solid #cdd4d0;background:#fff}.excel-formula b{height:100%;display:grid;place-items:center;border-right:1px solid #d8ddda;font-size:9px}.excel-formula>svg{width:14px;justify-self:center;color:#6f7872}.excel-formula input{height:100%;padding:0 8px;border:0;border-left:1px solid #e0e4e2;outline:0;font-family:ui-monospace,SFMono-Regular,monospace;font-size:10px}.excel-workspace{position:relative;flex:1;min-height:0;overflow:auto;background:#e9ecea}.excel-grid{min-width:max-content;display:grid;align-items:stretch;background:#fff}.excel-corner,.excel-col-heading,.excel-row-heading{position:relative;z-index:3;display:grid;place-items:center;border:0;border-right:1px solid #cfd5d1;border-bottom:1px solid #cfd5d1;color:#4d5b53;background:#f3f6f4;font-size:9px}.excel-corner{position:sticky;z-index:7;top:0;left:0}.excel-col-heading{position:sticky;z-index:6;top:0;height:24px;cursor:pointer}.excel-row-heading{position:sticky;z-index:5;left:0;cursor:pointer}.excel-col-heading:hover,.excel-row-heading:hover{background:#dceae3}.excel-cell{position:relative;min-width:0;display:flex;align-items:center;padding:0 5px;border-right:1px solid #e0e4e1;border-bottom:1px solid #e0e4e1;background:#fff;cursor:cell;font-size:9px;white-space:nowrap}.excel-cell span{width:100%;overflow:hidden;text-overflow:ellipsis}.excel-cell.selected{background-color:#e8f3ed!important;box-shadow:inset 0 0 0 9999px #21734609}.excel-cell.active{z-index:2;outline:2px solid #217346;outline-offset:-2px}.excel-cell.active:after{content:"";position:absolute;right:-2px;bottom:-2px;width:5px;height:5px;background:#217346}.excel-cell input{position:absolute;z-index:4;top:-1px;right:-1px;bottom:-1px;left:-1px;width:calc(100% + 2px);padding:0 5px;border:2px solid #217346;outline:0;background:#fff;font-size:9px}.excel-workspace.freeze .excel-col-heading,.excel-workspace.freeze .excel-corner{box-shadow:0 2px 3px #1e32262e}.excel-workspace.freeze .excel-row-heading,.excel-workspace.freeze .excel-corner{box-shadow:2px 0 3px #1e32262e}.excel-footer{min-height:30px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:15px;padding:0 10px 0 0;border-top:1px solid #cfd5d1;color:#536058;background:#f7f9f8;font-size:8px}.excel-sheets{height:100%;display:flex;align-items:end}.excel-sheets button{min-width:78px;height:28px;padding:0 10px;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:8px}.excel-sheets button.active{color:#14643a;border-color:#217346;background:#fff;font-weight:800}.excel-sheets button:last-child{min-width:30px;width:30px;padding:0}.excel-sheets svg{width:13px}.excel-footer>span{color:#34734f}.excel-footer>b{font-weight:600}.excel-chart{position:absolute;z-index:10;top:24px;right:24px;width:370px;border:1px solid #bbc7c0;border-radius:7px;background:#fff;box-shadow:0 14px 38px #182e2047}.excel-chart>header{height:37px;display:flex;align-items:center;justify-content:space-between;padding:0 11px;border-bottom:1px solid #e0e5e2}.excel-chart>header b{font-size:10px}.excel-chart>header button{width:25px;height:25px;display:grid;place-items:center;border-radius:4px;background:transparent;cursor:pointer}.excel-chart>header svg{width:14px}.excel-chart-plot{height:245px;display:flex;align-items:flex-end;justify-content:center;gap:14px;padding:35px 22px 33px}.excel-chart-plot>div{position:relative;width:44px;height:100%;display:flex;align-items:center;justify-content:flex-end;flex-direction:column}.excel-chart-plot i{width:28px;min-height:3px;transition:.25s}.excel-chart-plot b{margin-bottom:4px;color:#405049;font-size:8px}.excel-chart-plot span{position:absolute;top:calc(100% + 7px);width:60px;overflow:hidden;color:#66736b;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:7px}.excel-chart-plot.line{align-items:center;border-bottom:1px solid #86948c}.excel-chart-plot.line i{width:10px;border-radius:50%}.excel-pie-wrap{min-height:250px;display:flex;align-items:center;justify-content:center;gap:25px;padding:20px}.excel-pie{width:150px;height:150px;flex:0 0 auto;border-radius:50%;box-shadow:inset 0 0 0 22px #fff}.excel-pie-wrap ul{display:grid;gap:6px;margin:0;padding:0;list-style:none;font-size:8px}.excel-pie-wrap li{display:flex;align-items:center;gap:5px}.excel-pie-wrap li i{width:9px;height:9px}.excel-chart>p{min-height:180px;display:grid;place-items:center;padding:25px;color:#7d8881;text-align:center;font-size:9px}.excel-chart>footer{padding:8px 11px;border-top:1px solid #e5e9e7;color:#7d8781;font-size:7px}.excel-dialog-backdrop{position:absolute;z-index:30;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#13221966}.excel-dialog{width:min(440px,92%);max-height:88%;overflow:hidden;border:1px solid #d1d9d4;border-radius:9px;color:#17231c;background:#fff;box-shadow:0 18px 50px #1125184d}.excel-dialog>header{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid #e0e5e2;font-size:11px}.excel-dialog>header button{width:28px;height:28px;display:grid;place-items:center;border-radius:5px;background:transparent;cursor:pointer}.excel-dialog>header button:hover{background:#edf2ef}.excel-dialog>header svg{width:15px}.excel-workbook-list{max-height:330px;display:grid;gap:6px;padding:11px;overflow:auto}.excel-workbook-list>button{min-height:58px;display:flex;align-items:center;gap:11px;padding:8px 11px;border:1px solid #dfe5e1;border-radius:7px;background:#fff;cursor:pointer;text-align:left}.excel-workbook-list>button:hover{border-color:#7eb296;background:#eef8f2}.excel-workbook-list>button>svg{width:26px;color:#217346}.excel-workbook-list span{display:grid;gap:3px}.excel-workbook-list small{color:#79857d;font-size:8px}.excel-form{display:grid;gap:12px;padding:18px}.excel-form>p{margin:0;color:#68756d;font-size:9px;line-height:1.55}.excel-form label{display:grid;grid-template-columns:95px 1fr;align-items:center;gap:10px;font-size:9px}.excel-form input,.excel-form select{height:32px;min-width:0;padding:0 8px;border:1px solid #cbd4ce;border-radius:5px;background:#fff}.excel-form input[type=color]{padding:3px}.excel-form input[type=range]{padding:0}.excel-form>button,.excel-form>div button{height:34px;padding:0 15px;border-radius:5px;color:#fff;background:#217346;cursor:pointer;font-size:9px;font-weight:700}.excel-form>button{justify-self:end}.excel-form>div{display:flex;justify-content:flex-end;gap:6px}.excel-dialog-function{width:min(680px,94%)}.excel-functions{max-height:440px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:12px;overflow:auto}.excel-functions section{padding:8px;border:1px solid #e0e6e2;border-radius:7px}.excel-functions h4{display:flex;align-items:center;gap:7px;margin:0 0 6px;color:#236f45;font-size:10px}.excel-functions h4 span{width:24px;height:24px;display:grid;place-items:center;border-radius:5px;background:#e6f3ec}.excel-functions section button{width:100%;display:grid;grid-template-columns:65px 1fr;gap:2px 7px;padding:7px;border-radius:5px;background:transparent;cursor:pointer;text-align:left}.excel-functions section button:hover{background:#edf7f1}.excel-functions code{overflow:hidden;color:#315c43;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.excel-functions small{grid-column:2;color:#78837c;font-size:7px}@media(max-width:760px){.window-excel{width:calc(100vw - 16px)}.excel-titlebar{grid-template-columns:1fr auto}.excel-titlebar>label{display:none}.excel-tabs{overflow-x:auto}.excel-tabs button{flex:0 0 auto;padding:0 8px}.excel-ribbon{min-height:80px}.excel-group{padding-inline:3px}.excel-group button,.excel-color{min-width:40px}.excel-chart{top:10px;right:10px;width:min(370px,calc(100% - 20px))}.excel-footer>span{display:none}.excel-functions{grid-template-columns:1fr}}.window-powerpoint{width:min(1140px,calc(100vw - 110px));height:min(750px,calc(100dvh - 90px))}.ppt-app{height:100%;display:flex;flex-direction:column;overflow:hidden;color:#252b39;background:#eef0f3;font-family:Segoe UI,Pretendard,sans-serif}.ppt-app button,.ppt-app input,.ppt-app textarea,.ppt-app select{font:inherit;color:inherit}.ppt-titlebar{min-height:39px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:0 10px;color:#fff;background:#b7472a}.ppt-titlebar>div{display:flex;align-items:center;gap:4px}.ppt-titlebar>div>svg{width:20px}.ppt-titlebar>div b{margin-right:8px;font-size:11px}.ppt-titlebar button{min-height:27px;display:flex;align-items:center;gap:5px;padding:0 8px;border-radius:4px;color:#fff;background:transparent;cursor:pointer;font-size:8px}.ppt-titlebar button:hover{background:#ffffff2b}.ppt-titlebar button:disabled{opacity:.35}.ppt-titlebar button svg{width:14px}.ppt-titlebar>label{display:flex;align-items:center;gap:8px}.ppt-titlebar>label input{width:195px;padding:5px 9px;border:1px solid rgba(255,255,255,.24);border-radius:4px;color:#fff;background:#0000001a;text-align:center;font-size:10px}.ppt-titlebar>label span{display:flex;align-items:center;gap:3px;color:#ffe8df;font-size:8px}.ppt-titlebar>label svg{width:11px}.ppt-titlebar>div:last-child{justify-self:end}.ppt-titlebar .ppt-present-button{color:#9b371f;background:#fff;font-weight:800}.ppt-tabs{min-height:31px;display:flex;align-items:flex-end;padding-left:9px;background:#fff}.ppt-tabs button{height:29px;padding:0 13px;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:9px}.ppt-tabs button:hover{background:#fff1ed}.ppt-tabs button.active{color:#a53a22;border-color:#b7472a;font-weight:800}.ppt-ribbon{min-height:89px;flex:0 0 auto;display:flex;align-items:stretch;padding:5px 7px;border-block:1px solid #d9dce2;background:#fbfbfc;overflow-x:auto}.ppt-group{position:relative;flex:0 0 auto;display:flex;padding:0 7px 14px;border-right:1px solid #dbdde2}.ppt-group>div{display:flex;align-items:center;gap:2px}.ppt-group>small{position:absolute;left:3px;right:3px;bottom:0;color:#78808c;text-align:center;font-size:7px}.ppt-group button{min-width:45px;height:59px;display:grid;place-items:center;align-content:center;gap:2px;padding:3px;border-radius:5px;background:transparent;cursor:pointer;font-size:7px}.ppt-group button:hover,.ppt-group button.active{background:#f8e4de;outline:1px solid #dda392}.ppt-group button svg{width:20px;height:20px}.ppt-themes{display:flex;align-items:center;gap:8px;padding:4px 10px}.ppt-themes>button{width:105px;display:grid;gap:4px;padding:5px;border:2px solid transparent;border-radius:6px;background:transparent;cursor:pointer}.ppt-themes>button:hover,.ppt-themes>button.active{border-color:#c15a3d;background:#fff3ef}.ppt-themes>button>span{position:relative;height:46px;overflow:hidden;border:1px solid #cdd1d8}.ppt-themes>button i{position:absolute;left:7px;right:7px;top:8px;height:8px}.ppt-themes>button b{position:absolute;left:7px;width:35px;bottom:8px;height:17px}.ppt-themes small{font-size:7px}.ppt-themes>label{display:grid;place-items:center;gap:3px;padding-left:8px;border-left:1px solid #d8dce1;font-size:7px}.ppt-themes input{width:38px;height:30px;padding:2px;border:1px solid #ccd1d8;border-radius:4px}.ppt-choice-ribbon{display:flex;align-items:center;gap:5px;padding:3px 10px}.ppt-choice-ribbon>button{width:80px;height:68px;display:grid;place-items:center;gap:2px;padding:4px;border:2px solid transparent;border-radius:6px;background:transparent;cursor:pointer;font-size:7px}.ppt-choice-ribbon>button:hover,.ppt-choice-ribbon>button.active{border-color:#c76045;background:#fff1ed}.ppt-choice-ribbon>button:disabled{opacity:.4}.ppt-choice-ribbon>button span{width:54px;height:36px;display:grid;place-items:center;color:#a8452d;border:1px solid #cbd0d7;background:#fff;overflow:hidden}.ppt-choice-ribbon svg{width:18px}.ppt-choice-ribbon p{margin-left:8px;color:#808792;font-size:8px}.ppt-workspace{flex:1;min-height:0;display:grid;grid-template-columns:145px minmax(0,1fr) 175px;overflow:hidden}.ppt-thumbnails{overflow:auto;padding:8px 7px;border-right:1px solid #d3d7dd;background:#f7f8fa}.ppt-thumbnails>header{display:flex;align-items:center;justify-content:space-between;padding:0 5px 7px}.ppt-thumbnails>header b{font-size:9px}.ppt-thumbnails>header button{width:23px;height:23px;display:grid;place-items:center;border-radius:4px;background:#e8ebef;cursor:pointer}.ppt-thumbnails>header svg{width:13px}.ppt-thumbnails>button{width:100%;display:grid;grid-template-columns:18px 1fr;gap:3px;padding:5px 4px;border:2px solid transparent;border-radius:5px;background:transparent;cursor:pointer}.ppt-thumbnails>button:hover{background:#eef0f3}.ppt-thumbnails>button.active{border-color:#c45a3e;background:#fff0eb}.ppt-thumbnails>button>b{color:#646c78;font-size:8px;font-weight:500}.ppt-thumbnails>button>div{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--thumb-bg);box-shadow:0 1px 4px #1e253133;pointer-events:none}.ppt-thumbnails .ppt-slide-content{width:960px;height:540px;transform:scale(.105);transform-origin:top left}.ppt-editor-area{min-width:0;overflow:auto;display:grid;place-items:center;padding:25px;background:#d9dce1}.ppt-slide-canvas{position:relative;width:960px;height:540px;flex:0 0 auto;overflow:hidden;color:var(--ppt-text);background:var(--ppt-background);box-shadow:0 5px 22px #1b222d47;transform-origin:center}.ppt-slide-canvas:before,.ppt-slide-content:before{content:"";position:absolute;left:0;top:0;width:100%;height:8px;background:var(--ppt-primary)}.ppt-slide-canvas:after,.ppt-slide-content:after{content:"";position:absolute;right:-80px;bottom:-80px;width:190px;height:190px;border-radius:50%;background:var(--ppt-accent);opacity:.25;pointer-events:none}.ppt-element{position:absolute;z-index:1;display:flex;align-items:center;padding:4px;border:1px solid transparent;color:var(--ppt-text);white-space:pre-wrap;-webkit-user-select:none;user-select:none;box-sizing:border-box}.ppt-element>span{width:100%}.ppt-element.selected{z-index:5;border:2px solid #3485e5;box-shadow:0 0 0 1px #fff;cursor:move}.ppt-element.selected:before,.ppt-element.selected:after{content:"";position:absolute;width:8px;height:8px;border:1px solid #2473ca;border-radius:50%;background:#fff}.ppt-element.selected:before{left:-5px;top:-5px}.ppt-element.selected:after{right:-5px;top:-5px}.ppt-resize-handle{position:absolute;z-index:7;right:-6px;bottom:-6px;width:11px;height:11px;border:1px solid #2473ca;border-radius:2px;background:#fff;cursor:nwse-resize}.ppt-selection-label{position:absolute;left:-2px;top:-20px;padding:2px 5px;color:#fff;border-radius:3px;background:#2677ce;font-size:8px;white-space:nowrap}.ppt-element textarea{position:absolute;z-index:8;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:4px;border:2px solid #3485e5;outline:0;resize:none;color:inherit;background:#ffffffeb;font:inherit;text-align:inherit}.ppt-element-shape{border:2px solid var(--ppt-primary)}.ppt-element-shape.round{border-radius:22px}.ppt-element-shape.circle{border-radius:50%}.ppt-element-shape.triangle{clip-path:polygon(50% 0,100% 100%,0 100%)}.ppt-element-wordart{justify-content:center;color:var(--ppt-primary);-webkit-text-stroke:1px var(--ppt-accent);text-shadow:2px 3px 0 color-mix(in srgb,var(--ppt-primary),transparent 75%);transform:rotate(-3deg)}.ppt-element img,.ppt-element video{width:100%;height:100%;object-fit:contain}.ppt-element audio{width:100%}.ppt-element-table{padding:0}.ppt-element-table table{width:100%;height:100%;border-collapse:collapse;background:#fff;font-size:15px}.ppt-element-table td{padding:4px 7px;border:1px solid color-mix(in srgb,var(--ppt-primary),#fff 25%)}.ppt-element-table tr:first-child{color:#fff;background:var(--ppt-primary);font-weight:700}.ppt-chart{width:100%;height:100%;display:flex;flex-direction:column;padding:10px;color:var(--ppt-text);background:#ffffffbf}.ppt-chart>b{text-align:center;font-size:20px}.ppt-chart>section{flex:1;display:flex;align-items:flex-end;justify-content:center;gap:20px;padding:25px 12px 23px;border-bottom:2px solid #87909d}.ppt-chart i{position:relative;width:45px;min-height:4px;background:var(--ppt-primary);font-style:normal}.ppt-chart i:nth-child(2n){background:var(--ppt-accent)}.ppt-chart em{position:absolute;left:0;right:0;top:-19px;text-align:center;font-size:12px;font-style:normal}.ppt-chart span{position:absolute;left:-10px;right:-10px;bottom:-21px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.ppt-properties{overflow:auto;padding:12px;border-left:1px solid #d3d7dd;background:#f8f9fa}.ppt-properties h3{margin:4px 0 10px;color:#4d5664;font-size:10px}.ppt-properties p{margin:0 0 16px;color:#7a828e;font-size:8px;line-height:1.5}.ppt-properties label{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:5px;margin-bottom:9px;font-size:8px}.ppt-properties input[type=range]{width:75px;accent-color:#bd5135}.ppt-properties input[type=color]{width:34px;height:27px;padding:2px;border:1px solid #ccd1d7}.ppt-properties label b{font-size:7px}.ppt-properties>button{width:100%;height:30px;display:flex;align-items:center;justify-content:center;gap:5px;margin-bottom:15px;border-radius:5px;color:#9c3620;background:#f9e4df;cursor:pointer;font-size:8px}.ppt-properties>button svg{width:13px}.ppt-properties textarea{width:100%;min-height:95px;padding:8px;border:1px solid #ccd2da;border-radius:5px;outline:0;resize:vertical;background:#fffef5;font-size:8px;line-height:1.5}.ppt-status{min-height:29px;display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:12px;padding:0 12px;border-top:1px solid #cfd3da;color:#58616e;background:#f9fafb;font-size:8px}.ppt-status>span:nth-child(2){color:#a44831;text-align:center}.ppt-status label{display:flex;align-items:center;gap:6px}.ppt-status input{width:90px;accent-color:#b7472a}.ppt-status b{width:30px}.ppt-dialog-backdrop{position:absolute;z-index:30;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#1c1f2b6b}.ppt-dialog{width:min(440px,92%);max-height:88%;overflow:hidden;border:1px solid #d4d8df;border-radius:9px;background:#fff;box-shadow:0 18px 50px #191d294d}.ppt-dialog>header{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid #e2e5ea;font-size:11px}.ppt-dialog>header button{width:28px;height:28px;display:grid;place-items:center;border-radius:5px;background:transparent;cursor:pointer}.ppt-dialog>header button:hover{background:#eef0f3}.ppt-dialog>header svg{width:15px}.ppt-open-list{max-height:330px;display:grid;gap:6px;padding:11px;overflow:auto}.ppt-open-list>button{min-height:58px;display:flex;align-items:center;gap:11px;padding:8px 11px;border:1px solid #e1e4e9;border-radius:7px;background:#fff;cursor:pointer;text-align:left}.ppt-open-list>button:hover{border-color:#db8b76;background:#fff2ee}.ppt-open-list>button>svg{width:26px;color:#b7472a}.ppt-open-list span{display:grid;gap:3px}.ppt-open-list small{color:#7c8490;font-size:8px}.ppt-layouts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px}.ppt-layouts>button{display:grid;gap:7px;padding:10px 6px;border:1px solid #d9dde3;border-radius:7px;background:#fff;cursor:pointer}.ppt-layouts>button:hover{border-color:#d27861;background:#fff4f1}.ppt-layouts>button>span{position:relative;height:78px;border:1px solid #cbd0d7;background:#fafafa}.ppt-layouts>button i,.ppt-layouts>button b{position:absolute;left:10px;right:10px;top:12px;height:9px;background:#abb3be}.ppt-layouts>button b{top:33px;height:29px;background:#d8dce2}.ppt-layouts>button b+b{left:52%}.ppt-layouts strong{font-size:8px}.ppt-form{display:grid;gap:12px;padding:18px}.ppt-form p{margin:0;color:#717986;font-size:9px}.ppt-form label{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:10px;font-size:9px}.ppt-form input{height:32px;min-width:0;padding:0 8px;border:1px solid #ccd2da;border-radius:5px}.ppt-form>button{justify-self:end;height:34px;padding:0 17px;border-radius:5px;color:#fff;background:#b7472a;cursor:pointer;font-size:9px;font-weight:700}.ppt-slideshow{position:fixed;z-index:9999;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden;background:#090a0d}.ppt-show-slide{width:min(100vw,177.78vh);aspect-ratio:16/9;overflow:hidden}.ppt-show-slide .ppt-slide-content{position:relative;width:100%;height:100%;overflow:hidden}.ppt-show-controls{position:absolute;left:50%;bottom:16px;display:flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid rgba(255,255,255,.2);border-radius:22px;color:#fff;background:#0f1117ad;transform:translate(-50%);opacity:.25;transition:.2s}.ppt-slideshow:hover .ppt-show-controls{opacity:1}.ppt-show-controls button{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;color:#fff;background:transparent;cursor:pointer}.ppt-show-controls button:hover{background:#ffffff29}.ppt-show-controls svg{width:17px}.ppt-show-controls span{min-width:45px;text-align:center;font-size:9px}.transition-fade{animation:ppt-fade .6s ease}.transition-push{animation:ppt-push .6s ease}.transition-wipe{animation:ppt-wipe .7s ease}.transition-zoom{animation:ppt-zoom .6s ease}@keyframes ppt-fade{0%{opacity:0}}@keyframes ppt-push{0%{transform:translate(100%)}}@keyframes ppt-wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes ppt-zoom{0%{opacity:0;transform:scale(.65)}}.ppt-element.play.anim-fade{animation:ppt-fade .8s .25s both}.ppt-element.play.anim-fly{animation:ppt-fly .8s .25s both}.ppt-element.play.anim-zoom{animation:ppt-zoom .75s .25s both}.ppt-element.play.anim-bounce{animation:ppt-bounce .9s .25s both}@keyframes ppt-fly{0%{opacity:0;transform:translate(-120px)}}@keyframes ppt-bounce{0%{opacity:0;transform:scale(.4)}55%{opacity:1;transform:scale(1.18)}75%{transform:scale(.9)}to{transform:scale(1)}}@media(max-width:900px){.ppt-workspace{grid-template-columns:120px minmax(0,1fr)}.ppt-properties{display:none}.ppt-titlebar{grid-template-columns:1fr auto}.ppt-titlebar>label{display:none}}@media(max-width:760px){.window-powerpoint{width:calc(100vw - 16px)}.ppt-tabs{overflow-x:auto}.ppt-tabs button{flex:0 0 auto;padding:0 8px}.ppt-workspace{grid-template-columns:95px minmax(0,1fr)}.ppt-editor-area{padding:12px}.ppt-status>span:nth-child(2){display:none}}@media print{body *{visibility:hidden!important}.ppt-slide-canvas,.ppt-slide-canvas *{visibility:visible!important}.ppt-slide-canvas{position:absolute;left:0;top:0;transform:none!important;width:100vw;height:56.25vw;box-shadow:none}}.ai-shell{--ai-ink: #292740;--ai-muted: #746f87;--ai-purple: #6d5bd4;--ai-purple-dark: #5142ad;--ai-line: #e9e5f1;min-height:100vh;color:var(--ai-ink);background:radial-gradient(circle at 88% 5%,rgba(255,211,104,.2),transparent 25%),radial-gradient(circle at 7% 28%,rgba(119,219,204,.16),transparent 24%),#faf9fc}.ai-shell button,.ai-shell select,.ai-shell input{font:inherit}.ai-shell button{color:inherit;cursor:pointer}.ai-shell button:disabled{cursor:not-allowed}.ai-header{position:relative;z-index:20;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px clamp(20px,4vw,64px);border-bottom:1px solid rgba(228,222,239,.85);background:#ffffffd1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.ai-header-left,.ai-header-actions,.ai-brand,.ai-header-actions button{display:flex;align-items:center}.ai-header-left{gap:10px}.ai-brand{gap:10px;padding:0;background:transparent;text-align:left}.ai-brand img{width:50px;height:50px;object-fit:contain}.ai-brand span{display:grid;gap:2px}.ai-brand strong{font-size:16px;letter-spacing:.05em}.ai-brand small{display:flex;align-items:center;gap:4px;color:var(--ai-muted);font-size:10px;font-weight:800}.ai-header-actions{gap:8px}.ai-header-actions button,.ai-icon-button{min-height:40px;gap:7px;padding:0 13px;border:1px solid var(--ai-line);border-radius:999px;background:#fff;font-size:11px;font-weight:900}.ai-icon-button{width:40px;display:grid;place-items:center;padding:0}.ai-language{color:var(--ai-purple)!important}.ai-hero{max-width:1240px;min-height:415px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:50px;margin:0 auto;padding:58px clamp(20px,4vw,56px) 44px}.ai-eyebrow,.ai-section-title>div>span,.ai-panel-kicker,.ai-stage-topline>div>span{color:var(--ai-purple);font-size:11px;font-weight:950;letter-spacing:.12em}.ai-eyebrow{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#eeebff}.ai-hero h1{margin:17px 0 14px;font-size:clamp(42px,5.2vw,68px);line-height:.99;letter-spacing:-.05em}.ai-hero h1 em{color:var(--ai-purple);font-style:normal}.ai-hero p{max-width:590px;margin:0;color:var(--ai-muted);font-size:15px;line-height:1.75;word-break:keep-all}.ai-hero>div:first-child>button{min-height:51px;display:inline-flex;align-items:center;gap:18px;margin-top:25px;padding:0 20px;border-radius:14px;color:#fff;background:linear-gradient(135deg,#7864dc,#5847bb);box-shadow:0 13px 28px #5847bb38;font-size:13px;font-weight:950}.ai-hero-visual{position:relative;min-height:300px}.ai-brain{position:absolute;inset:50% auto auto 50%;width:142px;height:142px;display:grid;place-items:center;transform:translate(-50%,-50%);border:9px solid rgba(255,255,255,.9);border-radius:42px;background:linear-gradient(145deg,#fff,#f0edff);box-shadow:0 28px 70px #5342a438;font-size:68px}.ai-brain small{position:absolute;right:-10px;bottom:4px;padding:5px 8px;border-radius:8px;color:#fff;background:var(--ai-purple);font-size:10px;font-weight:950}.ai-orbit{position:absolute;inset:50% auto auto 50%;border:1.5px dashed rgba(109,91,212,.26);border-radius:50%;transform:translate(-50%,-50%) rotate(-12deg)}.orbit-one{width:340px;height:220px}.orbit-two{width:420px;height:280px;transform:translate(-50%,-50%) rotate(24deg)}.ai-orbit span{position:absolute;width:19px;height:19px;border:4px solid #fff;border-radius:50%;box-shadow:0 5px 12px #322d4b2e}.red-dot{background:#ed6680}.blue-dot{background:#4c8ee9}.orbit-one span:nth-child(1){left:20px;top:60px}.orbit-one span:nth-child(2){left:65px;bottom:14px}.orbit-one span:nth-child(3){left:108px;top:10px}.orbit-two span:nth-child(1){right:17px;top:52px}.orbit-two span:nth-child(2){right:74px;bottom:7px}.orbit-two span:nth-child(3){right:112px;top:4px}.ai-hero-bubble{position:absolute;right:0;top:34px;padding:11px 15px;border-radius:15px 15px 15px 4px;background:#fff;box-shadow:0 14px 35px #3b33611f;color:#5f51b5;font-size:12px;font-weight:900}.ai-category-section,.ai-roadmap{max-width:1240px;margin:0 auto;padding:38px clamp(20px,4vw,56px)}.ai-category-section{border-radius:32px;background:#fff;box-shadow:0 20px 65px #382d5e12}.ai-section-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:23px}.ai-section-title h2{margin:5px 0 0;font-size:27px;letter-spacing:-.03em}.ai-section-title p{max-width:380px;margin:0;color:var(--ai-muted);font-size:12px;text-align:right}.ai-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ai-category-card{min-height:138px;display:grid;grid-template-columns:43px 1fr;align-items:start;gap:11px;padding:17px;border:1px solid var(--ai-line);border-radius:17px;background:#faf9fc;text-align:left;opacity:.68}.ai-category-card.available{opacity:1;background:#fff;transition:transform .15s,box-shadow .15s,border-color .15s}.ai-category-card.available:hover{transform:translateY(-3px);border-color:#d4ccfa;box-shadow:0 14px 28px #4a3d891a}.category-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;color:#6958c8;background:#eeebff}.category-copy{display:grid;gap:6px}.category-copy strong{font-size:15px}.category-copy small{color:var(--ai-muted);font-size:11px;line-height:1.45;word-break:keep-all}.category-status{grid-column:2;justify-self:end;align-self:end;color:#a19cad;font-size:9px;font-weight:900}.available .category-status{color:var(--ai-purple)}.category-2 .category-icon{color:#16876c;background:#e3f7ef}.category-3 .category-icon{color:#735bd1;background:#eeeaff}.category-4 .category-icon{color:#d67930;background:#fff0df}.ai-roadmap{padding-top:72px;padding-bottom:64px}.ai-roadmap-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ai-roadmap article{padding:17px;border:1px solid var(--ai-line);border-radius:17px;background:#ffffffbf}.ai-roadmap article.locked{opacity:.58}.roadmap-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px}.roadmap-heading>span{font-size:23px}.roadmap-heading div{display:grid}.roadmap-heading small{color:#9b95a8;font-size:8px;font-weight:950;letter-spacing:.1em}.roadmap-heading strong{font-size:13px}.roadmap-stages{display:grid;gap:5px}.roadmap-stages button{min-height:36px;display:grid;grid-template-columns:25px 1fr;align-items:center;gap:7px;padding:4px 7px;border-radius:9px;background:#f7f5fa;text-align:left}.roadmap-stages button:disabled{opacity:.62}.roadmap-stages button span{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;color:#fff;background:#9589c8;font-size:9px;font-weight:950}.roadmap-stages button small{overflow:hidden;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.active .roadmap-stages button:not(:disabled) span{background:var(--ai-purple)}.ai-stage-layout{max-width:1540px;margin:0 auto;padding:28px clamp(18px,3vw,46px) 54px}.ai-stage-topline{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:20px}.ai-stage-topline h1{margin:4px 0;font-size:27px;letter-spacing:-.03em}.ai-stage-topline p{margin:0;color:var(--ai-muted);font-size:12px}.ai-stage-picker{position:relative;display:grid;gap:4px}.ai-stage-picker span{color:var(--ai-muted);font-size:9px;font-weight:900}.ai-stage-picker select{min-width:220px;height:40px;padding:0 35px 0 12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--ai-line);border-radius:10px;color:var(--ai-ink);background:#fff;font-size:11px;font-weight:850}.ai-stage-picker svg{position:absolute;right:11px;bottom:12px;pointer-events:none}.ai-stage-grid{display:grid;grid-template-columns:225px minmax(580px,1fr) 260px;align-items:start;gap:14px}.ai-mission-card,.ai-lab-card,.ai-concept-card,.ai-thinking-card,.ai-metrics-card{border:1px solid var(--ai-line);border-radius:18px;background:#fff;box-shadow:0 13px 36px #392e5c0e}.ai-mission-card{padding:18px}.ai-mission-card h2{margin:8px 0 16px;font-size:13px;line-height:1.55}.ai-mission-list{display:grid;gap:8px}.ai-mission-list>div{display:flex;align-items:center;gap:8px;min-height:32px;padding:7px 8px;border-radius:9px;color:#858092;background:#f7f6f9;font-size:10px;font-weight:800}.ai-mission-list .done{color:#228164;background:#eaf8f2}.ai-mission-status{display:flex;align-items:center;gap:8px;margin-top:14px;padding:11px;border-radius:12px;background:#f4f1ff}.ai-mission-status>span{font-size:22px}.ai-mission-status div{display:grid;gap:2px}.ai-mission-status strong{font-size:10px}.ai-mission-status small{color:var(--ai-muted);font-size:8px;line-height:1.4}.ai-mission-status.complete{background:#e6f8f0}.ai-shell .ai-mission-next{position:relative;isolation:isolate;width:100%;min-height:74px;display:grid;grid-template-columns:38px minmax(0,1fr) 29px;align-items:center;gap:10px;margin-top:11px;padding:11px;overflow:hidden;border:1px solid rgba(255,255,255,.24);border-radius:15px;color:#fff;background:linear-gradient(135deg,#745ce0,#6045c8 58%,#5137b4);box-shadow:0 11px 24px #553ab540,inset 0 1px #fff3;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.ai-mission-next:before{position:absolute;z-index:-1;width:105px;height:105px;right:-38px;top:-58px;border-radius:50%;background:#ffffff1a;content:""}.ai-next-step-number{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:12px;color:#fff;background:#ffffff21;font-size:12px;font-weight:950;letter-spacing:.04em;box-shadow:inset 0 1px #ffffff1f}.ai-next-step-copy{min-width:0;display:grid;gap:4px;color:#fff}.ai-next-step-copy small{overflow:hidden;color:#ffffffad;font-size:6px;font-weight:950;letter-spacing:.1em;line-height:1;text-overflow:ellipsis;white-space:nowrap}.ai-next-step-copy strong{color:#fff;font-size:10px;font-weight:950;line-height:1.35;word-break:keep-all;overflow-wrap:break-word}.ai-next-step-arrow{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;color:#6045c8;background:#fff;box-shadow:0 4px 10px #301f723b;transition:transform .18s ease}.ai-mission-next:hover{transform:translateY(-2px);box-shadow:0 15px 29px #553ab54f,inset 0 1px #ffffff38}.ai-mission-next:hover .ai-next-step-arrow{transform:translate(2px)}.ai-mission-next:active{transform:translateY(0)}.ai-mission-next:focus-visible{outline:3px solid rgba(115,89,220,.25);outline-offset:3px}.ai-lab-card{min-width:0;overflow:hidden}.ai-lab-toolbar{min-height:61px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--ai-line)}.ai-mode-controls,.ai-history-controls{display:flex;gap:6px}.ai-mode-controls button{min-height:38px;display:flex;align-items:center;gap:6px;padding:0 10px;border-radius:10px;background:#f5f3f8;font-size:10px;font-weight:900}.ai-mode-controls button small{min-width:18px;padding:2px 4px;border-radius:999px;background:#fffc;text-align:center}.ai-mode-controls button.active{box-shadow:inset 0 0 0 2px currentColor;background:#fff}.ai-mode-controls button.active.red{color:#d84262}.ai-mode-controls button.active.blue{color:#3278d5}.ai-mode-controls button.active.predict{color:var(--ai-purple)}.ai-mode-controls button:disabled{opacity:.42}.tool-dot{width:13px;height:13px;border:3px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0003}.tool-dot.red{background:#ef5e78}.tool-dot.blue{background:#4388e8}.ai-history-controls button{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:#716b7d;background:#f5f3f8}.ai-history-controls button:disabled{opacity:.3}.ai-data-canvas{position:relative;margin:12px;overflow:hidden;border:1px solid #e5e1ee;border-radius:20px;background:#fbfafe}.ai-data-canvas svg{width:100%;display:block;cursor:crosshair}.ai-canvas-bg{fill:#fbfafe}.ai-grid-lines line{stroke:#e9e6f0;stroke-width:1}.ai-axis{stroke:#b5aec3;stroke-width:2}.red-region{fill:#ffdce2}.blue-region{fill:#dceaff}.ai-point circle:first-child{stroke:#fff;stroke-width:4;filter:drop-shadow(0 3px 4px rgba(42,35,70,.19))}.red-point circle:not(.prediction-ring){fill:#ee5b76}.blue-point circle:not(.prediction-ring){fill:#4388e8}.point-shine{fill:#ffffffa6!important;transform:translate(-3px,-3px)}.ai-prediction-point .prediction-ring{fill:#ffffff8c;stroke:currentColor;stroke-width:3;stroke-dasharray:4 3;animation:ai-ring 1.6s linear infinite}.ai-prediction-point.red-point{color:#d84262}.ai-prediction-point.blue-point{color:#3278d5}.ai-prediction-point text{fill:currentColor;font-size:20px;font-weight:950}.ai-axis-label{position:absolute;color:#9a94a5;font-size:8px;font-weight:900;pointer-events:none}.axis-x{right:12px;bottom:8px}.axis-y{left:8px;top:10px;writing-mode:vertical-rl;transform:rotate(180deg)}.ai-canvas-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:6px;color:#8c8599;text-align:center;pointer-events:none}.ai-canvas-empty b{font-size:28px}.ai-canvas-empty span{padding:7px 10px;border-radius:999px;background:#ffffffe0;font-size:10px;font-weight:850}@keyframes ai-ring{to{transform:rotate(360deg)}}.ai-training-bar{min-height:84px;display:grid;grid-template-columns:100px 150px 1fr auto;align-items:center;gap:16px;padding:12px 14px;border-top:1px solid var(--ai-line);background:#fcfbfd}.ai-model-select,.ai-k-control,.ai-epoch{display:grid;gap:5px}.ai-model-select>span,.ai-k-control>span,.ai-epoch>span{color:var(--ai-muted);font-size:8px;font-weight:900;text-transform:uppercase}.ai-model-select strong{font-size:13px}.ai-model-select small{color:var(--ai-purple);font-size:9px}.ai-k-control{grid-template-columns:1fr 24px}.ai-k-control span{grid-column:1/-1}.ai-k-control input{width:100%;accent-color:var(--ai-purple)}.ai-k-control b{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;color:var(--ai-purple);background:#eeebff;font-size:10px}.ai-epoch{grid-template-columns:1fr auto}.ai-epoch>div{grid-column:1/-1;height:6px;overflow:hidden;border-radius:99px;background:#e8e4ee}.ai-epoch i{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#8774e7,#66c8b0);transition:width .45s ease}.ai-epoch strong{font-size:11px}.ai-train-actions{display:flex;gap:6px}.ai-train-actions button{min-height:39px;display:flex;align-items:center;gap:6px;padding:0 11px;border-radius:10px;font-size:10px;font-weight:900}.ai-train-actions .primary{color:#fff;background:var(--ai-purple)}.ai-train-actions .secondary{color:#8e6221;background:#fff1d7}.ai-train-actions .reset{color:#6f687a;background:#efedf2}.ai-insight-column{display:grid;gap:12px}.ai-concept-card,.ai-thinking-card,.ai-metrics-card{padding:16px}.concept-pill{display:inline-flex;margin:8px 0;padding:5px 8px;border-radius:8px;color:var(--ai-purple-dark);background:#eeebff;font-size:11px;font-weight:950}.ai-concept-card p{margin:3px 0 0;color:var(--ai-muted);font-size:10px;line-height:1.65;word-break:keep-all}.ai-thinking-card{background:linear-gradient(145deg,#fff,#f5f2ff)}.thinking-title{display:flex;gap:9px;align-items:start}.thinking-title>span{font-size:28px}.thinking-title div{display:grid;gap:4px}.thinking-title strong{font-size:11px;line-height:1.45}.thinking-title small{color:var(--ai-muted);font-size:9px;line-height:1.45}.prediction-coordinates{display:flex;gap:5px;margin:12px 0 10px}.prediction-coordinates span{padding:4px 6px;border-radius:6px;background:#fff;color:var(--ai-muted);font-family:ui-monospace,monospace;font-size:8px}.prediction-meter{display:grid;grid-template-columns:58px 1fr 28px;align-items:center;gap:6px;margin-top:7px;font-size:8px;font-weight:850}.prediction-meter>div{height:6px;overflow:hidden;border-radius:99px;background:#e7e4ec}.prediction-meter i{height:100%;display:block;border-radius:inherit}.prediction-meter.red i{background:#ee5b76}.prediction-meter.blue i{background:#4388e8}.prediction-meter b{text-align:right}.ai-metrics-card{display:grid;grid-template-columns:1fr 1.35fr;gap:8px}.ai-metrics-card>div{display:grid;gap:4px;padding:9px;border-radius:10px;background:#f7f5fa}.ai-metrics-card span{color:var(--ai-muted);font-size:8px;font-weight:850}.ai-metrics-card strong{font-size:17px}.ai-metrics-card>small{grid-column:1/-1;color:#928c9d;font-size:8px;line-height:1.4}.ai-notice,.ai-trained-badge{display:flex;align-items:center;gap:7px;padding:11px 12px;border-radius:12px;font-size:9px;font-weight:850;line-height:1.4}.ai-notice{color:#6455b2;background:#ece9ff}.ai-trained-badge{color:#28785f;background:#e5f7ef}.ai-footer{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(20px,5vw,76px);border-top:1px solid var(--ai-line);color:#918b9d;font-size:9px;font-weight:850}.ai-foundation-grid{display:grid;grid-template-columns:225px minmax(640px,1fr) 260px;align-items:start;gap:14px}.ai-foundation-lab-card{overflow:hidden}.ai-foundation-toolbar{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 13px;border-bottom:1px solid var(--ai-line)}.ai-foundation-toolbar>div:first-child{display:flex;align-items:center;gap:9px}.ai-foundation-toolbar>div:first-child>svg{color:var(--ai-purple)}.ai-foundation-toolbar>div:first-child>span{display:grid;gap:3px}.ai-foundation-toolbar strong{font-size:11px}.ai-foundation-toolbar small{color:var(--ai-muted);font-size:8px}.ai-label-tools,.ai-split-tools{display:flex;gap:6px}.ai-label-tools button,.ai-split-tools button,.ai-observe-button{min-height:38px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border-radius:10px;background:#f4f2f7;font-size:9px;font-weight:900}.ai-label-tools button b{min-width:21px;padding:3px 5px;border-radius:999px;background:#fff;font-size:8px}.ai-label-tools button.apple.active{color:#c63f5b;box-shadow:inset 0 0 0 2px #e45a73;background:#fff0f3}.ai-label-tools button.berry.active{color:#326fca;box-shadow:inset 0 0 0 2px #4a84d9;background:#eef5ff}.ai-label-tools .reset-labels{width:38px;padding:0;color:#756e81}.ai-labeling-board{position:relative;min-height:490px;margin:12px;overflow:hidden;border:1px solid #e4dfec;border-radius:20px;background:radial-gradient(circle at 20% 20%,rgba(255,214,221,.48),transparent 26%),radial-gradient(circle at 80% 70%,rgba(205,226,255,.6),transparent 28%),linear-gradient(#fbfafe 1px,transparent 1px),linear-gradient(90deg,#fbfafe 1px,transparent 1px),#f5f3f9;background-size:auto,auto,36px 36px,36px 36px}.labeling-board-title{position:absolute;z-index:2;top:13px;left:14px;right:14px;display:flex;justify-content:space-between;gap:10px;color:#8b8497;font-size:8px;font-weight:950;letter-spacing:.07em}.labeling-board-title strong{color:var(--ai-purple);font-size:9px}.label-sample{position:absolute;left:var(--sample-x);top:var(--sample-y);width:68px;min-height:68px;display:grid;place-items:center;gap:1px;padding:5px;transform:translate(-50%,-50%);border:2px dashed #c9c3d1;border-radius:20px;background:#fffffff0;box-shadow:0 8px 18px #392e5c1a;transition:transform .15s,border-color .15s,background .15s}.label-sample:hover{transform:translate(-50%,-50%) scale(1.07)}.label-sample>span{font-size:27px}.label-sample small{color:#8a8495;font-size:7px;font-weight:950}.label-sample.apple{border-style:solid;border-color:#e45a73;background:#fff0f3}.label-sample.berry{border-style:solid;border-color:#4a84d9;background:#eef5ff}.label-sample.incorrect{border-color:#d49436;box-shadow:0 0 0 4px #fff1d7}.label-sample.unlabeled{filter:grayscale(.42)}.ai-foundation-feedback{min-height:48px;display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;padding:9px 13px;border-top:1px solid var(--ai-line);color:#6256a8;background:#f2efff;font-size:9px;font-weight:850;line-height:1.45}.ai-foundation-feedback>b{min-width:45px;padding:6px 8px;border-radius:8px;color:var(--ai-purple);background:#fff;text-align:center;font-size:11px}.ai-observe-button{color:#fff;background:var(--ai-purple)}.ai-observe-button:disabled{opacity:.36}.ai-feature-workbench{display:grid;grid-template-columns:minmax(390px,1.2fr) minmax(210px,.8fr);gap:10px;padding:12px;background:#fbfafe}.ai-feature-table-wrap,.ai-feature-selector,.ai-feature-map{min-width:0;overflow:hidden;border:1px solid #e5e0ed;border-radius:15px;background:#fff}.feature-table-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #ece8f1}.feature-table-heading strong{font-size:10px}.feature-table-heading span{color:var(--ai-muted);font-size:7px}.ai-feature-table{display:grid}.table-row{min-height:31px;display:grid;grid-template-columns:52px repeat(4,1fr);align-items:center;border-bottom:1px solid #f0edf3;text-align:center;font-size:8px;font-weight:800}.table-row:last-child{border-bottom:0}.table-row span:first-child{font-size:16px}.table-row.table-head{min-height:28px;color:#7467b5;background:#f1eeff;font-size:7px;font-weight:950}.table-row.table-head span:first-child{font-size:7px}.ai-feature-selector{padding:11px}.ai-feature-selector>span{color:#8c8599;font-size:7px;font-weight:950;letter-spacing:.08em}.ai-feature-selector>div{display:grid;gap:6px;margin-top:9px}.ai-feature-selector button{min-height:48px;display:grid;grid-template-columns:27px 1fr 16px;align-items:center;gap:7px;padding:6px 8px;border:1px solid transparent;border-radius:10px;background:#f6f4f8;text-align:left}.ai-feature-selector button>b{font-size:18px}.ai-feature-selector button>span{display:grid;gap:2px}.ai-feature-selector button strong{font-size:9px}.ai-feature-selector button small{color:var(--ai-muted);font-size:7px}.ai-feature-selector button.active{color:var(--ai-purple-dark);border-color:#bfb2f1;background:#f0edff}.ai-feature-selector button.answer{border-style:dashed;color:#8a6570;background:#fff5f1}.ai-feature-map{position:relative;grid-column:1/-1;min-height:215px;background:linear-gradient(#eeebf3 1px,transparent 1px),linear-gradient(90deg,#eeebf3 1px,transparent 1px),#fbfafe;background-size:10% 20%}.feature-map-heading{position:absolute;z-index:2;inset:9px 11px auto;display:flex;align-items:center;justify-content:space-between;color:#8d8699;font-size:7px;font-weight:950}.feature-map-heading strong{color:var(--ai-purple);font-size:9px}.feature-map-point{position:absolute;left:var(--feature-x);top:var(--feature-y);width:33px;height:33px;display:grid;place-items:center;transform:translate(-50%,-50%);border:3px solid #fff;border-radius:50%;box-shadow:0 5px 10px #31294a2b;font-size:17px;transition:left .35s,top .35s}.feature-map-point.apple{background:#ffdce3}.feature-map-point.berry{background:#dceaff}.feature-map-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:7px;color:#918a9d;font-size:8px;font-weight:850}.ai-feature-map.observed{box-shadow:inset 0 0 0 3px #cfc5f5}.ai-split-tools button.active.train{color:#5f4bb8;box-shadow:inset 0 0 0 2px #806ddd;background:#efecff}.ai-split-tools button.active.test{color:#15775e;box-shadow:inset 0 0 0 2px #48a98a;background:#e9f8f2}.ai-split-tools button.active.pool{color:#786d83;box-shadow:inset 0 0 0 2px #a69dac;background:#fff}.ai-split-workbench{min-height:430px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;padding:12px;background:#faf9fc}.ai-split-bucket{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #e3deea;border-radius:15px;background:#fff}.ai-split-bucket.active{box-shadow:0 0 0 3px #d9d1f7}.ai-split-bucket.train{background:linear-gradient(#f6f3ff,#fff 35%)}.ai-split-bucket.test{background:linear-gradient(#edfaf5,#fff 35%)}.split-bucket-heading{min-height:54px;display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid #ebe7f0}.split-bucket-heading>b{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;color:var(--ai-purple);background:#eeebff;font-size:16px}.test .split-bucket-heading>b{color:#287e64;background:#e4f6ef}.split-bucket-heading>span{min-width:0;display:grid;gap:2px}.split-bucket-heading strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.split-bucket-heading small{color:var(--ai-muted);font-size:7px;font-weight:850}.split-sample-grid{display:grid;grid-template-columns:repeat(2,1fr);align-content:start;gap:6px;padding:8px}.split-sample{position:relative;min-width:0;min-height:68px;display:grid;place-items:center;gap:2px;padding:6px;border:1px solid #e8e3ec;border-radius:11px;background:#ffffffe6}.split-sample:hover{border-color:#bdb2e8;transform:translateY(-1px)}.split-sample>span{font-size:24px}.split-sample small{overflow:hidden;max-width:100%;color:#7d7689;font-size:7px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.split-sample>b{position:absolute;top:5px;right:5px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#46a783;font-size:9px}.split-sample.incorrect>b{background:#d85e6d}.split-empty{margin:auto;padding:18px;color:#aaa4b2;font-size:8px;line-height:1.5;text-align:center}.ai-split-evaluate{min-height:69px;display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:13px;padding:10px 13px;border-top:1px solid var(--ai-line)}.ai-split-evaluate>div:first-child{display:grid;grid-template-columns:1fr auto;gap:2px 6px}.ai-split-evaluate span,.ai-split-evaluate small{color:var(--ai-muted);font-size:7px;font-weight:900}.ai-split-evaluate small{grid-column:1/-1}.ai-split-evaluate strong{font-size:12px}.split-ratio-bar{height:9px;display:flex;overflow:hidden;border-radius:99px;background:#ece8f0}.split-ratio-bar i{display:block;background:#8875df}.split-ratio-bar b{display:block;background:#55b394}.ai-split-evaluate>button{min-height:40px;display:flex;align-items:center;gap:6px;padding:0 12px;border-radius:10px;color:#fff;background:var(--ai-purple);font-size:9px;font-weight:950}.ai-split-evaluate>button:disabled{opacity:.35}.search-hub,.search-stage-page{max-width:1240px;margin:0 auto;padding:46px clamp(18px,4vw,56px) 70px}.search-hub-hero{max-width:850px;margin:0 auto 38px;text-align:center}.search-hub-hero .ai-eyebrow{margin-bottom:17px}.search-hub-hero h1{margin:0;font-size:clamp(34px,4.7vw,58px);line-height:1.08;letter-spacing:-.05em}.search-hub-hero h1 em{color:var(--ai-purple);font-style:normal}.search-hub-hero p{max-width:690px;margin:18px auto 0;color:var(--ai-muted);font-size:14px;line-height:1.75;word-break:keep-all}.search-stage-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.search-stage-card{position:relative;min-height:154px;display:grid;grid-template-columns:40px 54px 1fr 34px;align-items:center;gap:14px;padding:22px;overflow:hidden;border:1px solid var(--ai-line);border-radius:21px;background:#fff;text-align:left;box-shadow:0 14px 38px #392e5c0e}.search-stage-card.unlocked{transition:transform .16s,border-color .16s,box-shadow .16s}.search-stage-card.unlocked:hover{transform:translateY(-3px);border-color:#cfc6fa;box-shadow:0 18px 42px #4536891f}.search-stage-card.locked{opacity:.58;background:#f5f3f7}.search-stage-card.done{background:linear-gradient(140deg,#fff,#f2fff9);border-color:#ccebdd}.search-stage-number{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;color:#fff;background:var(--ai-purple);font-size:12px;font-weight:950}.done .search-stage-number{background:#3aa782}.locked .search-stage-number{color:#8c8697;background:#e5e1e9}.search-stage-icon{font-size:35px}.search-stage-copy{display:grid;gap:5px}.search-stage-copy small{color:var(--ai-purple);font-size:8px;font-weight:950;letter-spacing:.12em}.search-stage-copy strong{font-size:16px}.search-stage-copy>span{color:var(--ai-muted);font-size:11px;line-height:1.45}.search-stage-action{color:var(--ai-purple)}.locked .search-stage-action{color:#aaa4b1}.search-hub-guide{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:20px;padding:14px;border-radius:14px;color:#6657b8;background:#eeebff;font-size:10px;font-weight:800}.search-stage-page{max-width:1380px;padding-top:28px}.search-progress-wrap{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:20px}.search-stage-heading>span{color:var(--ai-purple);font-size:9px;font-weight:950;letter-spacing:.13em}.search-stage-heading h1{margin:5px 0;font-size:28px;letter-spacing:-.035em}.search-stage-heading h1 b{margin-right:3px;font-size:25px}.search-stage-heading p{margin:0;color:var(--ai-muted);font-size:11px}.search-progress{display:flex;align-items:start;padding:13px 16px 7px;border:1px solid var(--ai-line);border-radius:16px;background:#ffffffd1}.search-progress-step{position:relative;width:67px;display:grid;justify-items:center;gap:3px}.search-progress-step button{position:relative;z-index:2;width:29px;height:29px;display:grid;place-items:center;border:2px solid #ded9e8;border-radius:50%;color:#948da1;background:#fff;font-size:9px;font-weight:950}.search-progress-step button.current{color:#fff;border-color:var(--ai-purple);background:var(--ai-purple);box-shadow:0 0 0 5px #eeebff}.search-progress-step button.done{color:#fff;border-color:#48ad8a;background:#48ad8a}.search-progress-step small{color:#aaa4b2;font-size:7px;font-weight:900}.search-progress-step i{position:absolute;z-index:1;left:calc(50% + 15px);top:14px;width:38px;height:2px;background:#e5e1eb}.search-progress-step i.done{background:#63b99c}.search-learning-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:13px;margin-bottom:13px}.search-mission,.search-concept{padding:17px 19px;border:1px solid var(--ai-line);border-radius:17px;background:#fff;box-shadow:0 10px 28px #392e5c0b}.search-mission{display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px 18px}.search-mission>span,.search-mission>strong{grid-column:1}.search-mission>strong{font-size:13px}.search-mission>div{grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:6px;padding:9px 11px;border-radius:10px;color:#6959bb;background:#efecff;font-size:9px;font-weight:900}.search-mission.complete>div{color:#287b61;background:#e6f7f0}.search-concept .ai-panel-kicker{display:flex;align-items:center;gap:5px}.search-concept>div{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 6px}.search-concept>div span{padding:4px 7px;border-radius:7px;color:var(--ai-purple-dark);background:#eeebff;font-size:9px;font-weight:950}.search-concept p{margin:0;color:var(--ai-muted);font-size:9px;line-height:1.55;word-break:keep-all}.search-lab-grid{display:grid;grid-template-columns:minmax(550px,1fr) 245px;gap:13px;align-items:stretch}.search-visual-card,.search-live-status,.search-frontier,.search-result,.search-comparison,.game-board-card,.game-tree-card,.game-search-controls,.game-final-message{border:1px solid var(--ai-line);border-radius:18px;background:#fff;box-shadow:0 12px 34px #392e5c0e}.search-visual-card{min-width:0;overflow:hidden}.search-card-title{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 15px;border-bottom:1px solid var(--ai-line)}.search-card-title>div{display:grid;gap:3px}.search-card-title span{color:var(--ai-purple);font-size:8px;font-weight:950;letter-spacing:.08em}.search-card-title strong{font-size:11px}.search-card-title>button,.search-card-title>b{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:9px;color:#6f687b;background:#f2f0f5;font-size:8px;font-weight:900}.search-tree-scroll{width:100%;overflow-x:auto;background:radial-gradient(circle at 50% 0,#f2efff,transparent 42%),#fbfafe}.search-tree-svg{width:100%;height:auto;max-height:420px;display:block;margin:auto}.search-tree-edges line{stroke:#d4cede;stroke-width:2.2;transition:stroke .2s,stroke-width .2s}.search-tree-edges line.active{stroke:#8b76df;stroke-width:4}.search-tree-node{outline:none}.search-tree-node circle{fill:#fff;stroke:#cfc8da;stroke-width:2.5;filter:drop-shadow(0 4px 5px rgba(50,42,76,.12));transition:fill .2s,stroke .2s,transform .2s}.search-tree-node text{fill:#625d6f;font-size:11px;font-weight:950;pointer-events:none}.search-tree-node.visited circle{fill:#e9e5fb;stroke:#a99be3}.search-tree-node.goal circle{fill:#fff8db;stroke:#d9b953;stroke-dasharray:4 3}.search-tree-node.current circle{fill:#765fd6;stroke:#5745b4;stroke-width:4;transform:scale(1.1)}.search-tree-node.current text:not(.current-mark){fill:#fff}.search-tree-node.success circle{fill:#4ab28c;stroke:#258064;stroke-dasharray:none}.search-tree-node.selected circle{stroke:#e29a46;stroke-width:4}.search-tree-node.clickable{cursor:pointer}.search-tree-node.clickable:hover circle,.search-tree-node.clickable:focus circle{stroke:var(--ai-purple);transform:scale(1.08)}.search-tree-node .current-mark{fill:var(--ai-purple-dark);font-size:7px}.search-live-status{display:grid;align-content:center;gap:7px;padding:20px;background:linear-gradient(145deg,#fff,#f4f1ff)}.search-live-status>span{margin-top:7px;color:#8d8699;font-size:8px;font-weight:950;letter-spacing:.08em}.search-live-status>strong{color:var(--ai-purple);font-size:32px}.search-live-status>div{padding:9px;border-radius:9px;background:#fff;font-size:10px;font-weight:850;line-height:1.5}.search-live-status>p{margin:7px 0 0;padding:11px;border-radius:11px;color:#27775d;background:#e5f7ef;font-size:11px;font-weight:950}.search-algorithm-tabs{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;padding:9px 12px;border:1px solid var(--ai-line);border-radius:15px;background:#fff}.search-algorithm-tabs button{min-width:105px;min-height:35px;display:inline-flex;align-items:center;justify-content:center;gap:5px;margin-right:6px;border-radius:9px;color:#756e82;background:#f3f1f6;font-size:10px;font-weight:950}.search-algorithm-tabs button.active{color:#fff;background:var(--ai-purple)}.search-algorithm-tabs>p{margin:0;color:var(--ai-muted);font-size:9px;line-height:1.45}.search-controls{min-height:69px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid var(--ai-line);background:#fcfbfd}.search-control-buttons{display:flex;flex-wrap:wrap;gap:5px}.search-control-buttons button{min-height:36px;display:flex;align-items:center;gap:5px;padding:0 9px;border-radius:9px;color:#696273;background:#efedf2;font-size:8px;font-weight:900}.search-control-buttons button.primary{color:#fff;background:var(--ai-purple)}.search-control-buttons button.pause{color:#8c6225;background:#fff0d6}.search-control-buttons button:disabled{opacity:.35}.search-speed{display:flex;align-items:center;gap:4px;white-space:nowrap}.search-speed>span{color:var(--ai-muted);font-size:8px;font-weight:900}.search-speed button{min-width:32px;height:27px;padding:0 6px;border-radius:7px;color:#88818f;background:#efedf2;font-size:8px;font-weight:900}.search-speed button.active{color:var(--ai-purple);box-shadow:inset 0 0 0 2px var(--ai-purple);background:#fff}.search-side-stack{display:grid;align-content:start;gap:10px}.search-frontier{min-height:178px;padding:16px}.search-frontier>div:first-child{display:flex;align-items:center;justify-content:space-between}.search-frontier>div:first-child>span{color:var(--ai-purple);font-size:10px;font-weight:950;letter-spacing:.12em}.search-frontier>div:first-child small{color:#9a94a5;font-size:7px;font-weight:900}.frontier-items{display:flex;flex-direction:column;gap:5px;margin-top:13px}.search-frontier.bfs .frontier-items{flex-direction:row;flex-wrap:wrap}.frontier-items>span{min-height:29px;display:flex;align-items:center;justify-content:center;gap:6px;padding:5px 9px;border:1px solid #ddd7e7;border-radius:8px;color:#6c6578;background:#f8f6fa;font-size:10px;font-weight:950}.frontier-items>span.next{color:#fff;border-color:var(--ai-purple);background:var(--ai-purple)}.frontier-items>span small{font-size:6px}.search-frontier>p{margin:20px 0 0;color:var(--ai-muted);font-size:9px;line-height:1.5}.search-backtrack{padding:11px;border-radius:11px;color:#865d25;background:#fff0d8;font-size:9px;font-weight:900}.search-result{padding:14px;background:linear-gradient(145deg,#f0fff9,#fff);border-color:#cdeadd}.search-result>strong{color:#24785d;font-size:12px}.search-result>div{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:10px}.search-result span{display:grid;gap:4px;padding:7px;border-radius:8px;background:#fff;color:var(--ai-muted);font-size:7px}.search-result b{color:var(--ai-ink);font-size:12px}.search-comparison{margin-top:13px;padding:17px}.search-comparison>div:first-child{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px}.search-comparison>div span{color:var(--ai-purple);font-size:10px;font-weight:950}.search-comparison>div small{color:var(--ai-muted);font-size:8px}.search-comparison table{width:100%;border-collapse:collapse;font-size:9px}.search-comparison th,.search-comparison td{padding:8px 10px;border-bottom:1px solid #eeeaf2;text-align:center}.search-comparison th:first-child,.search-comparison td:first-child{text-align:left}.search-comparison th{color:var(--ai-purple-dark);background:#f5f2ff}.search-comparison>p{display:flex;align-items:center;gap:8px;margin:12px 0 0;padding:10px;border-radius:10px;color:#6f6298;background:#f3f0ff;font-size:9px;font-weight:800;line-height:1.45}.game-tabs>div{white-space:nowrap}.game-search-grid{display:grid;grid-template-columns:340px minmax(500px,1fr);gap:13px}.game-board-card{padding:20px;text-align:center}.game-board-card h2{margin:8px 0 15px;font-size:12px}.tic-board{width:min(100%,260px);aspect-ratio:1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:0 auto;padding:6px;border-radius:16px;background:#ded8ea}.tic-board button{display:grid;place-items:center;border-radius:10px;background:#fff;font-size:35px;font-weight:950}.tic-board button.x{color:#6551c0;background:#f1edff}.tic-board button.o{color:#318b72;background:#e9f8f3}.tic-board button.empty{color:#b7b0c2}.tic-board button.empty:not(:disabled):hover{color:var(--ai-purple);background:#f5f2ff}.game-state-label{min-height:37px;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:10px}.game-state-label span{color:var(--ai-muted);font-size:9px;font-weight:900}.game-state-label strong{padding:6px 8px;border-radius:8px;color:#24775c;background:#e5f7ef;font-size:9px}.game-board-card>p{margin:5px 0 0;color:var(--ai-purple);font-size:9px;font-weight:900}.game-tree-card{min-width:0;overflow:hidden}.game-tree-card .search-tree-svg{max-height:390px}.game-search-controls{display:grid;grid-template-columns:235px 1fr;gap:13px;margin-top:13px;padding:13px}.game-search-controls .search-frontier{min-height:120px;border:0;box-shadow:none;background:#f8f6fa}.game-search-controls .search-controls{border:0;border-radius:12px}.game-search-controls .search-result{margin-top:8px}.game-final-message{display:flex;align-items:center;gap:10px;margin-top:12px;padding:14px 17px;color:#6052a8;background:#efecff}.game-final-message>span{display:grid;gap:3px;font-size:9px}.game-final-message strong{font-size:11px}.search-stage-complete{display:flex;align-items:center;gap:11px;margin-top:16px;padding:16px 18px;border:1px solid #cceadb;border-radius:16px;background:linear-gradient(135deg,#edfff7,#fff)}.search-stage-complete>span{font-size:25px}.search-stage-complete>div{display:grid;gap:3px}.search-stage-complete strong{font-size:12px}.search-stage-complete small{color:var(--ai-muted);font-size:8px}.search-stage-complete button,.search-course-complete>button{min-height:39px;display:flex;align-items:center;gap:7px;margin-left:auto;padding:0 13px;border-radius:10px;color:#fff;background:var(--ai-purple);font-size:9px;font-weight:950}.search-course-complete{display:grid;grid-template-columns:55px 1fr;gap:11px 17px;margin-top:17px;padding:24px;border:1px solid #d4cafc;border-radius:22px;background:linear-gradient(135deg,#f3efff,#fff 56%,#edfff8);box-shadow:0 20px 48px #503e9a1f}.search-course-complete>svg{color:#e5a72a}.search-course-complete>div:nth-child(2)>span{color:var(--ai-purple);font-size:8px;font-weight:950;letter-spacing:.12em}.search-course-complete h2{margin:3px 0;font-size:23px}.search-course-complete p{margin:0;color:var(--ai-muted);font-size:10px}.search-learned{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}.search-learned span{display:flex;align-items:center;gap:4px;padding:6px 8px;border-radius:8px;color:#26785e;background:#e7f8f1;font-size:8px;font-weight:900}.search-next-tease{grid-column:1/-1;display:flex;align-items:center;gap:9px;padding:12px;border-radius:11px;color:#716a7d;background:#f1eff3}.search-next-tease>span{display:grid;gap:3px;font-size:8px}.search-course-complete>button{grid-column:2;justify-self:end}.ai-advanced-lab{min-width:0;overflow:hidden}.advanced-lab-heading{min-height:63px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--ai-line)}.advanced-lab-heading>div{display:flex;align-items:center;gap:9px}.advanced-lab-heading>div>svg{color:var(--ai-purple)}.advanced-lab-heading>div>span{display:grid;gap:3px}.advanced-lab-heading strong{font-size:11px}.advanced-lab-heading small{color:var(--ai-muted);font-size:8px}.advanced-lab-heading>b{padding:6px 9px;border-radius:8px;color:var(--ai-purple-dark);background:#eeebff;font-size:8px;white-space:nowrap}.ai-advanced-metrics{grid-template-columns:repeat(2,1fr)}.ai-advanced-metrics>div:last-child:nth-child(odd){grid-column:1/-1}.ai-advanced-metrics strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.advanced-controls{min-height:70px;display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:11px 13px;border-top:1px solid var(--ai-line);background:#fcfbfd}.advanced-controls>label{min-width:165px;flex:1;display:grid;grid-template-columns:1fr 36px;align-items:center;gap:5px 8px}.advanced-controls>label>span{grid-column:1/-1;color:var(--ai-muted);font-size:8px;font-weight:900}.advanced-controls input[type=range]{width:100%;accent-color:var(--ai-purple)}.advanced-controls label>b{min-width:32px;padding:5px;border-radius:7px;color:var(--ai-purple);background:#eeebff;font-size:9px;text-align:center}.ai-shell .advanced-primary,.ai-shell .advanced-secondary,.ai-shell .advanced-toggle{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border-radius:10px;font-size:9px;font-weight:950;white-space:nowrap}.ai-shell .advanced-primary{color:#fff;background:linear-gradient(135deg,#7661d9,#5b45bd);box-shadow:0 6px 14px #523eab2b}.ai-shell .advanced-secondary,.ai-shell .advanced-toggle{color:#6e677a;background:#efedf2}.ai-shell .advanced-toggle.active{color:#fff;background:#e49b45}.ai-shell .advanced-primary:disabled,.ai-shell .advanced-secondary:disabled{opacity:.35;cursor:not-allowed}.advanced-feedback{min-height:47px;display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;padding:9px 13px;border-top:1px solid #e1dcf0;color:#6256a8;background:linear-gradient(90deg,#f2efff,#f8f6ff);font-size:9px;font-weight:850;line-height:1.45}.advanced-feedback>b{display:flex;align-items:center;gap:4px;min-width:62px;justify-content:center;padding:6px 8px;border-radius:8px;color:var(--ai-purple);background:#fff;font-size:9px}.advanced-chart-bg{fill:#fbfafe}.advanced-grid-lines line{stroke:#e8e4ee;stroke-width:1}.regression-chart{margin:12px;overflow:hidden;border:1px solid #e4dfeb;border-radius:17px;background:#fbfafe}.regression-chart svg{width:100%;display:block}.regression-chart text{fill:#9a94a5;font-size:8px;font-weight:900}.regression-point circle:first-child{fill:#7963d8;stroke:#fff;stroke-width:4;filter:drop-shadow(0 3px 4px rgba(57,43,115,.22))}.regression-point circle:last-child{fill:#c6bbfa}.regression-line{stroke:#ef5f78;stroke-width:5;stroke-linecap:round;filter:drop-shadow(0 2px 3px rgba(195,54,78,.2));transition:all .22s ease}.regression-errors line{stroke:#e59b43;stroke-width:2.5;stroke-dasharray:5 4}.pattern-choices{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px}.pattern-choices>span{color:var(--ai-muted);font-size:9px;font-weight:900}.pattern-choices>div{display:flex;gap:6px}.pattern-choices button,.connection-buttons button,.activation-tabs button,.capacity-presets button,.epoch-presets button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 9px;border-radius:9px;color:#716a7c;background:#f0eef3;font-size:8px;font-weight:900}.pattern-choices button.active,.connection-buttons button.active,.activation-tabs button.active,.epoch-presets button.active{color:#fff;background:var(--ai-purple)}.neuron-workbench{margin:12px;overflow:hidden;border:1px solid #e3deec;border-radius:18px;background:radial-gradient(circle at 52% 50%,#f0edff,transparent 34%),#fbfafe}.neuron-workbench svg{width:100%;display:block}.neuron-edge line{stroke:#d9d3e2;stroke-width:8;stroke-linecap:round;stroke-dasharray:9 8;transition:stroke .25s,stroke-dasharray .25s}.neuron-edge.connected line{stroke:#9d8adf;stroke-dasharray:none}.neuron-workbench.has-signal .neuron-edge.connected line{animation:signal-pulse 1.1s ease-out}.neuron-edge text{fill:#847b92;font-size:11px;font-weight:900}.neuron-input circle{fill:#fff;stroke:#bfb5db;stroke-width:3;filter:drop-shadow(0 5px 6px rgba(54,43,90,.12))}.neuron-input text,.neuron-output text{fill:#655d72;font-size:13px;font-weight:950;text-anchor:middle}.neuron-main circle{filter:drop-shadow(0 9px 12px rgba(74,52,164,.24))}.neuron-main text{fill:#fff;font-size:15px;font-weight:950;text-anchor:middle}.neuron-main .activation-name{fill:#ddd6ff;font-size:9px}.neuron-output circle{fill:#fff;stroke:#c6bdd8;stroke-width:4}.neuron-output.active circle{fill:#e6f8f0;stroke:#4aae89}.neuron-output.active text{fill:#25765d}.bias-chip rect{fill:#fff0d9;stroke:#e7b870}.bias-chip text{fill:#946226;font-size:10px;font-weight:950;text-anchor:middle}.neural-controls .connection-buttons,.neural-controls .activation-tabs{display:flex;flex-wrap:wrap;gap:6px}.connection-buttons{flex:1 1 280px}.activation-tabs{flex:1}.unit-builder{flex:1;display:flex;align-items:center;gap:10px}.unit-builder>span{flex:1;color:var(--ai-muted);font-size:9px;font-weight:850}.unit-builder>b{min-width:36px;padding:8px;border-radius:10px;color:var(--ai-purple);background:#eeebff;text-align:center}@keyframes signal-pulse{0%{stroke:#f0b847;stroke-width:13}to{stroke:#9d8adf;stroke-width:8}}.deep-workbench{min-height:360px;display:grid;grid-template-columns:1fr;gap:11px;align-items:stretch;padding:13px;background:radial-gradient(circle at 50% 5%,#f0ecff,transparent 42%),#fbfafe}.deep-workbench:has(.overfit-chart){grid-template-columns:1.1fr .9fr;min-height:330px}.network-architecture{min-width:0;display:flex;align-items:center;justify-content:space-around;gap:10px;padding:16px;overflow-x:auto;border:1px solid #e2ddeb;border-radius:16px;background:#ffffffd1}.network-layer{position:relative;min-width:65px;display:flex;flex-direction:column;align-items:center;gap:9px}.network-layer:not(:last-child):after{position:absolute;left:calc(100% + 4px);top:50%;width:24px;height:2px;background:#c7bddf;content:""}.network-layer small{color:#8d859b;font-size:7px;font-weight:950;white-space:nowrap}.network-layer>span{width:38px;height:38px;display:grid;place-items:center;border:3px solid #fff;border-radius:50%;color:#6655ba;background:#e9e4ff;box-shadow:0 4px 8px #372b5a24;font-size:10px;font-weight:950}.input-layer>span{color:#2e75bf;background:#e2efff}.output-layer>span{color:#fff;background:#5f49c4}.network-layer>span.empty-neuron{color:#aaa2b8;border:2px dashed #cfc8da;background:#f7f5f9;box-shadow:none;font-size:18px}.overfit-chart{padding:12px;border:1px solid #e2ddeb;border-radius:16px;background:#fff}.overfit-heading{display:flex;justify-content:space-between;gap:8px}.overfit-heading span{color:var(--ai-purple);font-size:8px;font-weight:950;letter-spacing:.08em}.overfit-heading small{color:var(--ai-muted);font-size:7px}.overfit-chart svg{width:100%;display:block}.overfit-chart svg>line:not(.epoch-marker){stroke:#cfc8d8}.overfit-chart path{fill:none;stroke-width:4;stroke-linecap:round}.train-curve{stroke:#4bad88}.validation-curve{stroke:#735bd1}.overfit-chart .epoch-marker{stroke:#e59a43;stroke-width:2;stroke-dasharray:4 3}.overfit-chart text{fill:#918a9c;font-size:8px}.deep-controls .capacity-presets,.deep-controls .epoch-presets{display:flex;gap:5px}.run-history{padding:11px 13px;border-top:1px solid var(--ai-line);background:#fff}.run-history>span{color:var(--ai-purple);font-size:7px;font-weight:950;letter-spacing:.09em}.run-history>div{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-top:7px}.run-history article{min-width:0;display:grid;gap:3px;padding:7px;border-radius:9px;background:#f5f3f8}.run-history small{overflow:hidden;color:var(--ai-muted);font-size:6px;text-overflow:ellipsis;white-space:nowrap}.run-history b{color:#31886d;font-size:10px}.run-history strong{color:var(--ai-purple);font-size:10px}.project-workbench{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:12px;padding:12px;background:#fbfafe}.project-preview,.project-builder{border:1px solid #e3deea;border-radius:16px;background:#fff}.project-preview{min-width:0;overflow:hidden}.project-preview-heading{min-height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid #eeeaf2}.project-preview-heading span{font-size:9px;font-weight:950}.project-preview-heading b{padding:5px 7px;border-radius:7px;color:#267b60;background:#e6f7f0;font-size:7px}.project-preview svg{width:100%;display:block}.project-region{opacity:.38}.project-region.red{fill:#ffdce2}.project-region.blue{fill:#dceaff}.project-point{stroke:#fff;stroke-width:4;filter:drop-shadow(0 3px 3px rgba(47,38,73,.16))}.project-point.red{fill:#ed5e78}.project-point.blue{fill:#4388e8}.project-trend-point{fill:#745fd1;stroke:#fff;stroke-width:4}.project-regression-line{stroke:#ee6078;stroke-width:5;stroke-linecap:round}.project-builder{padding:13px}.builder-heading{display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid #eeeaf2}.builder-heading>svg{color:var(--ai-purple)}.builder-heading>span{display:grid;gap:2px}.builder-heading strong{font-size:9px}.builder-heading small{color:var(--ai-muted);font-size:7px}.builder-group{margin-top:12px}.builder-group>span{display:block;margin-bottom:6px;color:#8b8497;font-size:7px;font-weight:950;letter-spacing:.08em}.builder-group>div{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.builder-group button{min-height:31px;padding:4px 6px;border-radius:8px;color:#756e81;background:#f2f0f5;font-size:7px;font-weight:900;line-height:1.3}.builder-group button.active{color:#fff;background:var(--ai-purple)}.builder-group label{display:grid;grid-template-columns:1fr 32px;align-items:center;gap:6px}.builder-group input{width:100%;accent-color:var(--ai-purple)}.builder-group label b{color:var(--ai-purple);font-size:9px;text-align:right}.project-pipeline{min-height:62px;display:grid;grid-template-columns:auto 18px auto 18px auto 1fr auto auto;align-items:center;gap:7px;padding:10px 13px;border-top:1px solid var(--ai-line);background:#fcfbfd}.project-pipeline>div{display:flex;align-items:center;gap:5px;padding:7px;border-radius:8px;color:#918a9d;background:#f0eef3;font-size:8px;font-weight:900;white-space:nowrap}.project-pipeline>div.done{color:#26785e;background:#e5f7ef}.project-pipeline>i{height:2px;background:#ded9e6}.experiment-table{padding:12px 13px;border-top:1px solid var(--ai-line)}.experiment-table>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.experiment-table>div span{color:var(--ai-purple);font-size:8px;font-weight:950;letter-spacing:.09em}.experiment-table>div button{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:8px;color:#fff;background:var(--ai-purple);font-size:8px;font-weight:900}.experiment-table>div button:disabled{opacity:.35}.experiment-table section{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}.experiment-table article{min-width:0;display:grid;gap:3px;padding:8px;border:1px solid #ece8f0;border-radius:9px;background:#f8f6fa}.experiment-table article.best{border-color:#e5b85e;background:#fff8e9;box-shadow:inset 0 0 0 1px #f1cf8f}.experiment-table article small{color:var(--ai-purple);font-size:6px;font-weight:950}.experiment-table article span,.experiment-table article b{overflow:hidden;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.experiment-table article b{color:var(--ai-muted)}.experiment-table article strong{font-size:14px}@media(max-width:1120px){.ai-category-grid,.ai-roadmap-sections{grid-template-columns:repeat(2,1fr)}.ai-stage-grid{grid-template-columns:200px minmax(500px,1fr)}.ai-insight-column{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.ai-notice,.ai-trained-badge{grid-column:1/-1}.ai-foundation-grid{grid-template-columns:200px minmax(560px,1fr)}.ai-foundation-grid>.ai-insight-column{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.ai-training-bar{grid-template-columns:85px 130px 1fr}.ai-train-actions{grid-column:1/-1;justify-content:flex-end}.search-lab-grid{grid-template-columns:minmax(480px,1fr) 210px}.game-search-grid{grid-template-columns:300px minmax(430px,1fr)}.search-controls{align-items:flex-start;flex-direction:column}.deep-workbench:has(.overfit-chart){grid-template-columns:1fr}.project-workbench{grid-template-columns:minmax(0,1fr) 210px}.project-pipeline{grid-template-columns:repeat(5,auto)}.project-pipeline .advanced-primary{grid-column:4}.project-pipeline .advanced-secondary{grid-column:5}}@media(max-width:780px){.ai-header{padding-inline:14px}.ai-home-link span,.ai-brand small{display:none}.ai-brand img{width:43px;height:43px}.ai-hero{grid-template-columns:1fr;padding-top:40px}.ai-hero-visual{min-height:260px}.ai-section-title{align-items:start;flex-direction:column;gap:7px}.ai-section-title p{text-align:left}.ai-roadmap-sections{grid-template-columns:1fr}.ai-stage-topline{align-items:start;flex-direction:column}.ai-stage-grid{grid-template-columns:1fr}.ai-mission-card{order:2}.ai-lab-card{order:1}.ai-insight-column{order:3;grid-template-columns:1fr}.ai-stage-picker,.ai-stage-picker select{width:100%}.ai-training-bar{grid-template-columns:1fr 1fr}.ai-epoch{grid-column:1/-1}.ai-train-actions{justify-content:stretch}.ai-train-actions button{flex:1;justify-content:center}.ai-foundation-grid{grid-template-columns:1fr}.ai-foundation-grid>.ai-mission-card{order:2}.ai-foundation-grid>.ai-foundation-lab-card{order:1}.ai-foundation-grid>.ai-insight-column{order:3;grid-column:1;grid-template-columns:1fr}.ai-labeling-board{min-height:450px}.ai-feature-workbench{grid-template-columns:1fr}.ai-feature-map{grid-column:1}.ai-split-workbench{grid-template-columns:1fr;min-height:0}.ai-split-bucket{min-height:180px}.split-sample-grid{grid-template-columns:repeat(4,1fr)}.search-stage-cards{grid-template-columns:1fr}.search-progress-wrap{align-items:start;flex-direction:column}.search-progress{width:100%;justify-content:center;box-sizing:border-box}.search-learning-grid,.search-lab-grid,.game-search-grid,.game-search-controls{grid-template-columns:1fr}.search-lab-grid .search-live-status{min-height:190px}.search-side-stack{grid-template-columns:1fr 1fr}.search-algorithm-tabs{align-items:stretch;flex-direction:column}.game-board-card{order:1}.game-tree-card{order:2}.search-controls{align-items:stretch}.ai-advanced-grid{grid-template-columns:1fr}.ai-advanced-grid>.ai-mission-card{order:2}.ai-advanced-grid>.ai-advanced-lab{order:1}.ai-advanced-grid>.ai-insight-column{order:3;grid-column:1;grid-template-columns:1fr}.project-workbench{grid-template-columns:1fr}.project-builder{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 12px}.builder-heading{grid-column:1/-1}.project-pipeline{grid-template-columns:auto 1fr auto 1fr auto}.project-pipeline .advanced-primary,.project-pipeline .advanced-secondary{grid-column:auto}.project-pipeline .advanced-primary{margin-left:0}.project-pipeline button{grid-row:2}.project-pipeline .advanced-primary{grid-column:1/3}.project-pipeline .advanced-secondary{grid-column:3/6}}@media(max-width:520px){.ai-header-actions{gap:4px}.ai-header-actions button{padding-inline:10px}.ai-brand strong{font-size:13px}.ai-hero{padding-inline:24px}.ai-hero h1{font-size:43px}.ai-category-section,.ai-roadmap{padding-inline:18px}.ai-category-grid{grid-template-columns:1fr}.ai-category-card{min-height:116px}.ai-lab-toolbar{align-items:stretch;flex-direction:column}.ai-mode-controls button{flex:1;padding-inline:7px}.ai-history-controls{justify-content:flex-end}.ai-training-bar{grid-template-columns:1fr}.ai-epoch,.ai-train-actions{grid-column:1}.ai-k-control{grid-template-columns:1fr 24px}.ai-data-canvas{margin:8px}.ai-footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:5px}.ai-foundation-stage{padding-inline:12px}.ai-foundation-toolbar{align-items:stretch;flex-direction:column}.ai-label-tools,.ai-split-tools{display:grid;grid-template-columns:1fr 1fr}.ai-label-tools .reset-labels{width:auto}.ai-split-tools button.pool{grid-column:1/-1}.ai-labeling-board{min-height:420px;margin:8px}.label-sample{width:57px;min-height:57px;border-radius:17px}.label-sample>span{font-size:22px}.ai-feature-workbench{padding:8px}.table-row{grid-template-columns:42px repeat(4,1fr);font-size:7px}.feature-table-heading{align-items:flex-start;flex-direction:column}.feature-map-point{width:29px;height:29px;font-size:15px}.split-sample-grid{grid-template-columns:repeat(3,1fr)}.ai-split-evaluate{grid-template-columns:1fr}.ai-split-evaluate>button{justify-content:center}.ai-foundation-feedback{grid-template-columns:18px 1fr}.ai-foundation-feedback>b{grid-column:2;justify-self:end}.search-hub,.search-stage-page{padding-inline:14px}.search-stage-card{grid-template-columns:34px 40px 1fr 24px;gap:9px;padding:16px 12px}.search-stage-icon{font-size:27px}.search-progress-step{width:55px}.search-progress-step i{width:27px}.search-learning-grid,.search-mission{grid-template-columns:1fr}.search-mission>div{grid-column:1;grid-row:auto}.search-side-stack{grid-template-columns:1fr}.search-control-buttons button{flex:1;justify-content:center}.search-speed{justify-content:center}.search-comparison{overflow-x:auto}.search-stage-complete{align-items:flex-start;flex-wrap:wrap}.search-stage-complete button{width:100%;justify-content:center;margin:0}.search-course-complete{grid-template-columns:1fr}.search-course-complete>svg{display:none}.search-course-complete>button{grid-column:1;justify-self:stretch;justify-content:center;margin:0}.advanced-lab-heading{align-items:flex-start}.advanced-controls{align-items:stretch;flex-direction:column}.advanced-controls>label{width:100%;box-sizing:border-box}.pattern-choices{align-items:stretch;flex-direction:column}.pattern-choices>div,.activation-tabs,.connection-buttons,.capacity-presets,.epoch-presets{display:grid!important;grid-template-columns:repeat(2,1fr)}.deep-workbench{min-height:300px;padding:8px}.network-architecture{justify-content:flex-start;padding:10px}.network-layer{min-width:55px}.network-layer:not(:last-child):after{display:none}.run-history>div,.experiment-table section{grid-template-columns:repeat(2,1fr)}.project-workbench{padding:8px}.project-builder{grid-template-columns:1fr}.builder-heading{grid-column:1}.project-pipeline{grid-template-columns:1fr 1fr 1fr}.project-pipeline>i{display:none}.project-pipeline>div{justify-content:center}.project-pipeline .advanced-primary,.project-pipeline .advanced-secondary{grid-column:auto}.project-pipeline button{grid-row:auto}.advanced-feedback{grid-template-columns:18px 1fr}.advanced-feedback>b{grid-column:2;justify-self:end}}@media(prefers-reduced-motion:reduce){.ai-shell *,.ai-shell *:before,.ai-shell *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{color:#2c2940;background:#faf7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh}button,textarea,input{font:inherit}button{border:0}.portal-shell{min-height:100vh;min-height:100dvh;overflow:hidden;padding:18px clamp(20px,5vw,76px) 24px;background:radial-gradient(circle at 82% 13%,rgba(255,208,98,.28),transparent 25%),radial-gradient(circle at 6% 42%,rgba(125,226,209,.2),transparent 24%),linear-gradient(180deg,#fffaf1,#faf7f4 52%,#f4fbf8)}.portal-header{position:relative;z-index:5;max-width:1240px;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 auto}.portal-title-row{min-width:0;display:flex;align-items:center;gap:12px}.portal-brand{min-width:0;display:flex;align-items:center;gap:10px;padding:0;color:#332d45;background:transparent;cursor:pointer;text-align:left}.portal-brand img{width:52px;height:52px;object-fit:contain}.portal-brand span{min-width:0;display:grid;gap:2px}.portal-brand strong{font-size:16px;letter-spacing:.04em}.portal-brand small{color:#81778e;font-size:11px;font-weight:800}.portal-header-actions,.portal-auth-actions,.portal-user{display:flex;align-items:center;gap:8px}.portal-common-controls{position:relative;display:flex;align-items:center;gap:7px;padding:5px;border:1px solid rgba(220,210,196,.88);border-radius:999px;background:#ffffff8f;box-shadow:0 8px 22px #4f3e2c0f}.portal-controls-label{padding-left:9px;color:#8b7f70;font-size:9px;font-weight:950;letter-spacing:.06em;white-space:nowrap}.portal-language-switch{min-width:86px;height:34px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:0;border-radius:999px;color:#5f5585;background:#ffffffd1;box-shadow:none;cursor:pointer;font-size:11px;font-weight:950;transition:transform .13s ease,background .13s ease,box-shadow .13s ease}.portal-account-button,.portal-admin-menu summary{min-height:34px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border-radius:999px;color:#5a506e;background:#ffffffd1;cursor:pointer;font-size:11px;font-weight:900;white-space:nowrap}.portal-account-button:hover,.portal-admin-menu summary:hover{color:#332d45;background:#fff0bf}.portal-admin-menu{position:relative}.portal-admin-menu summary{list-style:none}.portal-admin-menu summary::-webkit-details-marker{display:none}.portal-admin-menu[open] summary>svg:last-child{transform:rotate(180deg)}.portal-admin-menu>div{position:absolute;z-index:20;top:calc(100% + 10px);right:0;width:280px;display:grid;gap:6px;padding:8px;border:1px solid #e8ded0;border-radius:16px;background:#fffdf9;box-shadow:0 18px 46px #3d31272e}.portal-admin-menu>div button{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:8px;padding:11px;border-radius:11px;color:#493f5b;background:transparent;cursor:pointer;text-align:left}.portal-admin-menu>div button:hover{background:#f7f1ff}.portal-admin-menu>div button>svg{justify-self:center}.portal-admin-menu>div button span{display:grid;gap:3px}.portal-admin-menu>div button strong{font-size:12px}.portal-admin-menu>div button small{color:#887e92;font-size:10px}.portal-auth-actions button,.portal-user button{min-height:32px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;color:#5a506e;background:transparent;cursor:pointer;font-size:12px;font-weight:900}.portal-language-switch:hover{color:#332d45;background:#fff0bf;box-shadow:0 9px 20px #4f3e2c1f;transform:translateY(-1px)}.portal-auth-actions button,.portal-user button{min-height:40px;padding:0 15px}.portal-auth-actions button.signup{color:#fff;background:#3f3860;box-shadow:0 8px 20px #3f38602e}.portal-user>span{color:#433b59;font-size:13px;font-weight:900}.portal-user button{background:#ffffffb3}.portal-hero{position:relative;max-width:1180px;min-height:390px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:center;gap:clamp(30px,7vw,100px);margin:18px auto 2px;padding:28px 34px 22px}.portal-hero-copy{position:relative;z-index:2}.portal-eyebrow{width:fit-content;display:flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;color:#806126;background:#fff0bf;font-size:12px;font-weight:900}.portal-hero h1{margin:17px 0 14px;color:#302a42;font-size:clamp(39px,5.2vw,68px);line-height:1.08;letter-spacing:-.055em}.portal-hero h1 em{color:#e85f98;font-style:normal}.portal-hero-copy>p{max-width:630px;margin:0;color:#665d76;font-size:16px;line-height:1.75;word-break:keep-all}.portal-benefits{display:flex;flex-wrap:wrap;gap:9px 16px;margin-top:20px}.portal-benefits span{display:flex;align-items:center;gap:5px;color:#5f5770;font-size:12px;font-weight:900}.portal-benefits svg{padding:2px;border-radius:999px;color:#2e8067;background:#dff5ec}.portal-hero-mascot{position:relative;min-height:315px;display:grid;place-items:center}.portal-hero-mascot img{position:relative;z-index:2;width:min(100%,310px);max-height:315px;object-fit:contain;filter:drop-shadow(0 22px 18px rgba(92,65,35,.15))}.mascot-glow{position:absolute;width:270px;height:270px;border-radius:48% 52% 45% 55%;background:linear-gradient(145deg,#fff0bd,#ffe4ed);transform:rotate(-7deg)}.mascot-code{position:absolute;z-index:3;padding:9px 13px;border:1px solid rgba(116,103,137,.15);border-radius:10px;color:#554b73;background:#ffffffe0;box-shadow:0 12px 26px #523f2c1f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800}.code-one{top:52px;right:-3px;transform:rotate(4deg)}.code-two{bottom:48px;left:-16px;transform:rotate(-4deg)}.portal-services{max-width:1180px;margin:0 auto;padding:22px 34px 12px}.portal-section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:17px}.portal-section-heading span,.service-copy>span,.upcoming-service>span{color:#e35e96;font-size:10px;font-weight:950;letter-spacing:.14em}.portal-section-heading h2{margin:5px 0 0;color:#332d45;font-size:24px}.portal-section-heading>p{max-width:390px;margin:0 0 2px;color:#7a7188;font-size:12px;line-height:1.5;text-align:right}.portal-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ai-service .service-icon{background:linear-gradient(145deg,#8b71f0,#6051c7);box-shadow:0 10px 22px #6051c73d}.ai-service .service-copy>span{color:#6653c7}.ai-service .service-tags span{color:#5747ab;background:#efedff}.ai-service .service-launch{background:#6653c7}.ai-service .service-launch:hover{box-shadow:0 12px 24px #6051c740}.computer-service .service-icon{background:linear-gradient(145deg,#52a7ff,#356ee8);box-shadow:0 10px 22px #356ee838}.coding-service .service-launch{background:#d95078}.coding-service .service-launch:hover{box-shadow:0 12px 24px #d9507840}.arduino-service .service-icon{background:linear-gradient(145deg,#45c98a,#159665);box-shadow:0 10px 22px #1596653d}.arduino-service .service-copy>span{color:#16875e}.arduino-service .service-tags span{color:#247256;background:#e8f8f0}.arduino-service .service-launch{background:#237a58}.arduino-service .service-launch:hover{box-shadow:0 12px 24px #237a583d}.portal-service-card{min-width:0;border:1px solid #e5dccf;border-radius:18px;background:#ffffffe0;box-shadow:0 17px 42px #533d2814}.active-service{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:15px;padding:20px}.service-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;color:#fff;background:linear-gradient(145deg,#f078aa,#d9508b);box-shadow:0 10px 22px #df4f8c38}.service-copy h3,.upcoming-service h3{margin:4px 0 5px;color:#332d45;font-size:20px}.service-copy p,.upcoming-service p{margin:0;color:#71687f;font-size:12px;line-height:1.55;word-break:keep-all}.service-tags{grid-column:2 / 3;display:flex;flex-wrap:wrap;gap:6px}.service-tags span{padding:5px 8px;border-radius:999px;color:#625877;background:#f3f0fa;font-size:10px;font-weight:900}.service-launch{grid-column:1 / -1;grid-row:auto;width:100%;min-width:0;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 17px;border-radius:12px;color:#fff;background:#40385f;cursor:pointer;font-size:13px;font-weight:900;transition:transform .14s ease,box-shadow .14s ease}.service-launch:hover{transform:translateY(-2px);box-shadow:0 12px 24px #40385f33}.upcoming-service{position:relative;display:grid;align-content:center;min-height:144px;padding:20px 20px 20px 78px;overflow:hidden;background:#f8f5fab8;border-style:dashed}.upcoming-orbit{position:absolute;left:20px;top:50%;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:#8c80a0;background:#eee9f5;transform:translateY(-50%)}.upcoming-service>span{color:#8c80a0}.upcoming-service h3{font-size:15px}.upcoming-service p{font-size:11px}.portal-footer{max-width:1112px;display:flex;justify-content:space-between;gap:20px;margin:18px auto 0;padding:13px 0 0;border-top:1px solid rgba(121,106,89,.14);color:#958c9f;font-size:10px;font-weight:800;letter-spacing:.04em}.app-shell{height:100vh;height:100dvh;display:flex;flex-direction:column;gap:14px;overflow:hidden;padding:16px;background:linear-gradient(180deg,#ffd86b38,#faf7f400 280px),#faf7f4}.app-shell.auth-shell{height:auto;min-height:100vh;min-height:100dvh;overflow:visible}.auth-shell .workspace{flex:none;display:block;min-height:auto;overflow:visible}.auth-shell .auth-page{margin:0 auto}.topbar{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border:1px solid #e8dece;border-radius:8px;background:#ffffffdb;box-shadow:0 14px 34px #684c3014}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand img{width:50px;height:50px;object-fit:contain;flex:0 0 auto}.brand>div:nth-child(2)>strong{display:block;font-size:17px;line-height:1.1;letter-spacing:0}.brand>div:nth-child(2)>span,.progress-strip span,.code-heading span,.editor-heading span,.level-meter span,.step-nav span{color:#7b718d;font-size:12px;font-weight:800}.progress-strip{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:360px;color:#4c4470}.topbar-primary-actions{display:flex;align-items:center;gap:7px;margin-left:3px}.curriculum-picker-wrap{position:relative}.curriculum-picker-trigger{min-width:112px;height:38px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid #ded6ef;border-radius:9px;color:#554b78;background:#f7f4ff;cursor:pointer;font-size:12px;font-weight:950;white-space:nowrap;transition:transform .13s ease,background .13s ease,box-shadow .13s ease}.curriculum-picker-trigger:hover,.curriculum-picker-trigger.active{color:#332d45;background:#fff0bf;box-shadow:0 7px 16px #503c281a;transform:translateY(-1px)}.curriculum-picker-trigger svg{transition:transform .14s ease}.curriculum-picker-trigger.active svg{transform:rotate(180deg)}.curriculum-picker{position:absolute;z-index:80;top:calc(100% + 10px);left:0;width:min(680px,calc(100vw - 38px));overflow:hidden;border:1px solid #e3d9ca;border-radius:14px;background:#fffffffc;box-shadow:0 24px 60px #43332533}.curriculum-picker-heading{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-bottom:1px solid #ece4da;background:linear-gradient(135deg,#faf8ff,#fff8e6)}.curriculum-picker-heading>div{min-width:0}.curriculum-picker-heading strong,.curriculum-picker-heading span{display:block}.curriculum-picker-heading strong{color:#413956;font-size:14px;font-weight:950}.curriculum-picker-heading span{margin-top:3px;color:#887f95;font-size:11px;font-weight:800}.curriculum-picker-heading>button{width:31px;height:31px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;color:#746a86;background:#fff;cursor:pointer;font-size:20px;line-height:1}.curriculum-picker-sections{max-height:min(68vh,650px);display:grid;gap:9px;overflow-y:auto;overscroll-behavior:contain;padding:11px;scrollbar-gutter:stable}.curriculum-picker-sections>section{overflow:hidden;border:1px solid #ebe4da;border-radius:11px;background:#fdfcfa}.curriculum-picker-sections>section.active{border-color:#cfc2ee;box-shadow:0 0 0 2px #896fc414}.curriculum-picker-section-heading{width:100%;min-height:46px;display:grid;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:7px 10px;color:#4c4460;background:#f7f3ff;cursor:pointer;text-align:left}.curriculum-picker-section-heading:hover:not(:disabled){background:#efe9ff}.curriculum-picker-section-heading:disabled{color:#9992a3;background:#f7f5f2;cursor:not-allowed}.curriculum-picker-section-heading>b,.curriculum-picker-stages button>b{display:grid;place-items:center;border-radius:50%;color:#fff;background:#8170b6;font-size:11px;font-weight:950}.curriculum-picker-section-heading>b{width:28px;height:28px}.curriculum-picker-section-heading:disabled>b{background:#aaa4ae}.curriculum-picker-section-heading>span{min-width:0}.curriculum-picker-section-heading strong,.curriculum-picker-section-heading small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.curriculum-picker-section-heading strong{font-size:12px;font-weight:950}.curriculum-picker-section-heading small{margin-top:2px;color:#8a8196;font-size:10px;font-weight:800}.curriculum-picker-section-heading>svg{transform:rotate(-90deg)}.curriculum-picker-stages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px}.curriculum-picker-stages button{min-width:0;min-height:36px;display:grid;grid-template-columns:23px minmax(0,1fr);align-items:center;gap:7px;padding:5px 8px;border:1px solid transparent;border-radius:8px;color:#625974;background:#fff;cursor:pointer;text-align:left}.curriculum-picker-stages button:hover:not(:disabled){border-color:#ded4f1;background:#f8f5ff}.curriculum-picker-stages button.active{border-color:#c8b9e9;color:#443668;background:#eee8ff;box-shadow:inset 3px 0 #8066b6}.curriculum-picker-stages button.complete>b{background:#50a269}.curriculum-picker-stages button.locked{color:#aaa4ad;background:#f7f5f2;cursor:not-allowed}.curriculum-picker-stages button.locked>b{background:#b1abb4}.curriculum-picker-stages button>b{width:23px;height:23px}.curriculum-picker-stages button>span{overflow:hidden;font-size:11px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.topbar-icon-action{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:9px;color:#5f5585;background:#f1edff;cursor:pointer;transition:transform .13s ease,background .13s ease,box-shadow .13s ease}.topbar-icon-action:hover,.topbar-icon-action.active{color:#342e48;background:#fff0bf;box-shadow:0 7px 16px #503c281a;transform:translateY(-1px)}.topbar-menu-wrap{position:relative}.topbar-menu{position:absolute;z-index:70;top:calc(100% + 9px);left:0;width:220px;display:grid;gap:5px;padding:9px;border:1px solid #e5dccf;border-radius:12px;background:#fffffffa;box-shadow:0 18px 44px #4333252e}.topbar-menu-label,.topbar-menu-user{display:block;padding:6px 8px 4px;color:#8a8196;font-size:10px;font-weight:950;letter-spacing:.12em}.topbar-menu-user{overflow:hidden;color:#514865;font-size:12px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.topbar-menu button{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:8px;color:#5f5585;background:transparent;cursor:pointer;font-size:13px;font-weight:900;text-align:left}.topbar-menu button:hover,.topbar-menu button.active{color:#332d45;background:#f1edff}.topbar-menu-divider{height:1px;margin:4px 2px;background:#ece4da}.account-notice{position:fixed;z-index:60;left:50%;top:96px;transform:translate(-50%);display:flex;align-items:center;gap:10px;max-width:min(92vw,460px);padding:10px 12px;border-radius:8px;color:#2f7f47;background:#e7f9e7;border:1px solid rgba(47,127,71,.2);box-shadow:0 14px 34px #684c301f;font-size:13px;font-weight:900}.account-notice button{min-height:28px;padding:0 9px;border-radius:8px;color:#2f7f47;background:#fff;cursor:pointer;font-size:12px;font-weight:900}.progress-track{width:160px;height:10px;overflow:hidden;border-radius:999px;background:#ede5dc}.progress-track div{height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff6fae,#7de2d1,#7fb7ff)}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(240px,.78fr) minmax(340px,1.02fr) minmax(310px,.92fr);grid-template-rows:minmax(0,1fr) minmax(150px,.44fr);grid-template-areas:"lesson board code" "commands board code";gap:14px;overflow:hidden}.panel,.board-stage{min-width:0;min-height:0;overflow:hidden;border:1px solid #e7ddce;border-radius:8px;background:#ffffffe6;box-shadow:0 16px 42px #4a352114}.panel{display:flex;flex-direction:column;gap:14px;padding:16px}.lesson-panel{grid-area:lesson;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.lesson-panel>*{flex-shrink:0}.show-section-intro{width:fit-content;display:flex;align-items:center;gap:6px;margin:-5px 0 -2px 50px;padding:5px 8px;border-radius:7px;color:#665c7c;background:#f7f3ff;cursor:pointer;font-size:11px;font-weight:900}.show-section-intro:hover{color:#332d45;background:#eee8ff}.section-intro-page{grid-column:1 / -1;grid-row:1 / -1;min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);overflow:hidden;border:1px solid #e7ddce;border-radius:12px;background:radial-gradient(circle at 8% 12%,rgba(255,216,107,.28),transparent 31%),radial-gradient(circle at 92% 85%,rgba(125,226,209,.18),transparent 28%),#fffffff0;box-shadow:0 20px 54px #4a35211a}.section-intro-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:22px;padding:clamp(34px,5vw,76px)}.section-intro-kicker,.section-mission-list-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.section-intro-kicker>span,.section-intro-kicker>small{display:flex;align-items:center;gap:6px;color:#6b5f85;font-size:11px;font-weight:950;letter-spacing:.1em}.section-intro-kicker>span{padding:7px 10px;border-radius:999px;background:#f1edff}.section-intro-heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(20px,3vw,38px)}.section-number{color:#ff6fae;font-size:clamp(62px,7vw,104px);font-weight:950;line-height:.86;letter-spacing:-.08em;text-shadow:4px 5px 0 #ffe5f0}.section-intro-heading span,.section-mission-list-heading span{color:#8a8196;font-size:10px;font-weight:950;letter-spacing:.12em}.section-intro-heading h1{margin:5px 0 10px;color:#332d45;font-size:clamp(28px,3vw,48px);line-height:1.05;letter-spacing:-.045em}.section-intro-heading p,.section-intro-example p{margin:0;color:#6e667b;line-height:1.65;word-break:keep-all}.section-intro-keywords{display:flex;flex-wrap:wrap;gap:8px}.section-intro-keywords span{display:flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid #dce9e5;border-radius:999px;color:#3f7068;background:#effbf8;font-size:11px;font-weight:900}.section-intro-example{display:grid;grid-template-columns:24px minmax(0,1fr);gap:11px;padding:14px 16px;border-left:4px solid #ffd86b;border-radius:0 9px 9px 0;color:#8f6d19;background:#fff9e8}.section-intro-example strong{display:block;margin-bottom:4px;color:#594d35;font-size:12px}.section-intro-example p{font-size:13px}.section-start-button{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 18px 10px 20px;border-radius:11px;color:#fff;background:linear-gradient(135deg,#ff6fae,#f05d9f);box-shadow:0 12px 26px #f05d9f3d;cursor:pointer;text-align:left;transition:transform .15s ease,box-shadow .15s ease}.section-start-button:hover{box-shadow:0 16px 30px #f05d9f4d;transform:translateY(-2px)}.section-start-button span{display:grid;gap:2px}.section-start-button small{color:#ffffffc7;font-size:10px;font-weight:850}.section-start-button strong{font-size:15px}.section-intro-roadmap{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:clamp(24px,4vw,56px);background:#f7f4ffad;border-left:1px solid #e9e2ef}.section-intro-mascot{position:relative;min-height:150px;display:flex;align-items:flex-end;justify-content:center}.section-intro-mascot img{position:relative;z-index:1;width:142px;height:142px;object-fit:contain}.section-intro-glow{position:absolute;bottom:2px;width:138px;height:138px;border-radius:50%;background:#fff0bf}.section-intro-mascot>span{position:absolute;z-index:2;top:8px;right:5%;padding:7px 10px;border-radius:10px 10px 10px 2px;color:#554c68;background:#fff;box-shadow:0 7px 18px #4e3d611f;font-size:11px;font-weight:900}.section-mission-list{display:grid;gap:8px;padding:16px;border:1px solid #e3ddeb;border-radius:11px;background:#ffffffd6}.section-mission-list-heading{margin-bottom:3px}.section-mission-list-heading strong{color:#514865;font-size:12px}.section-mission-item{display:grid;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:54px;padding:7px 9px;border-radius:8px;color:#aaa1b5;background:#faf9fc}.section-mission-item.complete{color:#42a08c;background:#effbf8}.mission-marker{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#685e7b;background:#eee9f5;font-size:11px;font-weight:950}.complete .mission-marker{color:#fff;background:#62bca9}.section-mission-item div{min-width:0;display:grid;gap:2px}.section-mission-item strong{overflow:hidden;color:#433b59;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.section-mission-item small{overflow:hidden;color:#847b91;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.command-panel{grid-area:commands;min-height:0;padding:14px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.step-nav{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:10px}.step-nav button,.command-list button,.tool-grid button,.size-controls button,.direction-grid button,.secondary-action,.tertiary-action,.primary-action{cursor:pointer;border-radius:8px;transition:transform .13s ease,box-shadow .13s ease,background .13s ease}.step-nav button{height:40px;display:grid;place-items:center;color:#4c4470;background:#f1edff}.step-nav button:disabled{cursor:default;opacity:.35}.step-nav strong{display:block;margin-top:2px;font-size:16px}.section-progress{display:flex;align-items:center;gap:7px}.section-progress span{width:fit-content;padding:3px 7px;border-radius:999px;color:#4c4470;background:#f1edff;font-size:11px;font-weight:950}.section-progress small,.overall-stage-progress{color:#8a8297;font-size:11px;font-weight:850}.overall-stage-progress{display:block;margin-top:2px}.stage-lock-note{display:flex;align-items:center;gap:7px;padding:9px 10px;border-radius:8px;color:#745427;background:#fff3d6;font-size:13px;font-weight:900}.stage-lock-note.login-required{flex-wrap:wrap;color:#54457a;background:#f1edff}.stage-lock-note.login-required button{margin-left:auto;padding:6px 9px;border-radius:7px;color:#fff;background:#5f5585;cursor:pointer;font-size:11px;font-weight:900}.admin-section-field{display:grid;gap:7px}.admin-section-field>strong{color:#514a63;font-size:13px}.admin-section-field select{min-height:40px;padding:0 10px;border:1px solid #dbe7fa;border-radius:8px;color:#332d45;background:#fff}.admin-section-field select:disabled{color:#8a8297;background:#f5f2ed}.lesson-copy{padding:4px 0}.lesson-copy p{margin:0;color:#514a63;line-height:1.58;word-break:keep-all}.lesson-copy .activity-title{margin-bottom:8px;color:#3d3654;font-weight:900}.curriculum-card{display:grid;gap:8px;margin-top:12px}.curriculum-card div{display:grid;grid-template-columns:18px minmax(68px,.44fr) 1fr;align-items:center;gap:7px;padding:8px 10px;border-radius:8px;background:#f8fbff;border:1px solid #dbe7fa}.curriculum-card span{color:#746c86;font-size:12px;font-weight:900}.curriculum-card strong{color:#332d45;font-size:13px;line-height:1.35;word-break:keep-all}.success-line,.score-card{display:flex;align-items:center;gap:8px;min-height:40px;color:#4d4662}.success-line{margin-top:13px;padding:10px 12px;border-radius:8px;background:#f1edff;font-weight:800}.hint-box{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:8px;width:100%;flex:0 0 auto;min-height:40px;padding:12px;border-radius:8px;background:#fff3c7;color:#4d4662;line-height:1.45;overflow:visible}.hint-box svg{margin-top:3px;flex:0 0 auto}.hint-box span{display:block;min-width:0;overflow-wrap:anywhere;word-break:keep-word}.learning-notes{display:grid;gap:8px}.learning-notes div{display:grid;gap:4px;padding:10px 12px;border-radius:8px;background:#fbfff8;border:1px solid rgba(126,171,135,.24)}.learning-notes strong{color:#3d3654;font-size:13px}.learning-notes span{color:#514a63;font-size:13px;line-height:1.45;word-break:keep-all}.recommended-code{border-radius:8px;background:#f8fbff;border:1px solid #dbe7fa;overflow:hidden}.recommended-code summary{cursor:pointer;padding:10px 12px;color:#3d3654;font-weight:900}.recommended-code pre{margin:0;padding:10px 12px;overflow:auto;color:#263145;background:#edf4ff;font-size:12px;line-height:1.5}.recommended-code p{margin:0;padding:10px 12px;color:#514a63;font-size:13px;line-height:1.45}.command-list{flex:1;min-height:0;display:flex;flex-direction:column;gap:7px;overflow:auto}.command-list h2{margin:2px 0 5px;font-size:15px}.command-list button{display:grid;grid-template-columns:18px minmax(84px,.7fr) minmax(112px,1fr);align-items:center;gap:8px;min-height:44px;padding:8px 10px;color:#312d42;background:#f8fbff;border:1px solid #dbe7fa;text-align:left}.command-list button:hover,.step-nav button:not(:disabled):hover,.tool-grid button:hover,.size-controls button:not(:disabled):hover,.direction-grid button:hover,.secondary-action:hover,.tertiary-action:hover,.primary-action:hover{transform:translateY(-1px);box-shadow:0 8px 18px #503c281a}.command-list small{min-width:0;color:#80778f;font-size:12px;overflow-wrap:anywhere}.editor-panel{grid-area:lesson;overflow:auto}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.editor-heading strong{color:#332d45;font-size:19px}.editor-section{display:flex;flex-direction:column;gap:9px}.editor-section h2{margin:0;font-size:15px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tool-grid button{min-height:44px;display:flex;align-items:center;gap:8px;padding:8px 10px;color:#3b354d;background:#f8fbff;border:1px solid #dbe7fa;text-align:left;font-weight:900}.tool-grid button.active,.direction-grid button.active{border-color:#ff6fae;background:#ffe9f3;color:#3d3654}.tool-grid img{width:22px;height:22px;object-fit:contain}.tool-emoji{width:22px;text-align:center;font-size:18px;line-height:1}.tool-grid svg{flex:0 0 auto}.tool-grid button:nth-child(3) svg{color:#47aac5;fill:#b7f0ff}.tool-grid button:nth-child(2) svg{color:#ff6fae;fill:#ffd6e6}.size-controls{display:grid;gap:8px}.size-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.size-picker button{min-height:38px;border-radius:8px;color:#4c4470;background:#fff8db;font-weight:900;cursor:pointer}.size-picker button.active{color:#3d3654;background:#ffe9f3;box-shadow:inset 0 0 0 2px #ff6fae7a}.size-controls div{display:grid;grid-template-columns:42px 36px 1fr 36px;align-items:center;gap:8px;min-height:40px;padding:7px 8px;border-radius:8px;background:#fff8db;color:#4d4662;font-weight:900}.size-controls button,.direction-grid button{min-height:32px;display:grid;place-items:center;border-radius:8px;color:#4c4470;background:#fff}.size-controls button:disabled{cursor:default;opacity:.38}.size-controls strong{text-align:center}.direction-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.direction-grid button{min-height:42px;border:1px solid #dbe7fa;background:#f8fbff}.editor-note{min-height:42px;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;font-weight:900;line-height:1.4}.editor-note.valid{color:#2f7f47;background:#e7f9e7}.editor-note.warning{color:#a03c3c;background:#ffe8e8}.editor-reset{width:100%;flex:0 0 auto}.community-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:4px;border-radius:10px;background:#f1edff}.community-tabs button{min-height:38px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;color:#655b82;background:transparent;font-weight:900;cursor:pointer}.community-tabs button.active{color:#3d3654;background:#fff;box-shadow:0 4px 12px #4a355a1f}.community-heading button{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;color:#5f5585;background:#f1edff;cursor:pointer}.community-heading button:disabled{cursor:default;opacity:.55}.community-map-list{display:grid;gap:10px;min-height:0;overflow-y:auto}.community-map-card{display:grid;gap:9px;padding:12px;border:1px solid #dbe7fa;border-radius:10px;background:#f8fbff}.community-map-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.community-map-card strong{color:#332d45;overflow-wrap:anywhere}.community-map-meta span,.community-map-card p,.community-map-card small{color:#746c86;font-size:12px}.community-map-card p{margin:0;line-height:1.45;overflow-wrap:anywhere}.community-map-card button{min-height:38px;display:flex;align-items:center;justify-content:center;gap:7px;padding:7px 9px;border-radius:8px;color:#4c4470;background:#e8fbf6;font-weight:900;cursor:pointer}.community-map-card button small{margin-left:auto}.community-map-card button:disabled{cursor:default;opacity:.58}.community-map-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px}.community-map-actions .community-like-action{color:#80506a;background:#fff0f6}.community-map-actions .community-like-action.active{color:#c63f79;background:#ffddeb;box-shadow:inset 0 0 0 1px #c63f7938}.community-map-actions .community-like-action.active svg{fill:currentColor}.community-empty{min-height:150px;display:grid;place-items:center;align-content:center;gap:9px;padding:18px;border:1px dashed #d8cfea;border-radius:10px;color:#746c86;text-align:center;line-height:1.45}.community-upload{display:grid;gap:8px;padding-top:13px;border-top:1px solid #e7ddce}.community-upload-heading{display:flex;align-items:center;gap:7px;color:#3d3654}.community-upload input,.community-upload textarea{width:100%;border:1px solid #dbe7fa;border-radius:8px;padding:10px;color:#332d45;background:#fff;font:inherit}.community-upload textarea{min-height:72px;resize:vertical}.community-upload textarea::placeholder{color:#9a92a7}.community-upload small{color:#746c86;line-height:1.4}.community-message,.loaded-map-note{margin:0;padding:10px 11px;border-radius:8px;font-size:13px;font-weight:800;line-height:1.45}.community-message.success,.loaded-map-note{color:#2f6f55;background:#e8fbf6}.community-message.error{color:#a03c3c;background:#ffe8e8}.loaded-map-note{display:flex;align-items:center;gap:7px}.spin{animation:community-spin .9s linear infinite}@keyframes community-spin{to{transform:rotate(360deg)}}.board-stage{grid-area:board;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:18px;background:linear-gradient(180deg,#7fb7ff24,#7de2d114),#ffffffe6}.admin-area{grid-column:1 / -1;grid-row:1 / -1;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;overflow:hidden}.admin-navigation{display:grid;grid-template-columns:minmax(150px,.5fr) minmax(300px,auto) minmax(220px,.5fr);align-items:center;gap:14px;padding:10px 14px;border:1px solid rgba(126,171,135,.28);border-radius:10px;background:#fffffff0;box-shadow:0 8px 24px #503c2812}.admin-navigation-heading{display:grid;gap:2px}.admin-navigation-heading span,.admin-users-intro span{color:#7b718d;font-size:12px;font-weight:900}.admin-navigation-heading strong{color:#332d45;font-size:17px}.admin-navigation-tabs,.admin-navigation-actions{display:flex;align-items:center;gap:7px}.admin-navigation-tabs{justify-content:center;padding:4px;border-radius:9px;background:#f1edff}.admin-navigation-actions{justify-content:flex-end}.admin-navigation button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border-radius:7px;color:#5f5585;background:transparent;cursor:pointer;font-weight:900}.admin-navigation-tabs button.active{color:#fff;background:#6d58b0;box-shadow:0 4px 12px #5c479938}.admin-navigation-actions button{background:#f8fbff;border:1px solid #dbe7fa}.admin-page{display:grid;grid-template-columns:minmax(210px,.52fr) minmax(330px,.88fr) minmax(580px,1.6fr);gap:14px;overflow:hidden}.admin-sections-page{min-height:0;display:grid;grid-template-columns:minmax(220px,.58fr) minmax(350px,.92fr) minmax(430px,1.2fr);gap:14px;overflow:hidden}.admin-section-sidebar,.admin-section-form,.admin-section-preview-wrap{min-height:0;overflow:auto;overscroll-behavior:contain}.admin-section-help{margin:-4px 0 0;color:#746c80;font-size:12px;line-height:1.5;word-break:keep-all}.admin-section-list{display:grid;gap:8px}.admin-section-list button{min-width:0;min-height:58px;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;padding:8px 10px;border:1px solid #dbe7fa;border-radius:8px;color:#6d6280;background:#f8fbff;cursor:pointer;text-align:left}.admin-section-list button.active{border-color:#ff6fae;background:#ffe9f3}.admin-section-list button>span{color:#ff6fae;font-size:18px;font-weight:950}.admin-section-list button div{min-width:0;display:grid;gap:3px}.admin-section-list strong,.admin-section-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-section-list strong{color:#40384f;font-size:12px}.admin-section-list small{color:#82798e;font-size:10px;font-weight:800}.admin-section-form{gap:12px}.admin-section-preview-wrap{position:relative;display:grid;align-content:center;padding:34px 22px 22px;border:1px solid #e7ddce;border-radius:8px;background:#f6f2fb}.admin-preview-label{position:absolute;top:12px;left:16px;color:#81778d;font-size:10px;font-weight:950;letter-spacing:.1em}.admin-section-preview{position:relative;overflow:hidden;display:grid;gap:20px;padding:clamp(24px,3vw,42px);border:1px solid #e5ddec;border-radius:12px;background:radial-gradient(circle at 8% 8%,rgba(255,216,107,.26),transparent 32%),#fff;box-shadow:0 16px 36px #4d3d5c1a}.admin-section-preview-top{display:flex;justify-content:space-between;gap:10px;color:#6b5f85;font-size:10px;font-weight:950;letter-spacing:.08em}.admin-section-preview-top span{display:flex;align-items:center;gap:5px}.admin-section-preview-heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:20px}.admin-section-preview-heading>strong{color:#ff6fae;font-size:clamp(48px,5vw,72px);line-height:.9;letter-spacing:-.08em;text-shadow:3px 4px 0 #ffe5f0}.admin-section-preview-heading span{color:#8a8196;font-size:9px;font-weight:950;letter-spacing:.08em}.admin-section-preview-heading h2{margin:6px 0 9px;color:#332d45;font-size:clamp(24px,2.5vw,36px);line-height:1.08;letter-spacing:-.04em}.admin-section-preview-heading p,.admin-section-preview-example p{margin:0;color:#6e667b;font-size:12px;line-height:1.6;word-break:keep-all}.admin-section-preview-keywords{display:flex;flex-wrap:wrap;gap:6px}.admin-section-preview-keywords span{display:flex;align-items:center;gap:4px;padding:6px 8px;border-radius:999px;color:#3f7068;background:#effbf8;font-size:10px;font-weight:900}.admin-section-preview-example{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;padding:12px 14px;border-left:4px solid #ffd86b;color:#8f6d19;background:#fff9e8}.admin-section-preview-example strong{display:block;margin-bottom:3px;color:#594d35;font-size:11px}.admin-section-preview-mascot{position:absolute;right:-10px;bottom:-22px;opacity:.13;pointer-events:none}.admin-section-preview-mascot img{width:130px;height:130px;object-fit:contain}.admin-users-page{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px;overflow:auto}.admin-users-intro{display:grid;gap:5px}.admin-users-intro strong{color:#332d45;font-size:22px}.admin-users-intro p{margin:0;color:#6a6278;font-size:14px}.admin-users-page .admin-user-management{align-content:start;padding:18px}.admin-users-page .admin-user-list{max-height:none}.admin-sidebar,.admin-form,.admin-map-area{min-height:0}.admin-sidebar,.admin-form{overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.admin-heading,.admin-card-title,.inline-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-heading span{display:block;color:#7b718d;font-size:12px;font-weight:900}.admin-heading strong,.admin-card-title strong{color:#332d45;font-size:18px}.admin-level-list{display:grid;gap:8px}.admin-level-list button{display:grid;grid-template-columns:30px minmax(0,1fr) 52px;align-items:center;gap:8px;min-height:46px;padding:8px 10px;border-radius:8px;color:#3b354d;background:#f8fbff;border:1px solid #dbe7fa;cursor:pointer;text-align:left}.admin-level-list button.active{border-color:#ff6fae;background:#ffe9f3}.admin-level-list button span,.admin-level-list button small{color:#7b718d;font-size:12px;font-weight:900}.admin-level-list button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-admin,.admin-empty-state{color:#645b78;font-weight:800}.admin-login{grid-column:1 / -1;grid-row:1 / -1;align-self:center;justify-self:center;width:min(100%,420px);min-height:auto;padding:24px}.auth-page{grid-column:1 / -1;grid-row:1 / -1;align-self:center;justify-self:center;width:min(100%,430px);min-height:auto;padding:24px}.leaderboard-page{grid-column:1 / -1;grid-row:1 / -1;overflow:auto;gap:16px}.leaderboard-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.leaderboard-heading div{display:grid;gap:5px}.leaderboard-heading span{color:#7b718d;font-size:12px;font-weight:900}.leaderboard-heading strong{color:#332d45;font-size:22px;line-height:1.2}.leaderboard-heading button,.leaderboard-login-note button{display:flex;align-items:center;justify-content:center;gap:7px}.leaderboard-login-note{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border-radius:8px;color:#4c4470;background:#fff8db;font-size:13px;font-weight:900}.leaderboard-login-note button{min-height:32px;padding:0 10px;border-radius:8px;color:#fff;background:#4c4470;cursor:pointer;font-weight:900;white-space:nowrap}.my-rank-card{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:12px 14px;border-radius:8px;color:#332d45;background:#e8fbf6;border:1px solid rgba(72,172,149,.24)}.my-rank-card span,.my-rank-card strong{display:block}.my-rank-card span{color:#5f5585;font-size:12px;font-weight:900}.my-rank-card strong{margin-top:2px;font-size:18px}.score-rules{border:1px solid #ded5f3;border-radius:10px;background:#fbf9ff}.score-rules summary{min-height:46px;display:flex;align-items:center;gap:9px;padding:0 14px;color:#4c4470;cursor:pointer;font-size:14px;font-weight:900;list-style:none}.score-rules summary::-webkit-details-marker{display:none}.score-rules summary:after{content:"＋";margin-left:auto;color:#8a7ab5;font-size:18px}.score-rules[open] summary:after{content:"−"}.score-rules-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 14px 14px;border-top:1px solid #ece6f8}.score-rules-content section{display:grid;align-content:start;gap:8px;padding-top:14px}.score-rules-content section>strong{color:#332d45;font-size:14px}.score-rules-content ul{display:grid;gap:6px;margin:0;padding-left:20px;color:#675e7a;font-size:12px;font-weight:800;line-height:1.5}.score-rule-chips{display:flex;flex-wrap:wrap;gap:6px}.score-rule-chips span{padding:6px 9px;border-radius:999px;color:#4c4470;background:#eee9ff;font-size:12px;font-weight:900}.score-rules-content section p,.score-rules-note{margin:0;color:#675e7a;font-size:12px;font-weight:800;line-height:1.55}.score-rules-note{grid-column:1 / -1;padding:10px 11px;border-radius:8px;background:#fff8db}.leaderboard-empty{margin:0;padding:18px;border-radius:8px;color:#645b78;background:#f8fbff;border:1px solid #dbe7fa;font-weight:900;text-align:center}.leaderboard-list{display:grid;gap:8px}.leaderboard-row{display:grid;grid-template-columns:84px minmax(160px,1fr) minmax(130px,.52fr) minmax(220px,.84fr) minmax(110px,.34fr);align-items:center;gap:10px;min-height:64px;padding:10px 12px;border-radius:8px;border:1px solid #dbe7fa;background:#f8fbff}.leaderboard-row.current-user{border-color:#ff6fae6b;background:#ffe9f3}.leaderboard-rank,.leaderboard-player,.leaderboard-total,.leaderboard-breakdown{min-width:0}.leaderboard-rank{display:flex;align-items:center;gap:7px;color:#5f5585}.leaderboard-rank strong,.leaderboard-player strong,.leaderboard-total strong{color:#332d45}.leaderboard-player strong,.leaderboard-player span,.leaderboard-total strong,.leaderboard-total span,.leaderboard-updated{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard-player strong{font-size:15px}.leaderboard-player span,.leaderboard-total span,.leaderboard-breakdown span,.leaderboard-updated{color:#746c86;font-size:12px;font-weight:900}.leaderboard-total strong{font-size:17px}.leaderboard-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.leaderboard-breakdown span{min-height:30px;display:flex;align-items:center;justify-content:center;padding:0 7px;border-radius:8px;background:#fff;text-align:center}.auth-copy{display:grid;gap:7px}.auth-copy span{color:#7b718d;font-size:12px;font-weight:900}.auth-copy strong{color:#332d45;font-size:22px;line-height:1.25}.auth-copy p{margin:0;color:#514a63;font-size:14px;line-height:1.5;word-break:keep-all}.auth-page form{display:grid;gap:12px}.auth-page label,.auth-field{display:grid;gap:7px;color:#514a63;font-size:13px;font-weight:900}.auth-page input{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dbe7fa;border-radius:8px;color:#332d45;background:#fff}.email-verification-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.email-verification-row input{min-width:0}.email-verification-row .secondary-action{min-width:108px;padding-inline:12px;white-space:nowrap}.auth-verification-notice{margin:0;color:#5d5572;font-size:12px;font-weight:800}.auth-error{margin:0;padding:10px 12px;border-radius:8px;color:#a03c3c;background:#ffe8e8;font-size:13px;font-weight:900}.auth-success{display:flex;align-items:center;justify-content:center;gap:7px;margin:0;padding:10px 12px;border-radius:8px;color:#237044;background:#e8f8ee;font-size:13px;font-weight:900}.auth-status-card{display:grid;gap:16px;text-align:center}.auth-status-card .auth-copy{justify-items:center}.auth-status-icon{justify-self:center;color:#5576c5}.auth-status-icon.success{color:#2c9a5c}.auth-status-icon.error{color:#c84b4b}.auth-status-icon.checking{animation:auth-status-spin 1s linear infinite}@keyframes auth-status-spin{to{transform:rotate(360deg)}}.legal-consent{display:grid;gap:9px;padding:12px;border-radius:8px;background:#fbfff8;border:1px solid rgba(126,171,135,.24)}.legal-consent>p{margin:0;color:#514a63;font-size:12px;font-weight:800;line-height:1.45;word-break:keep-all}.legal-consent-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.legal-consent-row label{display:flex;align-items:center;gap:8px;min-width:0;color:#3d3654;font-size:13px;font-weight:900}.legal-consent-row input{width:16px;height:16px;min-height:0;padding:0;accent-color:#ff6fae;flex:0 0 auto}.legal-consent-row button{min-height:30px;padding:0 9px;border-radius:8px;color:#4c4470;background:#fff8db;cursor:pointer;font-size:12px;font-weight:900;white-space:nowrap}.legal-panel{display:grid;gap:8px;max-height:220px;overflow:auto;padding:10px;border-radius:8px;border:1px solid #dbe7fa;background:#f8fbff}.legal-panel strong{color:#332d45;font-size:13px}.legal-panel pre{margin:0;color:#514a63;font-family:inherit;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:keep-all}.auth-link{width:100%;justify-content:center}.password-help{display:grid;gap:6px;padding:12px;border-radius:8px;border:1px solid #dbe7fa;background:#f8fbff}.password-help strong{color:#332d45;font-size:13px}.password-help p{margin:0;color:#514a63;font-size:12px;line-height:1.45;word-break:keep-all}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:18px;background:#2f2a3f57}.account-delete-modal,.account-settings-modal{width:min(100%,440px);display:grid;gap:14px;padding:22px;border-radius:8px;border:1px solid #e7ddce;background:#fffdfb;box-shadow:0 24px 70px #2f2a3f3d}.account-settings-modal{width:min(100%,520px);max-height:calc(100vh - 36px);overflow-y:auto}.account-settings-heading{display:grid;gap:7px}.account-settings-heading strong{color:#332d45;font-size:21px}.account-settings-heading p,.account-password-section p,.account-danger-zone p{margin:0;color:#6a6278;font-size:13px;line-height:1.5;word-break:keep-all}.account-settings-modal>label{display:grid;gap:7px;color:#514a63;font-size:13px;font-weight:900}.account-password-section{display:grid;gap:10px;margin-top:4px;padding-top:16px;border-top:1px solid #e7ddce}.account-password-section>div{display:grid;gap:4px}.account-password-section>div>strong{color:#332d45;font-size:15px}.account-password-section label{display:grid;gap:6px;color:#514a63;font-size:13px;font-weight:900}.password-change-action{min-height:40px;padding:0 14px;border-radius:8px;color:#4c4470;background:#eee8ff;cursor:pointer;font-weight:900}.password-change-action:disabled{cursor:default;opacity:.45}.account-settings-modal input{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dbe7fa;border-radius:8px;color:#332d45;background:#fff}.account-settings-modal input.readonly-account-field{color:#746d7d;background:#f3f1f5;cursor:not-allowed}.nickname-check-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.nickname-check-row button,.primary-account-action{min-height:40px;padding:0 14px;border-radius:8px;color:#fff;background:#6d58b0;cursor:pointer;font-weight:900;white-space:nowrap}.nickname-check-row button:disabled,.primary-account-action:disabled{cursor:default;opacity:.45}.nickname-check-message{margin:-5px 0 0;font-size:13px;font-weight:900}.nickname-check-message.success{color:#2f7f47}.nickname-check-message.error{color:#a13636}.account-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:4px;padding-top:16px;border-top:1px solid #eadada}.account-danger-zone>div{display:grid;gap:4px}.account-danger-zone strong{color:#8f3030;font-size:14px}.account-danger-zone button{min-height:38px;padding:0 12px;border-radius:8px;color:#8f3030;background:#ffe8e8;cursor:pointer;font-weight:900;white-space:nowrap}.account-delete-copy{display:grid;gap:7px}.account-delete-copy>span{color:#8f3030;font-size:12px;font-weight:900}.account-delete-copy strong{color:#332d45;font-size:21px;line-height:1.25}.account-delete-copy p{margin:0;color:#514a63;font-size:14px;line-height:1.5;word-break:keep-all}.account-delete-modal label{display:grid;gap:7px;color:#514a63;font-size:13px;font-weight:900}.account-delete-modal label strong{color:#8f3030}.account-delete-modal input{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dbe7fa;border-radius:8px;color:#332d45;background:#fff}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.danger-confirm-action{min-height:40px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;color:#fff;background:#b43a3a;cursor:pointer;font-weight:900}.danger-confirm-action:disabled{cursor:default;opacity:.45}.temporary-password{display:block;padding:10px 12px;border-radius:8px;color:#332d45;background:#fff8db;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:20px;text-align:center;letter-spacing:0}.admin-login-copy{display:grid;gap:6px}.admin-login-copy span{color:#7b718d;font-size:12px;font-weight:900}.admin-login-copy strong{color:#332d45;font-size:22px}.admin-login form{display:grid;gap:12px}.admin-login label{display:grid;gap:7px;color:#514a63;font-size:13px;font-weight:900}.admin-login input{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dbe7fa;border-radius:8px;color:#332d45;background:#fff}.admin-login-error{margin:0;padding:10px 12px;border-radius:8px;color:#a03c3c;background:#ffe8e8;font-size:13px;font-weight:900}.admin-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-form{gap:16px}.localized-field,.checkbox-group{display:grid;gap:9px;padding:12px;border-radius:8px;background:#fbfff8;border:1px solid rgba(126,171,135,.24)}.localized-field>strong,.checkbox-group legend{color:#3d3654;font-size:14px;font-weight:900}.localized-field label{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:8px}.localized-field label span{padding-top:9px;color:#7b718d;font-size:12px;font-weight:900}.localized-field input,.localized-field textarea{width:100%;min-width:0;border:1px solid #dbe7fa;border-radius:8px;color:#332d45;background:#fff}.localized-field input{min-height:38px;padding:7px 9px}.localized-field textarea{min-height:78px;padding:9px;resize:vertical;line-height:1.45}.admin-user-management{display:grid;gap:12px;padding:12px;border-radius:8px;border:1px solid rgba(126,171,135,.24);background:#fbfff8}.admin-user-management .admin-card-title span{display:block;color:#7b718d;font-size:12px;font-weight:900}.admin-user-search{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;min-height:38px;padding:0 10px;border:1px solid #dbe7fa;border-radius:8px;color:#7b718d;background:#fff}.admin-user-search input{min-width:0;border:0;outline:0;color:#332d45;background:transparent}.admin-user-message{margin:0;padding:9px 10px;border-radius:8px;color:#4c4470;background:#fff8db;font-size:13px;font-weight:900}.admin-user-login-action{width:100%;justify-content:center}.admin-user-list{display:grid;gap:8px;max-height:360px;overflow:auto}.admin-user-row{display:grid;grid-template-columns:minmax(160px,1.25fr) 72px 72px 82px 72px 92px 96px 106px minmax(280px,auto);align-items:center;gap:8px;min-height:54px;padding:9px 10px;border-radius:8px;border:1px solid #dbe7fa;background:#f8fbff}.admin-user-row div{min-width:0}.admin-user-row strong,.admin-user-row span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-row .leaderboard-status{width:fit-content;padding:4px 7px;border-radius:999px}.admin-user-row .admin-role-status{width:fit-content;padding:4px 7px;border-radius:999px;color:#746c86;background:#eceaf2}.admin-user-row .admin-role-status.active{color:#3864a6;background:#e7f0ff}.admin-user-row .leaderboard-status.active{color:#2f7f47;background:#e8f7eb}.admin-user-row .leaderboard-status.inactive{color:#8f5d30;background:#fff0dc}.admin-user-actions{display:flex;justify-content:flex-end;gap:6px}.admin-user-actions button{white-space:nowrap}.admin-user-row strong{color:#332d45;font-size:13px}.admin-user-row span{color:#746c86;font-size:12px;font-weight:900}.checkbox-group{border:1px solid rgba(126,171,135,.24)}.checkbox-group div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.checkbox-group label,.admin-card-title label{display:flex;align-items:center;gap:7px;color:#514a63;font-size:13px;font-weight:800;overflow-wrap:anywhere}.checkbox-group input,.admin-card-title input{accent-color:#ff6fae}.admin-map-area{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(300px,1fr);gap:14px;overflow:hidden}.admin-map-area .tool-grid button>span:last-child{white-space:nowrap}.admin-map-area .editor-panel,.admin-map-area .board-stage{grid-area:auto}.admin-map-area .board-stage{min-height:0}.compact{min-height:36px;padding:0 10px}.danger{color:#8f3030;background:#ffe8e8}.secondary-action:disabled,.primary-action:disabled{cursor:default;opacity:.45}.admin-empty-state{grid-column:2 / -1;align-items:center;justify-content:center}.level-meter{align-self:stretch;display:flex;justify-content:space-between;gap:12px;padding:0 4px}.level-meter strong{text-align:right;font-size:14px;word-break:keep-all}.grid-board{max-width:100%;flex:0 1 auto;display:grid;gap:8px;padding:12px;border-radius:8px;background:#dff5ec;border:1px solid #bde4da}.tile{position:relative;aspect-ratio:1;display:grid;place-items:center;min-width:0;border-radius:8px;background:#fbfff8;border:1px solid rgba(126,171,135,.32);color:inherit;padding:0;overflow:hidden}.tile.editor-tile{cursor:pointer}.tile.editor-tile:hover,.tile.editor-tile:focus-visible{outline:none;box-shadow:inset 0 0 0 3px #ff6fae38,0 8px 18px #503c281a}.tile.start{background:#fff8db}.tile.flag{background:#ffe9f3}.tile.switch{background:var(--switch-color, #ffe4e6);box-shadow:inset 0 0 0 2px #62718229}.tile.switch-on{box-shadow:inset 0 0 0 2px #22c55e4d}.tile.switch-off{box-shadow:inset 0 0 0 2px #94a3b847}.tile.warp{background:color-mix(in srgb,var(--warp-color, #7c3aed) 16%,white);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--warp-color, #7c3aed) 38%,transparent)}.tile.dog{box-shadow:inset 0 0 0 3px #ff6fae47}.tile img{width:78%;height:78%;object-fit:contain;z-index:3;filter:drop-shadow(0 5px 5px rgba(52,40,24,.16))}.gem{width:clamp(30px,66%,58px);height:clamp(30px,66%,58px);color:#47aac5;fill:#b7f0ff;stroke-width:2.6;z-index:2;filter:drop-shadow(0 6px 5px rgba(18,105,135,.22))}.flag-icon{width:clamp(34px,72%,64px);height:clamp(34px,72%,64px);color:#ff6fae;fill:#ffd6e6;stroke-width:2.5;z-index:2;filter:drop-shadow(0 6px 5px rgba(176,47,105,.2))}.switch-indicator{position:absolute;left:50%;bottom:10%;transform:translate(-50%);display:grid;align-items:center;width:clamp(42px,60%,68px);height:clamp(24px,30%,34px);border-radius:999px;background:#e5e7eb;border:1px solid rgba(100,116,139,.28);z-index:4;box-shadow:inset 0 1px 1px #ffffffc2,0 5px 10px #2b374229;transition:background-color .2s ease-in-out,border-color .2s ease-in-out,box-shadow .2s ease-in-out}.switch-knob{width:calc(50% - 4px);aspect-ratio:1;margin-left:3px;border-radius:999px;background:#ef4444;box-shadow:inset 0 1px 1px #ffffffa8,0 3px 7px #7f1d1d47;transition:transform .2s ease-in-out,background-color .2s ease-in-out,box-shadow .2s ease-in-out}.tile.switch-on .switch-indicator{background:#dcfce7;border-color:#22c55e6b;box-shadow:inset 0 1px 1px #ffffffb8,0 6px 12px #1665342e}.tile.switch-on .switch-knob{transform:translate(calc(100% + 2px));background:#22c55e;box-shadow:inset 0 1px 1px #ffffffa8,0 3px 7px #15803d47}.warp-icon{display:grid;place-items:center;width:clamp(28px,62%,54px);height:clamp(28px,62%,54px);border-radius:999px;background:#ffffffb8;border:2px solid var(--warp-color, #7c3aed);color:var(--warp-color, #7c3aed);font-size:clamp(20px,5vw,36px);line-height:1;z-index:2;filter:drop-shadow(0 6px 5px color-mix(in srgb,var(--warp-color, #7c3aed) 24%,transparent))}.hedge{width:76%;height:38%;border-radius:999px 999px 8px 8px;background:#77d89a;box-shadow:-12px 5px #65c98c,12px 5px #65c98c,0 13px #4fa978}.status{width:min(100%,620px);flex:0 0 auto;min-height:44px;margin:0;padding:12px 14px;border-radius:8px;background:#f8fbff;color:#4c4470;font-weight:800;text-align:center}.status.success{background:#e7f9e7;color:#2f7f47}.status.failure{background:#ffe8e8;color:#a03c3c}.code-panel{grid-area:code;min-height:0;gap:11px}.editor-panel{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.code-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:22px}.code-heading span{color:#332d45;font-size:16px;font-weight:900}.input-mode-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;border-radius:8px;background:#f1f7f4;border:1px solid #dce9e2}.input-mode-toggle button{min-width:0;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:6px;color:#5b5572;font-weight:900;background:transparent}.input-mode-toggle button.active{color:#332d45;background:#fff;box-shadow:0 5px 14px #534c701f}.block-editor{flex:1;min-height:220px;display:flex;flex-direction:column;gap:9px;overflow-y:auto;padding:12px;border:1px solid #ded5c8;border-radius:8px;background:#fffdf7}.empty-blocks{flex:1;min-height:150px;display:grid;place-items:center;align-content:center;gap:10px;color:#736b87;text-align:center;font-weight:800}.block-list{display:grid;gap:9px}.code-block{display:grid;gap:10px;padding:10px;border:1px solid #dce9e2;border-left:5px solid #48c1a5;border-radius:8px;background:#fff;box-shadow:0 5px 14px #436c5e14}.repeat-block{border-left-color:#8b5cf6;background:#fbf9ff}.condition-block{border-left-color:#f59e0b;background:#fffbeb}.function-block{border-left-color:#0ea5e9;background:#f0f9ff}.block-main-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px}.block-main-row>svg{color:#8a839e}.code-block-text{min-width:0;display:grid;gap:3px}.code-block-text strong,.code-block-text small{overflow-wrap:anywhere}.code-block-text strong{color:#332d45;font-size:14px}.code-block-text small{color:#6d6680;font-family:SFMono-Regular,Cascadia Code,Consolas,monospace;font-size:12px}.block-actions{display:flex;align-items:center;gap:4px}.block-actions button{width:30px;height:30px;display:grid;place-items:center;border-radius:6px;color:#5f5585;background:#f1edff}.block-actions button:disabled{cursor:default;opacity:.42}.repeat-count{min-width:72px;display:grid;gap:4px;color:#5b5572;font-size:11px;font-weight:900}.repeat-count input{width:72px;height:32px;padding:0 8px;border:1px solid #d6cdea;border-radius:6px;color:#332d45;background:#fff;font:inherit;font-size:14px;text-align:center}.repeat-body{display:grid;gap:9px;margin-left:20px;padding:10px 0 0 13px;border-left:2px dashed #c7b8f8}.condition-body{display:grid;gap:11px;margin-left:20px;padding:10px 0 0 13px;border-left:2px dashed #facc15}.function-body{display:grid;gap:9px;margin-left:20px;padding:10px 0 0 13px;border-left:2px dashed #7dd3fc}.nested-block-section{display:grid;gap:9px}.add-else-button{min-height:34px;justify-self:start;padding:0 12px;border-radius:6px;color:#6d4b00;background:#fef3c7;font-size:13px;font-weight:900}.empty-repeat{margin:0;padding:10px;border-radius:8px;color:#736b87;background:#fff;font-size:13px;font-weight:800;text-align:center}.nested-command-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.nested-command-list span{flex:1 0 100%;color:#6c647e;font-size:12px;font-weight:900}.nested-command-list button{min-height:30px;padding:0 9px;border-radius:6px;color:#4c4470;background:#f1edff;font-size:12px;font-weight:900}.block-editor-note{flex:0 0 auto;margin:auto 0 0;padding-top:6px;color:#6c647e;font-size:13px;font-weight:800;text-align:center}textarea{flex:1;min-height:220px;width:100%;resize:none;padding:16px;border:1px solid #ded5c8;border-radius:8px;outline:none;background:#2f2a3f;color:#fff7e8;line-height:1.55;font-family:SFMono-Regular,Cascadia Code,Consolas,monospace;font-size:15px;-moz-tab-size:2;tab-size:2}textarea:focus{border-color:#ff6fae;box-shadow:0 0 0 3px #ff6fae2e}textarea::placeholder{color:#fff7e89e}.run-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.primary-action,.secondary-action,.tertiary-action{min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:900}.primary-action{color:#fff;background:#ff6fae}.primary-action:disabled{cursor:default;opacity:.66}.secondary-action{color:#4c4470;background:#e8fbf6}.tertiary-action{color:#5f5585;background:#f1edff}.score-card{justify-content:center;flex-wrap:wrap;padding:10px;border-radius:8px;background:#fff8db;font-weight:800}@media(max-width:1120px){.app-shell{height:auto;min-height:100vh;min-height:100dvh;overflow:visible}.workspace{grid-template-columns:minmax(0,1fr) minmax(320px,.86fr);grid-template-rows:auto minmax(360px,auto) auto;grid-template-areas:"lesson lesson" "board code" "commands commands";overflow:visible}.section-intro-page{grid-row:1 / -1}.panel,.board-stage{min-height:auto;overflow:visible}.lesson-panel,.editor-panel,.command-panel,.leaderboard-page{overflow:visible;scrollbar-gutter:auto}.leaderboard-row{grid-template-columns:76px minmax(160px,1fr) minmax(130px,.52fr)}.leaderboard-breakdown,.leaderboard-updated{grid-column:2 / -1}textarea{min-height:220px}.admin-area{overflow:visible}.admin-navigation{grid-template-columns:minmax(150px,1fr) auto}.admin-navigation-tabs{grid-column:1 / -1;grid-row:2}.admin-page{min-height:820px;grid-template-columns:minmax(220px,.7fr) minmax(340px,1fr);overflow:visible}.admin-sections-page{min-height:820px;grid-template-columns:minmax(220px,.68fr) minmax(360px,1fr);overflow:visible}.admin-section-preview-wrap{grid-column:1 / -1;min-height:480px}.admin-map-area{grid-column:1 / -1}.admin-users-page{overflow:visible}}@media(max-width:760px){.portal-shell{padding:14px 18px 22px}.portal-header{align-items:flex-start;flex-direction:column;gap:12px}.portal-header-actions{width:100%;align-items:stretch;flex-direction:column}.portal-common-controls{width:100%;border-radius:18px}.portal-title-row{width:100%;justify-content:space-between}.portal-hero{min-height:auto;grid-template-columns:1fr;gap:4px;padding:46px 4px 18px;text-align:center}.portal-eyebrow,.portal-benefits{justify-content:center;margin-inline:auto}.portal-hero-copy>p{margin-inline:auto}.portal-hero-mascot{min-height:260px}.portal-hero-mascot img{max-height:260px}.mascot-glow{width:220px;height:220px}.code-one{right:12%}.code-two{left:10%}.portal-services{padding:28px 0 12px}.portal-section-heading{align-items:flex-start;flex-direction:column;gap:8px}.portal-section-heading>p{text-align:left}.portal-service-grid{grid-template-columns:1fr}.active-service{grid-template-columns:58px minmax(0,1fr)}.service-launch{grid-column:1 / -1;grid-row:auto;min-width:0}.workspace{display:flex;flex-direction:column;gap:12px}.section-intro-page{display:flex;flex-direction:column;overflow:visible}.section-intro-copy,.section-intro-roadmap{padding:26px 20px}.section-intro-heading{align-items:start;gap:18px}.section-number{font-size:58px}.section-intro-heading h1{font-size:30px}.section-intro-roadmap{border-top:1px solid #e9e2ef;border-left:0}.section-intro-mascot{min-height:130px}.section-intro-mascot img{width:126px;height:126px}.section-intro-glow{width:120px;height:120px}.lesson-panel,.editor-panel{order:1}.board-stage{order:2}.code-panel{order:3}.command-panel{order:4}.leaderboard-page{order:1}textarea,.block-editor{flex:0 0 auto;min-height:180px}.board-stage{justify-content:flex-start;gap:12px;padding:14px}.run-row{grid-template-columns:repeat(3,minmax(0,1fr))}.primary-action,.secondary-action,.tertiary-action{min-height:52px;padding:8px 6px;font-size:13px;line-height:1.2;text-align:center}.admin-navigation{display:flex;align-items:stretch;flex-direction:column}.admin-navigation-tabs,.admin-navigation-actions{width:100%}.admin-navigation-tabs button,.admin-navigation-actions button{flex:1}.admin-page,.admin-sections-page{min-height:auto;display:flex;flex-direction:column;overflow:visible}.admin-section-sidebar,.admin-section-form,.admin-section-preview-wrap{overflow:visible}.admin-section-preview-wrap{min-height:auto}.admin-sidebar,.admin-form,.admin-map-area{overflow:visible}.admin-user-row{grid-template-columns:minmax(0,1fr) auto}.admin-user-row>span{grid-column:1 / -1}.admin-user-actions{grid-column:1 / -1;justify-content:stretch}.admin-user-actions button{flex:1}}@media(max-width:620px){.portal-brand img{width:46px;height:46px}.portal-brand small{display:none}.portal-header-actions{align-items:stretch;flex-direction:column}.portal-common-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-controls-label{grid-column:1 / -1;padding:4px 8px 0}.portal-language-switch,.portal-account-button,.portal-admin-menu summary{width:100%}.portal-common-controls>.portal-language-switch:last-child,.portal-admin-menu{grid-column:1 / -1}.portal-admin-menu>div{right:auto;left:0;width:min(280px,calc(100vw - 48px))}.portal-auth-actions,.portal-user{width:100%}.portal-auth-actions button,.portal-user button{flex:1}.portal-user>span{flex:1}.portal-hero{padding-top:34px}.portal-hero h1{font-size:clamp(34px,11vw,48px)}.portal-hero-copy>p{font-size:14px}.portal-benefits{align-items:center;flex-direction:column}.portal-section-heading h2{font-size:21px}.portal-footer{align-items:center;flex-direction:column;gap:5px}.app-shell{padding-top:max(10px,env(safe-area-inset-top));padding-right:max(10px,env(safe-area-inset-right));padding-bottom:max(10px,env(safe-area-inset-bottom));padding-left:max(10px,env(safe-area-inset-left))}.topbar{align-items:flex-start;flex-direction:column;gap:8px;min-height:auto;padding:8px 10px}.brand img{width:40px;height:40px}.brand{display:grid;grid-template-columns:40px minmax(0,1fr) auto;width:100%}.topbar-primary-actions{grid-column:3;margin-left:0}.brand>div:nth-child(2){min-width:0}.brand>div:nth-child(2)>span{display:none}.curriculum-picker{position:fixed;top:max(72px,calc(env(safe-area-inset-top) + 62px));right:max(10px,env(safe-area-inset-right));left:max(10px,env(safe-area-inset-left));width:auto}.topbar-menu{right:0;left:auto}.progress-strip{min-width:100%;width:100%;gap:8px}.progress-track{flex:1;width:auto}.command-list button{grid-template-columns:18px 1fr}.leaderboard-heading{align-items:stretch;flex-direction:column}.leaderboard-login-note{grid-template-columns:20px minmax(0,1fr)}.leaderboard-login-note button{grid-column:1 / -1}.leaderboard-row{grid-template-columns:minmax(0,1fr);gap:8px}.leaderboard-breakdown,.leaderboard-updated{grid-column:auto}.leaderboard-breakdown{grid-template-columns:minmax(0,1fr)}.command-list small{grid-column:2}.code-block,.block-main-row{grid-template-columns:minmax(0,1fr)}.block-main-row>svg{display:none}.block-actions{justify-content:flex-end}.repeat-body,.condition-body,.function-body{margin-left:0}.grid-board{gap:5px;padding:8px}.level-meter{flex-direction:column}.level-meter strong{text-align:left}.lesson-panel{gap:10px;padding:14px}.lesson-copy p{line-height:1.45}.success-line,.hint-box{margin-top:8px;padding:9px 10px;min-height:auto;font-size:13px}.code-panel{gap:10px;padding:14px}.score-rules-content{grid-template-columns:minmax(0,1fr)}.score-rules-note{grid-column:1}}@media(max-width:420px){.portal-brand strong{font-size:14px}.portal-language-switch{width:100%;min-width:0;padding:0 10px}.portal-language-switch span{display:inline}.section-intro-kicker{align-items:flex-start;flex-direction:column}.section-intro-heading{grid-template-columns:1fr}.section-number{font-size:48px}.section-mission-item{grid-template-columns:28px minmax(0,1fr)}.section-mission-item>svg{display:none}.curriculum-picker-trigger{min-width:92px;padding:0 9px}.curriculum-picker-heading{min-height:58px;padding:10px 11px}.curriculum-picker-sections{max-height:66vh;padding:8px}.curriculum-picker-stages{grid-template-columns:1fr}}
