@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular Italic"),local("Josefin Sans Italic"),url(../_fonts/Q9OwS_B4FSGGLXuF1--fnsn3QvvQfr6jQ8gp9Q98RW0-AhSjr5ymsTAU4BoaHXRwRnRKPIewxJkgLXlKbKVZ3AU.woff2) format(woff2);font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-weight:400;font-style:italic}@font-face{font-family:"Josefin Sans Fallback: Arial";src:local("Arial");size-adjust:102.2878%;ascent-override:73.3225%;descent-override:24.4408%;line-gap-override:0%}@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular Italic"),local("Josefin Sans Italic"),url(../_fonts/w1VUDFR85eG080eShSVXNw7JtphJTU2_KOB5-307nS0-lTiAiu955vc0AIqT0qAwJXG_h9p466F8IzAgQMKcddE.woff2) format(woff2);font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-weight:400;font-style:italic}@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular Italic"),local("Josefin Sans Italic"),url(../_fonts/GHrlQ23ZH5Pk9JVSt_mXZbhaCGFTS0XZ450ojRcZgw-CmqktS6_qfW1ElNU4dLObNn-JSbrpqwry6TtWUYSgbo.woff2) format(woff2);font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-weight:400;font-style:italic}@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular"),local("Josefin Sans"),url(../_fonts/aTO25VCBeJ62kPxUxAPKVtvqHNHrEAPCQ4Hp2C3o7mQ-aO25gKZoju08UITouD9Cq_NjOA1Xwxx0an8MWNlUxiY.woff2) format(woff2);font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-weight:400;font-style:normal}@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular"),local("Josefin Sans"),url(../_fonts/uTKTEfp-VANBTwVAyLhEke7Haa5WuoWWEGaLUphW55M-3Qa2uC7Rrn8uM9zvZHWfynwKo9p8k2hz09aPd8BkypQ.woff2) format(woff2);font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-weight:400;font-style:normal}@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular"),local("Josefin Sans"),url(../_fonts/di7CkwEg5xGsi7vuWE1tyQpEJs1UcES6Z2KOp6nXzd0-KQ0R04JWQfDphoRTjH6E2CDxSJ2I3Luq0CoNgmUkKBc.woff2) format(woff2);font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-weight:400;font-style:normal}@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular Italic"),local("Josefin Sans Italic"),url(../_fonts/mr75u6xjnQqmWAY7_62EEDui01mH6n3jt__EoZHW7LA-1PT0zH2qjvuKYaEIr31zp8VwjwqsutA2oHMmkVQK_EU.woff) format(woff);font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:Josefin Sans;src:local("Josefin Sans Regular"),local("Josefin Sans"),url(../_fonts/5jWm7sBCd7z1ftgDdObtcOvrwyh9u6RhXzQKB7kYHmw-mpgzuxvyga8bj5JekxCuLpkckBYoy_kEuF16aJbXGnM.woff) format(woff);font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:Rubik Mono One;src:local("Rubik Mono One Regular"),local("Rubik Mono One"),url(../_fonts/KWdnQZNObEyIZvtKa5DwOuVJ2hzLqCUCotG8q_mLIhE-IrgjEk8qZv_fiX3CQsEBzfzJwUG8z03gSW8Ne6kHxl8.woff2) format(woff2);font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-weight:400;font-style:normal}@font-face{font-family:"Rubik Mono One Fallback: Arial";src:local("Arial");size-adjust:190.6681%;ascent-override:48.8807%;descent-override:16.0488%;line-gap-override:0%}@font-face{font-family:Rubik Mono One;src:local("Rubik Mono One Regular"),local("Rubik Mono One"),url(../_fonts/IJU0gmf1f-fijmrKRji6FsW6oq-MbDT2jbLQmQjszJw-65U_WcmbnSBWjoy5VpcH_T7C67YcEqVRJxD6dvbsdII.woff2) format(woff2);font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-weight:400;font-style:normal}@font-face{font-family:Rubik Mono One;src:local("Rubik Mono One Regular"),local("Rubik Mono One"),url(../_fonts/MRW9JXFmTEtRWZbFAgeeAyD3N5KOPewi0yY8XdriK-8-iGYhEM4cG3ma1Tr_MFzLgcNPQ176w9DQ2IEPlkKg9qo.woff2) format(woff2);font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-weight:400;font-style:normal}@font-face{font-family:Rubik Mono One;src:local("Rubik Mono One Regular"),local("Rubik Mono One"),url(../_fonts/lo0IRgQjSB2clN9ZVQqlTqv60LzPGQGgjDLGKwopWLg-AjauagRusmWN8EZqBOxhIkJ7VRcQzW596MsKxWxJm8I.woff) format(woff);font-display:swap;font-weight:400;font-style:normal}:root{--font-mono:"Consolas","Courier New",monospace;--font-body:"Josefin Sans",ui-sans-serif,system-ui,sans-serif;--font-display:"Rubik Mono One",ui-monospace,monospace;--crust:oklch(16% .02 264);--mantle:oklch(18% .02 264);--base:oklch(21% .02 264);--surface0:oklch(27% .02 264);--surface1:oklch(32% .02 264);--overlay0:oklch(44% .02 264);--subtext0:oklch(60% .02 264);--text:oklch(84% .02 264);--lavender:oklch(75% .12 270);--blue:oklch(72% .15 235);--green:oklch(80% .14 152);--teal:oklch(78% .12 185);--red:oklch(72% .18 15);--orange:oklch(82% .18 50);--mauve:oklch(72% .15 300);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--toolbar-h:40px;--pane-header-h:28px;--divider-size:4px;--t-fast:.15s ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}#app,body,html{block-size:100%;overflow:hidden}body{font-family:var(--font-mono);background:var(--base);color:var(--text)}.app-root{block-size:100dvb;display:flex;flex-direction:column;overflow:hidden}.toolbar{block-size:var(--toolbar-h);flex-shrink:0;display:flex;align-items:center;padding-inline:var(--space-4);gap:var(--space-3);background:var(--mantle);border-block-end:1px solid var(--surface0)}.toolbar .toolbar-title{font-size:.9rem;font-weight:700;color:var(--green)}.toolbar .toolbar-file{font-size:.8rem;color:var(--subtext0)}.toolbar .toolbar-status{font-size:.8rem;color:var(--blue)}.restart-btn{margin-inline-start:auto;padding-block:var(--space-1);padding-inline:14px;background:var(--green);color:var(--crust);border:none;border-radius:var(--space-1);cursor:pointer;font-size:.8rem;font-weight:700;transition:background var(--t-fast)}.restart-btn:hover:not(:disabled){background:var(--teal)}.restart-btn:disabled{opacity:.5;cursor:not-allowed}.workspace{flex:1;min-block-size:0;flex-direction:row}.center-col,.workspace{display:flex;overflow:hidden}.center-col{flex:1;min-inline-size:0;flex-direction:column}.file-add,.playSubmit{padding-inline:var(--space-3);margin-block:var(--space-4)}.flex{display:flex}.flex-col{flex-direction:column}.g-1{gap:.8em}.mt-auto{margin-block-start:auto}.file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-file-btn{color:var(--green);font-size:1.4rem}.add-file-btn,.del-btn{background:none;border:none;cursor:pointer;line-height:1}.del-btn{color:var(--red);font-size:1rem;padding-inline:2px;flex-shrink:0}.btn{background-color:inherit;border:1px solid;font:inherit;color:var(--green);display:inline-flex;align-items:center;gap:.5em;padding:.2em .5em;border-radius:.2em;font-size:.8rem;transition:background-color .2s ease-in-out}.btn:focus-visible,.btn:hover{cursor:pointer;background-color:oklch(from var(--green) l c h/.1)}.editor-pane{flex:1;overflow:hidden;min-block-size:0}.pane-header{padding-block:6px;padding-inline:var(--space-3);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);background:var(--mantle);border-block-end:1px solid var(--surface0);font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--subtext0)}.preview-pane{flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;background:var(--crust)}.preview-url{color:var(--green);text-transform:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-body{flex:1;min-block-size:0;position:relative}.preview-iframe{inline-size:100%;block-size:100%;border:none;background:#fff;display:block}.preview-placeholder{block-size:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);color:var(--subtext0);font-size:.8rem;text-align:center;padding:20px}.preview-placeholder .placeholder-icon{font-size:2rem}.terminal-pane{flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;background:var(--crust)}.terminal-body{flex:1;overflow-y:auto;padding-block:6px;padding-inline:var(--space-2) var(--space-3);font-size:.8rem}.log-line{margin-block-end:1px;word-break:break-all;white-space:pre-wrap}.log-line.log-log{color:var(--green)}.log-line.log-info{color:var(--text)}.log-line.log-error{color:var(--red)}.log-line.log-warn,.log-line.log-warning{color:var(--orange)}.label{font-size:.8em;font-weight:700}.input{display:inline-block;background:var(--surface0);border:0 solid #555;border-radius:4px;color:var(--text);font-size:.8rem;padding:.2em .5em;margin-block:.5em;width:100%;max-width:12em}.input:focus-visible{border-color:#007acc}
