:root{color-scheme:light;font-family:Inter,Segoe UI,sans-serif;background:#eef1f4;color:#1f2937}*{box-sizing:border-box}html,body{margin:0;height:100%;min-height:100vh;background:radial-gradient(circle at top,#fffffff2,#eef1f4f5 42%),linear-gradient(180deg,#f7f8fa,#edf1f5)}#app{height:100%}button,input{font:inherit}.shell{height:100vh;display:grid;grid-template-rows:1fr;padding:0;gap:0}.viewport{height:100%;min-height:0}.viewport__surface{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;border:1px solid rgba(203,213,225,.9);border-radius:0;background:#fff;box-shadow:0 20px 60px #0f172a14;overflow:hidden}.runtimebar{grid-row:1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;align-items:center;padding:.45rem .55rem;background:linear-gradient(180deg,#fbfcfd,#f4f6f8);border-bottom:1px solid rgba(226,232,240,.9)}.runtimebar__nav{display:flex;gap:.2rem}.runtimebar__button{border:1px solid rgba(203,213,225,.9);border-radius:2px;min-height:2rem;padding:.42rem .7rem;background:#fff;color:#334155;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease}.runtimebar__button:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;box-shadow:0 6px 14px #0f172a0d}.runtimebar__button:active:not(:disabled){transform:translateY(1px)}.runtimebar__button--icon{min-width:2rem;padding:.4rem;font-size:.92rem;line-height:1;background:#f8fafc}.runtimebar__button:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}.runtimebar__button--danger{color:#b42318;background:#fff;border-color:#fecdd3e6}.runtimebar__button--danger:hover:not(:disabled){background:#fff5f5;border-color:#f8717173}.runtimebar__address{display:grid;gap:.08rem;min-width:0;padding:.15rem .7rem .15rem .8rem;border:1px solid rgba(203,213,225,.9);background:#fff;box-shadow:inset 0 -2px #94a3b838}.runtimebar__label{font-size:.63rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.runtimebar__input{width:100%;min-width:0;border:none;border-bottom:1px solid #d7dee7;border-radius:0;padding:.35rem 0 .28rem;background:transparent;color:#0f172a;font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:.84rem;outline:none;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.runtimebar__input:focus{border-bottom-color:#2563eb;box-shadow:inset 0 -1px #2563eb}.viewport__loader{grid-row:2;height:3px;background:#e2e8f0;overflow:hidden;transition:opacity .16s ease,height .16s ease}.viewport__loader--hidden{opacity:0;height:0}.progress__bar{position:relative;width:100%;height:100%;border-radius:0;background:transparent;overflow:hidden}.progress__fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#334155,#64748b)}.viewport__placeholder{grid-row:3;min-height:0;display:grid;place-content:center;text-align:center;gap:.75rem;color:#475569}.viewport__frame{grid-row:3;display:block;width:100%;min-height:0;height:100%;border:none;background:#fff}.statusbar{grid-row:4;display:flex;align-items:center;min-height:1.9rem;padding:.28rem .7rem;border-top:1px solid rgba(226,232,240,.9);background:#f8fafc;flex:0 0 auto}.statusbar__message{margin:0;font-size:.75rem;line-height:1.4;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport__placeholder h1,.viewport__placeholder p{margin:0}.statusbar--error .progress__fill{background:linear-gradient(90deg,#b42318,#ef4444)}.statusbar--error .statusbar__message{color:#b42318}@media (max-width: 900px){.runtimebar{grid-template-columns:1fr}.runtimebar__nav{order:2}.runtimebar__button--danger{order:3}.runtimebar__address{order:1}}
