*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #0d1410;--color-fg: #c8d5c0;--color-accent: #4a7c59;--color-muted: #3a4a3e;--font-mono: "Courier New", Courier, "Lucida Console", monospace;--font-sans: system-ui, -apple-system, sans-serif}html{font-size:16px;-webkit-text-size-adjust:100%}body{background-color:var(--color-bg);color:var(--color-fg);font-family:var(--font-mono);line-height:1.6;min-height:100dvh}img,video,canvas,svg{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}.frame-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;background:#0d1410d9;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.frame-overlay--visible{opacity:1}.frame-modal{width:min(1200px,calc(100vw - 2rem));height:min(800px,calc(100dvh - 4rem));display:flex;flex-direction:column;background:#0d1410;border:.5px solid rgba(159,225,203,.2);border-radius:3px;overflow:hidden;transform:scale(.98);transition:transform .2s ease}.frame-overlay--visible .frame-modal{transform:scale(1)}.frame-drawer-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;justify-content:flex-end;background:#0d141080;opacity:0;transition:opacity .22s ease}.frame-drawer-overlay--visible{opacity:1}.frame-drawer-panel{width:450px;max-width:100vw;height:100%;display:flex;flex-direction:column;background:#0d1410;border-left:.5px solid rgba(159,225,203,.2);transform:translate(100%);transition:transform .22s ease}.frame-drawer-overlay--visible .frame-drawer-panel{transform:translate(0)}.frame-header{display:flex;align-items:center;gap:.75rem;padding:.55rem 1rem;border-bottom:.5px solid rgba(159,225,203,.1);font-family:ui-monospace,Courier New,Courier,monospace;font-size:12px;flex-shrink:0}.frame-title{color:var(--color-fg, #c8d5c0);letter-spacing:.04em}.frame-header-actions{margin-left:auto;display:flex;align-items:center;gap:.5rem}.frame-action-link{color:var(--color-muted, #5a7060);text-decoration:none;font-size:14px;line-height:1;padding:2px 5px;transition:color .1s}.frame-action-link:hover{color:var(--color-fg, #c8d5c0)}.frame-close-btn{background:none;border:none;color:var(--color-muted, #5a7060);font-size:20px;line-height:1;cursor:pointer;padding:2px 5px;font-family:inherit;transition:color .1s}.frame-close-btn:hover{color:var(--color-fg, #c8d5c0)}.frame-status{font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:2px 5px;border-radius:2px}.frame-status--active{color:#4fc896;background:#4fc8961a;border:.5px solid rgba(79,200,150,.28)}.frame-status--paused{color:#7a9080;background:#7a90801a;border:.5px solid rgba(122,144,128,.26)}.frame-status--archival{color:#8a8070;background:#8a807014;border:.5px solid rgba(138,128,112,.2)}.frame-body{flex:1;overflow:hidden;position:relative}.frame-body iframe{width:100%;height:100%;border:none;display:block}.frame-archived-notice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;height:100%;font-family:ui-monospace,Courier New,Courier,monospace;color:var(--color-muted, #5a7060)}.frame-archived-notice span:first-child{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8a8070}.frame-archived-notice span:last-child{font-size:11px;color:#5a706099}.frame-placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;color:var(--color-muted, #5a7060);font-family:ui-monospace,Courier New,Courier,monospace;font-size:12px}.frame-placeholder-route{color:#9fe1cb59;font-size:11px;letter-spacing:.04em}.pond-root{position:relative;width:100vw;height:100dvh;overflow:hidden;background:#0d1410;cursor:grab;user-select:none;-webkit-user-select:none}.pond-root.dragging{cursor:grabbing}.glass{background:#0d1410b8;border:.5px solid rgba(159,225,203,.18);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:2px}.camera-controls{position:absolute;bottom:1rem;right:1rem;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;padding:.5rem .75rem;font-family:ui-monospace,Courier New,Courier,monospace;font-size:11px;color:var(--color-fg, #c8d5c0);background:#0d1410b8;border:.5px solid rgba(159,225,203,.18);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:2px;pointer-events:all}.zone-label{color:var(--color-muted, #5a7060);letter-spacing:.06em;white-space:nowrap}.zoom-buttons{display:flex;gap:4px}.zoom-btn{width:26px;height:26px;background:#9fe1cb12;border:.5px solid rgba(159,225,203,.2);color:#9fe1cb;font-size:15px;line-height:1;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:1px;transition:background .1s}.zoom-btn:hover{background:#9fe1cb29}.zoom-btn:active{background:#9fe1cb40}.zoom-btn--fx{font-size:9px;letter-spacing:.04em;color:var(--color-muted, #5a7060);border-color:#9fe1cb1f}.zoom-btn--fx.active{background:#9fe1cb2e;color:#9fe1cb;border-color:#9fe1cb59}.dev-bake-btn{position:absolute;top:.75rem;left:.75rem;font-family:ui-monospace,Courier New,Courier,monospace;font-size:10px;color:#9fe1cb80;text-decoration:none;letter-spacing:.1em;padding:3px 7px;border:.5px solid rgba(159,225,203,.18);border-radius:2px;background:#0d14108c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:color .15s,border-color .15s;pointer-events:all;z-index:10}.dev-bake-btn:hover{color:#9fe1cb;border-color:#9fe1cb66}.hint-bar{position:absolute;bottom:1rem;left:1rem;font-family:ui-monospace,Courier New,Courier,monospace;font-size:10px;color:#c8d5c047;letter-spacing:.06em;pointer-events:none;white-space:nowrap}
