.spine-picker[data-v-c1591c83]{background-color:var(--surface-primary);display:flex;flex-direction:column;gap:var(--gap-stack-tight);inset-block:0;inset-inline:var(--safe-area-inset-start) var(--safe-area-inset-end);padding:var(--inset-sheet);padding-block:calc(var(--inset-sheet) + var(--safe-area-inset-top)) calc(var(--inset-sheet) + var(--safe-area-inset-bottom));position:fixed;z-index:var(--z-modal)}.spine-picker__header[data-v-c1591c83]{align-items:center;display:grid;flex-shrink:0;gap:var(--gap-stack-tight);grid-template-columns:auto 1fr auto}.spine-picker__stage[data-v-c1591c83]{background-color:var(--surface-secondary);direction:ltr;flex:1;min-height:0;overflow:hidden;position:relative;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.spine-picker__photo[data-v-c1591c83]{height:var(--photo-h);inset-block-start:var(--pan-y);inset-inline-start:var(--pan-x);position:absolute;transform:scale(var(--zoom));transform-origin:0 0;width:var(--photo-w)}.spine-picker__image[data-v-c1591c83]{display:block;height:100%;pointer-events:none;width:100%;-webkit-user-drag:none}.spine-picker__outline[data-v-c1591c83]{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}.spine-picker__shape[data-v-c1591c83]{fill:var(--overlay-scrim-medium);stroke:var(--interactive-primary);stroke-width:var(--border-medium);vector-effect:non-scaling-stroke}.spine-picker__shape--invalid[data-v-c1591c83]{stroke:var(--status-error)}.spine-picker__handle[data-v-c1591c83]{background:transparent;border:0;cursor:grab;display:grid;height:var(--touch-standard);inset-inline-start:calc(var(--x)*100%);padding:0;place-items:center;position:absolute;top:calc(var(--y)*100%);touch-action:none;transform:translate(-50%,-50%) scale(calc(1/var(--zoom)));width:var(--touch-standard)}.spine-picker__dot[data-v-c1591c83]{background-color:var(--interactive-primary);border:var(--border-medium) solid var(--text-on-primary);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);height:var(--space-5);width:var(--space-5)}.spine-picker__handle--active .spine-picker__dot[data-v-c1591c83],.spine-picker__handle:focus-visible .spine-picker__dot[data-v-c1591c83]{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.spine-picker__loupe[data-v-c1591c83]{--loupe-photo-w:calc(var(--photo-w)*var(--loupe-scale));--loupe-photo-h:calc(var(--photo-h)*var(--loupe-scale));background-color:var(--surface-secondary);border:var(--border-medium) solid var(--text-on-primary);border-radius:var(--radius-full);box-shadow:var(--shadow-md);height:var(--spine-picker-loupe-size);inset-block-start:var(--inset-card-tight);overflow:hidden;pointer-events:none;position:absolute;width:var(--spine-picker-loupe-size)}.spine-picker__loupe[data-side=start][data-v-c1591c83]{inset-inline-start:var(--inset-card-tight)}.spine-picker__loupe[data-side=end][data-v-c1591c83]{inset-inline-end:var(--inset-card-tight)}.spine-picker__loupe[data-v-c1591c83]:after,.spine-picker__loupe[data-v-c1591c83]:before{background-color:var(--interactive-primary);content:"";inset-block-start:50%;inset-inline-start:50%;position:absolute;transform:translate(-50%,-50%);z-index:var(--z-raised)}.spine-picker__loupe[data-v-c1591c83]:before{height:var(--border-medium);width:var(--space-5)}.spine-picker__loupe[data-v-c1591c83]:after{height:var(--space-5);width:var(--border-medium)}.spine-picker__loupe-photo[data-v-c1591c83]{height:var(--loupe-photo-h);inset-block-start:calc(var(--spine-picker-loupe-size)/2 - var(--y)*var(--loupe-photo-h));inset-inline-start:calc(var(--spine-picker-loupe-size)/2 - var(--x)*var(--loupe-photo-w));position:absolute;width:var(--loupe-photo-w)}.spine-picker__footer[data-v-c1591c83]{align-items:center;display:flex;flex-shrink:0;gap:var(--gap-inline-loose);justify-content:space-between}.spine-picker__hint[data-v-c1591c83]{flex:1}.spine-picker__tools[data-v-c1591c83]{align-items:center;display:flex;gap:var(--gap-inline-tight)}.fade-enter-active[data-v-c1591c83],.fade-leave-active[data-v-c1591c83]{transition:opacity var(--duration-fast) var(--ease-default)}.fade-enter-from[data-v-c1591c83],.fade-leave-to[data-v-c1591c83]{opacity:0}
