:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f3f1f8;background:#090b10;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px}button,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh;background:radial-gradient(circle at 8% -20%,#32234f44,transparent 38%),#090b10}.topbar{min-height:68px;padding:12px clamp(16px,3vw,32px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #20232d;background:#0b0d12dd;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:11px;color:#d5d2dc;font-size:15px;letter-spacing:-.01em}.brand strong{color:#fff;font-weight:650}.brand-mark{width:32px;height:32px;display:grid;place-items:center;border:1px solid #7659ac;border-radius:9px;color:#d2baff;background:radial-gradient(circle at 40% 32%,#473267,#1b1527 72%);font-size:17px;line-height:1;box-shadow:0 0 24px #8b60d03d}.actions{display:flex;align-items:center;gap:8px}.button{width:38px;min-width:38px;min-height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;text-decoration:none;font-size:13px;font-weight:650;cursor:pointer;transition:border-color .16s,background .16s,transform .16s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:focus-visible,.tab:focus-visible,.code-editor:focus-visible{outline:2px solid #9c7cdb;outline-offset:2px}.button:disabled{opacity:.42;cursor:not-allowed}.button-ghost{border-color:#5b4825;color:#e4b85e;background:#211b10}.button-ghost:hover{border-color:#8a6a2e;color:#ffd681;background:#2d2412}.button-download{border-color:#28516a;color:#79c6ed;background:#10202a}.button-download:hover{border-color:#39779a;color:#a2ddfa;background:#142d3b}.download-icon{font-size:16px;line-height:1;color:currentColor}.button-github{border-color:#3b3f4a;color:#c8cad1;background:#171920}.button-github:hover:not(:disabled){border-color:#626875;color:#fff;background:#242730}.github-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.reset-icon{font-size:18px;line-height:1}.button-stop{border-color:#66333b;color:#ed7885;background:#281519}.button-stop:hover:not(:disabled){border-color:#91434e;color:#ff9aa4;background:#371a20}.button-run{border-color:#57c57d;color:#07150c;background:#62cc86;box-shadow:0 5px 20px #4fbd762b}.button-run:hover{border-color:#76e09a;background:#78df9b}.play-icon{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid currentColor}.stop-icon{width:9px;height:9px;border-radius:2px;background:currentColor}.workspace{height:calc(100vh - 68px);padding:clamp(10px,1.6vw,22px);display:grid;grid-template-columns:minmax(360px,.95fr) minmax(420px,1.15fr);gap:clamp(10px,1.4vw,18px)}.panel{min-height:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid #242731;border-radius:12px;background:#0e1016;box-shadow:0 18px 48px #0003}.tabs{height:51px;flex:0 0 auto;padding:0 10px;display:flex;align-items:stretch;gap:2px;border-bottom:1px solid #232630;background:#101219}.tab{position:relative;min-width:93px;padding:0 12px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;color:#777c89;background:transparent;font-size:12px;font-weight:600;cursor:pointer}.tab:after{content:"";position:absolute;right:10px;bottom:-1px;left:10px;height:2px;border-radius:2px 2px 0 0;background:transparent}.tab:hover{color:#c4c5ca}.tab.active{color:#f1eff5}.tab.active:after{background:#a783d2}.tab span{font:700 10px/1 ui-monospace,monospace;color:#a887cf}.tab-html span{color:#dc876e}.tab-css span{color:#75a7e3}.editor-wrap{min-height:0;flex:1;position:relative;display:flex;flex-direction:column;background:linear-gradient(90deg,#0d0f14 47px,#151821,#101219 49px)}.editor-meta{min-height:35px;padding:0 15px 0 63px;display:flex;align-items:center;justify-content:space-between;color:#555b69;font:10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.1em}.code-editor{width:100%;min-height:0;flex:1;resize:none;border:0;padding:5px 20px 20px 63px;color:#d5d4dc;background:transparent;caret-color:#c5a5ec;font:13px/1.65 SFMono-Regular,Consolas,Liberation Mono,monospace;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto}.code-editor:focus{outline:none}.panel-footer{min-height:38px;padding:0 14px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #232630;color:#646a77;background:#0d0f14;font-size:10px;letter-spacing:.02em}.panel-footer>span{display:inline-flex;align-items:center;gap:7px}.status-dot{width:6px;height:6px;border-radius:50%;background:#6eaf86;box-shadow:0 0 7px #6eaf8677}.preview-header{min-height:51px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #232630;background:#101219}.preview-header>div{display:flex;align-items:center;gap:10px}.preview-title{font-size:12px;font-weight:650}.run-status{padding:3px 7px;border:1px solid #3a3035;border-radius:10px;color:#ad7d88;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.run-status.running{border-color:#2f4739;color:#76b58e}.preview-frame-wrap{min-height:0;flex:1;padding:8px;background:#0b0d12}.preview-frame{width:100%;height:100%;display:block;border:1px solid #292c35;border-radius:7px;background:#fff}@media(max-width:820px){.topbar{align-items:flex-start}.workspace{height:auto;min-height:calc(100vh - 68px);grid-template-columns:1fr;grid-template-rows:minmax(520px,64vh) minmax(430px,58vh)}}@media(max-width:560px){.topbar{min-height:112px;padding:12px 14px;flex-direction:column;gap:10px}.actions{width:100%}.actions .button{flex:0 0 38px}.workspace{min-height:calc(100vh - 112px);padding:8px;grid-template-rows:minmax(480px,62vh) minmax(400px,55vh)}.tabs{padding-inline:4px}.tab{min-width:0;flex:1;padding-inline:4px}.editor-meta{padding-left:50px}.code-editor{padding-left:50px;font-size:12px}.editor-wrap{background:linear-gradient(90deg,#0d0f14 37px,#151821,#101219 39px)}.panel-footer span:last-child{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
