@layer components{.sb-route{--sb-chrome:#eef2f7;--sb-surface:#ffffff;--sb-surface-2:#f7f9fc;--sb-surface-3:#eef3f9;--sb-canvas:#fbfcfe;--sb-line:#dde3eb;--sb-line-strong:#c7d1dd;--sb-ink:#172033;--sb-ink-2:#334155;--sb-muted:#5f6f86;--sb-faint:#8695aa;--sb-accent:#1e53a7;--sb-accent-strong:#112365;--sb-accent-hover:#0e1c4e;--sb-accent-soft:#eaf0fa;--sb-accent-soft-2:#dde7f7;--sb-accent-line:#b9cdee;--sb-focus:#3372c8;--sb-solid:#1e53a7;--sb-solid-fill:#c5d7f3;--sb-void:#b45309;--sb-void-soft:#fff7e8;--sb-void-line:#f1d39d;--sb-ok:#15803d;--sb-ok-soft:#ecf8f0;--sb-warn:#b45309;--sb-warn-ink:#875719;--sb-warn-soft:#fffbeb;--sb-warn-line:#e6d4ad;--sb-danger:#b91c1c;--sb-danger-soft:#fef2f2;--sb-danger-line:#f5c2c2;--sb-radius:4px;--sb-radius-sm:3px;--sb-radius-lg:6px;--sb-shadow-pop:0 12px 32px -12px rgb(15 23 42/0.28),0 2px 6px rgb(15 23 42/0.08);--sb-shadow-raised:0 1px 2px rgb(15 23 42/0.06);--sb-font:var(--font-sans);--sb-mono:var(--font-mono);--sb-fs-2xs:10px;--sb-fs-xs:11px;--sb-fs-sm:12px;--sb-fs:13px;--sb-fs-md:14px;--sb-h-titlebar:46px;--sb-h-ribbon:88px;--sb-h-viewbar:38px;--sb-h-status:28px;--sb-w-left:256px;--sb-w-right:348px;--sb-w-collapsed:34px;--sb-z-dock:10;--sb-z-sheet:30;--sb-z-menu:40;--sb-z-popover:50}.sb-route .sb-icon,.sb-route .sb-shape-icon{flex:none;display:block}.sb-route .sb-shape-icon path{fill:currentColor;fill-opacity:.16}.sb-route .sb-app :focus-visible,.sb-route .sb-page :focus-visible{outline:2px solid var(--sb-focus);outline-offset:1px}.sb-route .sb-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 11px;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius);background:var(--sb-surface);color:var(--sb-ink-2);font:600 var(--sb-fs-sm) /1 var(--sb-font);white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.sb-route .sb-btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--sb-surface-3);border-color:var(--sb-accent-line);color:var(--sb-ink)}.sb-route .sb-btn:disabled,.sb-route .sb-btn[aria-disabled=true]{cursor:not-allowed;opacity:.5}.sb-route .sb-btn--primary{background:var(--sb-accent-strong);border-color:var(--sb-accent-strong);color:#fff}.sb-route .sb-btn--primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--sb-accent-hover);border-color:var(--sb-accent-hover);color:#fff}.sb-route .sb-btn--accent{background:var(--sb-accent-soft);border-color:var(--sb-accent-line);color:var(--sb-accent-strong)}.sb-route .sb-btn--ghost{background:transparent;border-color:transparent}.sb-route .sb-btn--danger{color:var(--sb-danger);border-color:var(--sb-danger-line);background:var(--sb-surface)}.sb-route .sb-btn--danger:hover:not(:disabled){background:var(--sb-danger-soft);border-color:var(--sb-danger);color:var(--sb-danger)}.sb-route .sb-btn--sm{height:26px;padding:0 8px;font-size:var(--sb-fs-xs)}.sb-route .sb-btn--lg{height:36px;padding:0 16px;font-size:var(--sb-fs)}.sb-route .sb-btn--block{width:100%}.sb-route .sb-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink-2);cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.sb-route .sb-iconbtn:hover:not(:disabled){background:var(--sb-surface-3);border-color:var(--sb-line);color:var(--sb-ink)}.sb-route .sb-iconbtn.is-active,.sb-route .sb-iconbtn[aria-pressed=true]{background:var(--sb-accent-soft);border-color:var(--sb-accent-line);color:var(--sb-accent-strong)}.sb-route .sb-iconbtn:disabled{cursor:not-allowed;opacity:.4}.sb-route .sb-iconbtn--sm{width:26px;height:26px}.sb-route .sb-seg{display:inline-flex;align-items:stretch;padding:2px;gap:2px;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius);background:var(--sb-surface-2)}.sb-route .sb-seg>button{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:0 9px;border:0;border-radius:var(--sb-radius-sm);background:transparent;color:var(--sb-muted);font:600 var(--sb-fs-xs) /1 var(--sb-font);white-space:nowrap;cursor:pointer}.sb-route .sb-seg>button:hover:not(:disabled){color:var(--sb-ink)}.sb-route .sb-seg>button.is-active,.sb-route .sb-seg>button[aria-pressed=true],.sb-route .sb-seg>button[aria-selected=true]{background:var(--sb-surface);color:var(--sb-accent-strong);box-shadow:0 0 0 1px var(--sb-line-strong),var(--sb-shadow-raised)}.sb-route .sb-seg>button:disabled{cursor:not-allowed;opacity:.45}.sb-route .sb-field{display:grid;gap:4px;min-width:0}.sb-route .sb-field>span{color:var(--sb-muted);font:600 var(--sb-fs-xs) /1.25 var(--sb-font)}.sb-route .sb-field>span b{font-weight:600;color:var(--sb-faint)}.sb-route .sb-input,.sb-route .sb-select{width:100%;min-width:0;height:30px;padding:0 8px;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius);background:var(--sb-surface);color:var(--sb-ink);font:500 var(--sb-fs) /1 var(--sb-font);transition:border-color .15s,box-shadow .15s}.sb-route .sb-input[type=number]{font-family:var(--sb-mono);font-variant-numeric:tabular-nums;font-size:var(--sb-fs-sm)}.sb-route .sb-input:hover,.sb-route .sb-select:hover{border-color:var(--sb-accent-line)}.sb-route .sb-input:focus,.sb-route .sb-select:focus{border-color:var(--sb-focus);box-shadow:0 0 0 3px rgb(51 114 200/.16);outline:none}.sb-route .sb-select{padding-right:24px;cursor:pointer}.sb-route .sb-check{display:inline-flex;align-items:center;gap:6px;color:var(--sb-ink-2);font:600 var(--sb-fs-xs) /1 var(--sb-font);cursor:pointer;user-select:none}.sb-route .sb-check input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--sb-accent);cursor:pointer}.sb-route .sb-tabs{display:flex;align-items:stretch;gap:2px;min-height:36px;padding:0 6px;border-bottom:1px solid var(--sb-line);background:var(--sb-surface)}.sb-route .sb-tab{position:relative;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:0;background:none;color:var(--sb-muted);font:600 var(--sb-fs-sm) /1 var(--sb-font);white-space:nowrap;cursor:pointer}.sb-route .sb-tab:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;border-radius:2px 2px 0 0;background:transparent}.sb-route .sb-tab:hover{color:var(--sb-ink)}.sb-route .sb-tab[aria-selected=true]{color:var(--sb-accent-strong)}.sb-route .sb-tab[aria-selected=true]:after{background:var(--sb-accent)}.sb-route .sb-section{padding:12px 14px;border-bottom:1px solid var(--sb-line)}.sb-route .sb-section:last-child{border-bottom:0}.sb-route .sb-section__title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 9px;color:var(--sb-muted);font:700 var(--sb-fs-2xs) /1.2 var(--sb-font);letter-spacing:.07em;text-transform:uppercase}.sb-route .sb-section__note{margin:8px 0 0;color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.5 var(--sb-font)}.sb-route .sb-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}.sb-route .sb-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sb-route .sb-span-all{grid-column:1/-1}.sb-route .sb-badge{display:inline-flex;align-items:center;gap:4px;height:18px;padding:0 6px;border-radius:var(--sb-radius-sm);border:1px solid var(--sb-line);background:var(--sb-surface-2);color:var(--sb-muted);font:700 var(--sb-fs-2xs) /1 var(--sb-font);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.sb-route .sb-badge--solid{border-color:var(--sb-accent-line);background:var(--sb-accent-soft);color:var(--sb-accent-strong)}.sb-route .sb-badge--void{border-color:var(--sb-void-line);background:var(--sb-void-soft);color:var(--sb-warn-ink)}.sb-route .sb-badge--ok{border-color:#b7e2c4;background:var(--sb-ok-soft);color:var(--sb-ok)}.sb-route .sb-badge--warn{border-color:var(--sb-warn-line);background:var(--sb-warn-soft);color:var(--sb-warn-ink)}.sb-route .sb-menu{position:absolute;z-index:var(--sb-z-menu);min-width:248px;padding:6px;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius-lg);background:var(--sb-surface);box-shadow:var(--sb-shadow-pop)}.sb-route .sb-menu[hidden]{display:none}.sb-route .sb-menu__item{display:flex;align-items:center;gap:10px;width:100%;min-height:34px;padding:5px 9px;border:0;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink);font:600 var(--sb-fs) /1.2 var(--sb-font);text-align:left;text-decoration:none;cursor:pointer}.sb-route .sb-menu__item:focus-visible,.sb-route .sb-menu__item:hover{background:var(--sb-accent-soft);color:var(--sb-accent-strong)}.sb-route .sb-menu__item:disabled{cursor:not-allowed;opacity:.45}.sb-route .sb-menu__item>.sb-icon{color:var(--sb-muted)}.sb-route .sb-menu__item:hover>.sb-icon{color:var(--sb-accent)}.sb-route .sb-menu__text{display:grid;gap:2px;min-width:0;flex:1}.sb-route .sb-menu__text small{color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.3 var(--sb-font)}.sb-route .sb-menu__divider{height:1px;margin:5px 4px;background:var(--sb-line)}.sb-route .sb-menu__heading{margin:4px 9px 6px;color:var(--sb-muted);font:700 var(--sb-fs-2xs) /1.2 var(--sb-font);letter-spacing:.07em;text-transform:uppercase}.sb-route .sb-kbd{display:inline-flex;align-items:center;min-width:18px;height:18px;padding:0 4px;border:solid var(--sb-line-strong);border-width:1px 1px 2px;border-radius:var(--sb-radius-sm);background:var(--sb-surface);color:var(--sb-muted);font:600 var(--sb-fs-2xs) /1 var(--sb-mono)}.sb-route .sb-note{display:flex;gap:8px;padding:9px 10px;border:1px solid var(--sb-line);border-radius:var(--sb-radius);background:var(--sb-surface-2);color:var(--sb-ink-2);font:400 var(--sb-fs-xs) /1.5 var(--sb-font)}.sb-route .sb-note>.sb-icon{margin-top:1px;color:var(--sb-muted)}.sb-route .sb-note--warn{border-color:var(--sb-warn-line);background:var(--sb-warn-soft);color:var(--sb-warn-ink)}.sb-route .sb-note--warn>.sb-icon{color:var(--sb-warn)}.sb-route .sb-note--error{border-color:var(--sb-danger-line);background:var(--sb-danger-soft);color:var(--sb-danger)}.sb-route .sb-note--error>.sb-icon{color:var(--sb-danger)}.sb-route .sb-note--ok{border-color:#b7e2c4;background:var(--sb-ok-soft);color:#14532d}.sb-route .sb-note--ok>.sb-icon{color:var(--sb-ok)}.sb-route .sb-note--info{border-color:var(--sb-accent-line);background:var(--sb-accent-soft);color:var(--sb-accent-strong)}.sb-route .sb-note--info>.sb-icon{color:var(--sb-accent)}.sb-route .sb-empty{display:grid;justify-items:center;gap:6px;padding:22px 16px;text-align:center;color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.5 var(--sb-font)}.sb-route .sb-empty>.sb-icon{width:36px;height:36px;padding:8px;border:1px dashed var(--sb-accent-line);border-radius:var(--sb-radius-lg);background:var(--sb-accent-soft);color:var(--sb-accent)}.sb-route .sb-empty strong{color:var(--sb-ink);font:700 var(--sb-fs) /1.3 var(--sb-font)}.sb-route .sb-empty p{max-width:260px;margin:0}.sb-route .sb-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--sb-line-strong) transparent}.sb-route .sb-dock{position:relative;z-index:var(--sb-z-dock);display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--sb-surface);color:var(--sb-ink);font:400 var(--sb-fs) /1.4 var(--sb-font)}.sb-route .sb-dock--left{border-right:1px solid var(--sb-line-strong)}.sb-route .sb-dock--right{border-left:1px solid var(--sb-line-strong)}.sb-route .sb-dock__header{display:flex;flex:none;align-items:center;gap:8px;min-height:38px;padding:0 6px 0 12px;border-bottom:1px solid var(--sb-line)}.sb-route .sb-dock__title{margin:0;color:var(--sb-ink);font:700 var(--sb-fs-sm) /1 var(--sb-font);letter-spacing:.01em}.sb-route .sb-dock__count{min-width:20px;height:18px;padding:0 6px;border-radius:999px;background:var(--sb-accent-soft-2);color:var(--sb-accent-strong);font:700 var(--sb-fs-2xs) /18px var(--sb-mono);text-align:center}.sb-route .sb-dock__spacer{flex:1}.sb-route .sb-dock__body{flex:1;min-height:0}.sb-route .sb-dock__footer{flex:none;padding:7px 12px;border-top:1px solid var(--sb-line);background:var(--sb-surface-2);color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.4 var(--sb-font)}.sb-route .sb-dock__strip{gap:4px}.sb-route .sb-dock__strip,.sb-route .sb-dock__strip-button{display:flex;flex-direction:column;align-items:center;padding:6px 0}.sb-route .sb-dock__strip-button{gap:6px;width:28px;border:1px solid transparent;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink-2);cursor:pointer}.sb-route .sb-dock__strip-button:hover{background:var(--sb-surface-3);border-color:var(--sb-line)}.sb-route .sb-dock__strip-button[aria-pressed=true]{background:var(--sb-accent-soft);border-color:var(--sb-accent-line);color:var(--sb-accent-strong)}.sb-route .sb-dock__strip-label{writing-mode:vertical-rl;transform:rotate(180deg);font:700 var(--sb-fs-2xs) /1 var(--sb-font);letter-spacing:.08em;text-transform:uppercase}.sb-route .sb-spinner{display:none;width:14px;height:14px;border:2px solid;border-right:2px solid transparent;border-radius:999px;animation:sb-spin .7s linear infinite}.sb-route [aria-busy=true]>.sb-spinner{display:inline-block}@keyframes sb-spin{to{transform:rotate(1turn)}}.sb-route .sb-num{font-family:var(--sb-mono);font-variant-numeric:tabular-nums}.sb-route .sb-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){.sb-route .sb-app *,.sb-route .sb-page *{transition-duration:.01ms!important;animation-duration:.01ms!important}}}@layer components{.sb-route .sb-app [hidden],.sb-route .sb-page [hidden]{display:none!important}.sb-route .sb-workspace-host{position:relative;border-top:1px solid var(--sb-line-strong);border-bottom:1px solid var(--sb-line-strong);background:var(--sb-chrome)}.sb-route .sb-app{position:relative;display:flex;flex-direction:column;width:100%;min-width:0;height:var(--sb-app-h,calc(100dvh - 140px));min-height:560px;overflow:hidden;background:var(--sb-chrome);color:var(--sb-ink);font:400 var(--sb-fs) /1.4 var(--sb-font)}.sb-route .sb-app>*{flex:none;min-width:0}.sb-route .sb-app>.sb-body{flex:1 1 auto;min-height:0}.sb-route.csp-section-focus{overflow:hidden;overscroll-behavior:none}.sb-route.csp-section-focus .sb-app.is-focus-mode{position:fixed;inset:0;z-index:500;height:100dvh;min-height:0}.sb-route .sb-body{--sb-col-left:var(--sb-w-left);--sb-col-right:var(--sb-w-right);position:relative;display:grid;grid-template-columns:var(--sb-col-left) minmax(0,1fr) var(--sb-col-right);grid-template-rows:minmax(0,1fr);background:var(--sb-surface)}.sb-route .sb-app.is-left-collapsed .sb-body{--sb-col-left:var(--sb-w-collapsed)}.sb-route .sb-app.is-right-collapsed .sb-body{--sb-col-right:var(--sb-w-collapsed)}.sb-route .sb-app.is-right-wide .sb-body{--sb-col-right:clamp(var(--sb-w-right),40vw,760px)}.sb-route .sb-body>.sb-dock{grid-row:1;min-height:0;overflow:hidden}.sb-route .sb-body>.sb-dock--left{grid-column:1}.sb-route .sb-body>.sb-stage{grid-column:2;grid-row:1}.sb-route .sb-body>.sb-dock--right{grid-column:3}@media (max-width:1380px){.sb-route .sb-app{--sb-w-left:232px;--sb-w-right:316px}}@media (max-width:1100px){.sb-route .sb-app{--sb-w-right:300px}.sb-route .sb-app.is-right-wide .sb-body{--sb-col-right:clamp(var(--sb-w-right),42vw,420px)}}.sb-route .sb-stage{container:sb-stage/inline-size;position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;background:var(--sb-canvas)}.sb-route .sb-stage>.sb-canvas-wrap{min-height:0}.sb-route .sb-errorbar{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;border-top:1px solid var(--sb-danger-line);background:var(--sb-danger-soft);color:var(--sb-danger);font:600 var(--sb-fs-sm) /1.45 var(--sb-font)}.sb-route .sb-errorbar>.sb-icon{margin-top:2px}.sb-route .sb-viewbar{position:relative;z-index:calc(var(--sb-z-dock) + 1);display:flex;align-items:center;gap:10px;height:var(--sb-h-viewbar);padding:0 6px 0 8px;border-bottom:1px solid var(--sb-line);background:var(--sb-surface)}.sb-route .sb-viewbar__switch{flex:none}.sb-route .sb-viewbar__switch>button{min-height:24px}.sb-route .sb-viewbar__analysis{display:flex;flex:1 1 auto;align-items:center;gap:10px;min-width:min-content;white-space:nowrap}.sb-route .sb-viewbar__status{display:inline-flex;flex:none;align-items:center;gap:6px;color:var(--sb-ink-2);font:700 var(--sb-fs-2xs) /1 var(--sb-font);letter-spacing:.06em;text-transform:uppercase}.sb-route .sb-viewbar__detail{flex:1 1 0;width:0;min-width:0;overflow:hidden;color:var(--sb-muted);font:500 var(--sb-fs-xs) /1 var(--sb-font);font-variant-numeric:tabular-nums;text-overflow:ellipsis}.sb-route .sb-viewbar__mesh{flex:none;height:24px;padding:0 8px;border:1px solid var(--sb-line);border-radius:var(--sb-radius);background:var(--sb-surface-2)}.sb-route .sb-viewbar__mesh.is-disabled{cursor:not-allowed;opacity:.55}.sb-route .sb-viewbar__summary{display:flex;flex:1 1 auto;align-items:center;gap:8px;min-width:0;margin:0;overflow:hidden;color:var(--sb-muted);font:500 var(--sb-fs-sm) /1 var(--sb-font);white-space:nowrap}.sb-route .sb-viewbar__summary>span{flex:none}.sb-route .sb-viewbar__summary>span:last-child{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.sb-route .sb-viewbar__summary b{color:var(--sb-ink);font-weight:600}.sb-route .sb-viewbar__summary.is-pending b{color:var(--sb-faint)}.sb-route .sb-viewbar__unit{color:var(--sb-muted);font:500 var(--sb-fs-xs) /1 var(--sb-font)}.sb-route .sb-viewbar__unit sup{font-size:.75em}.sb-route .sb-viewbar__dot{color:var(--sb-faint)}.sb-route .sb-viewbar__tag{display:inline-flex;align-items:center;gap:4px;height:18px;padding:0 6px;border:1px solid var(--sb-line);border-radius:var(--sb-radius-sm);background:var(--sb-surface-2);color:var(--sb-muted);font:700 var(--sb-fs-2xs) /1 var(--sb-font);letter-spacing:.05em;text-transform:uppercase}.sb-route .sb-viewbar__tag.is-drawing{border-color:var(--sb-accent-line);background:var(--sb-surface);color:var(--sb-accent-strong)}.sb-route .sb-viewbar__tag.is-calculated{border-color:var(--sb-accent-line);background:var(--sb-accent-soft);color:var(--sb-accent-strong)}.sb-route .sb-viewbar__tools{display:flex;flex:none;align-items:center;gap:2px;margin-left:auto}.sb-route .sb-viewbar__sep{width:1px;height:18px;margin:0 4px;background:var(--sb-line)}.sb-route .sb-viewbar__zoom{min-width:46px;color:var(--sb-ink-2);font:600 var(--sb-fs-xs) /1 var(--sb-mono);font-variant-numeric:tabular-nums;text-align:center}.sb-route .sb-viewbar__focus.is-on,.sb-route .sb-viewbar__menu-toggle.is-open{background:var(--sb-accent-soft);border-color:var(--sb-accent-line);color:var(--sb-accent-strong)}.sb-route .sb-viewbar__chevron{color:var(--sb-muted)}@container sb-stage (max-width: 720px){.sb-route .sb-viewbar__label,.sb-route .sb-viewbar__status-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sb-route .sb-viewbar__chevron{display:none}.sb-route .sb-viewbar{gap:8px}}.sb-route .sb-display-wrap,.sb-route .sb-focus-wrap{position:relative}.sb-route .sb-display-menu{top:calc(100% + 4px);right:0;min-width:248px}.sb-route .sb-display-menu__box{display:inline-flex;flex:none;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius-sm);background:var(--sb-surface);color:#fff}.sb-route .sb-display-menu__item[aria-checked=true] .sb-display-menu__box{border-color:var(--sb-accent);background:var(--sb-accent)}.sb-route .sb-focus-wrap{display:flex;align-items:center;gap:4px}.sb-route .sb-focus-hint{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 2px 0 8px;border:1px solid var(--sb-accent-line);border-radius:999px;background:var(--sb-accent-soft);color:var(--sb-accent-strong);font:500 var(--sb-fs-xs) /1 var(--sb-font);white-space:nowrap}.sb-route .sb-focus-hint strong{font-weight:700}.sb-route .sb-focus-hint__close.sb-iconbtn{width:20px;height:20px;border-radius:999px}@container sb-stage (max-width: 1100px){.sb-route .sb-focus-hint strong{display:none}.sb-route .sb-viewbar__status-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}.sb-route .sb-start{position:absolute;inset:0;z-index:3;display:flex;padding:16px;overflow:auto;pointer-events:none}.sb-route .sb-start__card{display:grid;gap:14px;width:min(100%,580px);margin:auto;padding:20px;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius-lg);background:var(--sb-surface);box-shadow:var(--sb-shadow-pop);pointer-events:auto}.sb-route .sb-start__head{display:grid;gap:4px}.sb-route .sb-start__eyebrow{margin:0;color:var(--sb-accent);font:700 var(--sb-fs-2xs) /1.2 var(--sb-font);letter-spacing:.08em;text-transform:uppercase}.sb-route .sb-start__title{margin:0;color:var(--sb-ink);font:700 18px/1.25 var(--sb-font);letter-spacing:-.01em}.sb-route .sb-start__lead{margin:0;color:var(--sb-muted);font:400 var(--sb-fs) /1.45 var(--sb-font)}.sb-route .sb-start__choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sb-route .sb-start__choice{display:grid;align-content:start;gap:10px;min-height:116px;padding:12px;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius-lg);background:var(--sb-surface);color:var(--sb-ink);text-align:left;cursor:pointer;transition:background-color .15s,border-color .15s}.sb-route .sb-start__choice:hover{border-color:var(--sb-accent);background:var(--sb-accent-soft)}.sb-route .sb-start__choice-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--sb-radius);background:var(--sb-accent-soft);color:var(--sb-accent)}.sb-route .sb-start__choice:hover .sb-start__choice-icon{background:var(--sb-surface)}.sb-route .sb-start__choice-text{display:grid;gap:3px}.sb-route .sb-start__choice-text strong{font:700 var(--sb-fs) /1.25 var(--sb-font)}.sb-route .sb-start__choice-text small{color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.4 var(--sb-font)}.sb-route .sb-start__row{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--sb-line)}.sb-route .sb-start__label{color:var(--sb-muted);font:700 var(--sb-fs-2xs) /1.2 var(--sb-font);letter-spacing:.07em;text-transform:uppercase}.sb-route .sb-start__shapes,.sb-route .sb-start__templates{display:flex;flex-wrap:wrap;gap:2px 4px}.sb-route .sb-start__shape{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:54px;height:50px;padding:0;border:1px solid transparent;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink-2);font:600 var(--sb-fs-2xs) /1 var(--sb-font);cursor:pointer}.sb-route .sb-start__shape .sb-shape-icon{color:var(--sb-accent)}.sb-route .sb-start__shape:hover{border-color:var(--sb-line);background:var(--sb-surface-3);color:var(--sb-ink)}.sb-route .sb-start__template .sb-shape-icon{color:var(--sb-accent)}.sb-route .sb-start__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--sb-line)}.sb-route .sb-start__open{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 6px;margin-left:-6px;border:0;border-radius:var(--sb-radius);background:transparent;color:var(--sb-accent);font:600 var(--sb-fs-sm) /1 var(--sb-font);cursor:pointer}.sb-route .sb-start__open:hover{background:var(--sb-accent-soft);color:var(--sb-accent-strong)}.sb-route .sb-start__note{color:var(--sb-faint);font:400 var(--sb-fs-xs) /1.4 var(--sb-font)}@media (max-height:820px){.sb-route .sb-start__card{gap:10px;padding:14px 16px}.sb-route .sb-start__lead{display:none}.sb-route .sb-start__choice{grid-template-columns:auto minmax(0,1fr);align-items:center;min-height:0;gap:8px;padding:10px}.sb-route .sb-start__choice-icon{width:30px;height:30px}.sb-route .sb-start__foot,.sb-route .sb-start__row{padding-top:8px}}.sb-route .sb-statusbar{position:relative;z-index:var(--sb-z-popover);display:flex;align-items:center;justify-content:space-between;gap:12px;height:var(--sb-h-status);padding:0 6px 0 10px;border-top:1px solid var(--sb-line-strong);background:var(--sb-surface-2);color:var(--sb-muted);font:500 var(--sb-fs-xs) /1 var(--sb-font);white-space:nowrap}.sb-route .sb-statusbar__main,.sb-route .sb-statusbar__side{display:flex;align-items:center;gap:8px;min-width:0}.sb-route .sb-statusbar__main{flex:1 1 auto}.sb-route .sb-statusbar__side{flex:none}.sb-route .sb-dot{flex:none;width:7px;height:7px;border-radius:999px;background:var(--sb-accent)}.sb-route .sb-dot--ok{background:var(--sb-ok)}.sb-route .sb-statusbar__tool{min-width:0;overflow:hidden;color:var(--sb-ink-2);text-overflow:ellipsis}.sb-route .sb-statusbar__count{flex:none;height:18px;padding:0 6px;border-radius:var(--sb-radius-sm);background:var(--sb-accent-soft-2);color:var(--sb-accent-strong);font:700 var(--sb-fs-2xs) /18px var(--sb-font)}.sb-route .sb-statusbar__coords{min-width:25ch;color:var(--sb-ink-2);font:500 var(--sb-fs-xs) /1 var(--sb-mono);font-variant-numeric:tabular-nums;text-align:right}.sb-route .sb-statusbar__sep{flex:none;width:1px;height:14px;background:var(--sb-line-strong)}.sb-route .sb-statusbar__snap{font-size:var(--sb-fs-xs)}.sb-route .sb-statusbar__step.sb-input{width:64px;height:20px;padding:0 4px;font-size:var(--sb-fs-xs);text-align:right}.sb-route .sb-statusbar__unit,.sb-route .sb-statusbar__units b{color:var(--sb-ink-2);font-family:var(--sb-mono);font-weight:600}.sb-route .sb-statusbar__button{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 6px;border:1px solid transparent;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink-2);font:600 var(--sb-fs-xs) /1 var(--sb-font);cursor:pointer}.sb-route .sb-statusbar__button.is-open,.sb-route .sb-statusbar__button:hover{border-color:var(--sb-line);background:var(--sb-surface);color:var(--sb-ink)}.sb-route .sb-shortcuts-wrap{position:relative}.sb-route .sb-shortcuts{position:absolute;right:0;bottom:calc(100% + 6px);z-index:var(--sb-z-popover);width:380px;max-width:calc(100vw - 24px);max-height:calc(var(--sb-app-h, 100dvh) - 140px);padding:12px 14px;overflow:auto;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius-lg);background:var(--sb-surface);box-shadow:var(--sb-shadow-pop);color:var(--sb-ink-2);white-space:normal}.sb-route .sb-shortcuts__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-4px -6px 8px 0}.sb-route .sb-shortcuts__title{margin:0;color:var(--sb-ink);font:700 var(--sb-fs) /1.2 var(--sb-font)}.sb-route .sb-shortcuts__subtitle{margin:12px 0 6px;color:var(--sb-muted);font:700 var(--sb-fs-2xs) /1.2 var(--sb-font);letter-spacing:.07em;text-transform:uppercase}.sb-route .sb-shortcuts__list{display:grid;margin:0}.sb-route .sb-shortcuts__row{display:grid;grid-template-columns:184px minmax(0,1fr);align-items:center;gap:10px;min-height:26px;border-bottom:1px solid var(--sb-surface-3)}.sb-route .sb-shortcuts__row:last-child{border-bottom:0}.sb-route .sb-shortcuts__row dt{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.sb-route .sb-shortcuts__row dd{margin:0;font:500 var(--sb-fs-xs) /1.35 var(--sb-font)}.sb-route .sb-shortcuts__key,.sb-route .sb-shortcuts__keys{display:inline-flex;align-items:center;gap:3px}.sb-route .sb-shortcuts__or,.sb-route .sb-shortcuts__plus{color:var(--sb-faint);font:500 var(--sb-fs-2xs) /1 var(--sb-font)}.sb-route .sb-shortcuts__or{margin:0 2px}.sb-route .sb-shortcuts__note{margin:10px 0 0;color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.4 var(--sb-font)}.sb-route .sb-actions{display:grid;gap:8px}.sb-route .sb-actions__button{min-width:0;text-decoration:none}.sb-route .sb-actions__button>span:not(.sb-spinner){overflow:hidden;text-overflow:ellipsis}.sb-route .sb-actions__message,.sb-route .sb-actions__note{margin:0;color:var(--sb-muted);font:500 var(--sb-fs-xs) /1.45 var(--sb-font)}.sb-route .sb-actions__message.is-success{color:var(--sb-ok)}.sb-route .sb-actions__message.is-warning{color:var(--sb-warn-ink)}.sb-route .sb-actions__message.is-error{color:var(--sb-danger)}.sb-route .sb-mobilebar{display:none}@media (max-width:760px){.sb-route .sb-app{min-height:520px}.sb-route .sb-body{grid-template-columns:minmax(0,1fr)}.sb-route .sb-body>.sb-stage{grid-column:1}.sb-route .sb-body>.sb-dock{position:absolute;left:0;right:0;bottom:0;z-index:var(--sb-z-sheet);height:min(85%,75dvh);border:0;border-top:1px solid var(--sb-line-strong);border-radius:10px 10px 0 0;box-shadow:0 -12px 32px -12px rgb(15 23 42/.3);transform:translateY(105%);visibility:hidden;transition:transform .2s ease,visibility 0s linear .2s}.sb-route .sb-app[data-sheet=inspector] .sb-body>.sb-dock--right,.sb-route .sb-app[data-sheet=model] .sb-body>.sb-dock--left{transform:none;visibility:visible;transition:transform .2s ease}.sb-route .sb-viewbar{gap:6px;padding:0 4px}.sb-route .sb-focus-hint,.sb-route .sb-shortcuts-wrap,.sb-route .sb-viewbar__detail,.sb-route .sb-viewbar__dot,.sb-route .sb-viewbar__sep,.sb-route .sb-viewbar__status,.sb-route .sb-viewbar__summary>span:nth-last-child(-n+2):not(:first-child){display:none}.sb-route .sb-viewbar__summary>span:nth-child(2){flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.sb-route .sb-viewbar__zoom{min-width:38px}.sb-route .sb-start{padding:10px}.sb-route .sb-start__card{margin-top:0;gap:12px;padding:14px}.sb-route .sb-start__choices{grid-template-columns:minmax(0,1fr)}.sb-route .sb-start__choice{grid-template-columns:auto minmax(0,1fr);align-items:center;min-height:0}.sb-route .sb-start__row{grid-template-columns:minmax(0,1fr)}.sb-route .sb-statusbar__button-label,.sb-route .sb-statusbar__coords,.sb-route .sb-statusbar__coords-sep,.sb-route .sb-statusbar__units,.sb-route .sb-statusbar__units+.sb-statusbar__sep{display:none}.sb-route .sb-mobilebar{position:relative;z-index:calc(var(--sb-z-sheet) + 1);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:48px;border-top:1px solid var(--sb-line-strong);background:var(--sb-surface)}.sb-route .sb-mobilebar__button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:var(--sb-muted);font:600 var(--sb-fs-2xs) /1 var(--sb-font);cursor:pointer}.sb-route .sb-mobilebar__button[aria-pressed=true]{background:var(--sb-accent-soft);color:var(--sb-accent-strong)}.sb-route .sb-mobilebar__button[aria-pressed=true]:before{content:"";position:absolute;top:0;left:20%;right:20%;height:2px;background:var(--sb-accent)}.sb-route .sb-mobilebar__count{position:absolute;top:5px;left:calc(50% + 8px);min-width:16px;height:14px;padding:0 4px;border-radius:999px;background:var(--sb-accent-soft-2);color:var(--sb-accent-strong);font:700 9px/14px var(--sb-mono);text-align:center}.sb-route .sb-mobilebar__done{position:absolute;top:5px;left:calc(50% + 8px);color:var(--sb-accent)}}}@layer components{.sb-route .sb-ribbon,.sb-route .sb-ribbon *,.sb-route .sb-titlebar,.sb-route .sb-titlebar *{box-sizing:border-box}.sb-route .sb-titlebar{position:relative;display:flex;align-items:center;gap:6px;min-width:0;height:var(--sb-h-titlebar);padding:0 12px;border-bottom:1px solid var(--sb-line);background:var(--sb-surface);color:var(--sb-ink);font:400 var(--sb-fs) /1.3 var(--sb-font)}.sb-route .sb-titlebar.is-menu-open{z-index:var(--sb-z-menu)}.sb-route .sb-brand{display:flex;flex:none;align-items:center;gap:8px;margin-right:6px;user-select:none}.sb-route .sb-brand__mark{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--sb-radius);background:var(--sb-accent-strong);color:#fff}.sb-route .sb-brand__mark .sb-shape-icon path{fill-opacity:.35}.sb-route .sb-brand__name{color:var(--sb-ink);font:700 var(--sb-fs) /1 var(--sb-font);letter-spacing:-.005em;white-space:nowrap}.sb-route .sb-titlebar__sep{flex:none;width:1px;height:22px;margin:0 4px;background:var(--sb-line)}.sb-route .sb-file-menu-wrap{position:relative;flex:none}.sb-route .sb-tbtn{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 6px 0 10px;border:1px solid transparent;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink-2);font:600 var(--sb-fs) /1 var(--sb-font);white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.sb-route .sb-tbtn:hover{background:var(--sb-surface-3);border-color:var(--sb-line);color:var(--sb-ink)}.sb-route .sb-tbtn[aria-expanded=true]{background:var(--sb-accent-soft);border-color:var(--sb-accent-line);color:var(--sb-accent-strong)}.sb-route .sb-tbtn__chevron{color:var(--sb-faint);transition:transform .15s}.sb-route .sb-tbtn[aria-expanded=true] .sb-tbtn__chevron{color:currentColor;transform:rotate(180deg)}.sb-route .sb-file-menu{top:calc(100% + 6px);left:0;width:300px;max-width:calc(100vw - 24px)}.sb-route .sb-menu__item>.sb-kbd,.sb-route .sb-menu__trail{flex:none;margin-left:auto}.sb-route .sb-menu__trail{color:var(--sb-faint)}.sb-route .sb-menu__item:focus-visible{outline-offset:-2px}.sb-route .sb-menu__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-route .sb-quick{display:flex;flex:none;align-items:center;gap:2px}.sb-route .sb-quicksave{padding:0 8px;color:var(--sb-ink-2)}.sb-route .sb-quicksave:hover:not(:disabled){border-color:var(--sb-line)}.sb-route .sb-quicksave>.sb-icon{color:var(--sb-muted)}.sb-route .sb-quicksave:hover:not(:disabled)>.sb-icon{color:var(--sb-accent)}.sb-route .sb-plan{display:inline-flex;align-items:center;margin-left:-2px}.sb-route .sb-quick .sb-iconbtn:hover:not(:disabled){border-color:var(--sb-line)}.sb-route .sb-identity{display:flex;flex:1 1 auto;align-items:center;gap:10px;min-width:0}.sb-route .sb-name{flex:0 1 auto;width:auto;min-width:64px;max-width:100%;height:30px;padding:0 7px;border:1px solid transparent;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink);font:600 var(--sb-fs-md) /1 var(--sb-font);text-overflow:ellipsis;transition:border-color .15s,background-color .15s,box-shadow .15s}.sb-route .sb-name:hover{border-color:var(--sb-line-strong);background:var(--sb-surface)}.sb-route .sb-name:focus,.sb-route .sb-name:focus-visible{border-color:var(--sb-focus);background:var(--sb-surface);box-shadow:0 0 0 3px rgb(51 114 200/.16);outline:none}.sb-route .sb-savestate{display:inline-flex;flex:0 1 auto;align-items:center;gap:6px;min-width:0;color:var(--sb-muted);font:500 var(--sb-fs-xs) /1 var(--sb-font);white-space:nowrap}.sb-route .sb-savestate__dot{flex:none;width:7px;height:7px;border-radius:999px;background:var(--sb-faint)}.sb-route .sb-savestate.is-dirty .sb-savestate__dot{background:var(--sb-warn)}.sb-route .sb-savestate.is-saved .sb-savestate__dot{background:var(--sb-ok)}.sb-route .sb-savestate__label{overflow:hidden;text-overflow:ellipsis}.sb-route .sb-titlebar__end{display:flex;flex:none;align-items:center;gap:10px;margin-left:auto}.sb-route .sb-units>button{gap:6px}.sb-route .sb-units__short{color:var(--sb-faint);font:600 var(--sb-fs-2xs) /1 var(--sb-mono)}.sb-route .sb-units>button[aria-pressed=true] .sb-units__short{color:var(--sb-accent)}.sb-route .sb-calc{min-width:138px}.sb-route .sb-calc__content{display:inline-flex;align-items:center;gap:7px}.sb-route .sb-calc[aria-busy=true] .sb-spinner{display:inline-block}.sb-route .sb-calc[aria-busy=true] .sb-calc__icon{display:none}.sb-route .sb-calc[aria-busy=true]:disabled{opacity:.85;cursor:progress}.sb-route .sb-ribbon{position:relative;min-width:0;border-bottom:1px solid var(--sb-line);background:var(--sb-surface);color:var(--sb-ink-2);font:400 var(--sb-fs-sm) /1.2 var(--sb-font)}.sb-route .sb-ribbon.is-menu-open{z-index:var(--sb-z-menu)}.sb-route .sb-ribbon__track{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}.sb-route .sb-ribbon__track::-webkit-scrollbar{display:none}.sb-route .sb-ribbon__groups{display:flex;align-items:stretch;width:max-content;min-width:100%;padding:4px 6px 0}.sb-route .sb-rgroup{display:flex;flex:none;flex-direction:column;padding:0 4px}.sb-route .sb-rgroup__body{display:flex;align-items:stretch;gap:2px;height:60px}.sb-route .sb-rgroup__label{display:block;height:20px;margin-top:3px;color:var(--sb-faint);font:700 var(--sb-fs-2xs) /20px var(--sb-font);letter-spacing:.07em;text-align:center;text-transform:uppercase;white-space:nowrap;user-select:none}.sb-route .sb-rsep{flex:none;width:1px;margin:4px 4px 6px;background:var(--sb-line)}.sb-route .sb-rcol{display:flex;flex-direction:column;gap:4px}.sb-route .sb-rbtn,.sb-route .sb-rsm,.sb-route .sb-rtile{border:1px solid transparent;border-radius:var(--sb-radius);background:transparent;color:var(--sb-ink-2);font-family:var(--sb-font);cursor:pointer;transition:background-color .12s,border-color .12s,color .12s}.sb-route .sb-rbtn:hover:not(:disabled),.sb-route .sb-rsm:hover:not(:disabled),.sb-route .sb-rtile:hover:not(:disabled){background:var(--sb-surface-3);border-color:var(--sb-line);color:var(--sb-ink)}.sb-route .sb-rbtn.is-active,.sb-route .sb-rbtn:active:not(:disabled),.sb-route .sb-rbtn[aria-expanded=true],.sb-route .sb-rbtn[aria-pressed=true],.sb-route .sb-rsm.is-active,.sb-route .sb-rsm:active:not(:disabled),.sb-route .sb-rsm[aria-pressed=true],.sb-route .sb-rtile.is-active,.sb-route .sb-rtile:active:not(:disabled),.sb-route .sb-rtile[aria-pressed=true]{background:var(--sb-accent-soft);border-color:var(--sb-accent-line);color:var(--sb-accent-strong)}.sb-route .sb-rbtn:disabled,.sb-route .sb-rsm:disabled,.sb-route .sb-rtile:disabled{opacity:.62;cursor:not-allowed}.sb-route .sb-rsm[aria-pressed=true]:disabled{opacity:1;cursor:default}.sb-route .sb-rbtn:focus-visible,.sb-route .sb-rsm:focus-visible,.sb-route .sb-rtile:focus-visible{outline-offset:-2px}.sb-route .sb-rbtn{display:inline-flex;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:58px;max-width:84px;height:60px;padding:3px 6px;font-size:var(--sb-fs-xs);font-weight:600;line-height:1.1;text-align:center}.sb-route .sb-rbtn>.sb-icon{color:var(--sb-ink-2)}.sb-route .sb-rbtn.is-active>.sb-icon,.sb-route .sb-rbtn>.sb-shape-icon,.sb-route .sb-rbtn[aria-expanded=true]>.sb-icon{color:var(--sb-accent)}.sb-route .sb-rbtn__label{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.sb-route .sb-rbtn--menu{display:inline-grid;grid-template-columns:auto auto;align-content:center;justify-content:center;align-items:center;column-gap:2px;row-gap:3px}.sb-route .sb-rbtn--menu>.sb-icon:first-child{grid-column:1/-1;justify-self:center}.sb-route .sb-rbtn__chevron{color:var(--sb-faint)}.sb-route .sb-rtile{display:inline-flex;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:54px;height:60px;padding:6px 4px 5px;font-size:var(--sb-fs-xs);font-weight:600;line-height:1}.sb-route .sb-rtile>.sb-shape-icon{color:var(--sb-accent)}.sb-route .sb-rsm,.sb-route .sb-rtile__label{white-space:nowrap}.sb-route .sb-rsm{display:inline-flex;flex:none;align-items:center;gap:6px;height:28px;padding:0 9px 0 6px;font-size:var(--sb-fs-sm);font-weight:600;line-height:1}.sb-route .sb-rsm>.sb-icon{color:var(--sb-muted)}.sb-route .sb-rsm.is-active>.sb-icon,.sb-route .sb-rsm:hover:not(:disabled)>.sb-icon,.sb-route .sb-rsm[aria-pressed=true]>.sb-icon{color:var(--sb-accent)}.sb-route .sb-rgroup--voids .sb-rsm>.sb-shape-icon{color:var(--sb-void)}.sb-route .sb-rgroup--voids .sb-rsm[aria-pressed=true]{background:var(--sb-void-soft);border-color:var(--sb-void-line);color:var(--sb-warn-ink)}.sb-route .sb-rsm--danger:hover:not(:disabled){background:var(--sb-danger-soft);border-color:var(--sb-danger-line);color:var(--sb-danger)}.sb-route .sb-rsm--danger:hover:not(:disabled)>.sb-icon{color:var(--sb-danger)}.sb-route .sb-rsm__short{display:none}.sb-route .sb-ribbon:is([data-compact="1"],[data-compact="2"]) .sb-rsm:has(.sb-rsm__short) .sb-rsm__label,.sb-route .sb-ribbon:is([data-compact="2"],[data-compact="3"],[data-compact="4"]) .sb-rgroup--modify .sb-rsm__label,.sb-route .sb-ribbon:is([data-compact="3"],[data-compact="4"]) .sb-rgroup--voids .sb-rsm__label,.sb-route .sb-ribbon[data-compact="4"] .sb-rtile__label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sb-route .sb-ribbon:is([data-compact="1"],[data-compact="2"]) .sb-rsm__short{display:inline}.sb-route .sb-ribbon:is([data-compact="2"],[data-compact="3"],[data-compact="4"]) .sb-rgroup--modify .sb-rsm,.sb-route .sb-ribbon:is([data-compact="3"],[data-compact="4"]) .sb-rgroup--voids .sb-rsm{justify-content:center;width:30px;padding:0}.sb-route .sb-ribbon[data-compact="4"] .sb-rtile{min-width:38px;padding:4px}.sb-route .sb-ribbon[data-compact="4"] .sb-rtile>.sb-shape-icon{width:28px;height:28px}.sb-route .sb-ribbon:after,.sb-route .sb-ribbon:before{content:"";position:absolute;top:0;bottom:0;z-index:1;width:36px;opacity:0;pointer-events:none;transition:opacity .15s}.sb-route .sb-ribbon:before{left:0;background:linear-gradient(to right,var(--sb-surface) 30%,rgb(255 255 255/0))}.sb-route .sb-ribbon:after{right:0;background:linear-gradient(to left,var(--sb-surface) 30%,rgb(255 255 255/0))}.sb-route .sb-ribbon.has-overflow-end:after,.sb-route .sb-ribbon.has-overflow-start:before{opacity:1}.sb-route .sb-ribbon__scroll{position:absolute;top:19px;z-index:2;display:none;align-items:center;justify-content:center;width:20px;height:30px;padding:0;border:1px solid var(--sb-line-strong);border-radius:var(--sb-radius);background:var(--sb-surface);box-shadow:var(--sb-shadow-raised);color:var(--sb-ink-2);cursor:pointer}.sb-route .sb-ribbon__scroll:hover{background:var(--sb-surface-3);border-color:var(--sb-accent-line);color:var(--sb-accent-strong)}.sb-route .sb-ribbon__scroll--start{left:3px}.sb-route .sb-ribbon__scroll--end{right:3px}.sb-route .sb-ribbon.has-overflow-end .sb-ribbon__scroll--end,.sb-route .sb-ribbon.has-overflow-start .sb-ribbon__scroll--start{display:inline-flex}.sb-route .sb-file-menu:focus,.sb-route .sb-templates-menu [role=menu]:focus{outline:none}.sb-route .sb-templates-wrap{display:flex;flex:none}.sb-route .sb-templates-menu{top:0;left:0;width:272px;max-width:calc(100vw - 16px)}.sb-route .sb-templates-menu .sb-menu__item>.sb-shape-icon{color:var(--sb-accent)}.sb-route .sb-menu__foot{display:flex;align-items:center;gap:6px;margin:5px 0 0;padding:8px 9px 3px;border-top:1px solid var(--sb-line);color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.3 var(--sb-font)}.sb-route .sb-menu__foot>.sb-icon{color:var(--sb-faint)}@media (max-width:1180px){.sb-route .sb-brand{display:none}}@media (max-width:1024px){.sb-route .sb-units__long{display:none}.sb-route .sb-units__short{color:inherit;font:600 var(--sb-fs-xs) /1 var(--sb-font)}.sb-route .sb-units>button[aria-pressed=true] .sb-units__short{color:inherit}}@media (max-width:900px){.sb-route .sb-savestate__label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}}@media (max-width:760px){.sb-route .sb-titlebar{gap:4px;padding:0 8px}.sb-route .sb-titlebar__sep{display:none}.sb-route .sb-tbtn{padding:0 4px 0 8px}.sb-route .sb-quicksave{width:30px;padding:0}.sb-route .sb-quicksave__label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}.sb-route .sb-plan{display:none}.sb-route .sb-quick .sb-iconbtn{width:28px}.sb-route .sb-identity{flex:1 1 0}.sb-route .sb-name{flex:1 1 auto;min-width:40px;width:100%;font-size:var(--sb-fs)}.sb-route .sb-savestate{display:none}.sb-route .sb-titlebar__end{gap:6px}.sb-route .sb-units>button{padding:0 7px}.sb-route .sb-calc{min-width:0;padding:0 12px}.sb-route .sb-ribbon__groups{padding:4px}.sb-route .sb-rgroup{padding:0 2px}.sb-route .sb-rgroup__label{display:none}.sb-route .sb-rgroup__body{height:52px}.sb-route .sb-rsep{margin:2px 3px}.sb-route .sb-rbtn{min-width:52px;height:52px;padding:3px 5px}.sb-route .sb-rbtn__label{white-space:nowrap}.sb-route .sb-rbtn{max-width:none}.sb-route .sb-rbtn>svg:first-child{width:20px;height:20px}.sb-route .sb-rtile{min-width:48px;height:52px;gap:4px;padding:4px 2px}.sb-route .sb-rtile>.sb-shape-icon{width:22px;height:22px}.sb-route .sb-rcol{gap:4px}.sb-route .sb-rsm{height:24px;padding:0 7px 0 5px;font-size:var(--sb-fs-xs)}.sb-route .sb-ribbon__scroll{top:15px;height:26px}}@media (max-width:420px){.sb-route .sb-calc__icon{display:none}.sb-route .sb-calc{padding:0 10px}}}@layer components{.sb-route .sb-model__body{flex:1;min-height:0}.sb-route .sb-model__list{padding-bottom:8px}.sb-route .sb-model__footer{overflow:hidden;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}@media (max-width:760px){.sb-route .sb-model__hint{display:none}}.sb-route .sb-model .sb-model__collapse-sheet{display:none}.sb-route .sb-model.is-collapsed{align-items:center}.sb-route .sb-model .sb-dock__strip{width:100%}.sb-route .sb-model .sb-dock__strip .sb-dock__count{min-width:18px;padding:0 4px}.sb-route .sb-model .sb-dock__strip-label{color:var(--sb-muted)}.sb-route .sb-model .sb-dock__strip-button:hover .sb-dock__strip-label{color:var(--sb-ink)}.sb-route .sb-model__empty{padding:32px 20px 24px}.sb-route .sb-model__empty p{max-width:210px}.sb-route .sb-model__section+.sb-model__section{margin-top:4px;border-top:1px solid var(--sb-line)}.sb-route .sb-model__group{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:5px;height:28px;margin:0;padding:0 12px;background:var(--sb-surface);color:var(--sb-muted);font:700 var(--sb-fs-2xs) /1 var(--sb-font);letter-spacing:.07em;text-transform:uppercase}.sb-route .sb-model__group-sep{color:var(--sb-line-strong)}.sb-route .sb-model__group-count{font-family:var(--sb-mono);font-variant-numeric:tabular-nums;letter-spacing:0}.sb-route .sb-model__none{margin:0;padding:0 12px 10px;color:var(--sb-muted);font:400 var(--sb-fs-xs) /1.4 var(--sb-font)}.sb-route .sb-model__rows{margin:0;padding:0;list-style:none}.sb-route .sb-model__item{--sb-part-bg:var(--sb-surface);position:relative}.sb-route .sb-model__item:hover{--sb-part-bg:var(--sb-surface-3)}.sb-route .sb-model__item.is-selected{--sb-part-bg:var(--sb-accent-soft)}.sb-route .sb-model__item.is-selected:hover{--sb-part-bg:var(--sb-accent-soft-2)}.sb-route .sb-model .sb-part{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;column-gap:8px;width:100%;min-height:36px;padding:3px 12px;border:0;border-radius:0;background:var(--sb-part-bg);color:var(--sb-ink);font:inherit;text-align:left;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color .12s}.sb-route .sb-model .sb-part[aria-pressed=true]{box-shadow:inset 2px 0 0 var(--sb-accent)}.sb-route .sb-model .sb-part:focus-visible{outline:none}.sb-route .sb-model__item:has(>.sb-part:focus-visible):after{content:"";position:absolute;inset:0;z-index:3;box-shadow:inset 0 0 0 2px var(--sb-focus);pointer-events:none}.sb-route .sb-part__icon{color:var(--sb-solid)}.sb-route .sb-part.is-void .sb-part__icon{color:var(--sb-void)}.sb-route .sb-part__text{display:grid;gap:1px;min-width:0}.sb-route .sb-part__meta,.sb-route .sb-part__name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-route .sb-part__name{color:var(--sb-ink);font:600 var(--sb-fs) /16px var(--sb-font)}.sb-route .sb-part[aria-pressed=true] .sb-part__name{color:var(--sb-accent-strong)}.sb-route .sb-part__meta{color:var(--sb-muted);font:400 var(--sb-fs-xs) /14px var(--sb-font)}.sb-route .sb-part__num{font-family:var(--sb-mono);font-variant-numeric:tabular-nums}.sb-route .sb-part__actions{position:absolute;top:0;right:0;bottom:0;z-index:1;display:flex;align-items:center;gap:2px;padding:0 8px 0 16px;background:linear-gradient(to right,transparent,var(--sb-part-bg) 14px);opacity:0;pointer-events:none;transition:opacity .12s}.sb-route .sb-model__item.is-selected>.sb-part__actions{opacity:1}.sb-route .sb-model__item.is-selected>.sb-part__actions>.sb-iconbtn{pointer-events:auto}.sb-route .sb-model__item:has(:focus-visible)>.sb-part__actions{opacity:1}.sb-route .sb-model__item:has(:focus-visible)>.sb-part__actions>.sb-iconbtn{pointer-events:auto}@media (hover:hover){.sb-route .sb-model__item:hover>.sb-part__actions{opacity:1}.sb-route .sb-model__item:hover>.sb-part__actions>.sb-iconbtn{pointer-events:auto}}.sb-route .sb-model .sb-part__actions .sb-iconbtn{color:var(--sb-muted);transition:background-color .12s,border-color .12s,color .12s}.sb-route .sb-model .sb-part__actions .sb-iconbtn:hover:not(:disabled){border-color:var(--sb-line-strong);background:var(--sb-surface);color:var(--sb-ink)}.sb-route .sb-model .sb-part__actions .sb-part__delete:hover:not(:disabled){border-color:var(--sb-danger-line);background:var(--sb-danger-soft);color:var(--sb-danger)}@media (max-width:760px){.sb-route .sb-model .sb-model__collapse-dock{display:none}.sb-route .sb-model .sb-model__collapse-sheet{display:block}}@media (pointer:coarse){.sb-route .sb-model .sb-part{min-height:44px}.sb-route .sb-model .sb-part__actions .sb-iconbtn{width:34px;height:34px}}@media (forced-colors:active){.sb-route .sb-model .sb-part[aria-pressed=true]{outline:2px solid Highlight;outline-offset:-2px}}}