:root{--bg:#0b0e0c;--surface:#111513;--surface-2:#171c19;--line:#29322d;--line-soft:#202722;--text:#f1f2ef;--muted:#98a39c;--green:#79dcaa;--amber:#ffb454;--orange:#ff8c66;--danger:#ff7b72}*{box-sizing:border-box}html{background:var(--bg)}body{color:var(--text);background:radial-gradient(circle at 14% -8%, #79dcaa1c, transparent 33rem), radial-gradient(circle at 84% 7%, #ffb45414, transparent 29rem), var(--bg);min-height:100vh;margin:0;font-family:Inter,Pretendard,Noto Sans KR,system-ui,-apple-system,sans-serif}button,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.site-shell{width:min(1480px,100%);margin:0 auto;padding:0 28px 26px}.compiler-frame{opacity:0;pointer-events:none;border:0;width:1px;height:1px;position:fixed}.site-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;height:78px;display:flex}.brand{color:var(--text);align-items:center;gap:11px;text-decoration:none;display:flex}.brand img{filter:drop-shadow(0 6px 18px #79dcaa2e)}.brand span{gap:5px;line-height:1;display:grid}.brand strong{letter-spacing:-.02em;font-size:19px}.brand small{color:var(--green);letter-spacing:.21em;font-size:9px;font-weight:800}.header-actions,.runtime-badge,.github-link{align-items:center;display:flex}.header-actions{gap:10px}.runtime-badge{border:1px solid var(--line);height:34px;color:var(--muted);background:#111513b8;border-radius:999px;gap:7px;padding:0 12px;font-size:12px;font-weight:700}.runtime-ready{color:var(--green);border-color:#79dcaa40}.runtime-failed{color:var(--danger);border-color:#ff7b7247}.github-link{height:34px;color:var(--muted);border-radius:999px;gap:7px;padding:0 12px;font-size:12px;font-weight:700;text-decoration:none;transition:color .2s,background .2s}.github-link:hover{color:var(--text);background:#ffffff0d}.intro{grid-template-columns:1.15fr .85fr;align-items:end;gap:50px;padding:44px 2px 34px;display:grid}.eyebrow{color:var(--amber);letter-spacing:.16em;align-items:center;gap:7px;margin-bottom:13px;font-size:11px;font-weight:800;display:flex}.intro h1{letter-spacing:-.055em;margin:0;font-size:clamp(35px,4vw,57px);line-height:1.08}.intro p{max-width:590px;color:var(--muted);word-break:keep-all;margin:0 0 5px;font-size:15px;line-height:1.8}.intro p strong{color:var(--green);font-weight:700}.workbench{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:0 28px 80px #00000057}.workbench-toolbar{border-bottom:1px solid var(--line);background:linear-gradient(#ffffff06,#0000);justify-content:space-between;align-items:center;gap:18px;min-height:96px;padding:16px 18px;display:flex}.sample-picker{grid-template-columns:auto 220px minmax(220px,1fr);align-items:center;gap:12px;min-width:0;display:grid}.sample-picker label{color:var(--muted);letter-spacing:.1em;font-size:11px;font-weight:800}.select-wrap{position:relative}.select-wrap select{appearance:none;width:100%;height:42px;color:var(--text);cursor:pointer;background:#181e1a;border:1px solid #354139;border-radius:9px;outline:none;padding:0 38px 0 13px;font-size:13px;font-weight:700}.select-wrap select:focus{border-color:var(--green);box-shadow:0 0 0 3px #79dcaa14}.select-wrap svg{color:var(--muted);pointer-events:none;position:absolute;top:13px;right:12px}.sample-copy{min-width:0;padding-left:5px}.sample-copy span{color:var(--amber);letter-spacing:.09em;font-size:10px;font-weight:800}.sample-copy p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;font-size:12px;overflow:hidden}.run-actions{flex:none;gap:9px;display:flex}.run-actions button{cursor:pointer;border-radius:9px;align-items:center;gap:8px;height:42px;font-size:12px;font-weight:800;display:inline-flex}.reset-button{color:var(--muted);border:1px solid var(--line);background:0 0;padding:0 13px}.reset-button:hover{color:var(--text);border-color:#3b473f}.run-button{color:#132119;background:linear-gradient(#8be5b4,#6ed19e);border:1px solid #a5ebc6;justify-content:center;min-width:137px;padding:0 12px 0 15px;box-shadow:0 6px 20px #50cd8b2b}.run-button:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.run-button:disabled{cursor:wait;opacity:.52}.run-button kbd{border:1px solid #13211938;border-radius:4px;margin-left:3px;padding:3px 5px;font-family:inherit;font-size:9px;font-weight:800}.panels{grid-template-columns:minmax(0,1.18fr) minmax(350px,.82fr);height:min(670px,100vh - 325px);min-height:470px;display:grid}.panel{min-width:0;min-height:0}.editor-panel{border-right:1px solid var(--line)}.panel-title{color:#aeb8b1;border-bottom:1px solid var(--line-soft);letter-spacing:.03em;background:#141916;justify-content:space-between;align-items:center;height:43px;padding:0 15px;font-size:11px;font-weight:800;display:flex}.panel-title>span{align-items:center;gap:7px;display:flex}.panel-title .language-label{color:#5f6c64;letter-spacing:.12em;font-size:9px}.panel-title .result-ok{color:var(--green);font-size:9px}.panel-title .result-error{color:var(--danger);font-size:9px}.editor-host{height:calc(100% - 43px)}.editor-loading{height:100%;color:var(--muted);text-align:center;background:#111513;place-content:center;gap:10px;font-size:12px;display:grid}.editor-loading svg{margin:auto}.output-panel{flex-direction:column;display:flex}.terminal{background:linear-gradient(#111513f5,#111513f5),repeating-linear-gradient(0deg,#0000,#0000 23px,#ffffff05 24px);flex:1;min-height:0;padding:20px;position:relative;overflow:auto}.terminal pre{color:#c6e7d2;white-space:pre-wrap;word-break:break-word;margin:0 0 55px;font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.72}.terminal-error pre{color:#ff9d95}.terminal-empty{color:#566159;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.terminal-empty strong{color:#8b968f;margin-top:13px;font-size:13px}.terminal-empty span{margin-top:6px;font-size:11px}.timing{color:#68746c;border:1px solid var(--line-soft);background:#0a0d0bb8;border-radius:7px;align-items:center;gap:7px;height:34px;padding:0 11px;font-family:Cascadia Code,Consolas,monospace;font-size:9px;display:flex;position:absolute;bottom:14px;left:15px;right:15px}.timing span{color:#39433d}footer{color:#566159;letter-spacing:.04em;justify-content:space-between;padding:18px 2px 0;font-family:Cascadia Code,Consolas,monospace;font-size:9px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:900px){.site-shell{padding:0 16px 20px}.intro{grid-template-columns:1fr;gap:19px;padding-top:31px}.workbench-toolbar{align-items:flex-end}.sample-picker{grid-template-columns:auto minmax(180px,1fr)}.sample-copy{display:none}.panels{grid-template-columns:1fr;height:auto;min-height:0}.editor-panel{border-right:0;border-bottom:1px solid var(--line);height:540px}.output-panel{height:360px}}@media (max-width:590px){.site-header{height:68px}.runtime-badge{padding:0 9px}.github-link span,.run-button kbd{display:none}.intro h1{font-size:35px}.intro p{font-size:13px}.workbench-toolbar{flex-direction:column;align-items:stretch}.sample-picker{grid-template-columns:38px minmax(0,1fr)}.run-actions{justify-content:flex-end}.run-button{flex:1}.editor-panel{height:500px}footer{flex-direction:column;gap:8px}}
