/* SouzaCode Motion — IDE (escuro, destaques amarelos, editor em primeiro plano) */
#ide{position:fixed;inset:0;z-index:95;background:#060716;color:#f2f2f2;display:grid;grid-template-rows:auto minmax(0,1fr);font-family:inherit}
#ide[hidden]{display:none}
.ide-top{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#080c16;border-bottom:1px solid #1c2742;min-height:52px}
.ide-top .spacer{flex:1}
.ide-brand{display:flex;align-items:center;gap:8px;flex:none}
.ide-brand .logo{background:#1f6bff;color:#fff;font:800 13px ui-monospace,Consolas,monospace;border-radius:6px;padding:5px 7px}
.ide-brand .bn{display:flex;flex-direction:column;line-height:1.05}
.ide-brand .bn b{font-size:14px;letter-spacing:.3px}
.ide-brand .bn small{font-size:10px;color:#1f6bff;letter-spacing:.8px;text-transform:uppercase}
.pname{background:#0d1424;border:1px solid #1c2742;border-radius:8px;color:#fff;padding:0 10px;min-height:34px;width:210px;max-width:26vw}
.mw{position:relative}
.ide-menu{position:absolute;right:0;top:40px;min-width:230px;background:#16161b;border:1px solid #1f2a44;border-radius:10px;padding:6px;z-index:5;display:flex;flex-direction:column;gap:2px;box-shadow:0 10px 30px #000a}
.ide-menu[hidden]{display:none}
.ide-menu button{background:none;border:0;text-align:left;padding:9px 10px;border-radius:7px;color:#eee}
.ide-menu button:hover{background:#1c2742}
.ide-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,1fr);min-height:0}
.ide-code{display:grid;grid-template-rows:minmax(0,1fr) 190px;min-height:0;border-right:1px solid #1c2742}
.ed{position:relative;min-height:0;background:#0b0b0e}
.ed-in{position:absolute;inset:0;overflow:hidden;font:13px/20px ui-monospace,"JetBrains Mono","Cascadia Code",Consolas,Menlo,monospace}
.gutw{position:absolute;left:0;top:0;bottom:0;width:48px;overflow:hidden;background:#0e0e12;border-right:1px solid #1e1e24;z-index:2}
.gut{margin:0;padding:8px 8px 0 0;text-align:right;color:#4d4d58;font:inherit;user-select:none}
.edc{position:absolute;left:48px;right:0;top:0;bottom:0;overflow:hidden}
.hl,.ta{position:absolute;margin:0;left:0;top:0;padding:8px 10px;font:inherit;white-space:pre;tab-size:2;letter-spacing:0;border:0}
.hl{color:#e8e8ee;pointer-events:none;min-width:100%;will-change:transform}
.ta{width:100%;height:100%;resize:none;outline:0;background:transparent;color:transparent;caret-color:#1f6bff;overflow:auto;-webkit-text-fill-color:transparent;overscroll-behavior:contain}
.ta::selection{background:#1f6bff44;-webkit-text-fill-color:transparent}
.errbar{position:absolute;left:0;right:0;height:20px;background:#ff4b4b22;border-left:3px solid #ff5a4d;pointer-events:none;z-index:0}
.tc{color:#6d7480;font-style:italic}.ts{color:#9be28a}.tn{color:#6ba9ff}.tk{color:#1f6bff}.tg{color:#7fd4ff}.tm{color:#bcd6ff}
.pop{position:absolute;z-index:6;width:300px;max-height:190px;overflow:auto;background:#17171d;border:1px solid #3a3a44;border-radius:8px;box-shadow:0 10px 28px #000b;font:12px/1.3 system-ui,sans-serif}
.pop[hidden]{display:none}
.ac{display:flex;align-items:baseline;gap:8px;padding:5px 9px;cursor:pointer}
.ac.on,.ac:hover{background:#1f6bff22}
.ac b{font:600 12px ui-monospace,Consolas,monospace;color:#fff}.ac .k-m{color:#bcd6ff}.ac .k-o{color:#7fd4ff}.ac .k-s{color:#9be28a}.ac .k-k{color:#1f6bff}
.ac small{color:#7d7d88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:right}
.meas{position:absolute;visibility:hidden;font:inherit;white-space:pre}
.conw{display:grid;grid-template-rows:auto minmax(0,1fr);background:#060913;border-top:1px solid #1c2742;min-height:0}
.conh{display:flex;align-items:center;gap:8px;padding:5px 10px;border-bottom:1px solid #1e1e24;font-size:12px}
.conh .spacer{flex:1}.conh .st{color:#8b97b3;font-size:12px;max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc{color:#6bd36b}.cc.err{color:#ff6a5d}.cc.wrn{color:#1f6bff}
.sdot{width:9px;height:9px;border-radius:50%;background:#444c5e;flex:none}.sdot.ok{background:#4cd964}.sdot.bad{background:#ff5a4d}.sdot.run{background:#1f6bff;animation:pl 1s infinite}
@keyframes pl{50%{opacity:.3}}
.con{overflow:auto;padding:4px 0 8px;font:12px/1.45 ui-monospace,Consolas,monospace}
.cl{display:flex;gap:8px;padding:2px 10px;align-items:flex-start}.cl .lv{width:12px;color:#8b97b3;flex:none}.cl .tx{flex:1;white-space:pre-wrap;word-break:break-word}
.cl.error{background:#ff4b4b14;color:#ffb3ab}.cl.error .lv{color:#ff5a4d}.cl.warn{color:#9cc2ff}.cl.warn .lv{color:#1f6bff}.cl.info{color:#8fe3a0}
.cl .ln{background:#1c2742;border:0;color:#1f6bff;border-radius:5px;padding:1px 7px;font-size:11px;flex:none;cursor:pointer}
.ide-right{display:grid;grid-template-rows:minmax(160px,46%) auto auto auto minmax(0,1fr);min-height:0;background:#0b0b0e}
.pvw{display:grid;place-items:center;min-height:0;padding:10px;background:repeating-conic-gradient(#14141a 0 25%,#101015 0 50%) 0 0/20px 20px;overflow:hidden}
.pv{display:block;background:#000;box-shadow:0 6px 30px #000a;max-width:100%;max-height:100%}
.tbar{display:flex;align-items:center;gap:8px;padding:6px 10px;border-top:1px solid #1e1e24;flex-wrap:wrap}
.trans{display:flex;gap:4px}.tslider{flex:1;min-width:120px;accent-color:#1f6bff}.tl{font:12px ui-monospace,Consolas,monospace;color:#c9c9d2;white-space:nowrap}
.scenes{display:flex;gap:6px;overflow-x:auto;padding:2px 10px 8px}
.scenes .chip{display:flex;gap:6px;align-items:center;background:#0d1424;border:1px solid #2a2a31;border-radius:999px;padding:4px 10px;color:#b1c7de;white-space:nowrap;font-size:12px;flex:none}
.scenes .chip b{color:#fff;background:#1f6bff;border-radius:50%;width:18px;height:18px;display:grid;place-items:center;font-size:11px}
.scenes .chip.on{border-color:#1f6bff;color:#fff}
.ptabs{display:flex;border-bottom:1px solid #1e1e24;padding:0 6px}
.ptab{background:none;border:0;border-bottom:2px solid transparent;color:#8b97b3;padding:9px 12px;font-weight:600}.ptab.on{color:#1f6bff;border-bottom-color:#1f6bff}
.pbody{overflow:auto;padding:10px 12px;min-height:0}
.pbody .kv{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;font-size:12px;margin-bottom:8px}.pbody .kv span{color:#8b97b3}
.insp .ir{padding:6px 8px;border:1px solid #23232a;border-radius:8px;margin-bottom:5px;background:#101015}.insp .ir b{display:block;font-size:12px}.insp .ir small{color:#8b97b3;font:11px ui-monospace,Consolas,monospace}
.mr{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid #23232a;border-radius:8px;margin-bottom:6px;background:#101015}.mr b{font-size:13px;word-break:break-all}.mr small{color:#8b97b3;display:block}
.pbody .btnrow{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0}
.pbody .fld{display:grid;gap:4px;margin-bottom:10px}.pbody .fld label{font-size:12px;color:#c9c9d2}
.pbody input[type=number],.pbody select,.pbody .hsearch{background:#0d1424;border:1px solid #2a2a31;border-radius:8px;color:#fff;padding:7px 9px;width:100%}
.pbody .chk{display:flex;gap:8px;align-items:center;margin:8px 0;font-size:13px}
.docs h4{margin:14px 0 6px;color:#1f6bff;font-size:12px;letter-spacing:.3px}.docs .di{padding:6px 0;border-bottom:1px solid #1b1b21}.docs code{display:block;font:12px ui-monospace,Consolas,monospace;color:#bcd6ff;white-space:pre-wrap;word-break:break-word}.docs p{margin:3px 0 0;color:#a6a6b2;font-size:12px}
.hint{color:#8b97b3;font-size:12px;margin:4px 0}
.ide-nav{display:none}
body.ide-open #home{display:none}
@media (max-width:900px){
  .ide-main{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}
  #ide{grid-template-rows:auto minmax(0,1fr) auto}
  .ide-main{display:block;position:relative;min-height:0}
  .ide-code,.ide-right{position:absolute;inset:0;border:0}
  #ide[data-v=code] .ide-right,#ide[data-v=video] .ide-code,#ide[data-v=panels] .ide-code{display:none}
  #ide[data-v=video] .ide-right{grid-template-rows:minmax(0,1fr) auto auto 0 0}
  #ide[data-v=video] .ptabs,#ide[data-v=video] .pbody{display:none}
  #ide[data-v=panels] .ide-right{grid-template-rows:0 0 auto auto auto minmax(0,1fr)}
  #ide[data-v=panels] .pvw,#ide[data-v=panels] .tbar{display:none}
  .ide-nav{display:grid;grid-template-columns:repeat(3,1fr);background:#080c16;border-top:1px solid #1c2742;padding-bottom:env(safe-area-inset-bottom)}
  .ide-nav button{background:none;border:0;color:#8b97b3;padding:12px 4px;font-weight:700}
  #ide[data-v=code] .ide-nav [data-v=code],#ide[data-v=video] .ide-nav [data-v=video],#ide[data-v=panels] .ide-nav [data-v=panels]{color:#1f6bff;box-shadow:inset 0 2px 0 #1f6bff}
  .ide-top{flex-wrap:wrap;gap:6px;padding:6px 8px}.pname{width:100%;order:9;max-width:none}.ide-top .btn .lb,.ide-top .btn span:not(.ic){font-size:12px}
  .ide-code{grid-template-rows:minmax(0,1fr) 150px}
  .ed-in{font-size:12.5px}
}

.langsel{background:#0d1424;border:1px solid #1c2742;border-radius:8px;color:#fff;min-height:34px;padding:0 8px;max-width:190px}
.adinfo{font-size:13px;line-height:1.45;margin-bottom:10px}.adinfo ul{margin:4px 0 10px 18px;padding:0}.adinfo li{margin:2px 0}
/* estúdio de música */
.mstudio{display:flex;flex-direction:column;gap:10px}.engs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.eng{text-align:left;background:#0d1424;border:1px solid #1c2742;border-radius:10px;color:#b1c7de;padding:10px;display:flex;flex-direction:column;gap:3px;cursor:pointer}.eng.on{border-color:#1f6bff;background:#0c1a3a}.eng:disabled{opacity:.5;cursor:not-allowed}.eng small{color:#8b97b3;font-size:11.5px;line-height:1.3}
.mform{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.mform .full{grid-column:1/-1}.mform .fld select,.mform .fld input[type=number]{width:100%}
.rng{display:flex;gap:8px;align-items:center}.rng input[type=range]{flex:1}.rng output{min-width:42px;text-align:right;font-variant-numeric:tabular-nums}
.chkgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;margin-top:6px}
.mscript{width:100%;min-height:200px;font:13px/1.45 ui-monospace,Consolas,monospace;background:#060913;color:#eee;border:1px solid #1c2742;border-radius:8px;padding:8px;box-sizing:border-box}
.mact{display:flex;flex-wrap:wrap;gap:8px}.mprog{display:flex;flex-direction:column;gap:4px;font-size:12px}.mprog .pb{height:8px;background:#1c2742;border-radius:4px;overflow:hidden}.mprog .pb i{display:block;height:100%;width:0;background:#1f6bff;transition:width .15s}
.mstatus{font-size:13px;min-height:18px}.mstatus.ok{color:#7ddf8a}.mstatus.bad{color:#ff7b7b}
.secbar{display:flex;gap:2px;margin-top:8px;height:30px}.secbar .sec{display:flex;align-items:center;justify-content:center;font-size:11px;border-radius:4px;background:#1c2742;overflow:hidden;color:#fff}.secbar .e1{background:#1b3a8a}.secbar .e2{background:#1f6bff}
.snip{background:#060913;border:1px solid #1c2742;border-radius:8px;padding:8px;font:12px/1.4 ui-monospace,Consolas,monospace;white-space:pre-wrap;margin:6px 0}
@media(max-width:640px){.engs{grid-template-columns:1fr}.mact .btn{flex:1 1 45%}}
.mstudio .mform .fld{display:flex;flex-direction:column;align-items:stretch;gap:4px;grid-template-columns:none;margin:0}
.mstudio .mform .fld label{font-size:12px;color:#8899ad}.mstudio .mform .fld select,.mstudio .mform .fld input[type=number],.mstudio .mform .fld input[type=text]{width:100%;box-sizing:border-box;min-height:34px;flex:none}
.mstudio .mform .rng input[type=number]{flex:1;width:auto}.mstudio .mform .rng .btn{flex:none}
.mstudio .minfo .kv{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;font-size:13px}.mstudio .minfo .kv span{color:#8b97b3}
.mstudio details summary{cursor:pointer;padding:6px 0}.mstudio .mform .fld .hint{font-size:11px;color:#8b97b3}
/* modo celular forçado */
html[data-dev="phone"] .ide-main{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}
html[data-dev="phone"] #ide{grid-template-rows:auto minmax(0,1fr) auto}
html[data-dev="phone"] .ide-main{display:block;position:relative;min-height:0}
html[data-dev="phone"] .ide-code,html[data-dev="phone"] .ide-right{position:absolute;inset:0;border:0}
html[data-dev="phone"] #ide[data-v=code] .ide-right,html[data-dev="phone"] #ide[data-v=video] .ide-code,html[data-dev="phone"] #ide[data-v=panels] .ide-code{display:none}
html[data-dev="phone"] #ide[data-v=video] .ide-right{grid-template-rows:minmax(0,1fr) auto auto 0 0}
html[data-dev="phone"] #ide[data-v=video] .ptabs,html[data-dev="phone"] #ide[data-v=video] .pbody{display:none}
html[data-dev="phone"] #ide[data-v=panels] .ide-right{grid-template-rows:0 0 auto auto auto minmax(0,1fr)}
html[data-dev="phone"] #ide[data-v=panels] .pvw,html[data-dev="phone"] #ide[data-v=panels] .tbar{display:none}
html[data-dev="phone"] .ide-nav{display:grid;grid-template-columns:repeat(3,1fr);background:#080c16;border-top:1px solid #1c2742;padding-bottom:env(safe-area-inset-bottom)}
html[data-dev="phone"] .ide-nav button{background:none;border:0;color:#8b97b3;padding:12px 4px;font-weight:700}
html[data-dev="phone"] #ide[data-v=code] .ide-nav [data-v=code],html[data-dev="phone"] #ide[data-v=video] .ide-nav [data-v=video],html[data-dev="phone"] #ide[data-v=panels] .ide-nav [data-v=panels]{color:#1f6bff;box-shadow:inset 0 2px 0 #1f6bff}
html[data-dev="phone"] .ide-top{flex-wrap:wrap;gap:6px;padding:6px 8px}
html[data-dev="phone"] .pname{width:100%;order:9;max-width:none}
html[data-dev="phone"] .ide-top .btn .lb,html[data-dev="phone"] .ide-top .btn span:not(.ic){font-size:12px}
html[data-dev="phone"] .ide-code{grid-template-rows:minmax(0,1fr) 150px}
html[data-dev="phone"] .ed-in{font-size:12.5px}
html[data-dev="phone"] .engs{grid-template-columns:1fr}
html[data-dev="phone"] .mact .btn{flex:1 1 45%}
.advset{border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin:8px 0}.advset summary{cursor:pointer;font-weight:700;padding:4px 0}.advset .fld{margin:6px 0}.advset .btnrow{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.advset .prog{height:6px}
