.seg-head,.seg{grid-template-columns:minmax(0,1fr) 5rem 7rem 8.5rem 2.4rem 2.4rem;align-items:center;gap:.5rem;display:grid}.seg-head{font-size:var(--fs-xs);color:var(--muted);align-items:end;margin:1.5rem 0 .5rem}.seg-head .section-title{margin:0}.segs{flex-direction:column;gap:.5rem;display:flex}.seg-name{display:flex;position:relative}.seg .name{font-family:var(--sans);flex:1;padding-left:2.1rem}.seg .swatch{cursor:pointer;border:0;width:.85rem;height:.85rem;margin:0;padding:0;position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.seg .swatch:hover{box-shadow:0 0 0 3px var(--accent-soft)}.seg .size{font-size:var(--fs-sm);padding-inline:.5rem}.seg .size.short{border-color:var(--red)}.seg .pin{color:var(--faint);place-items:center;display:grid}.seg .pin[aria-pressed=true]{color:var(--accent);border-color:var(--accent-border);background:var(--accent-soft)}.seg .pin.warn{color:var(--amber);border-color:var(--amber)}.seg.unplaced .name{border-color:var(--red)}.seg.hl .name{border-color:var(--accent)}.dot{vertical-align:.05em;border-radius:50%;width:.6rem;height:.6rem;margin-right:.55rem;display:inline-block}.undo-group{gap:.5rem;margin-left:auto;display:flex}.undo-group .btn:disabled{opacity:.45;cursor:default;color:var(--muted);border-color:var(--border2)}.seg-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.lock{color:var(--faint);vertical-align:-.1em;margin-left:.4rem;display:inline-flex}.bad{color:var(--red)}#rows tr.hl td{background:var(--accent-soft)}.crumbs{font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:.4rem;display:flex}.map-frame{--rh:2.2rem;--label-w:7.25rem}.map-frame.dense{--rh:1.5rem}.map-ticks{height:1.2rem;margin-left:var(--label-w);font-family:var(--mono);font-size:var(--fs-2xs);color:var(--faint);position:relative}.map-ticks span{border-left:1px solid var(--border2);padding-left:.25rem;line-height:1.2rem;position:absolute;top:0}.map-body{grid-template-columns:var(--label-w) minmax(0, 1fr);display:grid}.map-rows{grid-template-rows:repeat(var(--rows), var(--rh));display:grid}.rowlabel{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--faint);text-align:right;line-height:var(--rh);white-space:nowrap;text-overflow:ellipsis;padding:0 .6rem 0 0;overflow:hidden}.map{height:calc(var(--rows) * var(--rh));border:1px solid var(--border);background-color:var(--bg2);background-image:linear-gradient(to bottom, var(--border) 1px, transparent 1px), linear-gradient(to right, var(--border) 1px, transparent 1px);background-size:100% var(--rh), 12.5% 100%;-webkit-user-select:none;user-select:none;background-position:0 -1px,-1px 0;border-radius:10px;position:relative;overflow:hidden}.map>*{box-sizing:border-box;position:absolute}.hole{color:#0000;font-family:var(--mono);font-size:var(--fs-2xs);cursor:copy;background:0 0;border:1px dashed #0000;border-radius:6px;place-items:center;padding:0;display:grid;overflow:hidden}.hole:hover,.hole:focus-visible{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.hole:focus-visible{outline-offset:-2px}.blk{cursor:grab;touch-action:none;outline:none;min-width:3px}.blk .fill{background:var(--c);color:#04121c;font-size:var(--fs-xs);white-space:nowrap;border-radius:6px;align-items:center;gap:.5rem;padding:0 .55rem;transition:filter .15s,opacity .15s;display:flex;position:absolute;inset:2px;overflow:hidden;container-type:inline-size}.blk.tall .fill{flex-direction:column;justify-content:center;gap:.15rem}.blk .bn{text-overflow:ellipsis;align-items:center;gap:.3rem;min-width:0;font-weight:600;display:inline-flex;overflow:hidden}.blk .bn svg{flex:none;width:.8rem;height:.8rem}.blk .bc{font-family:var(--mono);font-size:var(--fs-2xs);opacity:.8;text-overflow:ellipsis;overflow:hidden}@container (width<=9rem){.blk:not(.tall) .bc{display:none}}@container (width<=2rem){.bn,.bc{display:none!important}}.blk.short .fill{background:repeating-linear-gradient(135deg, var(--c) 0 8px, color-mix(in srgb, var(--c) 70%, var(--red)) 8px 12px);box-shadow:inset 0 0 0 2px var(--red)}.blk:hover .fill,.blk.hl .fill{filter:brightness(1.12)saturate(1.1)}.blk.sel .fill,.blk:focus-visible .fill{box-shadow:0 0 0 2px var(--bg2), 0 0 0 4px var(--text)}.blk.dragging{cursor:grabbing;z-index:2}.blk.dragging .fill{box-shadow:0 0 0 2px var(--bg2), 0 0 0 4px var(--text), 0 10px 24px -8px #00000080}.blk.bad .fill{background:var(--red-soft);color:var(--red);box-shadow:inset 0 0 0 2px var(--red)}.map.dragging .blk:not(.dragging){transition:top .18s,left .18s,width .18s,height .18s}.map.dragging .blk.dragging{transition:top 80ms,left 80ms,width 80ms,height 80ms}.map.dragging .hole{visibility:hidden}@media (prefers-reduced-motion:reduce){.map.dragging .blk{transition:none!important}}.rh{z-index:1;position:absolute}.rh.h{cursor:ew-resize;width:min(12px,35%);top:2px;bottom:2px;right:0}.rh.v{cursor:ns-resize;height:min(12px,35%);bottom:0;left:2px;right:2px}.rh:after{content:"";background:#04121c4d;border-radius:2px;transition:background .15s;position:absolute}.blk:hover .rh:after,.blk.sel .rh:after,.blk.dragging .rh:after{background:#04121ca6}.rh:hover:after{background:#04121ce6!important}.rh.h:after{width:3px;top:30%;bottom:30%;right:5px}.rh.v:after{width:1.25rem;height:3px;bottom:5px;right:8px}.map-info{min-height:1.5em;font-size:var(--fs-md);margin:.9rem 0 0}.map-hint{font-size:var(--fs-xs);color:var(--faint);margin:.4rem 0 0}.free .chip{margin:0}.chips.free{margin-top:0}@media (width<=40rem){.seg-head{display:none}.segs{gap:.9rem}.seg{grid-template-columns:4.5rem minmax(0,1fr) minmax(0,1fr) 2.4rem 2.4rem}.seg-name{grid-column:1/-1}.map-frame{--rh:2rem;--label-w:5.6rem}}
