html,body{height:100%;margin:0;padding:0;overflow:hidden}#root{height:100%;overflow:hidden}.btn-icon{cursor:pointer;color:#555;background:#fff;border:1px solid #e0dedb;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.btn-icon:hover{background:#f3f2f0}.btn-sm{cursor:pointer;color:#444;background:#fff;border:1px solid #d0cec9;border-radius:4px;justify-content:center;align-items:center;gap:5px;height:24px;padding:0 10px;font-size:11px;font-weight:500;display:flex}.btn-sm:hover{background:#f3f2f0}.btn-ghost{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 3px;line-height:1}.btn-ghost:hover{background:#f3f2f0}.btn-del{color:#cbc9c5;transition:color .15s,background .15s}.btn-del:hover{color:#ef4444;background:#fee2e2}.btn-mode:not(.btn-mode--active):hover{color:#1a1a19!important;background:#f3f2f0!important}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.grid-cell{cursor:default;background:#f7f7f6;flex-direction:column;justify-content:center;align-items:center;transition:background 60ms;display:flex;position:relative}.grid-cell:hover{background:#ededec}.grid-cell.has-rack:hover{background:inherit}.grid-cell.has-rack{cursor:pointer}.mode-draw.has-active .grid-cell:not(.has-rack){cursor:cell}.mode-erase .grid-cell{cursor:crosshair}.mode-erase .grid-cell:hover{background:#fee2e2}.mode-fill .grid-cell:not(.has-rack){cursor:cell}.mode-fill .grid-cell.has-rack{cursor:not-allowed}.mode-move .grid-cell.has-rack{cursor:grab}.grid-cell.is-source{opacity:.35}.mode-move .grid-cell.is-source{cursor:grabbing}@property --snake-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes snake-spin{to{--snake-angle:360deg}}.grid-cell.is-selected{z-index:2;overflow:visible}.grid-cell.is-selected:after{content:"";inset:calc(-1 * var(--ring-w,3px));background:conic-gradient(from var(--snake-angle), transparent 40%, var(--ring-color,#fff) 68%, var(--ring-color,#fff) 82%, transparent 100%);-webkit-mask-composite:xor;padding:var(--ring-w,3px);animation:snake-spin var(--ring-speed,2s) linear infinite;pointer-events:none;filter:drop-shadow(0 0 5px var(--ring-color,#fff)) drop-shadow(0 0 2px var(--ring-color,#fff));border-radius:8px;position:absolute;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}
