/* TechNova Game Development II — Lua + LÖVE 2D */
.gd2-shell{border:1px solid #cbdbe8;border-radius:20px;background:#f8fbfd;overflow:hidden;box-shadow:0 12px 34px rgba(30,67,93,.08)}
.gd2-engine-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:linear-gradient(90deg,#102642,#193b5e);color:#fff;font-size:.84rem}
.gd2-engine-bar>div,.gd2-engine-tags{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gd2-engine-dot,.gd2-live-dot{width:9px;height:9px;border-radius:50%;background:#48e3a3;box-shadow:0 0 0 4px rgba(72,227,163,.14)}
.gd2-engine-tags span{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:4px 8px;color:#d8ebff}.gd2-workspace{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:14px;padding:14px;background:#edf5f8}.gd2-code-panel,.gd2-stage-panel{min-width:0;border:1px solid #cbdbe8;border-radius:16px;background:#fff;overflow:hidden}.gd2-tabs{display:flex;gap:4px;padding:8px;background:#eff4f8;border-bottom:1px solid #d5e1e9}.gd2-tabs button{border:0;border-radius:9px;background:transparent;padding:9px 13px;font:inherit;font-weight:750;color:#486276;cursor:pointer}.gd2-tabs button.active{background:#176fdb;color:#fff;box-shadow:0 3px 10px rgba(23,111,219,.18)}
.gd2-editor-wrap{min-height:370px;background:#0b1423}.gd2-editor-wrap .tn-code-shell,.gd2-editor-wrap .code-editor-shell{border-radius:0!important;border:0!important}.gd2-editor{width:100%;min-height:370px;resize:vertical;border:0;background:#0b1423;color:#eaf3ff;padding:18px;font:14px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;box-sizing:border-box}.gd2-python-editor{background:#0e1728}.gd2-actions{display:flex;gap:8px;flex-wrap:wrap;padding:12px;border-top:1px solid #dce6ed}.gd2-code-status{margin:0 12px 12px;padding:10px 12px;border-radius:10px;background:#eef7ff;color:#24445e;font-size:.86rem}.gd2-stage-head{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;background:#f4f8fb;border-bottom:1px solid #d5e1e9;color:#203a51}.gd2-stage-head>div{display:flex;align-items:center;gap:9px}.gd2-stage-head>span{font:800 .78rem/1 ui-monospace,SFMono-Regular,monospace;padding:6px 9px;border-radius:999px;background:#e8f0f5}.gd2-canvas-wrap{background:#102642;padding:10px}.gd2-canvas-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:12px;background:#9fe2ff;image-rendering:auto}.gd2-play-controls{display:flex;gap:7px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid #dce6ed}.gd2-play-controls button{min-height:36px;border:1px solid #bfd1dd;border-radius:9px;background:#fff;color:#203a51;font:700 .8rem/1 system-ui;cursor:pointer;padding:0 11px}.gd2-play-controls button:hover{background:#eef7ff}.gd2-state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.gd2-state-grid>div{min-height:58px;padding:9px 11px;border:1px solid #d5e1e9;border-radius:11px;background:#f7fafc;display:flex;flex-direction:column;justify-content:center}.gd2-state-grid span{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#718598}.gd2-state-grid strong{margin-top:3px;color:#14354f;font-size:.92rem}.gd2-preview-note{margin:0 12px 12px;padding:11px 12px;border-left:4px solid #21a67a;border-radius:8px;background:#effaf6;color:#315465;font-size:.8rem;line-height:1.45}.gd2-preview-note code{font-size:.76rem}.gd2-transfer-strip{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:11px 15px;border-top:1px solid #d4e2ea;background:#fff;color:#526b7d;font-size:.78rem}.gd2-transfer-strip span{padding:6px 8px;border-radius:8px;background:#f1f6f9}.gd2-transfer-strip i{font-style:normal;color:#9ab0bf}.gd2-transfer-strip a{margin-left:auto;color:#176fdb;font-weight:750;text-decoration:none}

/* Full-screen/focus mode gets a true wide IDE layout. */
.technova-lab-focus .gd2-shell{height:calc(100dvh - 130px);display:flex;flex-direction:column}.technova-lab-focus .gd2-workspace{flex:1;min-height:0;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}.technova-lab-focus .gd2-code-panel,.technova-lab-focus .gd2-stage-panel{min-height:0}.technova-lab-focus .gd2-editor-wrap,.technova-lab-focus .gd2-editor{min-height:calc(100dvh - 360px)!important;height:calc(100dvh - 360px)!important}.technova-lab-focus .gd2-canvas-wrap canvas{max-height:calc(100dvh - 390px);object-fit:contain}.technova-lab-focus .gd2-state-grid>div{min-height:70px}.technova-lab-focus .gd2-tabs button,.technova-lab-focus .gd2-actions .btn,.technova-lab-focus .gd2-play-controls button{font-size:.95rem!important}
@media(max-width:1050px){.gd2-workspace{grid-template-columns:1fr}.gd2-engine-bar{align-items:flex-start}.gd2-engine-tags{justify-content:flex-end}.technova-lab-focus .gd2-shell{height:auto}.technova-lab-focus .gd2-workspace{grid-template-columns:1fr}.technova-lab-focus .gd2-editor-wrap,.technova-lab-focus .gd2-editor{height:420px!important;min-height:420px!important}}
@media(max-width:640px){.gd2-engine-bar{flex-direction:column}.gd2-engine-tags{justify-content:flex-start}.gd2-workspace{padding:8px}.gd2-state-grid{grid-template-columns:1fr}.gd2-tabs button{flex:1}.gd2-actions .btn{flex:1 1 46%}.gd2-transfer-strip a{margin-left:0;width:100%}}


/* Real Lua runtime status */
.gd2-real-runtime{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:rgba(72,227,163,.14);border:1px solid rgba(72,227,163,.28);color:#87f3c7;font-size:.68rem;font-weight:850;letter-spacing:.07em}
.gd2-code-status strong{color:#14354f}.gd2-fallback-note{display:inline-block;margin-left:5px;color:#775c17}

/* Course fullscreen: Game Development II uses the full workspace. */
.interactive-lab.technova-lab-focus .gd2-shell{height:calc(100dvh - 150px);display:flex;flex-direction:column;width:100%;max-width:none}
.interactive-lab.technova-lab-focus .gd2-workspace{flex:1;min-height:0;grid-template-columns:minmax(520px,1.12fr) minmax(440px,.88fr);gap:clamp(16px,1.2vw,24px);padding:clamp(14px,1.2vw,22px)}
.interactive-lab.technova-lab-focus .gd2-code-panel,.interactive-lab.technova-lab-focus .gd2-stage-panel{min-height:0;display:flex;flex-direction:column}
.interactive-lab.technova-lab-focus .gd2-editor-wrap{flex:1;min-height:0}
.interactive-lab.technova-lab-focus .gd2-editor-wrap .tn-code-shell,.interactive-lab.technova-lab-focus .gd2-editor-wrap .code-editor-shell{height:100%}
.interactive-lab.technova-lab-focus .gd2-editor-wrap .tn-code-body,.interactive-lab.technova-lab-focus .gd2-editor{min-height:clamp(420px,58dvh,680px)!important;height:100%!important}
.interactive-lab.technova-lab-focus .gd2-canvas-wrap{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:clamp(12px,1vw,18px)}
.interactive-lab.technova-lab-focus .gd2-canvas-wrap canvas{width:100%;max-height:clamp(420px,58dvh,660px);object-fit:contain}
.interactive-lab.technova-lab-focus .gd2-state-grid>div{min-height:76px;padding:12px 14px}
.interactive-lab.technova-lab-focus .gd2-tabs button,.interactive-lab.technova-lab-focus .gd2-actions .btn,.interactive-lab.technova-lab-focus .gd2-play-controls button{font-size:clamp(.86rem,.75vw,1rem)!important;min-height:44px}
@media(max-width:1100px){.interactive-lab.technova-lab-focus .gd2-shell{height:auto}.interactive-lab.technova-lab-focus .gd2-workspace{grid-template-columns:1fr}.interactive-lab.technova-lab-focus .gd2-editor-wrap .tn-code-body,.interactive-lab.technova-lab-focus .gd2-editor{height:430px!important;min-height:430px!important}}

/* Desktop LÖVE setup guidance */
.gd2-setup-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 15px;border-bottom:1px solid #cbdbe8;background:linear-gradient(90deg,#f0fff8,#f5fbff)}
.gd2-setup-main{display:flex;align-items:flex-start;gap:10px}.gd2-setup-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#ddf8ec;font-size:20px}.gd2-setup-main strong{color:#143e32}.gd2-setup-main p{margin:3px 0 0;color:#466879;font-size:.82rem;line-height:1.45}.gd2-setup-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.gd2-setup-actions>span{padding:6px 9px;border-radius:999px;background:white;border:1px solid #cbdbe8;color:#36586c;font-size:.72rem;font-weight:800}.gd2-setup-details{grid-column:1/-1;padding:11px 13px;border:1px solid #bcd9cf;border-radius:12px;background:white;color:#315465;font-size:.82rem}.gd2-setup-details p{margin:5px 0}.gd2-setup-details a{color:#176fdb;font-weight:800}.technova-lab-focus .gd2-setup-card{position:sticky;top:0;z-index:8}@media(max-width:780px){.gd2-setup-card{grid-template-columns:1fr}.gd2-setup-actions{justify-content:flex-start}}
