@font-face{font-family:Spline Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/2438dfc711ffbcdb-s.woff2) format("woff2");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-face{font-family:Spline Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/cf1398c533b7af5b-s.p.woff2) format("woff2");unicode-range:u+00??,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-face{font-family:Spline Sans Fallback;src:local("Arial");ascent-override:95.03%;descent-override:23.33%;line-gap-override:0.00%;size-adjust:101.39%}.__className_bc4842{font-family:Spline Sans,Spline Sans Fallback;font-style:normal}.__variable_bc4842{--loft-sans:"Spline Sans","Spline Sans Fallback"}@font-face{font-family:Spline Sans Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/59829bb575d36b50-s.woff2) format("woff2");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-face{font-family:Spline Sans Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/e02f7a71372872a3-s.p.woff2) format("woff2");unicode-range:u+00??,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-face{font-family:Spline Sans Mono Fallback;src:local("Arial");ascent-override:71.59%;descent-override:17.57%;line-gap-override:0.00%;size-adjust:134.59%}.__className_1999fd{font-family:Spline Sans Mono,Spline Sans Mono Fallback;font-style:normal}.__variable_1999fd{--loft-mono:"Spline Sans Mono","Spline Sans Mono Fallback"}:root{--sans:var(--loft-sans,ui-sans-serif),system-ui,-apple-system,sans-serif;--mono:var(--loft-mono,ui-monospace),SFMono-Regular,Menlo,monospace;--brand:#1d35c4}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:var(--sans);color:#1c1e22;background:#f6f7f9}.shell{display:flex;flex-direction:column;height:100vh;height:100dvh}.topbar{gap:12px;padding:10px 16px;background:#ffffff;border-bottom:1px solid #e2e5ea}.topbar,.topbar .brand{display:flex;align-items:center}.topbar .brand{gap:8px;color:#1c1e22}.topbar .brand span{font-family:var(--mono);font-size:14px;color:#7a8290}.topbar .brand .mark{color:var(--brand)}.proj-switch{position:relative}.proj-switch-btn{font:600 13.5px var(--sans);color:#333a44;background:transparent;border:none;border-radius:6px;padding:4px 8px;cursor:pointer;white-space:nowrap}.proj-switch-btn.open,.proj-switch-btn:hover{background:#f2f5f9}.caret{display:inline-flex;vertical-align:-2px;color:#7a8290}.caret svg{transition:transform .12s ease}.caret.up svg{transform:rotate(180deg)}.proj-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:20;min-width:240px;background:#ffffff;border:1px solid #c4c9d0;border-radius:8px;box-shadow:0 6px 24px rgba(28,30,34,.12);padding:5px;display:flex;flex-direction:column}.proj-menu-item{font:13px var(--sans);color:#333a44;text-align:left;background:transparent;border:none;border-radius:5px;padding:6px 9px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}a.proj-menu-item{display:block;text-decoration:none}.proj-menu-item:hover{background:#f2f7fd}.proj-menu-item.current{font-weight:600;color:#0550ae;background:#eaf2fb}.proj-menu-sep{height:1px;background:#e9ecf0;margin:5px 4px}.proj-menu-head{font:600 10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#9aa1ab;padding:3px 9px 2px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.topbtn{font:12px var(--sans);color:#333a44;background:#fff;border:1px solid #c4c9d0;border-radius:6px;padding:4px 10px;cursor:pointer}.topbtn:hover{background:#f2f5f9}@media (pointer:coarse){.topbtn{position:relative}.topbtn:after{content:"";position:absolute;inset:-8px}}.topbar .push-right{margin-left:auto}.main{min-height:0}.main,.workspace{display:flex;flex:1 1}.workspace{min-width:0;position:relative}.editor-pane{min-width:280px;background:white}.editor-pane,.editor-slot{display:flex;flex-direction:column}.editor-slot{flex:1 1;min-height:0}.divider{width:5px;flex-shrink:0;cursor:col-resize;background:#e2e5ea;border-left:2px solid transparent;border-right:2px solid transparent;background-clip:padding-box;touch-action:none;position:relative;z-index:1}.divider:active,.divider:hover{background-color:#7aa7d9}@media (pointer:coarse){.divider:before{content:"";position:absolute;inset:0 -12px}.divider:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:5px;height:48px;border-radius:3px;background:#aeb6c0;pointer-events:none}}.editor-host{flex:1 1;min-height:0;overflow:auto}.files-pane{display:flex;flex-direction:column;flex:1 1;min-height:0}.files-head{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #e2e5ea}.files-head .files-hint{font-size:11.5px;color:#9aa1ab}.files-head .files-add{font:12px var(--sans);color:#333a44;background:#fff;border:1px solid #c4c9d0;border-radius:6px;padding:3px 9px;cursor:pointer;white-space:nowrap}.files-head .files-add:hover{background:#f2f5f9}.files-head .files-new{margin-left:auto}.files-body{flex:1 1;overflow:auto;padding:8px 0}.files-dir{font:600 12px var(--mono);color:#7a8290;padding-top:6px;padding-bottom:2px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.files-row{display:flex;align-items:center;gap:8px;padding-top:4px;padding-bottom:4px;padding-right:12px;font:13px var(--mono);color:#333a44;cursor:pointer}.files-row:hover{background:#f2f7fd}.files-row.active{background:#eaf2fb;color:#0550ae}.files-row .files-errors{font:600 11px var(--mono);color:#b3261e;background:#fdf7f7;border:1px solid #e5c9c7;border-radius:8px;padding:0 6px}.files-row .files-ops{margin-left:auto;display:none;gap:4px}.files-row:hover .files-ops{display:inline-flex}.files-row .files-ops button{font:11px var(--sans);color:#57606c;background:#fff;border:1px solid #c4c9d0;border-radius:5px;padding:1px 7px;cursor:pointer}.files-row .files-ops button:hover{background:#f2f5f9;color:#1c1e22}.files-rename{display:block;font:13px var(--mono);padding:2px 6px;margin-top:2px;margin-bottom:2px;border:1px solid #7aa7d9;border-radius:5px;width:260px}.crumb-files{display:inline-flex;align-items:center;color:#57606c;background:transparent;border:none;padding:3px 6px;border-radius:5px;cursor:pointer}.crumb-files:hover{background:#f2f5f9;color:#1c1e22}.files-head .crumb-sep{font:12px var(--mono);color:#9aa1ab;margin:0 -4px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.editor-crumb{font:12px var(--mono);background:transparent;border:none;padding:2px 4px;border-radius:5px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;text-align:left}.editor-crumb:hover{background:#f2f5f9}.editor-crumb .crumb-dir{color:#9aa1ab}.editor-crumb .crumb-file{color:#0550ae;font-weight:600;letter-spacing:.04em}.editor-error{font:12px var(--sans);text-align:left;color:#5c3a38;background:#fdf7f7;border:none;border-top:1px solid #eddfde;padding:5px 12px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.editor-error:hover{color:#1c1e22}.editor-error .line-no{font-family:var(--mono);color:#b3261e;margin-right:6px}.editor-error .err-code{font-family:var(--mono);color:#9a8a88;margin-right:6px}.editor-error .suggestion{color:#7a6a3a}.editor-host .cm-editor{height:100%;font-size:13px}.editor-host .cm-editor.cm-focused{outline:none}.editor-host .cm-scroller{font-family:var(--mono);line-height:1.55}.strip{display:flex;align-items:center;gap:8px;padding:0 10px env(safe-area-inset-bottom,0);min-height:30px;background:#ffffff;border-top:1px solid #e2e5ea;font-size:12px;flex-shrink:0}.strip .notice{font-size:12px;color:#1d6f42;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.strip .strip-right{margin-left:auto;display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.strip .strip-problems{font:12px var(--sans);color:#57606c;background:transparent;border:1px solid transparent;border-radius:5px;padding:2px 8px;cursor:pointer;white-space:nowrap}.strip .strip-problems.has{color:#b3261e;background:#fdf7f7;border-color:#e5c9c7}.strip .strip-problems.open{border-color:#b3261e}.strip .strip-pane{display:inline-flex;align-items:center;gap:4px;font:600 12px var(--sans);color:#0550ae;background:#eaf2fb;border:1px solid #b9cfe8;border-radius:5px;padding:4px 12px;cursor:pointer;white-space:nowrap}.strip .strip-elements{font:12px var(--sans);color:#57606c;background:transparent;border:1px solid transparent;border-radius:5px;padding:2px 8px;cursor:pointer;white-space:nowrap}.strip .strip-elements:hover{background:#f2f5f9;color:#1c1e22}.strip .strip-elements.open{background:#eaf2fb;border-color:#b9cfe8;color:#0550ae}.problems-drawer{border-top:1px solid #e2e5ea;background:#fdf7f7;max-height:30%;overflow:auto;font-size:12.5px;flex-shrink:0}.problems-drawer .problems-stale{padding:6px 12px 0;color:#8a6d1d}.problems-drawer .problems-none{padding:8px 12px;color:#57606c}.problems-drawer ul{list-style:none;padding:6px 12px 8px}.problems-drawer li{padding:3px 0;color:#5c3a38;cursor:pointer}.problems-drawer li:hover{color:#1c1e22}.problems-drawer .line-no{font-family:var(--mono);color:#b3261e;margin-right:6px}.problems-drawer .err-code{font-family:var(--mono);color:#9a8a88;margin-right:6px}.problems-drawer .suggestion{color:#7a6a3a}.cheat-page{max-width:780px;margin:0 auto;padding:28px 24px 64px;font-size:14px;line-height:1.55}.cheat-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.cheat-home{display:inline-flex;color:#1c1e22}.cheat-head,.cheat-head h1{margin-bottom:8px}.cheat-head h1{font:600 20px var(--mono);text-wrap:balance}.cheat-preamble{color:#57606c}.cheat-actions{display:flex;gap:8px}.cheat-actions .topbtn{display:inline-flex;align-items:center;gap:6px;text-decoration:none;white-space:nowrap}@media (max-width:599px){.cheat-page{padding:20px 16px 56px}.cheat-head h1{font-size:17px}.cheat-actions{flex:1 1;justify-content:flex-end}}.cheat-section{margin-top:22px}.cheat-section h2{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#1d5fa8;margin-bottom:6px}.cheat-section p{margin-bottom:6px}.cheat-code{background:#ffffff;border:1px solid #e2e5ea;border-radius:6px;padding:10px 12px;margin:6px 0 8px;font:12.5px var(--mono);line-height:1.6;overflow-x:auto}.dt-keyword{color:#0550ae;font-weight:600}.dt-attr{color:#953800}.dt-datum{color:#8250df}.dt-accessor{color:#6639ba;font-style:italic}.dt-length,.dt-number{color:#0a7a4b}.dt-string{color:#b31d28}.dt-op{color:#57606a}.dt-comment{color:#9aa1ab;font-style:italic}.cheat-section ul{list-style:disc;padding-left:22px;color:#414751}.cheat-section li{margin:3px 0}.cheat-page code{font:12.5px var(--mono);background:#eef1f5;border-radius:4px;padding:1px 4px}.view-panes{display:flex;flex-direction:column;flex:1 1;min-width:0}.plan-pane{background:#fbfbfa}.model-pane,.plan-pane{position:relative;flex:1 1;min-height:0}.model-pane{border-top:1px solid #e2e5ea;background:#f2f3f1}.workspace.layout-phone .divider{display:none}.workspace.layout-phone .editor-pane{width:100%}.workspace.layout-phone.pane-editor .view-panes,.workspace.layout-phone.pane-model .editor-pane,.workspace.layout-phone.pane-model .plan-pane,.workspace.layout-phone.pane-plan .editor-pane,.workspace.layout-phone.pane-plan .model-pane,.workspace.layout-tablet.pane-model .plan-pane,.workspace.layout-tablet.pane-plan .model-pane{display:none}.workspace.layout-tablet.pane-model .model-pane{border-top:none}.agent-feed{position:fixed;right:12px;bottom:calc(42px + env(safe-area-inset-bottom, 0px));z-index:9;width:min(340px,calc(100vw - 24px));padding:9px 10px;color:#414751;background:rgba(255,255,255,.96);border:1px solid #d8dde5;border-radius:6px;box-shadow:0 5px 18px rgba(31,35,40,.12);font:11px var(--mono);pointer-events:none}.agent-feed-title{margin-bottom:5px;color:#7a828d;letter-spacing:.1em;text-transform:uppercase}.agent-feed ol{list-style:none}.agent-feed li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:8px;gap:8px;align-items:baseline;padding:2px 0}.agent-feed-tool{overflow:hidden;color:#1c1e22;text-overflow:ellipsis;white-space:nowrap}.agent-feed-status.ok{color:#1d6f42}.agent-feed-status.error{color:#b3261e}.agent-feed time{color:#9aa1ab;white-space:nowrap}.drop-overlay{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;font:600 18px var(--sans);color:#0550ae;background:rgba(234,242,251,.85);border:3px dashed #7aa7d9;pointer-events:none}.plan-tools{position:absolute;top:8px;left:12px;z-index:1;display:flex;gap:6px}.dims-toggle{font:11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#9aa1ab;background:transparent;border:1px solid transparent;border-radius:5px;padding:2px 8px;cursor:pointer}.dims-toggle.on{border-color:#b9cfe8}.chord-hint,.dims-toggle.on{color:#1d5fa8;background:#f2f7fd}.chord-hint{font:11px var(--mono);letter-spacing:.08em;border:1px solid #b9cfe8;border-radius:5px;padding:2px 8px;align-self:center;white-space:nowrap}.view-strip{position:absolute;left:12px;bottom:12px;z-index:1;display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:#6f7680;-webkit-user-select:none;-moz-user-select:none;user-select:none}.view-picker{color:#1d5fa8;background:white;border:1px solid #b9cfe8;border-radius:5px;padding:2px 6px}.view-link,.view-picker{font:inherit;letter-spacing:inherit;cursor:pointer}.view-link{color:inherit;background:none;border:0;padding:0;-webkit-text-decoration:underline dotted transparent;text-decoration:underline dotted transparent;text-underline-offset:3px}.view-link:hover:not(:disabled){color:#1d5fa8;-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.view-link:disabled{cursor:default}.view-label,.view-scale{color:#9aa1ab}.view-label{position:absolute;top:8px;left:12px;z-index:1;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.takeoff-overlay{position:absolute;inset:0;z-index:5;background:#ffffff;display:flex;flex-direction:column}.takeoff-head{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid #e2e5ea}.takeoff-head .view-label-inline{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#1d5fa8}.takeoff-head .takeoff-hint{font-size:12px;color:#9aa1ab}.takeoff-head .takeoff-close{margin-left:auto;font:16px var(--mono);color:#57606c;background:transparent;border:1px solid transparent;border-radius:5px;padding:0 8px;cursor:pointer}.takeoff-head .takeoff-close:hover{background:#f2f5f9;color:#1c1e22}.takeoff-body{flex:1 1;overflow:auto;padding:16px;display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start;align-content:flex-start}.takeoff-empty{font-size:12.5px;color:#57606c}.takeoff-table{border-collapse:collapse;font:12.5px var(--mono);color:#333a44}.takeoff-table caption{caption-side:top;letter-spacing:.08em;text-transform:uppercase;color:#1d5fa8;padding-bottom:5px}.takeoff-table caption,.takeoff-table th{text-align:left;font:600 11px var(--sans)}.takeoff-table th{color:#57606c;border-bottom:1px solid #c4c9d0;padding:3px 14px 4px 0}.takeoff-table td{border-bottom:1px solid #eef1f5;padding:3px 14px 3px 0;white-space:nowrap}.takeoff-table tbody tr{cursor:pointer}.takeoff-table tbody tr:hover td{background:#f2f7fd}.takeoff-table .type-row td{font:600 12.5px var(--mono);color:#0550ae;border-bottom:none;padding-top:8px}.takeoff-table td.inst{color:#8250df;font-style:italic}.takeoff-table td.takeoff-reading{color:#c8452b}.cm-tooltip .dt-def-tip{font:12px var(--mono);padding:3px 8px;color:#333a44}