.icon-palette{position:fixed;z-index:8;top:0;right:0;bottom:0;width:calc(var(--palette-width, 320px) + env(safe-area-inset-right));box-sizing:border-box;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) 0;display:flex;flex-direction:column;background:var(--color-paper);border-left:1px solid var(--color-rule);box-shadow:var(--shadow-2);transform:translate(100%);visibility:hidden;transition:transform .22s ease,visibility .22s}.icon-palette.is-open{transform:translate(0);visibility:visible}.palette__header{padding:12px;border-bottom:1px solid var(--color-rule)}.palette__heading{display:flex;align-items:center;justify-content:space-between;gap:4px}.palette__heading h2{font-size:var(--text-md);margin:0}.palette__categories{display:flex;gap:4px;margin:8px 0}.palette__categories .btn{flex:1;padding:4px;font-size:var(--text-xs)}.palette__categories [aria-pressed=true]{background:var(--color-accent-soft);color:var(--color-ink);box-shadow:inset 0 -3px var(--color-accent)}.palette__search{width:100%;box-sizing:border-box;min-height:48px;font:inherit;font-size:16px;color:var(--color-ink);background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-sm);padding:8px}.palette__list{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));align-content:start;gap:4px;padding:10px}.palette__cell{min-width:0;min-height:80px;padding:6px 2px;border:2px solid transparent;border-radius:var(--radius-sm);background:#fff;color:var(--color-ink);font:inherit;font-size:11px;cursor:pointer}.palette__cell img{display:block;width:56px;height:49px;object-fit:contain;margin:0 auto 4px}.palette__cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette__cell:hover{background:var(--color-accent-soft)}.palette__cell[aria-pressed=true]{border-color:var(--color-accent-strong);box-shadow:inset 0 0 0 1px var(--color-accent-strong)}.palette__cell:disabled{cursor:default;opacity:.6}.palette__cell:focus-visible,.palette__search:focus-visible{outline:3px solid var(--color-focus);outline-offset:1px}.palette__footer{border-top:1px solid var(--color-rule);padding:10px}.palette__footer p{margin:0 0 8px;font-size:var(--text-xs);overflow-wrap:anywhere}.palette__actions{display:flex;flex-wrap:wrap;gap:4px}.palette__actions .btn{flex:1;min-height:48px;padding:6px;font-size:var(--text-xs)}#paletteStatus{margin:8px 0 0;color:var(--color-ink-2)}.menu__separator{border:0;border-top:1px solid var(--color-rule);margin:4px}body{--canvas-width: calc(100vw - var(--side))}.topbar{left:max(var(--space-sm),env(safe-area-inset-left))}.prompt,.notices{left:calc((100% - var(--side)) / 2);max-width:calc(var(--canvas-width) - 24px)}.prompt{width:min(560px,calc(var(--canvas-width) - 24px))}.node-menu,.banner,.toast{max-width:calc(var(--canvas-width) - 24px);box-sizing:border-box}.zoom{right:calc(var(--space-sm) + var(--side))}.dev{max-width:calc(var(--canvas-width) - 24px);box-sizing:border-box}.cam{left:max(var(--space-sm),env(safe-area-inset-left))}body.canvas-compact .btn__label--wide,body.canvas-compact .node-menu .btn__label{display:none}body.canvas-compact .cam{width:144px;bottom:calc(var(--kb, 0px) + var(--prompt-height, 130px) + 112px)}body.canvas-compact .zoom{bottom:calc(var(--kb, 0px) + var(--prompt-height, 130px) + 112px)}body.canvas-narrow .topbar{right:calc(var(--space-sm) + var(--side));gap:0}body.canvas-narrow .topbar .cluster:first-child{flex:1;min-width:0;border-right:0;border-radius:var(--radius-lg) 0 0 var(--radius-lg)}body.canvas-narrow .cluster--tools{border-left:0;border-radius:0 var(--radius-lg) var(--radius-lg) 0}body.canvas-narrow .title{flex:1;width:auto;max-width:none;font-size:var(--text-md)}body.canvas-narrow #devBtn{display:none}body.canvas-narrow hr.menu__dev{display:block}body.canvas-narrow .btn.menu__dev{display:inline-flex}body.canvas-narrow .node-menu{top:auto;left:max(var(--space-sm),env(safe-area-inset-left));right:calc(var(--space-sm) + var(--side));bottom:calc(var(--kb, 0px) + max(var(--space-md),env(safe-area-inset-bottom)));transform:none!important;max-width:none;flex-wrap:nowrap;padding:6px;border-radius:var(--radius-lg);box-shadow:var(--shadow-1);z-index:5}body.canvas-narrow .node-menu .btn{flex:1 1 0;min-width:0;flex-direction:column;gap:2px;min-height:60px;padding:6px 0;font-size:11px;line-height:1.2;white-space:normal;text-align:center;border-radius:var(--radius-md)}body.canvas-narrow .node-menu .btn .i{width:24px;height:24px}body.canvas-narrow .node-menu .btn__label{display:block;max-width:100%;overflow-wrap:anywhere}body.canvas-narrow .node-menu .btn__label--long{display:none}body.canvas-narrow .node-menu .btn--icon{flex:0 0 32px}body.canvas-narrow .node-menu:not([hidden])~.dock{display:none}body.canvas-narrow .save__text{display:none}body.canvas-narrow .dock{left:max(var(--space-sm),env(safe-area-inset-left));right:calc(var(--space-sm) + var(--side));transform:none;justify-content:space-between}body.canvas-narrow .dock__btn,body.canvas-narrow .dock__btn.btn--primary{min-width:0;flex:1 1 0;padding:6px 4px}body.canvas-narrow .dev{left:var(--space-sm);right:calc(var(--space-sm) + var(--side));width:auto}@media(max-height:500px){.palette__header{padding:4px 10px}.palette__categories{margin:0 0 4px}.palette__footer{padding:6px 10px}body.canvas-compact .zoom{bottom:max(8px,env(safe-area-inset-bottom))}body.canvas-compact .dock{bottom:max(64px,env(safe-area-inset-bottom))}body.canvas-compact .prompt{bottom:128px;max-height:120px;overflow:auto}body.canvas-compact .cam{width:96px;bottom:8px}}@media(prefers-reduced-motion:reduce){.icon-palette{transition:none}}#paletteDockToggle[aria-expanded=true]{background:var(--color-accent-soft);color:var(--color-accent-strong)}
