:root{color-scheme:dark}*{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif;background:#101c30;color:#eff6ff}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #ffe197;outline-offset:3px}[hidden]{display:none!important}#jeu{--accent:#88e7ed;--glow:#37d2e1;position:relative;background:#101f34;border:1px solid #39495e;border-radius:18px;padding:18px;overflow:hidden;margin:18px 0}#jeu[data-palette=ambre]{--accent:#ffd49d;--glow:#dda552;background:#231d2d}#jeu[data-palette=menthe]{--accent:#9df0cf;--glow:#4cd9ab;background:#112a2c}.scene-top{display:flex;justify-content:space-between;gap:12px;color:#b6c8de;font-size:12px;letter-spacing:.05em}#jeu h2{font-size:clamp(23px,4vw,32px);margin:18px 0 8px}#description{line-height:1.6;color:#d2deeb;max-width:65ch}#jeu button{border:1px solid #657c94;border-radius:8px;background:#1c344d;color:#f6fbff;padding:10px 13px;line-height:1.4;white-space:normal;text-align:left}#jeu button:hover{background:#294862;border-color:var(--accent)}#jeu button:active{transform:translateY(1px)}.game-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(175px,100%),1fr));gap:8px;margin:18px 0}.game-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:16px 0}.game-form label{flex-basis:100%;color:var(--accent);font-weight:650}.game-form input{background:#071221;border:1px solid #7388a0;color:#fff;border-radius:8px;padding:11px;width:150px}.game-form button{flex:1}#message{border-left:3px solid var(--accent);background:#081526;padding:13px 15px;line-height:1.65;min-height:65px;color:#e3efff;white-space:pre-wrap;overflow-wrap:anywhere}.game-inventory{border-top:1px solid #4b5c71;margin-top:20px;padding-top:8px}.game-inventory h3{font-size:13px;color:#becfe2}.game-inventory #inventaire{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;min-height:28px}#commandes{display:flex;gap:7px;margin-top:20px}#commandes button{font-size:12px;padding:8px 10px;flex-shrink:0}#fin{margin-top:20px;padding:22px;border:1px solid var(--accent);border-radius:12px;background:#153c47;line-height:1.7}#fin a{display:inline-block;color:#fff;background:#164e64;padding:8px 15px;border-radius:6px}.ending-kicker{color:var(--accent);letter-spacing:.1em}.game-credit{font-size:13px}#etiquettes:empty{display:none}.orphee-decor{height:190px;margin-top:17px;position:relative;isolation:isolate;background:linear-gradient(90deg,#0c1829bb,#152f46aa),repeating-linear-gradient(0deg,transparent 0 34px,#52718b2f 35px 36px);border:1px solid #48637b;border-radius:10px;overflow:hidden;box-shadow:inset 0 -35px 50px #050c19}.orphee-window{position:absolute;left:7%;top:17%;width:110px;height:110px;border:9px solid #3f5368;border-radius:50%;background:radial-gradient(white 1px,transparent 1px) 0 0/23px 29px,#030d1b;box-shadow:0 0 0 2px #0a1726,inset 0 0 20px #000}.orphee-planet{position:absolute;left:calc(7% + 40px);top:45px;width:54px;height:54px;background:radial-gradient(circle at 28% 32%,#e0f5ff 0,#85d8f5 12%,#338dbe 36%,#0d3960 58%,#091a2a 64%);border-radius:50%;box-shadow:0 0 14px #6bd4ff50;transform:rotate(-25deg)}.orphee-door{position:absolute;right:10%;top:18%;height:145px;width:90px;background:linear-gradient(90deg,#112131 48%,#4e6577 49%,#20374a 51%);border:7px solid #52697d;border-bottom:0;border-radius:25px 25px 0 0;box-shadow:0 0 0 5px #122336}.orphee-door:after{content:'';position:absolute;right:-19px;top:60px;width:9px;height:15px;border-radius:2px;background:#bc6c58;box-shadow:0 0 10px #de7544}.orphee-table{position:absolute;bottom:29px;left:17%;width:120px;height:13px;background:#647b8b;box-shadow:0 7px #273e51,10px 26px 0 -5px #8fa1af,90px 26px 0 -5px #8fa1af;transform:skew(-12deg)}.orphee-screen{position:absolute;left:45%;top:39%;width:45px;height:37px;border:5px solid #43596a;background:repeating-linear-gradient(0deg,#11293a 0 3px,#376175 4px 5px);transform:perspective(200px) rotateY(-15deg)}#jeu[data-light=off] .orphee-decor{filter:brightness(.54)}#jeu[data-light=on] .orphee-decor{box-shadow:inset 0 1px 18px #70dcee38,inset 0 -30px 45px #050c19}#jeu[data-power=on] .orphee-door:after{background:var(--accent);box-shadow:0 0 12px var(--glow)}#jeu[data-scene=laboratoire] .orphee-screen{width:115px;height:70px;left:40%;top:24%;box-shadow:0 0 18px #37d2e12a}#jeu[data-scene=laboratoire] .orphee-table{width:180px;left:20%}#jeu[data-scene=transmissions] .orphee-screen{width:140px;height:95px;left:32%;top:20%;border-radius:50%;background:repeating-radial-gradient(circle,#0c3b39 0 15px,#7edacc 16px 17px);box-shadow:0 0 20px #37d2e133}#jeu[data-skin=manoir] .orphee-decor{background:repeating-linear-gradient(90deg,#291f2b 0 32px,#624639 33px 34px)}#jeu[data-skin=manoir] .orphee-window{border-radius:50% 50% 0 0;border-color:#967e60}#jeu[data-skin=manoir] .orphee-planet{background:#f7e7b0;box-shadow:0 0 14px #f9e2a1}#jeu[data-skin=enquete] .orphee-decor{background:linear-gradient(15deg,#214349,#102c3a)}#jeu[data-skin=enquete] .orphee-window{border-radius:6px;border-color:#6c8994}#jeu[data-skin=enquete] .orphee-planet{border-radius:0;background:linear-gradient(90deg,#567b8d 30%,#102d3d 31% 45%,#567b8d 46% 65%,#102d3d 66%);height:68px;top:70px;box-shadow:none}.orphee-decor{transition:filter .18s,box-shadow .18s}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* The supplied frame remains legible before the learner's CSS mission.
   Do not supply main's max-width/padding or the paragraph's line-height here:
   those are authored and checked in mission 02. */
main > header { padding: 16px 18px 0; }
main > header h1 { font-size: clamp(23px,5vw,36px); line-height: 1.2; letter-spacing: -.025em; margin: 8px 0 12px; overflow-wrap: anywhere; }
main > header p { font-size: 15px; color: inherit; overflow-wrap: anywhere; }
.scene-top { align-items: center; letter-spacing: .02em; }
#etat-lumiere { padding: 5px 8px; border: 1px solid #455b73; border-radius: 5px; font-size: 11px; }
#jeu[data-light=on] #etat-lumiere { color: #b9fff1; border-color: #6bbaae; background: #153a3e; }
#jeu #interrupteur { border-color: #89afb9; background: #203d50; }
#jeu[data-light=on] #interrupteur { border-color: var(--accent); }
