@import "https://fonts.bunny.net/css?family=inter:400,500,600,700|ibm-plex-mono:400,600";*,:before,:after{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#0a0b0e;--bg-surface:#111318;--bg-card:#161920;--bg-card-hover:#1c2028;--bg-input:#0e1015;--border:#ffffff1a;--border-accent:#e8362d26;--border-btn-secondary:#fff3;--text-primary:#e8eaf0;--text-secondary:#9aa0b0;--text-on-accent:#fff;--text-muted:#565b6b;--accent:#e8362d;--accent-soft:#d32f2f;--accent-dim:#e8362d14;--green:#68d391;--green-dim:#68d39126;--orange:#f6ad55;--radius-sm:6px;--radius-md:10px}html{background:var(--bg-base);min-width:320px;min-height:100%;color:var(--text-primary);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}body{background:#07080a;min-height:100vh;margin:0}button,a{font:inherit}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.55}.sim-page{grid-template-rows:auto 1fr;height:100dvh;min-height:100vh;display:grid;overflow:hidden}.site-header{border-bottom:1px solid var(--border);background:#0a0b0ef5;justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;padding:.85rem clamp(1rem,2.8vw,2rem);display:flex}.brand{align-items:center;gap:.55rem;min-width:0;display:inline-flex}.brand-logo{flex:none;width:7rem;height:auto;display:block}.brand-divider{color:var(--text-muted);font-weight:300}.brand strong,.brand small{display:block}.brand strong{font-size:1rem;line-height:1.2}.brand small{color:var(--text-secondary);font-size:.78rem}.header-actions{align-items:center;gap:.6rem;display:inline-flex}.file-input,.is-hidden{display:none}.workspace{grid-template-columns:minmax(0,1fr) minmax(20rem,26rem);min-height:0;display:grid;overflow:hidden}.preview{background:#090a0d;place-items:center;min-width:0;min-height:0;padding:clamp(1rem,3vw,2rem);display:grid;overflow:hidden}.device-shell{width:min(100%,64rem);aspect-ratio:var(--device-aspect,5 / 3);background:#000;border:1px solid #ffffff24;display:grid;position:relative;overflow:hidden;box-shadow:0 1rem 3rem #0000005c}.device-shell iframe{background:#000;border:0;width:100%;height:100%}.preview-loading{z-index:3;color:#ffffffd1;letter-spacing:.04em;background:#000;justify-content:center;align-items:center;font-size:1rem;font-weight:600;display:flex;position:absolute;inset:0}.preview-loading[hidden]{display:none}.loading-dots{width:1.5em;display:inline-flex}.loading-dots span:nth-child(2){animation:1.2s step-end infinite loading-dot-two}.loading-dots span:nth-child(3){animation:1.2s step-end infinite loading-dot-three}@keyframes loading-dot-two{0%,32%{opacity:0}33%,to{opacity:1}}@keyframes loading-dot-three{0%,65%{opacity:0}66%,to{opacity:1}}.preview-run{z-index:2;min-height:3.25rem;color:var(--text-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#111318e6;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:.75rem;padding:.65rem 1.3rem .65rem .75rem;font-weight:700;display:inline-flex;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 1rem 3rem #00000080,0 0 0 1px #e8362d14}.preview-run[hidden]{display:none}.preview-run:hover{background:#1c2028f5;border-color:#e8362da6;box-shadow:0 1rem 3rem #00000080,0 0 1.5rem #e8362d33}.preview-run-icon{background:var(--accent);border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;display:grid}.preview-run-icon svg{fill:#fff;width:1.3rem;height:1.3rem}.control-panel{border-left:1px solid var(--border);background:var(--bg-surface);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.panel-section{border-bottom:1px solid var(--border);padding:1rem}.eyebrow{color:var(--accent-soft);letter-spacing:0;text-transform:uppercase;margin:0 0 .45rem;font-size:.78rem;font-weight:700}h1{color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-size:1.45rem;line-height:1.2}.description{color:var(--text-secondary);margin:.65rem 0 0;font-size:.92rem}.tag-list{flex-wrap:wrap;gap:.45rem;margin-top:.9rem;display:flex}.tag{border:1px solid var(--border-accent);background:var(--accent-dim);color:var(--accent-soft);padding:.18rem .55rem;font-size:.75rem;font-weight:600}.run-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.6rem;display:grid}.resolution-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:.6rem;display:grid}.resolution-row input{border:1px solid var(--border-btn-secondary);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;height:2.5rem;color:var(--text-primary);font:inherit;outline:none;padding:.55rem .7rem}.resolution-row input:focus{border-color:var(--accent)}.btn-primary,.btn-secondary{border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-height:2.5rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{border:1px solid var(--accent);background:var(--accent);color:var(--text-on-accent);box-shadow:0 0 20px #e8362d1a}.btn-secondary{border:1px solid var(--border-btn-secondary);color:var(--text-secondary);background:0 0}.btn-primary:hover:not(:disabled){opacity:.9}.btn-secondary:hover:not(:disabled){color:var(--text-primary);background:#ffffff0a;border-color:#ffffff4d}.status{border:1px solid var(--border);background:var(--bg-input);color:var(--text-secondary);overflow-wrap:anywhere;margin-top:.75rem;padding:.7rem .8rem;font-size:.84rem}.status.is-ready{border-color:var(--border-accent);color:var(--text-primary)}.status.is-running{background:var(--green-dim);color:var(--green);border-color:#68d3914d}.status.is-error{color:#ffb6ae;background:#e8362d1a;border-color:#e8362d6b}.info-grid{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}.info-grid div:first-child{grid-column:1/-1}.label{color:var(--text-muted);margin-bottom:.25rem;font-size:.74rem;display:block}.info-grid strong{color:var(--text-primary);overflow-wrap:anywhere;font-size:.86rem;font-weight:600;display:block}.log-section{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.section-title{color:var(--text-primary);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.65rem;font-size:.86rem;font-weight:700;display:flex}.link-button{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;font-size:.78rem}.link-button:hover{color:var(--text-primary)}.log{border:1px solid var(--border);min-height:0;color:var(--text-secondary);background:#090b10;flex:1;margin:0;padding:.75rem;font-family:IBM Plex Mono,Consolas,monospace;font-size:.76rem;line-height:1.55;list-style:none;overflow:auto}.log li{overflow-wrap:anywhere}.log li+li{margin-top:.35rem}.log li.error{color:#ffb6ae}body.guide-open{overflow:hidden}.guide-overlay{z-index:1000;cursor:pointer;position:fixed;inset:0}.guide-overlay[hidden]{display:none}.guide-shade{-webkit-backdrop-filter:blur(5px)brightness(.45);backdrop-filter:blur(5px)brightness(.45);background:#020306ad;position:fixed}.guide-spotlight{border:2px solid var(--accent);pointer-events:none;border-radius:9px;position:fixed;box-shadow:0 0 0 1px #ffffff1f,0 0 28px #e8362dad}.guide-arrow{pointer-events:none;width:100%;height:100%;position:fixed;inset:0;overflow:visible}.guide-arrow path{fill:none;stroke:#f5f7fb;stroke-width:2.5px}.guide-arrow marker path{fill:#f5f7fb;stroke:none}.guide-card{background:linear-gradient(145deg,#181c24fa,#0a0c12fa);border:1px solid #fff3;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1.25rem;min-height:11rem;padding:1.5rem;display:grid;position:fixed;box-shadow:0 1.5rem 4rem #00000080}.guide-icon{border:2px solid var(--accent);width:4.25rem;height:4.25rem;color:var(--accent);border-radius:50%;place-items:center;font-size:1.55rem;line-height:1;display:grid}.guide-icon svg{width:78%;height:78%;display:block}.guide-icon.is-display{border:0;border-radius:0;width:5rem}.guide-icon.is-display svg{width:100%;height:100%}.guide-monitor-frame,.guide-monitor-stand{fill:none;stroke:#89909d;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.guide-monitor-area{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round}.guide-run-shape,.guide-stop-shape{fill:var(--accent)}.guide-icon.is-stop svg{width:84%;height:84%}.guide-step-label{color:var(--accent);margin-bottom:.55rem;font-size:.78rem;font-weight:700;display:block}.guide-card h2{color:var(--text-primary);margin:0;font-size:1.45rem;line-height:1.2}.guide-card p{color:var(--text-secondary);margin:.65rem 0 0;font-size:.95rem}.guide-footer{color:var(--text-secondary);white-space:nowrap;justify-items:center;gap:.65rem;font-size:.82rem;display:grid;position:fixed;bottom:1.75rem;left:50%;translate:-50%}.guide-dots{gap:.65rem;display:flex}.guide-dots span{background:#737987;border-radius:50%;width:.7rem;height:.7rem;transition:scale .18s,background .18s}.guide-dots span.is-active{background:var(--accent);scale:1.18}@media (width<=980px){.sim-page{height:auto;overflow:visible}.workspace{grid-template-columns:1fr;overflow:visible}.control-panel{border-left:0;border-top:1px solid var(--border);overflow:visible}.preview{min-height:58vh}.log-section{flex:none;height:20rem}}@media (width<=560px){.site-header{flex-direction:column;align-items:flex-start}.header-actions,.header-actions .btn-secondary{width:100%}.header-actions{flex-direction:column;align-items:stretch}.run-row,.resolution-row,.info-grid{grid-template-columns:1fr}.preview{min-height:48vh;padding:.75rem}.guide-card{grid-template-columns:auto minmax(0,1fr);min-height:0;padding:1.1rem}.guide-icon{width:3.25rem;height:3.25rem}.guide-icon.is-display{width:4rem}.guide-footer{bottom:1rem}}
