:root{--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "JetBrains Mono", Consolas, monospace;--radius:6px;--panel-w:240px;--panel-right-w:280px;--toolbar-h:44px;--status-h:26px;--z-banner:20;--z-dialog:30;--motion-fast:.14s;--motion-base:.22s;--motion-ease:cubic-bezier(.2, 0, 0, 1);--bg:#16181d;--bg-panel:#1f2229;--bg-elevated:#272b34;--bg-hover:#2f343f;--bg-active:#3a4150;--border:#3a3f4b;--text:#e6e8ee;--text-muted:#9aa1b1;--accent:#5aa9ff;--accent-contrast:#0b1220;--danger:#ff5f6d;--ok:#4ad38a;--warn:#ffb347;--canvas-bg:#0f1115;--focus:#8ec5ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f4f5f8;--bg-panel:#fff;--bg-elevated:#eef0f5;--bg-hover:#e3e6ee;--bg-active:#d3d8e6;--border:#cfd4df;--text:#1a1d24;--text-muted:#5b6270;--accent:#1f6fe0;--accent-contrast:#fff;--danger:#d6323f;--ok:#1d9d5b;--warn:#c97b00;--canvas-bg:#f8f9fc;--focus:#1f6fe0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]):not([data-theme=light]){--bg:#f4f5f8;--bg-panel:#fff;--bg-elevated:#eef0f5;--bg-hover:#e3e6ee;--bg-active:#d3d8e6;--border:#cfd4df;--text:#1a1d24;--text-muted:#5b6270;--accent:#1f6fe0;--accent-contrast:#fff;--danger:#d6323f;--ok:#1d9d5b;--warn:#c97b00;--canvas-bg:#f8f9fc;--focus:#1f6fe0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:13px;overflow:hidden}button,input,select{font:inherit;color:inherit}button{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:4px;min-height:28px;padding:4px 8px;line-height:1.2;display:inline-flex}button:hover:not(:disabled){background:var(--bg-hover)}button:disabled{opacity:.45;cursor:default}button[aria-pressed=true],button.is-active{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}button.btn-icon{justify-content:center;width:30px;height:30px;min-height:30px;padding:0;font-size:15px}button.btn-danger{color:var(--danger)}input[type=text],input[type=number],select{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:100%;min-height:28px;padding:4px 6px}input[type=range],input[type=checkbox]{accent-color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{grid-template-rows:var(--toolbar-h) 1fr var(--status-h);grid-template-columns:var(--panel-w) 1fr var(--panel-right-w);grid-template-areas:"toolbar toolbar toolbar""left canvas right""status status status";height:100%;display:grid}.app__toolbar{z-index:12;grid-area:toolbar;position:relative}.app__left{grid-area:left}.app__canvas{grid-area:canvas;min-width:0;min-height:0;position:relative}.app__right{grid-area:right}.app__status{grid-area:status}.panel{background:var(--bg-panel);border-right:1px solid var(--border);flex-direction:column;min-height:0;display:flex;overflow:hidden auto}.panel--right{border-right:none;border-left:1px solid var(--border)}.section{border-bottom:1px solid var(--border);padding:8px 10px}.section__title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);justify-content:space-between;align-items:center;margin:0 0 6px;font-size:11px;font-weight:600;display:flex}.row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono)}.field{grid-template-columns:1fr 1fr;align-items:center;gap:6px;margin-bottom:6px;display:grid}.field>span{color:var(--text-muted)}.list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.list__item{align-items:center;gap:4px;display:flex}.list__main{text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border-color:#0000;flex:1;justify-content:flex-start;min-width:0;overflow:hidden}.list__main:hover,.list__main.is-active{border-color:var(--border)}.toolbar{background:var(--bg-panel);border-bottom:1px solid var(--border);align-items:center;gap:4px;padding:0 8px;display:flex;overflow:visible;container:toolbar/inline-size}.toolbar button,.toolbar input[type=text]{height:32px;min-height:32px}.toolbar__group{align-items:center;gap:2px;display:flex}.toolbar__sep{background:var(--border);flex-shrink:0;width:1px;height:20px;margin:0 6px}.toolbar__brand{color:var(--text);align-items:center;gap:6px;padding:0 6px 0 2px;display:inline-flex}.toolbar__logo{color:var(--accent)}.toolbar__title{letter-spacing:.02em;white-space:nowrap;margin:0;font-size:14px;font-weight:650}.toolbar__project{flex:2 1 0;align-items:center;gap:6px;min-width:0;display:flex}.toolbar__project .toolbar__name{background:0 0;border-color:#0000;flex-shrink:1;width:clamp(96px,18ch,220px);padding:0 8px;font-weight:600}.toolbar__project .toolbar__name:hover,.toolbar__project .toolbar__name:focus{background:var(--bg);border-color:var(--border)}.toolbar__dirty{background:var(--warn);border-radius:50%;flex-shrink:0;width:8px;height:8px}.toolbar__spacer{flex:1 1 0}.tb-btn{border-radius:var(--radius);color:var(--text);background:0 0;border-color:#0000;gap:6px;padding:0 8px}.tb-btn:hover:not(:disabled){background:var(--bg-hover)}.tb-btn:active:not(:disabled){background:var(--bg-active)}.tb-btn--icon{justify-content:center;width:32px;padding:0}.tb-btn__label{white-space:nowrap}.icon{flex-shrink:0;display:block}.menu__caret{opacity:.6;margin-left:-2px}.toolbar__sim{border:1px solid var(--border);background:var(--bg);border-radius:8px;align-items:center;gap:2px;padding:3px;display:flex}.toolbar__sim button{height:26px;min-height:26px}.toolbar__sim .tb-btn--icon{width:28px}.toolbar__run{border-color:var(--accent);color:var(--accent);justify-content:flex-start;min-width:108px;padding:0 10px 0 8px;font-weight:600}.toolbar__run:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 16%, transparent)}.toolbar__run[aria-pressed=true]{background:var(--accent);color:var(--accent-contrast)}.speed{color:var(--text-muted);align-items:center;gap:4px;padding:0 4px 0 6px;display:flex}.speed input[type=range]{width:96px;margin:0}.speed__icon{opacity:.8}.speed__value{min-width:62px;font-family:var(--font-mono);text-align:right;color:var(--text);font-size:11.5px}.toolbar__more{display:none}.toolbar__account{align-items:center;min-width:8px;margin-left:2px;display:flex}@container toolbar (width<=1180px){.toolbar__edit-extra{display:none}.toolbar__more{display:inline-flex}}@container toolbar (width<=980px){.toolbar__speed{display:none}.toolbar__run{min-width:0}.toolbar__run .tb-btn__label{display:none}}@container toolbar (width<=800px){.toolbar__title{display:none}}.menu{position:relative}.menu__list{z-index:10;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);min-width:240px;max-height:min(70vh,560px);margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;overflow:auto;box-shadow:0 8px 28px #00000052}.menu__list--end{left:auto;right:0}.menu__item{align-items:center;gap:2px;display:flex}.menu__button{text-align:left;background:0 0;border-color:#0000;border-radius:4px;flex:1;justify-content:flex-start;gap:8px;min-width:0;height:30px;min-height:30px;padding:0 8px}.menu__button:hover:not(:disabled),.menu__button:focus-visible{background:var(--bg-hover)}.menu__button--icon{flex:0 0 28px;justify-content:center;width:28px;padding:0}.menu__icon{width:16px;color:var(--text-muted);flex-shrink:0;justify-content:center;display:inline-flex}.menu__button[aria-checked=true] .menu__icon{color:var(--accent)}.menu__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.menu__meta{font-family:var(--font-mono);color:var(--text-muted);flex-shrink:0;font-size:11px}.menu__kbd,.tooltip__kbd{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border);background:var(--bg);border-radius:3px;flex-shrink:0;margin-left:auto;padding:0 5px;font-size:10.5px;line-height:16px}.tooltip__kbd{margin-left:8px}.menu__heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-top:1px solid var(--border);margin-top:4px;padding:8px 8px 3px;font-size:10.5px;font-weight:600}.menu__heading:first-child{border-top:0;margin-top:0;padding-top:4px}.menu__note{color:var(--text-muted);padding:4px 8px 6px}.tools,.palette{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.part{flex-direction:column;align-items:center;gap:2px;min-height:52px;padding:6px 2px;font-size:11px;display:flex}.part__icon{width:28px;height:20px;display:block}.part__name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.canvas-host{background:var(--canvas-bg);touch-action:none;outline:none;position:absolute;inset:0;overflow:hidden}.canvas-host canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.canvas-host--select{cursor:default}.canvas-host--wire{cursor:crosshair}.canvas-host--erase{cursor:cell}.canvas-host--place{cursor:copy}.canvas-host--pan{cursor:grabbing}.layers{grid-template-columns:repeat(8,1fr);gap:3px;display:grid}.layer{flex-direction:column;align-items:center;gap:2px;display:flex}.layer__pick{width:100%;min-height:26px;font-family:var(--font-mono);border-bottom-width:3px;justify-content:center;padding:0;font-size:11px}.layer__eye{justify-content:center;width:100%;min-height:22px;padding:0;font-size:11px}.status{font-family:var(--font-mono);background:var(--bg-panel);border-top:1px solid var(--border);color:var(--text-muted);white-space:nowrap;align-items:center;gap:0;padding:0 4px;font-size:11.5px;display:flex;overflow:hidden}.status__item{border-right:1px solid var(--border);align-items:center;gap:4px;height:100%;padding:0 10px;display:inline-flex}.status__item:last-child{border-right:0}.status__item--right{margin-left:auto}.status__item strong{color:var(--text);font-weight:500}.status__run,.status__paused{border-radius:9px;align-items:center;gap:5px;padding:0 7px;font-weight:600;line-height:18px;display:inline-flex}.status__run{color:var(--ok);background:color-mix(in srgb, var(--ok) 16%, transparent)}.status__paused{color:var(--warn);background:color-mix(in srgb, var(--warn) 14%, transparent)}.status__error{color:var(--danger);font-weight:600}.banner{z-index:var(--z-banner);background:var(--danger);color:#fff;border-radius:var(--radius);align-items:center;gap:8px;max-width:90%;padding:6px 12px;display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0000004d}.banner button{color:#fff;background:0 0;border-color:#ffffff80}.dialog__backdrop{z-index:var(--z-dialog);background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;min-width:280px;max-width:90vw;padding:16px;display:flex;box-shadow:0 8px 32px #00000073}.dialog__title{color:var(--text);margin:0}.dialog__input{width:100%}.shortcuts-modal{border-radius:10px;gap:16px;width:680px;max-width:94vw;max-height:85vh;padding:20px;overflow-y:auto}.shortcuts-modal__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.shortcuts-modal__title{color:var(--text);align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;display:flex}.shortcuts-modal__close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.shortcuts-modal__close:hover{background:var(--bg-hover);color:var(--text)}.shortcuts-modal__grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.shortcuts-modal__group{flex-direction:column;gap:8px;display:flex}.shortcuts-modal__group-title{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin:0;font-size:12px;font-weight:700}.shortcuts-modal__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.shortcuts-modal__item{justify-content:space-between;align-items:center;gap:12px;padding:4px 0;font-size:13px;display:flex}.shortcuts-modal__label{color:var(--text)}.shortcuts-modal__keys{flex-shrink:0;align-items:center;gap:6px;display:flex}.shortcuts-modal__key-combo{align-items:center;gap:4px;display:inline-flex}.shortcuts-modal__sub-combo{align-items:center;gap:3px;display:inline-flex}.shortcuts-modal__or{color:var(--text-muted);font-size:11px}.shortcuts-modal__plus{color:var(--text-muted);font-size:10px}.shortcuts-modal__kbd{min-width:22px;height:22px;font-family:var(--font-mono);background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);border-bottom-width:2px;border-radius:4px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #0003}.probes{font-family:var(--font-mono)}.probe{justify-content:space-between;padding:2px 0;display:flex}.probe__value{font-weight:600}.probe__value--1{color:var(--ok)}.probe__value--3{color:var(--danger)}.probe__value--2{color:var(--text-muted)}.probe__name{align-items:center;gap:6px;display:inline-flex}.probe__watch{margin:0}.wave{font-family:var(--font-mono)}.wave__toggle{min-height:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:none;padding:0}.wave__body{border:1px solid var(--border);border-radius:var(--radius);background:var(--canvas-bg);display:flex;position:relative;overflow:hidden}.wave__rows{border-right:1px solid var(--border);flex:0 0 72px;font-size:11px;overflow:hidden}.wave__row{justify-content:space-between;gap:4px;height:18px;padding:0 4px;line-height:18px;display:flex}.wave__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wave__plot{cursor:crosshair;touch-action:none;outline:none;flex:1;min-width:0;position:relative}.wave__plot:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.wave__plot canvas{width:100%;height:100%;display:block}.wave__tooltip{z-index:5;color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);pointer-events:none;white-space:nowrap;padding:4px 6px;font-size:11px;line-height:1.35;position:absolute;box-shadow:0 4px 14px #0000004d}.wave__tooltip-title{color:var(--text-muted)}.wave__now{color:var(--warn);pointer-events:none;font-size:9px;position:absolute;bottom:1px;right:2px}.wave__resize{cursor:ns-resize;background:0 0;border:none;border-radius:0;justify-content:center;width:100%;height:8px;min-height:8px;margin-top:3px;padding:0;display:block}.wave__resize:after{content:"";background:var(--border);border-radius:2px;width:28px;height:3px}.wave__resize:hover:after,.wave__resize:focus-visible:after{background:var(--accent)}@media (width<=900px){.app{grid-template-columns:180px 1fr 220px}}.btn-block{justify-content:center;width:100%;margin-bottom:6px}.btn-small{min-height:22px;padding:0 6px;font-size:11px}.row--gap{margin-bottom:6px}.row--tight{gap:2px}.fieldset{border:none;margin:0 0 6px;padding:0}.part__glyph{font-size:18px}.tooltip{z-index:50;max-width:260px;color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);pointer-events:none;padding:6px 8px;font-size:12px;line-height:1.35;position:fixed;box-shadow:0 6px 20px #0000004d}.hover-card{z-index:15;max-width:300px;font-size:12px;font-family:var(--font-mono);color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);pointer-events:none;white-space:pre-line;padding:6px 8px;position:absolute;box-shadow:0 6px 20px #0000004d}.hover-card__title{font-family:var(--font-ui);margin-bottom:4px;font-weight:600}.breadcrumb{min-width:0;color:var(--text-muted);white-space:nowrap;align-items:center;gap:0;font-size:12px;display:flex;overflow:hidden}.breadcrumb__item{align-items:center;gap:0;min-width:0;display:inline-flex}.breadcrumb__sep{opacity:.5;flex-shrink:0}.breadcrumb__link{max-width:200px;height:24px;min-height:24px;color:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border-color:#0000;border-radius:4px;padding:0 5px;line-height:22px;display:inline-block;overflow:hidden}.breadcrumb__link .icon{vertical-align:-2px;margin-right:3px;display:inline-block}.breadcrumb__link:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.breadcrumb__link:disabled{cursor:default;color:var(--text);opacity:1;font-weight:600}.breadcrumb__detached{opacity:.85;padding:0 5px;font-style:italic}.wire-width{margin-top:6px}.wire-width input[type=number]{width:4.5em}.status__note{color:var(--warn)}.status__readonly{font-weight:600}.status__button{font:inherit;cursor:pointer;background:0 0;border-width:0 1px 0 0;border-radius:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.tests__badge{font-family:var(--font-mono);border:1px solid var(--border);white-space:nowrap;border-radius:8px;padding:0 5px;font-size:10px;font-weight:600}.tests__badge--pass{color:var(--ok);border-color:var(--ok)}.tests__badge--fail{color:var(--danger);border-color:var(--danger)}.tests__badge--running{color:var(--warn);border-color:var(--warn)}.tests__editor{flex-direction:column;gap:6px;margin-top:6px;display:flex}.tests__table-wrap{max-width:100%;overflow-x:auto}.tests__table{border-collapse:collapse;font-family:var(--font-mono);white-space:nowrap;font-size:11px}.tests__table th,.tests__table td{text-align:center;vertical-align:top;padding:1px 2px}.tests__table th{color:var(--text-muted);font-weight:600}.tests__sep{color:var(--text-muted);padding:1px 4px}.tests__cell{text-align:center;width:3.5em;min-height:22px;font-family:var(--font-mono);padding:1px 3px}.tests__cell--fail{border-color:var(--danger)}.tests__actual{color:var(--danger);font-size:10px;display:block}.tests__row-result{text-align:left;min-width:4em}.tests__row-result--fail{color:var(--danger)}.tests__row-result--pass{color:var(--ok)}.tests__error{color:var(--danger);font-size:11px}.canvas-host{view-transition-name:canvas}.breadcrumb{view-transition-name:breadcrumb}:root:active-view-transition-type(view-in)::view-transition-old(root){opacity:0;animation:none}:root:active-view-transition-type(view-out)::view-transition-old(root){opacity:0;animation:none}:root:active-view-transition-type(menu)::view-transition-old(root){opacity:0;animation:none}:root:active-view-transition-type(menu)::view-transition-old(canvas){opacity:0;animation:none}:root:active-view-transition-type(view-in)::view-transition-new(root){opacity:1;animation:none}:root:active-view-transition-type(view-out)::view-transition-new(root){opacity:1;animation:none}:root:active-view-transition-type(menu)::view-transition-new(root){opacity:1;animation:none}:root:active-view-transition-type(menu)::view-transition-new(canvas){opacity:1;animation:none}@keyframes vt-depth-grow-out{to{opacity:0;transform:scale(1.08)}}@keyframes vt-depth-grow-in{0%{opacity:0;transform:scale(.92)}}@keyframes vt-depth-shrink-out{to{opacity:0;transform:scale(.92)}}@keyframes vt-depth-shrink-in{0%{opacity:0;transform:scale(1.08)}}:root:active-view-transition-type(view-in)::view-transition-old(canvas){animation:vt-depth-grow-out var(--motion-base) var(--motion-ease) both}:root:active-view-transition-type(view-in)::view-transition-new(canvas){animation:vt-depth-grow-in var(--motion-base) var(--motion-ease) both}:root:active-view-transition-type(view-out)::view-transition-old(canvas){animation:vt-depth-shrink-out var(--motion-base) var(--motion-ease) both}:root:active-view-transition-type(view-out)::view-transition-new(canvas){animation:vt-depth-shrink-in var(--motion-base) var(--motion-ease) both}@keyframes vt-slide-out-left{to{opacity:0;transform:translate(-10px)}}@keyframes vt-slide-in-right{0%{opacity:0;transform:translate(10px)}}@keyframes vt-slide-out-right{to{opacity:0;transform:translate(10px)}}@keyframes vt-slide-in-left{0%{opacity:0;transform:translate(-10px)}}:root:active-view-transition-type(view-in)::view-transition-old(breadcrumb){animation:vt-slide-out-left var(--motion-fast) var(--motion-ease) both}:root:active-view-transition-type(view-in)::view-transition-new(breadcrumb){animation:vt-slide-in-right var(--motion-fast) var(--motion-ease) both}:root:active-view-transition-type(view-out)::view-transition-old(breadcrumb){animation:vt-slide-out-right var(--motion-fast) var(--motion-ease) both}:root:active-view-transition-type(view-out)::view-transition-new(breadcrumb){animation:vt-slide-in-left var(--motion-fast) var(--motion-ease) both}@keyframes vt-fade-in{0%{opacity:0}}@keyframes vt-dialog-in{0%{opacity:0;transform:translateY(8px)scale(.97)}}.dialog__backdrop{animation:vt-fade-in var(--motion-fast) var(--motion-ease) both}.dialog{animation:vt-dialog-in var(--motion-fast) var(--motion-ease) both}@keyframes vt-menu-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}}@keyframes vt-menu-out{to{opacity:0;transform:translateY(-4px)scale(.99)}}::view-transition-new(.menu-pop){animation:vt-menu-in var(--motion-fast) var(--motion-ease) both;transform-origin:top}::view-transition-old(.menu-pop){animation:vt-menu-out var(--motion-fast) var(--motion-ease) both;transform-origin:top}@media (prefers-reduced-motion:reduce){.dialog,.dialog__backdrop,.menu__list{animation:none!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.ic-library-modal{max-width:760px;max-height:85vh}.ic-library-modal__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ic-library-modal__tabs{background:var(--bg);border:1px solid var(--border);border-radius:6px;gap:6px;padding:3px;display:flex}.ic-library-modal__tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s}.ic-library-modal__tab:hover{color:var(--text)}.ic-library-modal__tab.is-active{background:var(--bg-elevated);color:var(--text);font-weight:600;box-shadow:0 1px 3px #0003}.ic-library-modal__search{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;min-width:180px;padding:6px 12px;font-size:13px}.ic-library-modal__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;max-height:55vh;padding:2px;display:grid;overflow-y:auto}.ic-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:12px;transition:border-color .2s,box-shadow .2s;display:flex}.ic-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #0003}.ic-card__header{justify-content:space-between;align-items:center;gap:8px;display:flex}.ic-card__name{color:var(--text);font-size:16px;font-weight:700;font-family:var(--font-mono);margin:0}.ic-card__tag{text-transform:uppercase;letter-spacing:.5px;background:var(--bg-elevated);color:var(--accent);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.ic-card__desc{color:var(--text-muted);flex-grow:1;margin:0;font-size:12px;line-height:1.4}.ic-card__footer{margin-top:4px}@media (pointer:coarse){button,select,input[type=text],input[type=number]{min-height:36px;padding:6px 10px}button.btn-icon{width:36px;height:36px;min-height:36px}.menu__button{height:38px;min-height:38px;padding:0 12px}.speed-slider input[type=range]{height:24px}}@media (width<=900px){.app{grid-template-columns:minmax(180px, var(--panel-w)) 1fr;grid-template-areas:"toolbar toolbar""left canvas""status status"}.app__right{display:none}}@media (width<=640px){.app{grid-template-columns:1fr;grid-template-areas:"toolbar""canvas""status"}.app__left{display:none}.toolbar{scrollbar-width:thin;overflow-x:auto}}.account{align-items:center;gap:6px;display:flex}.account__signin{white-space:nowrap;height:30px;min-height:30px;padding:0 10px}.account__trigger{border-radius:50%;overflow:hidden}.account__avatar{object-fit:cover;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.account__avatar--initials{background:var(--accent,#4c8dff);color:#fff;font-size:11px;font-weight:600}.account__menu{flex-direction:column;gap:4px;min-width:260px;padding:6px;display:flex}.account__identity{text-overflow:ellipsis;white-space:nowrap;flex-direction:column;gap:2px;padding:4px 8px;display:flex;overflow:hidden}.account__status{opacity:.85;border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:4px 8px;font-size:12px;display:flex}.account__error{color:var(--danger,#e5484d);white-space:normal;max-width:260px;font-size:12px}
