@font-face{font-family:JetBrains Mono;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-400i-latin-ext.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:JetBrains Mono;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-400i-latin.woff2) format("woff2");unicode-range:U+0000-00FF,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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-400-latin-ext.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-500-latin-ext.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-600-latin-ext.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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-600-latin-ext.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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jetbrains-mono/jbm-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,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}:root{color-scheme:dark;--bg-0: #0c0b0b;--bg-1: #131211;--bg-2: #191816;--bg-3: #201e1c;--bg-4: #292724;--bg-5: #322f2b;--border: rgba(255, 255, 255, .065);--border-strong: rgba(255, 255, 255, .11);--border-faint: rgba(255, 255, 255, .04);--text-0: #ededf0;--text-1: #a4a09a;--text-2: #6f6a64;--text-3: #4d4945;--accent: #f0552f;--accent-hi: #ff6f4d;--accent-dim: rgba(240, 85, 47, .15);--accent-line: rgba(240, 85, 47, .4);--green: #4cc77d;--blue: #4aa3e8;--amber: #c69a63;--red: #e5574a;--purple: #b08af0;--ok-dim: rgba(76, 199, 125, .13);--ok-dim-hi: rgba(76, 199, 125, .22);--ok-line: rgba(76, 199, 125, .35);--danger-dim: rgba(229, 87, 74, .13);--danger-line: rgba(229, 87, 74, .4);--selection: rgba(240, 85, 47, .3);--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--r-sm: 5px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--topbar-h: 46px;--status-h: 26px;--tabbar-h: 38px;--activity-w: 52px;--sidebar-w: 258px;--inspector-w: 452px;--t-instant: 70ms;--t-fast: .12s;--t-med: .22s;--ease-pop: cubic-bezier(.2, .7, .3, 1);--z-resizer: 20;--z-dropdown: 60;--z-drop-overlay: 90;--z-palette: 100;--z-modal: 110;--scrollbar-thumb: rgba(255, 255, 255, .09);--scrollbar-thumb-hover: rgba(255, 255, 255, .16);--shadow-pop: 0 16px 40px -18px rgba(0, 0, 0, .55), 0 0 0 1px var(--border);--shadow-overlay: 0 24px 64px -12px rgba(0, 0, 0, .6), 0 6px 20px rgba(0, 0, 0, .35), 0 0 0 1px var(--border)}.app.theme-light{color-scheme:light;--bg-0: #e3e3e0;--bg-1: #fdfdfc;--bg-2: #f4f4f2;--bg-3: #eaeae7;--bg-4: #dededa;--bg-5: #d1d1cd;--border: rgba(0, 0, 0, .13);--border-strong: rgba(0, 0, 0, .22);--border-faint: rgba(0, 0, 0, .07);--text-0: #1e1e1e;--text-1: #525252;--text-2: #6f6f6f;--text-3: #999999;--accent-hi: #c8401d;--accent-dim: rgba(240, 85, 47, .13);--accent-line: rgba(240, 85, 47, .45);--green: #2f9e54;--blue: #2b7dc4;--amber: #ad7a31;--red: #d23b2c;--purple: #8a5bd0;--ok-dim: rgba(47, 158, 84, .13);--ok-dim-hi: rgba(47, 158, 84, .22);--ok-line: rgba(47, 158, 84, .45);--danger-dim: rgba(210, 59, 44, .12);--danger-line: rgba(210, 59, 44, .45);--selection: rgba(240, 85, 47, .24);--scrollbar-thumb: rgba(0, 0, 0, .16);--scrollbar-thumb-hover: rgba(0, 0, 0, .26);--shadow-pop: 0 16px 40px -20px rgba(0, 0, 0, .28), 0 0 0 1px var(--border);--shadow-overlay: 0 24px 64px -16px rgba(0, 0, 0, .3), 0 6px 20px rgba(0, 0, 0, .12), 0 0 0 1px var(--border)}.app.theme-light.theme-warm{--bg-0: #d9d4cc;--bg-1: #f7f5f1;--bg-2: #ede9e3;--bg-3: #e2ddd5;--bg-4: #d5cfc6;--bg-5: #c8c1b6;--text-0: #211f1d;--text-1: #5d5852;--text-2: #757065;--text-3: #9a9388}.app.theme-ember{--bg-0: #0e0a08;--bg-1: #161110;--bg-2: #1d1714;--bg-3: #251d18;--bg-4: #2f251e;--bg-5: #3a2d24;--border: rgba(255, 200, 162, .08);--border-strong: rgba(255, 200, 162, .14);--border-faint: rgba(255, 200, 162, .05);--text-0: #f4ece3;--text-1: #b5a99a;--text-2: #80746a;--text-3: #574c43;--accent: #f0552f;--accent-hi: #ff7448;--accent-dim: rgba(240, 85, 47, .16);--accent-line: rgba(240, 85, 47, .42);--green: #8abf7a;--blue: #54b6c0;--amber: #d9a85c;--red: #e8505b;--purple: #c495e8;--ok-dim: rgba(138, 191, 122, .13);--ok-dim-hi: rgba(138, 191, 122, .22);--ok-line: rgba(138, 191, 122, .38);--danger-dim: rgba(232, 80, 91, .13);--danger-line: rgba(232, 80, 91, .42);--selection: rgba(240, 85, 47, .28);--scrollbar-thumb: rgba(255, 205, 166, .1);--scrollbar-thumb-hover: rgba(255, 205, 166, .18)}.app.theme-phosphor{--bg-0: #0a0805;--bg-1: #120e08;--bg-2: #18130b;--bg-3: #1f1910;--bg-4: #282015;--bg-5: #32281a;--border: rgba(255, 199, 130, .09);--border-strong: rgba(255, 199, 130, .16);--border-faint: rgba(255, 199, 130, .055);--text-0: #ffdfae;--text-1: #cfa86b;--text-2: #9a7c4f;--text-3: #6e5839;--accent: #ffae00;--accent-hi: #ffc54d;--accent-dim: rgba(255, 174, 0, .15);--accent-line: rgba(255, 174, 0, .45);--green: #a4b964;--blue: #82a8bf;--amber: #e2a937;--red: #f2604f;--purple: #b5a0c8;--ok-dim: rgba(164, 185, 100, .13);--ok-dim-hi: rgba(164, 185, 100, .22);--ok-line: rgba(164, 185, 100, .38);--danger-dim: rgba(242, 96, 79, .13);--danger-line: rgba(242, 96, 79, .42);--selection: rgba(255, 174, 0, .28);--scrollbar-thumb: rgba(255, 199, 130, .1);--scrollbar-thumb-hover: rgba(255, 199, 130, .18)}.app.theme-abyss{--bg-0: #05090b;--bg-1: #0a1115;--bg-2: #0e161b;--bg-3: #142028;--bg-4: #1b2a33;--bg-5: #24363f;--border: rgba(158, 216, 226, .08);--border-strong: rgba(158, 216, 226, .14);--border-faint: rgba(158, 216, 226, .05);--text-0: #e6f2f3;--text-1: #9cb7bd;--text-2: #69858e;--text-3: #475b64;--accent: #3fd6e2;--accent-hi: #7ae8f2;--accent-dim: rgba(63, 214, 226, .14);--accent-line: rgba(63, 214, 226, .4);--green: #58d27e;--blue: #5ca3e8;--amber: #e8a063;--red: #f0635c;--purple: #e58ee6;--ok-dim: rgba(88, 210, 126, .13);--ok-dim-hi: rgba(88, 210, 126, .22);--ok-line: rgba(88, 210, 126, .35);--danger-dim: rgba(240, 99, 92, .13);--danger-line: rgba(240, 99, 92, .4);--selection: rgba(63, 214, 226, .26);--scrollbar-thumb: rgba(143, 208, 220, .1);--scrollbar-thumb-hover: rgba(143, 208, 220, .18)}.app.theme-light.theme-mono{--bg-0: #e6e6e6;--bg-1: #fcfcfc;--bg-2: #f5f5f5;--bg-3: #ededed;--bg-4: #e3e3e3;--bg-5: #d8d8d8;--border: rgba(0, 0, 0, .12);--border-strong: rgba(0, 0, 0, .24);--border-faint: rgba(0, 0, 0, .06);--text-0: #161616;--text-1: #4b4b4b;--text-2: #6e6e6e;--text-3: #9a9a9a;--accent: #f0552f;--accent-hi: #bb3c1b;--accent-dim: rgba(240, 85, 47, .12);--accent-line: rgba(240, 85, 47, .42);--green: #2f7547;--blue: #3a648f;--amber: #86651f;--red: #b8392b;--purple: #6a5295;--ok-dim: rgba(47, 117, 71, .11);--ok-dim-hi: rgba(47, 117, 71, .19);--ok-line: rgba(47, 117, 71, .4);--danger-dim: rgba(184, 57, 43, .1);--danger-line: rgba(184, 57, 43, .4);--selection: rgba(240, 85, 47, .22);--scrollbar-thumb: rgba(0, 0, 0, .14);--scrollbar-thumb-hover: rgba(0, 0, 0, .24)}.app.theme-arcade{--bg-0: #000000;--bg-1: #000000;--bg-2: #0b0b0e;--bg-3: #14141a;--bg-4: #1d1d25;--bg-5: #272730;--border: rgba(151, 167, 200, .14);--border-strong: rgba(151, 167, 200, .24);--border-faint: rgba(151, 167, 200, .08);--text-0: #e6ebf5;--text-1: #97a7c8;--text-2: #6b7791;--text-3: #474f63;--accent: #ffd300;--accent-hi: #ffe14d;--accent-dim: rgba(255, 211, 0, .13);--accent-line: rgba(255, 211, 0, .45);--green: #a8df76;--blue: #61afef;--amber: #f2c744;--red: #ff4d5e;--purple: #ae81ff;--ok-dim: rgba(168, 223, 118, .12);--ok-dim-hi: rgba(168, 223, 118, .2);--ok-line: rgba(168, 223, 118, .38);--danger-dim: rgba(255, 77, 94, .13);--danger-line: rgba(255, 77, 94, .42);--selection: rgba(255, 211, 0, .24);--scrollbar-thumb: rgba(151, 167, 200, .12);--scrollbar-thumb-hover: rgba(151, 167, 200, .2)}.app.theme-arcade .swift-glyph{color:#1a1200}.app.theme-light.theme-ember-light{--bg-0: #e2d2bb;--bg-1: #fbf4ea;--bg-2: #f3e9da;--bg-3: #eadcc8;--bg-4: #ddccb3;--bg-5: #cfbb9f;--border: rgba(92, 58, 26, .16);--border-strong: rgba(92, 58, 26, .27);--border-faint: rgba(92, 58, 26, .08);--text-0: #2e2318;--text-1: #5d4a35;--text-2: #7c6750;--text-3: #a08a6f;--accent: #d9431c;--accent-hi: #b03312;--accent-dim: rgba(217, 67, 28, .13);--accent-line: rgba(217, 67, 28, .45);--green: #3f7a33;--blue: #0c707e;--amber: #8f6310;--red: #bb3429;--purple: #7c4cb8;--ok-dim: rgba(63, 122, 51, .13);--ok-dim-hi: rgba(63, 122, 51, .22);--ok-line: rgba(63, 122, 51, .42);--danger-dim: rgba(187, 52, 41, .12);--danger-line: rgba(187, 52, 41, .45);--selection: rgba(240, 85, 47, .25);--scrollbar-thumb: rgba(92, 58, 26, .18);--scrollbar-thumb-hover: rgba(92, 58, 26, .3)}.app.theme-light.theme-phosphor-light{--bg-0: #ddcfae;--bg-1: #f8f1de;--bg-2: #f0e6cc;--bg-3: #e7dab9;--bg-4: #dccca4;--bg-5: #cfbc8e;--border: rgba(94, 66, 20, .24);--border-strong: rgba(94, 66, 20, .4);--border-faint: rgba(94, 66, 20, .13);--text-0: #332408;--text-1: #5d4a26;--text-2: #7d6740;--text-3: #a08a62;--accent: #9a6300;--accent-hi: #7d5200;--accent-dim: rgba(154, 99, 0, .14);--accent-line: rgba(154, 99, 0, .45);--green: #4f6b21;--blue: #38617a;--amber: #8a6212;--red: #b03a21;--purple: #6f5490;--ok-dim: rgba(79, 107, 33, .13);--ok-dim-hi: rgba(79, 107, 33, .22);--ok-line: rgba(79, 107, 33, .45);--danger-dim: rgba(176, 58, 33, .12);--danger-line: rgba(176, 58, 33, .45);--selection: rgba(216, 148, 0, .28);--scrollbar-thumb: rgba(94, 66, 20, .22);--scrollbar-thumb-hover: rgba(94, 66, 20, .35)}.app.theme-light.theme-abyss-light{--bg-0: #d2e6e6;--bg-1: #f2fafa;--bg-2: #e7f3f3;--bg-3: #daebeb;--bg-4: #cbe0e1;--bg-5: #b9d4d5;--border: rgba(12, 60, 70, .15);--border-strong: rgba(12, 60, 70, .26);--border-faint: rgba(12, 60, 70, .08);--text-0: #0c2b30;--text-1: #36565d;--text-2: #4f7079;--text-3: #84a0a6;--accent: #0a8e9d;--accent-hi: #07707d;--accent-dim: rgba(10, 142, 157, .14);--accent-line: rgba(10, 142, 157, .45);--green: #188142;--blue: #2a6fc2;--amber: #b35f1f;--red: #c93a32;--purple: #ab3bad;--ok-dim: rgba(24, 129, 66, .13);--ok-dim-hi: rgba(24, 129, 66, .22);--ok-line: rgba(24, 129, 66, .45);--danger-dim: rgba(201, 58, 50, .12);--danger-line: rgba(201, 58, 50, .45);--selection: rgba(10, 142, 157, .22);--scrollbar-thumb: rgba(12, 60, 70, .18);--scrollbar-thumb-hover: rgba(12, 60, 70, .3)}.app.theme-light.theme-arcade-light{--bg-0: #e1e4eb;--bg-1: #fcfdff;--bg-2: #f2f4f8;--bg-3: #e7eaf0;--bg-4: #dadee6;--bg-5: #ccd1db;--border: rgba(35, 48, 80, .15);--border-strong: rgba(35, 48, 80, .27);--border-faint: rgba(35, 48, 80, .08);--text-0: #161a26;--text-1: #4a5266;--text-2: #6a7388;--text-3: #99a1b3;--accent: #ab7f00;--accent-hi: #8a6500;--accent-dim: rgba(255, 211, 0, .22);--accent-line: rgba(171, 127, 0, .55);--green: #3f7d16;--blue: #2a6fc2;--amber: #a06e1f;--red: #cc2440;--purple: #6f3fcf;--ok-dim: rgba(63, 125, 22, .12);--ok-dim-hi: rgba(63, 125, 22, .2);--ok-line: rgba(63, 125, 22, .45);--danger-dim: rgba(204, 36, 64, .1);--danger-line: rgba(204, 36, 64, .45);--selection: rgba(255, 211, 0, .3);--scrollbar-thumb: rgba(35, 48, 80, .16);--scrollbar-thumb-hover: rgba(35, 48, 80, .28)}.app.theme-light.theme-arcade-light .swift-glyph{color:#fff8e0;background:#8a6500}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:var(--sans);color:var(--text-0);background:var(--bg-1);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--selection)}input,textarea{caret-color:var(--accent)}button:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible,input[type=range]:focus-visible{outline:2px solid var(--accent-line);outline-offset:1px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover,::-webkit-scrollbar-thumb:active{background:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.app{height:100vh;display:grid;grid-template-rows:var(--topbar-h) 1fr auto var(--status-h);background:var(--bg-1);color:var(--text-0);font-family:var(--sans);font-size:13px;-webkit-font-smoothing:antialiased}.topbar{grid-row:1}.app-main{grid-row:2;position:relative;display:grid;--sw: var(--sidebar-w);--iw: var(--inspector-w);grid-template-columns:var(--activity-w) var(--sw) 1fr var(--iw);transition:grid-template-columns var(--t-med) ease;overflow:hidden;min-height:0}.app-main.no-sidebar{--sw: 0px}.app-main.no-inspector{--iw: 0px}body.resizing .app-main{transition:none}.app-main.no-sidebar>.sidebar{min-width:0;border-right:0}.app-main.no-inspector>.inspector{min-width:0;border-left:0}.app-main.no-sidebar>.resizer.sidebar,.app-main.no-inspector>.resizer.inspector{display:none}.statusbar{grid-row:4}.resizer{position:absolute;top:0;bottom:0;width:7px;z-index:var(--z-resizer);cursor:col-resize}.resizer.sidebar{left:calc(var(--activity-w) + var(--sidebar-w) - 3px)}.resizer.inspector{right:calc(var(--inspector-w) - 3px)}.resizer:after{content:"";position:absolute;inset:0 3px;transition:background var(--t-fast) ease .25s}.resizer:hover:after,.resizing .resizer:after{background:var(--accent-line)}.resizing .resizer:after,.resizer:active:after{transition-delay:0ms}.resizing{cursor:col-resize;user-select:none}body.sim-mode{overflow:hidden}.sim-host{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg-1)}.sim-host .prev-pane{flex:1 1 auto;min-height:0}.flex-spacer{flex:1}.dim{color:var(--text-2)}.blue{color:var(--blue)}.red{color:var(--red)}.amber{color:var(--amber)}.green{color:var(--green)}.swift-glyph{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:4px;background:var(--accent);color:#fff;font-weight:700;font-size:10px;box-shadow:inset 0 1px #ffffff29;flex:none}.swift-glyph.sm{width:14px;height:14px;font-size:9px}.swift-glyph.lg{width:22px;height:22px;font-size:13px;border-radius:6px}.ms-logo{display:block;flex:none;border-radius:4px}.topbar{position:relative;display:flex;align-items:center;gap:10px;padding:0 12px;height:var(--topbar-h);background:var(--bg-2);border-bottom:1px solid var(--border);-webkit-app-region:drag;user-select:none}.tb-group.center{position:absolute;left:50%;transform:translate(-50%)}.topbar button{-webkit-app-region:no-drag}.tb-traffic{display:flex;gap:8px;padding-right:6px}.tl{width:12px;height:12px;border-radius:50%}.tl.r{background:#f25f57}.tl.y{background:#f7bd2e}.tl.g{background:#5fc451}.tb-brand{display:flex;align-items:center;gap:7px}.tb-proj{font-weight:600;font-size:13px}.tb-scheme{color:var(--text-2);font-size:12px;margin-left:6px}.tb-spacer{flex:1}.tb-group{display:flex;align-items:center;gap:4px}.tb-div{width:1px;height:20px;background:var(--border);margin:0 4px}.tb-btn{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid var(--border);background:var(--bg-3);color:var(--text-0);border-radius:var(--r-md);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast)}.tb-btn:hover{background:var(--bg-4)}.tb-btn .tb-ico{display:grid;place-items:center}.tb-btn.run{color:var(--green);background:var(--ok-dim);border-color:var(--ok-line)}.tb-btn.run .tb-ico{color:var(--green)}.tb-btn.run:hover{background:var(--ok-dim-hi)}.tb-btn.run.building{color:var(--red);background:var(--danger-dim);border-color:var(--danger-line)}.tb-btn.run.building .tb-ico{color:var(--red)}.tb-btn.target{color:var(--text-1)}.tb-btn.target .muted{color:var(--text-2)}.tb-btn.ghost{color:var(--text-1)}.tb-btn.ghost .tb-ico{color:var(--text-2)}.tb-btn.ghost:hover{color:var(--text-0)}.tb-btn.debug,.tb-btn.debug .tb-ico{color:var(--blue)}.tb-icon{display:grid;place-items:center;width:30px;height:30px;border:none;background:none;color:var(--text-1);border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.tb-icon:hover{background:var(--bg-3);color:var(--text-0)}.tb-search{display:flex;align-items:center;gap:8px;height:30px;min-width:320px;padding:0 10px;border:1px solid var(--border);background:var(--bg-1);color:var(--text-2);border-radius:var(--r-md);font:inherit;font-size:12.5px;cursor:pointer;transition:border-color var(--t-fast)}.tb-search:hover{border-color:var(--border-strong)}.tb-search .ph{flex:1;text-align:left}.tb-search .kbd{font-size:11px;color:var(--text-3);border:1px solid var(--border);border-radius:4px;padding:1px 5px}.tb-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:600;color:var(--text-0);background:var(--bg-4);border:1px solid var(--border-strong);margin-left:4px}.activity{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0;background:var(--bg-2);border-right:1px solid var(--border)}.act-btn{position:relative;display:grid;place-items:center;width:38px;height:38px;border:none;background:none;color:var(--text-2);border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.act-btn:hover{background:var(--bg-3);color:var(--text-1)}.act-btn.active{color:var(--accent);background:var(--accent-dim)}.act-btn.active:before{content:"";position:absolute;left:-7px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}.act-badge{position:absolute;top:5px;right:4px;min-width:14px;height:14px;padding:0 3px;border-radius:8px;background:var(--red);color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center}.act-spacer{flex:1}.sidebar{display:flex;flex-direction:column;background:var(--bg-2);border-right:1px solid var(--border);overflow:hidden}.side-head{display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 12px;height:var(--tabbar-h);flex:none;border-bottom:1px solid var(--border)}.side-title{font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2)}.side-actions{display:flex;gap:2px}.side-actions button{display:grid;place-items:center;width:22px;height:22px;border:none;background:none;color:var(--text-2);border-radius:4px;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.side-actions button:hover{background:var(--bg-3);color:var(--text-0)}.side-body{flex:1;overflow:auto;padding:6px 0}.side-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;color:var(--text-2);font-size:12px;text-align:center;line-height:1.5}.side-empty span{max-width:190px}.side-empty svg{width:36px;height:36px;padding:8px;box-sizing:content-box;border-radius:50%;background:var(--bg-3);color:var(--text-3)}.side-empty svg.green{color:var(--green)}.tree-row{display:flex;align-items:center;gap:6px;height:25px;padding-right:10px;cursor:pointer;color:var(--text-1);font-size:12.5px;user-select:none;background-image:repeating-linear-gradient(to right,var(--border) 0 1px,transparent 1px 13px);background-repeat:no-repeat;background-position:18px 0;background-size:calc(var(--d, 0) * 13px) 100%}.tree-row:hover{background-color:var(--bg-3)}.tree-row.file.active{position:relative;background-color:var(--accent-dim);color:var(--text-0)}.tree-row.file.active:before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:2px;background:var(--accent)}.tree-row .chev{display:grid;place-items:center;color:var(--text-2);transition:transform var(--t-fast)}.tree-row .chev.open{transform:rotate(90deg)}.tree-row .fi{display:grid;place-items:center}.tree-row .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-row.project .nm{font-weight:600;color:var(--text-0)}.tree-row .nm.dim{color:var(--text-3)}.gitmark{margin-left:auto;font-size:10px;font-weight:700;width:14px;height:14px;display:grid;place-items:center;border-radius:3px}.gitmark.m{color:var(--amber)}.gitmark.a{color:var(--green)}.tree-row.editing{cursor:default}.tree-input{flex:1;min-width:0;border:1px solid var(--accent-line);background:var(--bg-1);color:var(--text-0);font:inherit;font-size:12.5px;border-radius:4px;padding:1px 6px;outline:none}.sym-list{padding:2px 0}.sym-row{display:flex;align-items:center;gap:8px;height:26px;padding-right:10px;cursor:pointer;font-size:12.5px;color:var(--text-1)}.sym-row:hover{background:var(--bg-3)}.sym-name{color:var(--text-0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sym-detail{margin-left:auto;max-width:48%;color:var(--text-3);font-size:11px;font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sym-kind{display:grid;place-items:center;width:14px;height:14px;border-radius:3px;font-size:10px;font-weight:700}.sym-kind.p{background:var(--bg-4);color:var(--text-1)}.sym-kind.tt{background:#4aa3e829;color:var(--blue)}.sym-kind.fn{background:#4cc77d29;color:var(--green)}.sym-kind.pr{background:#c69a632e;color:var(--amber)}.find-pane{display:flex;flex-direction:column;height:100%;min-height:0}.find-head{display:flex;align-items:center;flex:none;gap:7px;margin:8px 10px;padding:0 9px;height:30px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--t-fast)}.find-head:focus-within{border-color:var(--accent-line)}.find-input{flex:1;border:none;background:none;color:var(--text-0);font:inherit;font-size:12.5px;outline:none}.find-results{flex:1;overflow:auto}.find-count{padding:7px 12px;font-size:11px;color:var(--text-2)}.find-file{display:flex;align-items:center;gap:7px;padding:5px 12px;font-size:12px;color:var(--text-1);position:sticky;top:0;background:var(--bg-2)}.find-file .find-n{margin-left:auto;color:var(--text-3);font-size:11px}.find-hit{display:flex;gap:9px;padding:4px 12px 4px 26px;cursor:pointer;font-family:var(--mono);font-size:12px}.find-hit:hover{background:var(--bg-3)}.find-ln{min-width:22px;flex:none;color:var(--text-3);text-align:right;font-variant-numeric:tabular-nums}.find-text{color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.find-mark{background:var(--accent-dim);color:var(--accent-hi);border-radius:2px}.diag-pane .diag-item{cursor:pointer}.diag-pane .diag-item:hover{background:var(--bg-3)}.scm-head{display:flex;align-items:center;gap:8px;padding:9px 12px;font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);border-bottom:1px solid var(--border-faint)}.scm-count{margin-left:auto;min-width:18px;height:16px;padding:0 5px;border-radius:8px;background:var(--bg-4);color:var(--text-1);font-size:10px;font-weight:700;letter-spacing:0;display:grid;place-items:center}.scm-row{display:flex;align-items:center;gap:8px;height:27px;padding:0 12px;cursor:pointer;font-size:12.5px;color:var(--text-1)}.scm-row:hover{background:var(--bg-3);color:var(--text-0)}.scm-row .nm{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scm-row .gitmark{margin-left:0}.build-pane{height:100%;overflow:auto}.build-log{padding:6px 0}.editor-col{display:flex;flex-direction:column;background:var(--bg-1);overflow:hidden;min-width:0}.tabbar{display:flex;align-items:stretch;height:var(--tabbar-h);background:var(--bg-2);border-bottom:1px solid var(--border)}.tab{position:relative;display:flex;align-items:center;gap:7px;padding:0 12px;max-width:200px;border-right:1px solid var(--border-faint);color:var(--text-2);font-size:12.5px;cursor:pointer}.tab:hover{background:var(--bg-3)}.tab.active{background:var(--bg-1);color:var(--text-0)}.tab.active:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent)}.tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--bg-1)}.tab:not(.active) .ms-logo{opacity:.55;filter:saturate(.4)}.tab .tab-nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab .dirty{display:none;width:17px;height:17px;place-items:center;flex:none}.tab .dirty:after{content:"";width:7px;height:7px;border-radius:50%;background:var(--text-1)}.tab .x{display:grid;place-items:center;width:17px;height:17px;border-radius:4px;color:var(--text-2);visibility:hidden}.tab:hover .x,.tab.active .x{visibility:visible}.tab.is-dirty .dirty{display:grid}.tab.is-dirty .x,.tab.is-dirty:hover .dirty{display:none}.tab.is-dirty:hover .x{display:grid;visibility:visible}.tab .x:hover{background:var(--bg-4);color:var(--text-0)}.tabbar-tail{display:flex;align-items:center;gap:2px;margin-left:auto;padding:0 8px}.tabbar-tail button{display:grid;place-items:center;width:26px;height:26px;border:none;background:none;color:var(--text-2);border-radius:5px;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.tabbar-tail button:hover{background:var(--bg-3);color:var(--text-0)}.tabbar-tail button:disabled{opacity:.35;cursor:default}.tabbar-tail button:disabled:hover{background:none;color:var(--text-2)}.breadcrumb{display:flex;align-items:center;gap:6px;height:26px;padding:0 12px;font-size:12px;color:var(--text-2);border-bottom:1px solid var(--border-faint)}.breadcrumb .seg{display:flex;align-items:center;gap:5px}.breadcrumb .seg.last{color:var(--text-0)}.breadcrumb .sep{display:grid;place-items:center;color:var(--text-3)}.editor-wrap{flex:1;position:relative;min-height:0}.monaco-host{position:absolute;inset:0}.editor-empty{position:absolute;inset:0;z-index:2;display:none;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:var(--bg-1);user-select:none}.editor-empty .ms-logo{opacity:.35;margin-bottom:4px}.editor-empty-title{font-size:15px;font-weight:600;color:var(--text-1)}.editor-empty-sub{font-size:12.5px;color:var(--text-2)}.inspector{display:flex;flex-direction:column;background:var(--bg-2);border-left:1px solid var(--border);overflow:hidden}.insp-tabs{display:flex;align-items:center;gap:2px;height:var(--tabbar-h);flex:none;padding:0 8px;border-bottom:1px solid var(--border);overflow-x:auto}.insp-tab{position:relative;display:flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:none;background:none;color:var(--text-1);font:inherit;font-size:12px;border-radius:6px;cursor:pointer;white-space:nowrap;transition:background var(--t-fast),color var(--t-fast)}.insp-tab:hover{color:var(--text-0);background:var(--bg-3)}.insp-tab.active{color:var(--text-0);font-weight:600;background:var(--bg-3)}.insp-tab.active:after{content:"";position:absolute;left:8px;right:8px;bottom:-4px;height:2px;background:var(--accent);border-radius:2px}.insp-tab .dotbadge{width:6px;height:6px;border-radius:50%;background:var(--amber)}.insp-body{flex:1;display:flex;overflow:hidden;min-height:0}.insp-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-2);font-size:12px}.prev-pane{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0}.prev-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:5px;row-gap:6px;min-width:0;padding:8px;border-bottom:1px solid var(--border-faint)}.prev-toolbar .icon-btn{border-color:transparent;background:transparent}.prev-toolbar .icon-btn:hover{background:var(--bg-3);border-color:transparent}.mini-select{display:flex;align-items:center;gap:6px;height:28px;padding:0 8px;border:1px solid var(--border);background:var(--bg-3);color:var(--text-0);border-radius:6px;font:inherit;font-size:12px;cursor:pointer;transition:background var(--t-fast);flex:0 1 auto;min-width:0}.mini-select>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-select:hover,.mini-select.open{background:var(--bg-4)}.mini-static{display:flex;align-items:center;gap:6px;height:28px;padding:0 8px;border:1px solid var(--border);background:var(--bg-2);color:var(--text-1);border-radius:6px;font-size:12px;flex:0 1 auto;min-width:0}.mini-static>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-select .dd-caret{transition:transform var(--t-fast)}.mini-select.open .dd-caret{transform:rotate(180deg)}.dropdown-menu{position:fixed;z-index:var(--z-dropdown);background:var(--bg-2);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:5px;animation:pop var(--t-fast) var(--ease-pop)}.dropdown-item{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:var(--r-sm);cursor:pointer;font-size:12.5px;color:var(--text-1);white-space:nowrap}.dropdown-item:hover{background:var(--bg-3);color:var(--text-0)}.dropdown-item.sel{color:var(--text-0)}.dropdown-item .dd-label{flex:1}.dropdown-item .dd-check{color:var(--accent)}.dropdown-item.danger{color:var(--red)}.dropdown-item.danger:hover{background:var(--danger-dim);color:var(--red)}.dropdown-item.danger svg{color:var(--red)}.dd-ico-pad{width:14px;flex:none}.dd-head{padding:7px 10px 3px;font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3)}.dd-head:not(:first-child){margin-top:4px;border-top:1px solid var(--border-faint);padding-top:8px}.dropdown-menu{transform-origin:top left}.ctx-menu{min-width:200px;animation-duration:var(--t-instant)}.ctx-sep{height:1px;margin:5px 8px;background:var(--border)}.seg-toggle{display:flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.seg-toggle button{display:grid;place-items:center;min-width:28px;height:28px;padding:0 5px;border:none;border-right:1px solid var(--border-faint);background:var(--bg-2);color:var(--text-2);font:inherit;font-size:11px;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.seg-toggle button:last-child{border-right:none}.seg-toggle button.on{background:var(--bg-4);color:var(--text-0);font-weight:600;box-shadow:inset 0 0 0 1px var(--border-strong)}.icon-btn{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--border);background:var(--bg-3);color:var(--text-1);border-radius:6px;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.icon-btn:hover{background:var(--bg-4);color:var(--text-0)}.stage{flex:1;position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;background:var(--bg-0)}.stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:28px 28px}.theme-light .stage:before{background-image:linear-gradient(rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.03) 1px,transparent 1px)}.stage-canvas{position:relative;z-index:1}.stage-canvas canvas{display:block}.hotreload{position:absolute;top:12px;left:12px;z-index:2;display:flex;align-items:center;gap:7px;padding:4px 10px 4px 8px;background:color-mix(in srgb,var(--bg-2) 75%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);border-radius:20px;font-size:11px;color:var(--text-2);box-shadow:0 1px 4px #00000026}.hotreload.off{color:var(--red)}.hotreload .pulse{width:6px;height:6px;border-radius:50%;background:var(--green);animation:breathe 2.6s ease-in-out infinite}.hotreload.off .pulse{background:var(--red);animation:none}.render-badge{position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:center;gap:5px;padding:3px 8px;background:color-mix(in srgb,var(--bg-2) 75%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);border-radius:14px;font-size:11px;color:var(--text-2);font-family:var(--mono);font-variant-numeric:tabular-nums;box-shadow:0 1px 4px #00000026}.perf-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--bg-1);border-top:1px solid var(--border)}.perf-cell{padding:10px 14px 11px;border-right:1px solid var(--border-faint)}.perf-cell:last-child{border-right:none}.perf-cell .k{font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);margin-bottom:3px}.perf-cell .v{font-size:16px;font-weight:600;color:var(--text-0);font-family:var(--mono);font-variant-numeric:tabular-nums}.perf-cell .v small{font-size:10px;color:var(--text-2);font-weight:400;margin-left:1px}.console-pane{flex:1;display:flex;flex-direction:column;min-height:0}.console{flex:1;overflow:auto;padding:8px 0;font-family:var(--mono);font-size:12px}.log{display:flex;gap:10px;padding:2px 14px;color:var(--text-1)}.log .tg{color:var(--text-3);font-variant-numeric:tabular-nums}.log .src{font-weight:600;flex:none}.log .src.build{color:var(--blue)}.log .src.ok{color:var(--green)}.log .src.err{color:var(--red)}.log .src.rt{color:var(--text-2)}.log .msg{color:var(--text-1)}.log.err .msg{color:var(--red)}.log.cmd .tg{color:var(--accent);font-weight:700}.log.cmd .msg{color:var(--text-0)}.console-input{display:flex;align-items:center;gap:8px;padding:8px 14px;border-top:1px solid var(--border)}.console-input .chev{color:var(--accent);font-family:var(--mono)}.console-input input{flex:1;border:none;background:none;color:var(--text-0);font-family:var(--mono);font-size:12px;outline:none}.issues-pane{flex:1;overflow:auto}.panel-summary{display:flex;gap:18px;padding:10px 14px;border-bottom:1px solid var(--border-faint);font-size:12px;color:var(--text-1)}.panel-summary span{display:flex;align-items:center;gap:5px}.diag-list{padding:4px 0}.diag-item{display:flex;gap:9px;padding:9px 14px;border-bottom:1px solid var(--border-faint);cursor:pointer;transition:background var(--t-fast)}.diag-item:hover{background:var(--bg-3)}.diag-ico{flex:none;margin-top:1px}.diag-ico.warn{color:var(--amber)}.diag-ico.err{color:var(--red)}.diag-main .m{font-size:12px;color:var(--text-0);line-height:1.4}.diag-main .loc{font-size:11px;color:var(--text-2);font-family:var(--mono);margin-top:3px}.diag-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:40px 14px;color:var(--text-2);font-size:12px}.uiir-pane{flex:1;display:flex;flex-direction:column;min-height:0}.uiir-head{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-faint)}.uiir-meta{flex:1;font-size:11px;color:var(--text-2)}.uiir{flex:1;overflow:auto;padding:4px 0;min-height:80px}.unode{display:flex;align-items:center;gap:7px;height:26px;padding-right:10px;cursor:pointer;font-size:12px;white-space:nowrap}.unode:hover{background:var(--bg-3)}.unode.sel{background:var(--accent-dim)}.uchev{display:grid;place-items:center;width:14px;flex:none;color:var(--text-2);transition:transform var(--t-fast)}.uchev.open{transform:rotate(90deg)}.uchev.leaf{visibility:hidden}.ubadge{min-width:48px;text-align:center;font-size:9.5px;font-weight:700;letter-spacing:.05em;padding:2px 0;border-radius:4px;flex:none}.ubadge.layout{background:#4aa3e826;color:var(--blue)}.ubadge.text{background:#4cc77d26;color:var(--green)}.ubadge.control{background:#c69a6326;color:var(--amber)}.ubadge.view{background:var(--bg-4);color:var(--text-2)}.uname{color:var(--text-0);font-weight:500}.uval{color:var(--text-1);font-family:var(--mono);font-size:11px;overflow:hidden;text-overflow:ellipsis}.umods{margin-left:auto;flex:none;color:var(--text-3);font-size:11px}.uiir-detail{flex:none;max-height:42%;overflow:auto;padding:10px 14px 12px;background:var(--bg-1);border-top:1px solid var(--border)}.uiir-detail h5{position:sticky;top:-10px;background:var(--bg-1);padding:10px 0 6px;margin:-10px 0 2px;font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2)}.attr-row{display:flex;gap:10px;padding:4px 0;font-size:12px;font-family:var(--mono);line-height:1.45}.attr-row+.attr-row{border-top:1px solid var(--border-faint)}.attr-row .k{min-width:78px;flex:none;color:var(--text-2)}.attr-row .v{color:var(--text-0);overflow:hidden;text-overflow:ellipsis}.attr-row .v.str{color:var(--green)}.attr-row .v.num{color:var(--blue)}.perf-pane{flex:1;overflow:auto;padding:14px}.perf-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:560px;gap:1px;background:var(--border-faint);border:1px solid var(--border-faint);border-radius:var(--r-md);overflow:hidden}.perf-stat{background:var(--bg-2);padding:14px 16px 15px}.perf-stat .k{font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);margin-bottom:5px}.perf-stat .v{font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--text-0);font-family:var(--mono);font-variant-numeric:tabular-nums}.perf-stat .v small{font-size:10px;color:var(--text-2);font-weight:400}.statusbar{display:flex;align-items:center;padding:0 6px;height:var(--status-h);background:var(--bg-2);border-top:1px solid var(--border);font-size:12px;color:var(--text-2);user-select:none}.sb-item{display:flex;align-items:center;gap:5px;height:100%;padding:0 9px}button.sb-item{border:0;background:none;font:inherit;color:inherit;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}button.sb-item:hover{background:var(--bg-4);color:var(--text-1)}.sb-item.zero,.sb-item.zero .red,.sb-item.zero .amber{color:var(--text-3)}.sb-sep{width:1px;height:12px;background:var(--border);margin:0 4px;flex:none}.sb-item.swift{color:var(--text-1)}.sb-item.flash{color:var(--green);transition:color var(--t-fast)}.sb-spacer{flex:1}.sb-item.conn .dot{width:7px;height:7px;border-radius:50%;background:var(--green)}.sb-item.conn.off .dot{background:var(--red)}.pal-overlay{position:fixed;inset:0;z-index:var(--z-palette);display:flex;justify-content:center;align-items:flex-start;padding-top:14vh;background:#05040459;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade var(--t-fast)}.theme-light .pal-overlay{background:#3c37322e}.pal-box{width:620px;max-width:92vw;background:var(--bg-2);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-overlay);overflow:hidden;animation:pop var(--t-fast) var(--ease-pop)}.pal-head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.pal-input{flex:1;border:none;background:none;color:var(--text-0);font:inherit;font-size:15px;outline:none}.pal-list{max-height:360px;overflow:auto;padding:6px}.pal-list.more{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent)}.pal-row{position:relative;display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r-md);cursor:pointer}.pal-row.sel{background:var(--accent-dim)}.pal-row.sel:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;border-radius:1px;background:var(--accent)}.pal-row.sel .pal-kind{color:var(--text-1)}.pal-label{flex:1;font-size:13px;color:var(--text-0)}.pal-hl{color:var(--accent-hi);font-weight:600}.pal-kind{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);background:var(--bg-4);border-radius:4px;padding:2px 6px}.pal-sec{padding:8px 12px 4px;font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3)}.pal-sec:first-child{padding-top:4px}.pal-foot{display:flex;align-items:center;gap:6px;padding:8px 14px;border-top:1px solid var(--border);background:var(--bg-1);font-size:11px;color:var(--text-3)}.pal-foot .kbd{font-size:10px;border:1px solid var(--border);border-radius:4px;padding:1px 5px;color:var(--text-2)}.pal-foot span+.kbd{margin-left:8px}.pal-empty{padding:24px 18px;text-align:center;color:var(--text-2);font-size:13px}.pal-empty b{color:var(--text-0);font-weight:600}.drop-overlay{position:fixed;inset:0;z-index:var(--z-drop-overlay);display:none;place-items:center;padding:24px;background:#05040480;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.theme-light .drop-overlay{background:#3c373238}.drop-overlay.on{display:grid;animation:fade var(--t-fast)}.drop-card{position:relative;padding:40px 56px;border:2px dashed var(--accent-line);border-radius:var(--r-lg);background:var(--bg-2);color:var(--text-0);font-size:15px;font-weight:500;pointer-events:none;box-shadow:var(--shadow-overlay)}.drop-overlay.on .drop-card{animation:pop var(--t-fast) var(--ease-pop)}.drop-card:before{content:"";position:absolute;inset:-2px;border:2px dashed var(--accent);border-radius:var(--r-lg);animation:breathe 1.6s ease-in-out infinite;pointer-events:none}.np-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade var(--t-fast)}.theme-light .np-overlay{background:#28242052}.np-modal{width:min(520px,92vw);background:var(--bg-1);border:1px solid var(--border-strong);border-radius:var(--r-xl);box-shadow:var(--shadow-overlay);padding:24px}.np-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.np-brand{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--text-1)}.np-brand b{color:var(--text-0);font-weight:600}.np-x{width:28px;height:28px;border:none;background:transparent;color:var(--text-2);font-size:14px;cursor:pointer;border-radius:7px;transition:background var(--t-fast),color var(--t-fast)}.np-x:hover{background:var(--bg-3);color:var(--text-0)}.np-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.np-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:18px;text-align:left;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast)}.np-card:hover{border-color:var(--accent-line);background:var(--bg-3);transform:translateY(-1px);box-shadow:0 8px 24px -12px #00000080}.theme-light .np-card:hover{box-shadow:0 8px 24px -14px #00000040}.np-card:hover .np-ico{background:#f0552f38}.np-card:active{transform:translateY(0)}.np-ico{width:44px;height:44px;display:grid;place-items:center;border-radius:11px;background:var(--accent-dim);color:var(--accent);margin-bottom:2px;transition:background var(--t-fast)}.np-title{font-size:14px;font-weight:600;color:var(--text-0)}.np-sub{font-size:12px;color:var(--text-2);line-height:1.45}.np-open{width:100%;margin-top:16px;height:36px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--border-strong);border-radius:10px;background:transparent;color:var(--text-1);font:500 12.5px var(--sans);cursor:pointer;transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}.np-open:hover{background:var(--bg-2);color:var(--text-0);border-color:var(--accent-line)}.np-open svg{color:var(--text-2)}.terminal{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg-0)}.term-head{display:flex;align-items:center;justify-content:space-between;height:36px;flex:none;padding:0 8px 0 12px;border-bottom:1px solid var(--border-faint);background:var(--bg-1)}.term-title{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text-1);font-weight:500}.term-title svg{color:var(--text-2)}.term-path{font-family:var(--mono);font-size:11px;color:var(--text-2)}.term-actions{display:flex;gap:8px}.term-run{display:flex;align-items:center;gap:6px;height:24px;padding:0 12px;border:1px solid var(--border);border-radius:7px;background:var(--bg-3);color:var(--green);font:600 12px var(--sans);cursor:pointer;transition:background var(--t-fast)}.term-run:hover{background:var(--bg-4)}.term-run.busy{color:var(--text-2);cursor:default}.term-run .tb-ico{display:grid;place-items:center;color:inherit}.term-clear{height:24px;padding:0 11px;border:1px solid var(--border);border-radius:7px;background:transparent;color:var(--text-1);font:500 12px var(--sans);cursor:pointer;transition:background var(--t-fast)}.term-clear:hover{background:var(--bg-3)}.term-out{flex:1;overflow:auto;padding:12px 14px;font-family:var(--mono);font-size:12.5px;line-height:1.6;color:var(--text-0)}.term-line{white-space:pre-wrap;word-break:break-word}.term-line.cmd{color:var(--text-1)}.term-line.err{color:var(--red)}.term-line.exit{color:var(--text-2);font-size:11px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-faint)}.term-line.exit.ok{color:var(--green)}.term-line.exit.bad{color:var(--red)}.term-prompt{color:var(--accent);font-weight:700}.term-hint{color:var(--text-2);font-family:var(--sans);font-size:12.5px;padding:18px 2px}.term-hint b{color:var(--text-1)}.monaco-editor .glyph-margin,.monaco-editor .margin-view-overlays .cgmr,.monaco-editor .line-numbers,.monaco-editor .lines-decorations{cursor:pointer}.dbg-bp,.dbg-bp-num,.dbg-bp-tip{background:linear-gradient(180deg,#4a82d8,#3a72c8);border-top:2px solid transparent;border-bottom:2px solid transparent;background-clip:padding-box;box-sizing:border-box}.dbg-bp{border-radius:4px 0 0 4px}.dbg-bp-num{color:#fff!important;font-weight:500}.dbg-bp-tip{clip-path:polygon(0 0,40% 0,100% 42%,100% 58%,40% 100%,0 100%)}.app.theme-light .dbg-bp,.app.theme-light .dbg-bp-num,.app.theme-light .dbg-bp-tip{background:linear-gradient(180deg,#3b6fce,#2e5cb4);background-clip:padding-box}.dbg-bp.dbg-bp-cond,.dbg-bp-num.dbg-bp-cond,.dbg-bp-tip.dbg-bp-cond{background:linear-gradient(180deg,#e3af46,#cf972b);background-clip:padding-box}.dbg-bp-num.dbg-bp-cond{color:#2a1d00!important}.app.theme-light .dbg-bp.dbg-bp-cond,.app.theme-light .dbg-bp-num.dbg-bp-cond,.app.theme-light .dbg-bp-tip.dbg-bp-cond{background:linear-gradient(180deg,#cf9320,#b67e12);background-clip:padding-box}.dbg-bp.dbg-bp-cur,.dbg-bp-num.dbg-bp-cur,.dbg-bp-tip.dbg-bp-cur{background:linear-gradient(180deg,#57d18a,#38b06a);background-clip:padding-box}.dbg-bp-num.dbg-bp-cur{color:#06310f!important}.app.theme-light .dbg-bp.dbg-bp-cur,.app.theme-light .dbg-bp-num.dbg-bp-cur,.app.theme-light .dbg-bp-tip.dbg-bp-cur{background:linear-gradient(180deg,#34b061,#259150);background-clip:padding-box}.dbg-bp-in,.dbg-bp-num.dbg-bp-in,.dbg-bp-tip.dbg-bp-in{animation:dbg-bp-in .15s ease-out;transform-origin:center}.dbg-bp-out,.dbg-bp-num.dbg-bp-out,.dbg-bp-tip.dbg-bp-out{animation:dbg-bp-out .15s ease-in forwards;transform-origin:center}.dbg-condinput{width:200px;box-sizing:border-box;padding:3px 7px;font-family:var(--mono);font-size:11px;background:var(--bg-3);color:var(--text-0);border:1px solid var(--border-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-pop);outline:none;transition:border-color var(--t-fast)}.dbg-condinput:focus{border-color:var(--blue)}.dbg-curarrow{background:var(--green);clip-path:polygon(0% 30%,52% 30%,52% 12%,100% 50%,52% 88%,52% 70%,0% 70%);margin:2px 1px;z-index:5}.dbg-curline{background:#4cc77d21}.app.theme-light .dbg-curline{background:#2f6ef01a}.dbg-bar{grid-row:3;display:flex;flex-direction:column;height:232px;background:var(--bg-2);border-top:1px solid var(--border-strong);overflow:hidden;font-family:var(--sans)}.dbg-row{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:7px 12px;background:var(--bg-3);border-bottom:1px solid var(--border)}.dbg-badge{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--blue);padding-right:4px}.dbg-ctls{display:flex;align-items:center;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden}.dbg-ctl{display:grid;place-items:center;width:30px;height:24px;padding:0;border:none;border-right:1px solid var(--border-faint);border-radius:0;background:var(--bg-4);color:var(--text-0);cursor:pointer;transition:background var(--t-fast)}.dbg-ctl:last-child{border-right:none}.dbg-ctl:hover{background:var(--bg-5)}.dbg-ctl.stop{color:var(--red)}.dbg-ctl.go{color:var(--green)}.dbg-ctl:disabled{opacity:.4;cursor:default}.dbg-glyph{font-size:15px;line-height:1}.dbg-info{font-size:11px;color:var(--text-1);margin-left:4px;white-space:nowrap}.dbg-ctlwrap{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.dbg-sliderwrap{flex:1;display:flex;align-items:center;min-width:120px}.dbg-slider{width:100%;accent-color:var(--blue);cursor:pointer}.dbg-body{display:flex;align-items:stretch;flex:1 1 auto;min-height:0}.dbg-body{background:var(--bg-1)}.dbg-stackbox,.dbg-varsbox,.dbg-watchbox{padding:10px 14px;overflow:auto}.dbg-stackbox{flex:0 0 33%;border-right:1px solid var(--border)}.dbg-varsbox{flex:1 1 auto}.dbg-watchbox{flex:0 0 30%;border-left:1px solid var(--border)}.dbg-panelhead{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-2);margin-bottom:8px}.dbg-vars,.dbg-stack,.dbg-watch{display:flex;flex-direction:column;gap:3px}.dbg-var{display:flex;align-items:baseline;gap:6px;font-family:var(--mono);font-size:12px}.dbg-vname{color:var(--purple)}.dbg-veq{color:var(--text-3)}.dbg-vval{color:var(--green);flex:1;word-break:break-all}.dbg-novars{display:grid;place-items:center;padding:18px 12px;font-size:11.5px;color:var(--text-3)}.dbg-frame{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;padding:3px 6px;border:0;border-radius:var(--r-sm);background:transparent;cursor:pointer;transition:background var(--t-fast)}.dbg-frame:hover{background:var(--bg-4)}.dbg-frame.sel{background:var(--bg-5)}.dbg-fname{font-family:var(--mono);font-size:12px;color:var(--text-0)}.dbg-fline{font-size:10px;color:var(--text-2);font-variant-numeric:tabular-nums}.dbg-frame.sel .dbg-fline{color:var(--text-1)}.dbg-watchinput{width:100%;box-sizing:border-box;margin-bottom:6px;padding:3px 6px;font-family:var(--mono);font-size:11px;background:var(--bg-4);color:var(--text-0);border:1px solid var(--border);border-radius:var(--r-sm);transition:border-color var(--t-fast),background var(--t-fast)}.dbg-watchinput:focus{outline:none;border-color:var(--blue);background:var(--bg-3)}.dbg-wdel{margin-left:auto;border:0;background:transparent;color:var(--text-3);cursor:pointer;font-size:13px;line-height:1}.dbg-wdel:hover{color:var(--red)}.sd-pane{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg-1)}.sd-predbar{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border);font-family:var(--mono);font-size:11px;color:var(--text-2);flex:none}.sd-predfix{color:var(--accent);white-space:nowrap}.sd-predinput{flex:1;min-width:0;background:var(--bg-4);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-0);font-family:var(--mono);font-size:11px;padding:4px 8px;outline:none}.sd-predinput::placeholder{color:var(--text-3)}.sd-predinput:focus{border-color:var(--blue)}.sd-prederr{padding:4px 12px;font-family:var(--mono);font-size:11px;color:var(--red);min-height:0;flex:none}.sd-prederr:empty{display:none}.sd-scroll{flex:1;min-height:0;overflow:auto;padding:8px 0 12px}.sd-models{display:flex;flex-wrap:wrap;gap:6px;padding:6px 12px 10px}.sd-modeltab{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-1);font-family:var(--mono);font-size:11px;padding:3px 10px;cursor:pointer}.sd-modeltab:hover{color:var(--text-0);border-color:var(--border-strong)}.sd-modeltab.sel{color:var(--text-0);background:var(--accent-dim);border-color:var(--accent-line)}.sd-tablehost .dbg-panelhead{padding:4px 12px 8px;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);font-family:var(--sans)}.sd-row{display:flex;align-items:stretch;gap:0;padding:0 6px;border-top:1px solid var(--border-faint)}.sd-row.sd-head{border-top:none;position:sticky;top:0;background:var(--bg-2);z-index:1}.sd-row.sd-match{background:var(--accent-dim)}.sd-cell{flex:1;min-width:0;padding:5px 8px;font-family:var(--mono);font-size:11px;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-head .sd-cell{display:flex;align-items:center;gap:6px;color:var(--text-2)}.sd-fname{color:var(--text-1);font-weight:500}.sd-cell.v-num{color:var(--blue);font-variant-numeric:tabular-nums}.sd-cell.v-str{color:var(--green)}.sd-cell.v-bool{color:var(--accent-hi)}.sd-emptyrows{padding:14px 12px;font-size:12px;color:var(--text-3);font-family:var(--sans)}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{transform:translateY(-8px) scale(.98);opacity:0}}@keyframes breathe{0%,to{opacity:1}50%{opacity:.4}}@keyframes dbg-bp-in{0%{opacity:0;transform:scaleY(.35)}to{opacity:1;transform:scaleY(1)}}@keyframes dbg-bp-out{0%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(.35)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body.embed-mode{overflow:hidden;background:var(--bg-1)}body.embed-mode .app{min-height:100vh}body.embed-mode.embed-chrome-off .app{grid-template-rows:1fr}body.embed-mode.embed-chrome-off .topbar,body.embed-mode.embed-chrome-off .statusbar,body.embed-mode .activity,body.embed-mode .sidebar,body.embed-mode .resizer{display:none}body.embed-mode .app-main{grid-template-columns:minmax(0,1fr);grid-template-rows:38px minmax(0,1fr)}body.embed-mode.embed-chrome-off .app-main{grid-row:1}body.embed-mode .editor-col,body.embed-mode .inspector{min-width:0}body.embed-mode .editor-col,body.embed-mode .inspector{grid-column:1;grid-row:2;border:0}body.embed-mode .tabbar,body.embed-mode .breadcrumb,body.embed-mode .insp-tabs{display:none}body.embed-mode .embed-tabs{grid-column:1;grid-row:1;display:flex;align-items:stretch;gap:0;height:38px;background:var(--bg-2);border-bottom:1px solid var(--border)}body.embed-mode .embed-tab{position:relative;min-width:96px;padding:0 16px;border:0;border-right:1px solid var(--border-faint);background:transparent;color:var(--text-2);font:inherit;font-size:12px;font-weight:650;cursor:pointer}body.embed-mode .embed-tab:hover{background:var(--bg-3);color:var(--text-0)}body.embed-mode .embed-tab.active{color:var(--text-0)}body.embed-mode .embed-tab.active:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--accent)}body.embed-mode.embed-show-code .inspector,body.embed-mode.embed-show-preview .editor-col{display:none}body.embed-mode .prev-toolbar{padding:6px}body.embed-mode:not(.embed-preview-only) .prev-toolbar{display:none}body.embed-mode .perf-strip,body.embed-mode.embed-chrome-off .hotreload,body.embed-mode.embed-chrome-off .render-badge{display:none}body.embed-preview-only .app-main{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}body.embed-preview-only .editor-col{display:none}body.embed-preview-only .inspector{grid-row:1;border-left:0;background:var(--bg-1)}body.embed-preview-only .insp-tabs,body.embed-preview-only .prev-toolbar{display:none}body.embed-preview-only .stage{background:var(--bg-1)}@media(max-width:760px){body.embed-mode:not(.embed-preview-only) .app-main{grid-template-columns:minmax(0,1fr);grid-template-rows:38px minmax(0,1fr)}body.embed-mode:not(.embed-preview-only) .inspector{border-left:0}}
