:root{--canvas:#1e1e1e;--panel:#2c2c2c;--panel-subtle:#383838;--border:#3d3d3d;--text:#ececec;--muted:#9a9a9a;--accent:#0d99ff;--selected:#0c3a5c;--token-bg:#3b2d63;--token-fg:#cbb8ff;--style-bg:#1f4730;--style-fg:#a4e3b8;--hard-bg:#4d3013;--hard-fg:#ffc48a;--gutter:12px;--panel-left:260px;--panel-right:320px}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--canvas);color:var(--text);font:12px/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden}button{font:inherit}.app{height:100vh;position:relative}.panel{top:var(--gutter);z-index:2;max-height:calc(100vh - var(--gutter) * 2);background:var(--panel);border:1px solid var(--border);border-radius:12px;position:absolute;overflow:auto;box-shadow:0 8px 24px #00000059}.panel-left{left:var(--gutter);width:var(--panel-left)}.panel-right{right:var(--gutter);width:var(--panel-right)}.panel-title{z-index:1;background:var(--panel);border-bottom:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;padding:12px 14px;font-weight:600;position:sticky;top:0;overflow:hidden}.stage{position:absolute;inset:0}.viewport{cursor:default;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.world{transform-origin:0 0;position:absolute;top:0;left:0}.frame{background:#2c2c2c;position:absolute}.frame img{pointer-events:none;width:100%;height:100%;display:block}.frame-missing{color:#aaa;text-align:center;border:4px dashed #555;place-items:center;height:100%;font-size:28px;display:grid}.frame-name{padding-bottom:calc(4px / var(--z));font-size:calc(11px / var(--z));color:#a0a0a0;white-space:nowrap;line-height:1.2;position:absolute;bottom:100%;left:0}.flow-label{font-size:min(calc(15px / var(--z)), 360px);color:#f0f0f0;white-space:nowrap;padding-bottom:8px;font-weight:600;line-height:1.1;position:absolute;transform:translateY(-100%)}.flow-note{vertical-align:middle;color:#f5c451;background:#3b2f12;border-radius:.3em;margin-left:.6em;padding:.1em .4em;font-size:.55em;font-weight:500}.overlay{pointer-events:none;position:absolute}.sel-frame{outline:calc(2px / var(--z)) solid var(--accent);position:absolute;inset:0}.box-hover,.box-selected{position:absolute}.box-hover{outline:calc(1px / var(--z)) solid var(--accent)}.box-selected{outline:calc(2px / var(--z)) solid var(--accent);background:#0d99ff14}.frame-status{color:#fff;font-size:calc(12px / var(--z));background:#0009;border-radius:4px;padding:4px 8px;position:absolute;top:12px;right:12px}.zoom-tools{left:50%;bottom:var(--gutter);color:#ddd;background:#2c2c2c;border-radius:8px;align-items:center;gap:4px;padding:4px;display:flex;position:absolute;transform:translate(-50%)}.zoom-tools button{color:#eee;cursor:pointer;background:#3a3a3a;border:0;border-radius:6px;padding:4px 8px}.zoom-tools button:hover{background:#4a4a4a}.zoom-tools span{text-align:center;font-variant-numeric:tabular-nums;min-width:44px}.muted{color:var(--muted);font-weight:400}.empty{color:var(--muted);padding:12px 14px}.link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0}.frame-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree,.tree ul{margin:0;padding:0;list-style:none}.tree{padding:4px 0 24px}.row{width:100%;height:26px;color:var(--text);text-align:left;cursor:default;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:0 10px;display:flex}.row:hover,.row-hover{background:var(--panel-subtle)}.row-selected,.row-selected:hover{background:var(--selected)}.row-hidden .row-name,.row-hidden .glyph{opacity:.45}.row-flow{font-weight:600}.row-name{text-overflow:ellipsis;flex:1;overflow:hidden}.caret{width:12px;color:var(--muted);text-align:center;cursor:pointer;flex:none;font-size:10px}.glyph{width:14px;color:var(--muted);text-align:center;flex:none}.glyph-instance,.glyph-component{color:#9747ff}.glyph-text{font-weight:700}.section{border-bottom:1px solid var(--border);padding:10px 14px}.section h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 6px;font-size:11px;font-weight:600}.prop{grid-template-columns:96px 1fr;align-items:start;gap:8px;padding:3px 0;display:grid}.prop-label{color:var(--muted);white-space:pre;text-overflow:ellipsis;overflow:hidden}.prop-value{flex-wrap:wrap;align-items:center;gap:4px 6px;min-width:0;display:flex}.mono{word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.swatch{border-radius:3px;flex:none;width:14px;height:14px;box-shadow:inset 0 0 0 1px #fff3}.chip{background:var(--token-bg);color:var(--token-fg);word-break:break-word;border-radius:4px;padding:1px 6px;font-size:11px}.chip-style{background:var(--style-bg);color:var(--style-fg)}.chip-hard{background:var(--hard-bg);color:var(--hard-fg)}.text-sample{background:var(--panel-subtle);white-space:pre-wrap;border-radius:4px;margin-bottom:6px;padding:6px 8px}.raw{padding:10px 14px 24px}.raw summary{cursor:pointer;color:var(--muted)}.raw pre{white-space:pre-wrap;word-break:break-all;margin:8px 0 0;font-size:10.5px}.pages{border-bottom:1px solid var(--border);padding-bottom:4px}.section-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:10px 14px 4px;font-size:11px;font-weight:600}.pages .tree{padding:0 0 4px}.row-page{font-weight:500}.page{position:absolute;inset:0}.page-hidden{display:none}.boards{align-items:flex-start;gap:200px;width:max-content;padding:80px;display:flex}.board{color:#1e2a44;-webkit-user-select:text;user-select:text;background:#fff;border-radius:8px;flex:none;padding:48px 56px 56px;font-size:14px;line-height:1.5;position:relative}.board .board-name{padding-bottom:calc(6px / var(--z));font-size:calc(12px / var(--z));color:#a0a0a0;white-space:nowrap;line-height:1.2;position:absolute;bottom:100%;left:0}.board-head{margin-bottom:28px}.board h1{color:#06142a;margin:0 0 6px;font-size:32px;line-height:1.2}.board h2{color:#06142a;margin:36px 0 12px;font-size:20px}.board p{margin:0 0 8px}.board .muted{color:#6f7687}.board .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.board code{font-family:ui-monospace,monospace}.note{color:#50586d;background:#f2f2f4;border-radius:6px;padding:12px 14px;margin-top:28px!important}.bswatch{background:repeating-conic-gradient(#e2e3e7 0 25%, #fff 0 50%) 0 0 / 10px 10px;border-radius:6px;flex:none;display:inline-block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0000001f}.bswatch>span{position:absolute;inset:0}.chips{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.bchip{color:#5b2fc9;background:#efe9ff;border-radius:4px;padding:2px 7px;font-size:12px;line-height:1.4;display:inline-block}.bchip b{margin-left:2px;font-weight:600}.bchip-style{color:#1e7b3c;background:#e6f4ea}.bchip-hard{color:#b54708;background:#fff2e5}.bchip-review{color:#8a6100;background:#fff8db}.bchip-more{color:#50586d;background:#f2f2f4}.otable{border-top:1px solid #dee8f6;display:grid}.orow{cursor:pointer;content-visibility:auto;contain-intrinsic-size:auto 180px;border-bottom:1px solid #dee8f6;grid-template-columns:250px 320px 70px 70px 1fr;align-items:start;gap:16px;padding:14px 8px;display:grid}.orow:hover{background:#f8fafd}.ohead{cursor:default;text-transform:uppercase;letter-spacing:.04em;color:#6f7687;contain-intrinsic-size:auto 40px;font-size:12px;font-weight:600}.ohead:hover{background:0 0}.ocolor{align-items:center;gap:12px;display:flex}.onum{text-align:right;font-variant-numeric:tabular-nums}.tier{margin-bottom:12px}.cards{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.pcard{cursor:pointer;border:1px solid #dee8f6;border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.pcard:hover{box-shadow:0 0 0 2px #0d99ff}.pcard-swatch{height:96px;box-shadow:inset 0 -1px #00000014}.pcard-primary .pcard-swatch{height:150px}.pcard-body{gap:4px;padding:14px 16px 16px;font-size:13px;display:grid}.pcard-body p{margin:0}.pcard-family{text-transform:uppercase;letter-spacing:.04em;color:#6f7687;font-size:11px;font-weight:600}.pcard-name{color:#06142a;font-size:18px;font-weight:700}.do{color:#1e7b3c}.dont{color:#b42318}.rfrom{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.panel .section p{margin:0 0 6px}.role{text-transform:uppercase;letter-spacing:.03em;border-radius:3px;padding:0 6px;font-size:11px;font-weight:600;line-height:1.6;display:inline-block}.role-fill{color:#0048e6;background:#e8f1ff}.role-text{color:#1e2a44;background:#efeff2}.role-stroke{color:#b3137f;background:#fff0f8}.role-gradient{color:#046b70;background:#e3fbfb}.role-shadow{color:#50586d;background:#f1f1f1}.ds-world{position:relative}.ds-boards{align-items:flex-start;gap:200px;display:flex}.ds-board .ds-collection{margin-top:28px}.vtable{border-top:1px solid #dee8f6;display:grid}.vrow{grid-template-columns:340px 70px repeat(var(--modes), 300px) 220px 1fr;content-visibility:auto;contain-intrinsic-size:auto 44px;border-bottom:1px solid #eef2f8;align-items:start;gap:14px;padding:8px 6px;font-size:13px;display:grid}.vhead{text-transform:uppercase;letter-spacing:.04em;color:#6f7687;font-size:11px;font-weight:600}.vgroup-title{color:#06142a;border-bottom:1px solid #dee8f6;padding:14px 6px 6px;font-size:13px;font-weight:700}.vname{word-break:break-word}.vcell{word-break:break-word;align-items:flex-start;gap:8px;min-width:0;display:flex}.vscopes,.vdesc{color:#50586d;font-size:12px}.stable{border-top:1px solid #dee8f6;display:grid}.srow{border-bottom:1px solid #eef2f8;grid-template-columns:90px 1fr;align-items:center;gap:16px;padding:10px 6px;font-size:13px;display:grid}.spreview{color:#06142a;align-items:center;gap:6px;min-height:40px;display:flex}.epreview-box{background:#fff;border-radius:6px;width:56px;height:36px;display:block}.ds-band-label{font-size:min(calc(15px / var(--z)), 300px);color:#f0f0f0;white-space:nowrap;margin-top:110px;padding-bottom:8px;font-weight:700;line-height:1.1;position:absolute;transform:translateY(-100%)}.ds-band-count{color:#9a9a9a;margin-left:.6em;font-size:.5em;font-weight:500}.ds-block{background:#fff;border-radius:10px;position:absolute}.ds-block-set{outline-offset:-1px;outline:2px dashed #9747ff}.ds-block-group{outline-offset:-1px;outline:1px solid #dee8f6}.ds-block-head{padding:12px 24px 0}.ds-block-title{color:#7b36e0;font-size:15px;font-weight:700}.ds-block-group .ds-block-title{color:#06142a}.ds-block-count{color:#6f7687;margin-left:8px;font-size:12px}.ds-block-desc{color:#6f7687;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.ds-tile{position:absolute}.ds-tile img{pointer-events:none;display:block}.ds-tile:hover img{outline:1px solid #9747ff}.ds-tile-missing{border:1px dashed #c7cad0}.ds-tile-label{color:#6f7687;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11px;line-height:16px;position:absolute;left:0;overflow:hidden}.nav-download{margin:4px 14px 8px}.nav-download a{color:var(--accent);text-decoration:none}.small{font-size:11px}.brand-cards{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.brand-card{border:1px solid #dee8f6;border-radius:12px;overflow:hidden}.brand-swatch{flex-direction:column;justify-content:flex-end;gap:4px;height:180px;padding:18px 20px;display:flex;box-shadow:inset 0 -1px #0000000f}.brand-name{font-size:26px;font-weight:700}.brand-body{gap:6px;padding:16px 20px 18px;font-size:13.5px;display:grid}.brand-body p{margin:0}.prop-rows{gap:10px;display:grid}.prop-row{grid-template-columns:260px 1fr 110px 120px;align-items:center;gap:14px;display:grid}.prop-name{font-weight:600}.prop-track{background:#f1f3f7;border-radius:4px;height:22px;overflow:hidden;box-shadow:inset 0 0 0 1px #dee8f6}.prop-track>span{height:100%;display:block}.rules{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.rule{background:#f1f3f7;border-radius:10px;padding:14px 16px}.rule p{color:#425579;margin:4px 0 0}.pairs{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.pair{border-radius:10px;grid-template-rows:auto auto;grid-template-columns:56px 1fr;align-items:center;gap:2px 10px;padding:14px;font-size:12px;display:grid;box-shadow:inset 0 0 0 1px #00000014}.pair b{grid-row:span 2;font-size:30px}.pair-ratio{font-weight:600}.prim-head,.prim-row{grid-template-columns:240px repeat(11,1fr);align-items:start;gap:8px;display:grid}.prim-head{color:#6f7687;padding-bottom:6px;font-size:12px;font-weight:600}.prim-row{border-top:1px solid #eef2f8;padding:10px 0}.prim-family{font-size:13px}.prim-cell{gap:3px;font-size:11px;display:grid}.prim-swatch{border-radius:8px;place-items:center;height:56px;font-size:16px;display:grid;box-shadow:inset 0 0 0 1px #00000014}.prim-aa{color:#93a6c4}.prim-aa.ok{color:#1e7b3c;font-weight:600}.srow2{cursor:default;grid-template-columns:420px 360px 1fr 120px}.comp-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:18px;display:grid}.comp-card{border:1px solid #dee8f6;border-radius:12px;padding:14px 16px}.comp-head{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:10px;font-size:15px;display:flex}.comp-head img{object-fit:contain;object-position:left;flex-basis:100%}.comp-tokens{gap:4px;display:grid}.comp-token{grid-template-columns:16px 1fr auto;align-items:center;gap:8px;font-size:11.5px;display:grid}.mgrow{cursor:default;grid-template-columns:380px 170px 340px 170px 1fr}.lockup{white-space:nowrap;align-items:center;display:inline-flex}.logo-hero{background:#f1f3f7;border-radius:16px;place-items:center;height:420px;margin-bottom:36px;display:grid}.story{grid-template-columns:420px 1fr;align-items:start;gap:56px;font-size:16px;display:grid}.story-mark{border:1px solid #dee8f6;border-radius:16px;place-items:center;height:380px;display:grid;position:relative}.story-floor{letter-spacing:.08em;text-transform:uppercase;color:#ff30c6;font-size:13px;font-weight:600;position:absolute}.story p{color:#425579;max-width:820px}.traits{gap:10px;display:flex}.traits span{color:#fff;background:#06142a;border-radius:999px;padding:8px 16px;font-weight:600}.construct{grid-template-columns:460px 1fr;align-items:start;gap:80px;padding-top:40px;display:grid}.construct-symbol{position:relative}.construct-symbol>svg{position:absolute;inset:0}.construct-grid{z-index:1;overflow:visible}.dim{color:#ff30c6;text-align:center;border-top:1px solid #ff30c6;padding-top:2px;font:600 13px ui-monospace,monospace;position:absolute}.dim-x{border:0;border-left:1px solid #ff30c6;align-items:center;height:100%;margin-left:12px;padding:0 0 0 6px;display:flex;top:0;left:100%}.lockup-measure{margin-bottom:28px;padding-bottom:36px;display:inline-block;position:relative}.guide{color:#ff30c6;white-space:nowrap;border-top:1px solid #ff30c6;padding-top:4px;font:600 12px ui-monospace,monospace;position:absolute;bottom:0}.spec{border-collapse:collapse;font-size:14px}.spec td{vertical-align:top;border-bottom:1px solid #eef2f8;padding:8px 16px 8px 0}.spec td:first-child{width:180px;font-weight:600}.space-demo{align-items:center;gap:60px;display:flex}.clear-box{background:repeating-linear-gradient(45deg,#ff30c60f 0 6px,#0000 6px 12px);outline:2px dashed #ff30c6;display:inline-flex;position:relative}.clear-box>.lockup,.clear-box>svg{background:#fff}.cs{color:#ff30c6;place-items:center;font:600 12px ui-monospace,monospace;display:grid;position:absolute}.cs-t{top:0;left:50%;transform:translate(-50%)}.cs-l{top:50%;left:0;transform:translateY(-50%)}.min-sizes{align-items:flex-end;gap:48px;display:flex}.min-sizes>div{color:#6f7687;justify-items:start;gap:10px;font-size:12px;display:grid}.ctiles{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.ctile{border-radius:12px;place-items:center;height:180px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #00000014}.ctile-meta{max-width:calc(100% - 28px);font-size:12px;font-weight:600;position:absolute;bottom:12px;left:14px}.ctile-bad:after{content:"";pointer-events:none;border:2px solid #c60000;border-radius:8px;position:absolute;inset:10px}.use-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.use-card{border:1px solid #dee8f6;border-radius:12px;padding:18px}.use-card p{margin:12px 0 0}.mock-header{background:#fff;border:1px solid #dee8f6;border-radius:8px;align-items:center;gap:24px;height:60px;padding:0 40px;display:flex}.mock-search{color:#93a6c4;background:#f1f3f7;border-radius:8px;flex:1;max-width:420px;padding:8px 12px;font-size:12px}.mock-avatar{background:#dbeaff;border:1.5px solid #06142a;border-radius:4px;margin-left:auto;padding:3px 7px;font-size:10px;font-weight:700}.mock-sidebar{gap:20px;display:flex}.mock-rail,.mock-open{background:#f1f3f7;border:1px solid #dee8f6;border-radius:8px;flex-direction:column;gap:14px;padding:16px;display:flex}.mock-rail{align-items:center;width:56px}.mock-open{width:220px}.mock-rail>i,.mock-open>i{background:#dee8f6;border-radius:4px;width:100%;height:10px;display:block}.icons{align-items:flex-end;gap:24px;display:flex}.icons>span{line-height:0;display:block}.mock-tab{background:#f1f3f7;border-radius:8px 8px 0 0;align-items:center;gap:8px;padding:8px 14px;font-size:12px;display:inline-flex}.mock-tab>span{line-height:0}.mock-splash{background:#06142a;border-radius:8px;place-items:center;height:120px;margin-top:12px;display:grid}.files{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.file{color:#06142a;border:1px solid #dee8f6;border-radius:10px;place-items:center;gap:8px;padding:18px;font-size:12px;text-decoration:none;display:grid}.file img{max-width:100%;height:48px}.file-dark{color:#fff;background:#06142a}.misuse{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.misuse-card{border:1px solid #dee8f6;border-radius:12px;overflow:hidden}.misuse-art{background:#fff;place-items:center;height:170px;display:grid;position:relative;overflow:hidden}.misuse-art:after{content:"";opacity:.55;background:linear-gradient(to top right,#0000 calc(50% - 1.5px),#c60000 calc(50% - 1.5px) calc(50% + 1.5px),#0000 calc(50% + 1.5px));position:absolute;inset:0}.misuse-card p{margin:0;padding:12px 14px}.busy{background:repeating-linear-gradient(60deg,#bdd5ff 0 14px,#f6cfff 14px 28px,#a4f4cf 28px 42px);place-items:center;width:100%;height:100%;display:grid}.type-hero{color:#06142a;grid-template-columns:320px 1fr;align-items:center;gap:48px;display:grid}.type-weights{gap:18px;display:grid}.type-scale{grid-template-columns:repeat(2,1fr);gap:8px 40px;display:grid}.type-row{color:#06142a;border-bottom:1px solid #eef2f8;grid-template-columns:1fr 260px 200px;align-items:center;gap:12px;padding:6px 0;display:grid}.fix-compare{grid-template-columns:1fr 1fr;gap:40px;margin-bottom:28px;display:grid}.fix-row{align-items:center;gap:24px;display:flex}.fix-dark{background:#06142a;border-radius:8px;padding:16px 20px;display:inline-flex}.fixrow{cursor:default;grid-template-columns:300px 1fr 420px}.tlink{font:inherit;color:#0048e6;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #0048e64d;text-decoration:underline #0048e64d}.tlink:hover{text-decoration-color:currentColor}.lin-chips .tlink,.tlink-prim,.tlink-comp{color:#5b2fc9;background:#efe9ff;border-radius:4px;padding:2px 7px;font-family:ui-monospace,monospace;font-size:11.5px;text-decoration:none}.tlink-prim{color:#06142a;background:#f1f3f7;font-weight:600}.tlink-comp{color:#1e7b3c;background:#e6f4ea;font-family:inherit}.tlink-brand{color:#06142a;text-align:left;font-size:11px;font-weight:700;text-decoration:none}.lineage{background:#fafbfd;border-bottom:1px solid #eef2f8;gap:8px;padding:14px 20px;font-size:12px;display:grid}.lin-step{grid-template-columns:110px 1fr;align-items:start;gap:8px;display:grid}.lin-label{text-transform:uppercase;letter-spacing:.04em;color:#6f7687;padding-top:3px;font-size:11px;font-weight:600}.lin-chips{flex-wrap:wrap;gap:4px;display:flex}.flash{animation:1.8s ease-out flash}@keyframes flash{0%,30%{box-shadow:0 0 0 4px #ff30c6,0 0 0 12px #ff30c640}to{box-shadow:0 0 #0000}}.sm-row{border:1px solid #dee8f6;border-radius:14px;grid-template-rows:800px;grid-template-columns:560px minmax(0,1fr) 500px;gap:40px;padding:24px;display:grid}.sm-side{flex-direction:column;gap:18px;min-width:0;height:800px;display:flex;overflow:hidden}.sm-side>*,.xp-side>*{flex:none;min-width:0}.sm-side>.sm-levels,.xp-side>.sm-levels{overscroll-behavior:contain;scrollbar-width:thin;flex:1 1 0;align-content:start;min-height:140px;overflow:hidden auto}.sm-info,.xp-info{min-width:0;min-height:0;display:grid}.sm-info>.sm-detail,.xp-info>.sm-detail{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;overflow-y:auto}.sm-info{height:800px}.xp-info{border-left:1px solid #dee8f6;padding:18px}.sm-side>*{min-width:0}.sm-title b{font-size:20px}.sm-title a{color:#0048e6}.sm-controls{gap:10px;display:flex}.sm-seg{border:1px solid #dee8f6;border-radius:8px;display:inline-flex;overflow:hidden}.sm-seg button{font:inherit;color:#425579;cursor:pointer;background:#fff;border:0;padding:7px 14px;font-size:13px}.sm-seg button+button{border-left:1px solid #dee8f6}.sm-seg button.on{color:#fff;background:#06142a}.sm-levels{gap:6px;display:grid}.sm-level{cursor:pointer;border-radius:10px;grid-template-columns:44px 1fr;gap:12px;padding:10px 12px;display:grid}.sm-level:hover,.sm-level.on{background:#f1f3f7}.sm-lnum{color:#fff;font:600 12px var(--font-mono,ui-monospace, monospace);text-align:center;background:#06142a;border-radius:5px;align-self:start;padding:2px 6px;display:inline-block}.sm-level.on .sm-lnum{background:#0048e6}.sm-chips{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.sm-chip{font:inherit;color:#06142a;cursor:pointer;background:#fff;border:1px solid #dee8f6;border-radius:6px;align-items:center;gap:5px;padding:2px 8px;font-size:12px;display:inline-flex}.sm-chip i{border-radius:3px;width:10px;height:10px;box-shadow:inset 0 0 0 1px #06142a40}.sm-chip:hover,.sm-chip.on{color:#0048e6;border-color:#0048e6}.sm-detail{background:#f1f3f7;border-radius:12px;padding:16px 18px;font-size:13.5px}.sm-detail p{color:#425579;margin:10px 0 0}.sm-dhead{align-items:center;gap:10px;font-size:16px;display:flex}.sm-dhead .muted{font-size:13px}.sm-compare{grid-template-columns:70px 1fr;gap:8px 12px;margin-top:12px;display:grid}.sm-fills{flex-wrap:wrap;align-items:center;gap:4px 10px;display:inline-flex}.sm-fill{font-family:var(--font-mono,ui-monospace, monospace);align-items:center;gap:6px;font-size:12px;display:inline-flex}.sm-fill i{border-radius:4px;width:14px;height:14px;box-shadow:inset 0 0 0 1px #06142a33}.sm-times{color:#b54708;font-size:12px}.sm-rtable{gap:6px;margin-top:12px;display:grid}.sm-rrow{grid-template-columns:130px minmax(0,1fr) 14px 190px;align-items:center;gap:8px;display:grid}.sm-main{grid-template-rows:730px 1fr;align-content:start;gap:14px;min-width:0;display:grid}.sm-stage{height:730px;position:relative}.sm-stack{width:893px;height:670px;transform-style:preserve-3d;margin-left:-446px;position:absolute;top:30px;left:50%}.sm-stack-in{transform-style:preserve-3d;position:absolute;inset:0}.sm-toolbar{background:#fff;border:1px solid #dee8f6;border-radius:10px;align-items:center;gap:12px;width:893px;margin:0 auto;padding:10px 12px;display:flex}.sm-toolhint{flex:1}.sm-explode{color:#fff;font:inherit;cursor:pointer;background:#06142a;border:0;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.sm-explode:hover{background:#0048e6}.sm-plane{transform-style:preserve-3d;background:#f1f3f740;border-radius:4px;outline:2px dashed #42557973;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .2s;position:absolute;inset:0}.sm-flat .sm-plane{background:0 0;outline-color:#0000}.sm-flat .sm-plane:first-child{outline:1px solid #1e2a44}.sm-plane.on{outline:3px solid #0048e6}.sm-dim .sm-plane:not(.on){opacity:.16}.sm-region{box-shadow:none;outline:2.5px solid var(--rc,#06142a47);outline-offset:-2.5px;cursor:pointer;display:block;position:absolute}.sm-region.sm-empty{outline-style:dashed}.sm-region.sm-content{outline-offset:-1.5px;outline-width:1.5px}.sm-region img{pointer-events:none;width:100%;height:100%;display:block}.sm-region:hover,.sm-region.on{outline-offset:-5px;box-shadow:inset 0 0 0 999px color-mix(in srgb, var(--rc) 14%, transparent);z-index:1;outline-width:5px}.sm-rtag{background:var(--rc);color:#fff;white-space:nowrap;pointer-events:none;border-radius:4px;padding:2px 7px;font-size:12px;font-weight:600;position:absolute;top:6px;left:6px}.sm-region.sm-content .sm-rtag{opacity:0;transition:opacity .15s}.sm-region.sm-content:hover .sm-rtag,.sm-region.sm-content.on .sm-rtag,.sm-plane.on .sm-region.sm-content .sm-rtag{opacity:1}.sm-repaint{transition:transform .5s cubic-bezier(.2,.7,.2,1)}.sm-flat .sm-repaint{transform:none!important}.sm-badge-under{background:#6f7687;top:auto;bottom:8px}.sm-flat .sm-rtag,.sm-flat .sm-badge{display:none}.sm-plane.sm-off{pointer-events:none;opacity:.04!important}.sm-build{flex-wrap:wrap;align-items:center}.sm-seg button.past{color:#06142a;background:#dee8f6}.sm-play{font:inherit;cursor:pointer;background:#fff;border:1px solid #dee8f6;border-radius:8px;padding:7px 14px;font-size:13px}.sm-badge{color:#fff;background:#b54708;border-radius:4px;padding:2px 6px;font-size:11px;position:absolute;top:8px;right:8px}.sm-tag{color:#fff;white-space:nowrap;cursor:pointer;background:#06142a;border-radius:8px;margin-top:14px;padding:6px 14px;font-size:22px;font-weight:600;position:absolute;top:100%;left:0}.sm-plane.on .sm-tag{background:#0048e6}.sm-flat .sm-tag{display:none}.sm-parts{gap:2px;margin-top:14px;display:grid}.sm-prow{cursor:pointer;border-radius:6px;align-items:start;gap:4px;padding:5px 8px;font-size:12.5px;display:grid}.sm-prow:hover,.sm-prow.on{background:#fff}.sm-part{outline:1.5px dashed var(--rc);outline-offset:-1px;background:color-mix(in srgb, var(--rc) 6%, transparent);cursor:pointer;z-index:3;display:block;position:absolute}.sm-part:hover,.sm-part.on{background:color-mix(in srgb, var(--rc) 16%, transparent);outline-width:3px;outline-style:solid}.sm-ptag{background:var(--rc);color:#fff;white-space:nowrap;pointer-events:none;border-radius:4px;margin-bottom:3px;padding:2px 7px;font-size:12px;font-weight:600;position:absolute;bottom:100%;left:0}.sm-flat .sm-ptag{display:block}.sm-pdetail{border-left:4px solid var(--rc);background:#fff;border-radius:10px;margin-top:14px;padding:12px 14px}.sm-pdetail p{margin:8px 0 6px}.sm-pdetail a{color:#0048e6}.sm-text{background:color-mix(in srgb, var(--rc) 22%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--rc) 70%, transparent);pointer-events:none;z-index:4;border-radius:2px;display:block;position:absolute}.sm-text.on{background:color-mix(in srgb, var(--rc) 40%, transparent);box-shadow:inset 0 0 0 2px var(--rc)}.sm-region.sm-comp{outline-style:dotted}.sm-chip-comp{border-style:dashed}.sm-act-component{color:#7e22ce;background:#f3e8ff}.sm-act-content{color:#b45309;background:#fef3c7}.sm-rows{gap:48px;display:grid}.sm-marks button{align-items:center;gap:6px;display:inline-flex}.sm-marks button i{border-radius:3px;width:11px;height:11px}.sm-m-surf i{background:#0048e6}.sm-m-comp i{outline-offset:-1.5px;outline:1.5px dotted #7e22ce}.sm-m-text i{background:#d97706}.sm-seg.sm-marks button.on.sm-m-surf{background:#0048e6}.sm-seg.sm-marks button.on.sm-m-comp{background:#7e22ce}.sm-seg.sm-marks button.on.sm-m-comp i{outline-color:#fff}.sm-seg.sm-marks button.on.sm-m-text{background:#d97706}.sm-region.sm-mark-surf{outline-offset:-4px;box-shadow:inset 0 0 0 999px #0048e614;outline:4px solid #0048e6!important}.sm-region.sm-mark-comp{outline-offset:-3px;box-shadow:inset 0 0 0 999px #7e22ce1f;outline:3px dashed #7e22ce!important}.sm-cmark{outline-offset:-1px;pointer-events:none;z-index:3;background:#7e22ce1f;outline:2px dashed #7e22ce;display:block;position:absolute}.sm-pattern-dots{background-image:radial-gradient(#c7cad0 1px,#0000 1.2px)!important;background-size:10px 10px!important}.hs-bg{color:#0048e6;background:#dbeaff;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600}.hs-bg-none{color:#6f7687;background:#e6ecf5}.sm-rrow.hs-rrow{grid-template-columns:150px 110px minmax(0,1fr)}.sm-rrow.hs-rrow .sm-fill{flex-wrap:wrap}.sm-region.hs-crop{outline-width:1px;outline-style:solid;outline-color:color-mix(in srgb, var(--rc) 35%, transparent);pointer-events:none;background-repeat:no-repeat}.sm-region.hs-leaf{outline-offset:-1.5px;background-repeat:no-repeat;outline-width:1.5px}.sm-region.hs-mark-text{box-shadow:inset 0 0 0 999px #d9770647;outline:1.5px solid #d97706!important}.viewport.hand{cursor:grab}.viewport.panning,.viewport.panning *{cursor:grabbing!important}.zoom-tools .zoom-pct{font-variant-numeric:tabular-nums;background:0 0;min-width:52px}.zoom-tools .zoom-pct:hover{background:#4a4a4a}.sm-pname{overflow-wrap:anywhere;font-weight:600}.sm-pflow{flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;display:flex}.sm-detail .sm-fill{overflow-wrap:anywhere;flex-wrap:wrap;min-width:0}.sm-detail .bchip{overflow-wrap:anywhere;white-space:normal}.login{place-items:center;height:100vh;padding:16px;display:grid}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;gap:10px;width:min(320px,100%);padding:20px;display:grid}.login-card h1{margin:0;font-size:15px;font-weight:600}.login-card p{color:var(--muted);margin:0}.login-card input[type=password]{font:inherit;color:var(--text);background:var(--canvas);border:1px solid var(--border);border-radius:6px;padding:8px 10px}.login-card input[type=password]:focus{border-color:var(--accent);outline:none}.login-card button{cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:6px;padding:8px 10px;font-weight:600}.login-card button:disabled{opacity:.6;cursor:default}.login-error{color:#ff8a8a}.xp{z-index:50;--xp-ease:cubic-bezier(.22,.8,.24,1);--xp-dur:.75s;outline:0;position:fixed;inset:0}.xp-backdrop{background:#06142a8c;animation:.2s ease-out xp-fade;position:absolute;inset:0}.xp-panel{color:#06142a;animation:xp-rise .22s var(--xp-ease);background:#fff;border-radius:16px;grid-template-rows:auto minmax(0,1fr);display:grid;position:absolute;inset:20px;overflow:hidden;box-shadow:0 30px 80px #06142a66}@keyframes xp-fade{0%{opacity:0}}@keyframes xp-rise{0%{opacity:0;transform:translateY(8px)}}.xp-head{border-bottom:1px solid #dee8f6;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:10px 14px 10px 20px;display:grid}.xp-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;overflow:hidden}.xp-modes button{min-width:88px}.xp-close{width:34px;height:34px;font:inherit;color:#425579;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-self:end;font-size:22px;line-height:1}.xp-close:hover{background:#f1f3f7}.xp-body{grid-template-columns:clamp(220px,22vw,320px) minmax(0,1fr) clamp(250px,24vw,360px);min-height:0;display:grid}.xp-side{border-right:1px solid #dee8f6;flex-direction:column;gap:16px;min-width:0;min-height:0;padding:18px;display:flex;overflow:hidden}.xp-main{grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}.xp-stage{perspective:3600px;perspective-origin:50% 35%;touch-action:none;background:radial-gradient(at 50% 40%,#fff,#eef2f8 75%);position:relative;overflow:hidden}.xp-stage.xp-3d{cursor:grab}.xp-stage.xp-drag{cursor:grabbing}.xp-stage .sm-stack{transition:transform var(--xp-dur) var(--xp-ease);margin:-335px 0 0 -446px;top:50%;left:50%}.xp-stage.xp-drag .sm-stack{transition:none}.xp-stage .sm-plane{transition:transform var(--xp-dur) var(--xp-ease), opacity .2s, outline-color .3s, background-color .3s;background:#f1f3f740;outline:2px dashed #42557973}.xp-stage .sm-plane.on{outline:3px solid #0048e6}.xp-stage .sm-tag,.xp-stage .sm-rtag{transition:opacity .3s}.xp-flat .sm-plane{background-color:#0000;outline-color:#0000}.xp-flat .sm-plane:first-child{outline:1px solid #1e2a44}.xp-flat .sm-tag{opacity:0;pointer-events:none}.xp-flat .sm-rtag{opacity:0}.xp-flat .sm-region:hover .sm-rtag,.xp-flat .sm-region.on .sm-rtag{opacity:1}.xp-boot .xp-stage{visibility:hidden}.xp-boot .sm-stack,.xp-boot .sm-plane,.xp-boot .sm-tag{transition:none!important}.xp-hint{background:#ffffffe6;border-radius:8px;align-items:center;gap:10px;padding:4px 4px 4px 12px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #06142a1f}.xp-hint button{font:inherit;cursor:pointer;background:#fff;border:1px solid #dee8f6;border-radius:6px;padding:4px 10px;font-size:12px}.xp-dock{background:#fff;border-top:1px solid #dee8f6;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:10px 16px;display:flex}.xp-dock .sm-controls{flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.xp-dock .sm-seg{flex-wrap:wrap;max-width:100%}.xp-dock .sm-seg button{padding:6px 11px;font-size:12.5px}@media (prefers-reduced-motion:reduce){.xp{--xp-dur:0s}.xp-backdrop,.xp-panel{animation:none}}.world.moving{will-change:transform}.board{z-index:0}.world img{transition:opacity .18s ease-out}.world img:not(.ld){opacity:0}.board:after,.ds-block:after{content:"";z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .25s;position:absolute;inset:0}.board:after{background:linear-gradient(#f1f3f7 0 0) 56px 160px/calc(100% - 112px) calc(100% - 220px) no-repeat}.ds-block{z-index:0}.ds-block:after{background:repeating-linear-gradient(90deg,#f1f3f7 0 40px,#0000 40px 56px) 24px 56px/calc(100% - 48px) calc(100% - 80px) no-repeat}.lod-far .board:after,.lod-far .ds-block:after{opacity:1}.board>:not(.board-name):not(.board-head),.board-head p,.ds-block-desc{transition:opacity .25s,visibility}.lod-far .board>:not(.board-name):not(.board-head),.lod-far .board-head p,.lod-far .ds-block-desc{opacity:0;visibility:hidden;transition:opacity .25s,visibility 0s .25s}.ds-tile{transition:visibility}.lod-far .ds-tile{visibility:hidden;transition:visibility 0s .25s}@media (prefers-reduced-motion:reduce){.world img,.board:after,.ds-block:after,.board>*,.board-head p,.ds-block-desc,.ds-tile{transition:none}}.ds-nolabels .ds-tile-label,.no-names .frame-name{display:none}:is(.sm-info,.xp-info) .sm-rtable{gap:0}:is(.sm-info,.xp-info) .sm-rrow{border-top:1px solid #dee8f6;gap:4px 8px;padding:8px 0}:is(.sm-info,.xp-info) .sm-rrow:first-child{border-top:0}:is(.sm-info,.xp-info) .sm-rrow.hs-rrow{grid-template-columns:minmax(0,1fr) auto}:is(.sm-info,.xp-info) .sm-rrow.hs-rrow>:nth-child(3){grid-column:1/-1}:is(.sm-info,.xp-info) .sm-rrow:not(.hs-rrow){grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr)}:is(.sm-info,.xp-info) .sm-rrow:not(.hs-rrow)>:first-child{grid-column:1/-1;font-weight:600}:is(.sm-info,.xp-info) .sm-fill{overflow-wrap:normal;word-break:break-word}.sm-stats{color:#425579;flex-wrap:wrap;gap:6px 18px;font-size:13px;display:flex}.sm-stats b{color:#06142a;margin-right:4px}.sm-side .sm-controls{flex-wrap:wrap;align-items:center}.sm-side .sm-seg{flex-wrap:wrap;max-width:100%}.sm-side .sm-seg button{white-space:nowrap}.sm-build{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;display:grid!important}.sm-build>.lin-label{grid-column:1/-1}.sm-seg.sm-steps{flex-wrap:nowrap;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;min-width:0;display:grid}.sm-seg.sm-steps button{white-space:nowrap;justify-items:center;gap:1px;min-width:0;padding:6px 4px;display:grid}.sm-seg.sm-steps button b{font:600 12px var(--font-mono,ui-monospace, monospace)}.sm-seg.sm-steps button span{text-overflow:ellipsis;max-width:100%;font-size:11.5px;overflow:hidden}.sm-build .sm-play{align-self:stretch}.xp-dock .sm-build{flex:460px}
