.range-wrap{display:flex;align-items:center;height:var(--touch-target-min)}.range{width:100%;height:var(--touch-target-min);margin:0;accent-color:var(--color-accent);cursor:pointer}.range:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.work-detail__header{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3) var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.work-detail__header-title{font-size:clamp(1.125rem,2.5vw,1.5rem);font-weight:400;line-height:1.2;letter-spacing:0;min-width:0}.work-detail__header-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.work-detail__header-tag{font-size:.75rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-soft)}.work-detail__stage{display:grid;grid-template-columns:minmax(0,1fr) min(320px,34vw);min-height:min(70vh,680px);border-bottom:1px solid var(--color-border)}.work-detail__canvas{grid-column:1;grid-row:1;background:#0a0a0a;min-height:320px;display:flex;align-items:center;justify-content:center}.work-detail__canvas-scroll-hint{grid-column:1 / -1;display:none}.work-detail__canvas .curve-work-canvas-host{width:100%;height:100%;min-height:min(70vh,680px)}.work-detail__canvas .curve-work-canvas-host.work-canvas{height:100%}.work-detail__prose{margin-top:var(--space-8);max-width:68ch}.work-detail__pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-12);max-width:68ch}.work-detail__pager-link{min-height:5.5rem;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);text-decoration:none;background:#ffffff05;transition:border-color .2s ease,color .2s ease,background-color .2s ease,box-shadow .2s ease}.work-detail__pager-link:hover,.work-detail__pager-link:focus-visible{border-color:var(--accent-border);color:var(--color-accent);background:rgba(var(--color-accent-rgb),.045)}.work-detail__pager-link:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--color-accent-rgb),.14)}.work-detail__pager-link span{display:block;margin-bottom:var(--space-2);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.work-detail__pager-link strong{display:block;font-size:.9375rem;font-weight:400;line-height:1.4}.work-detail__pager-link--next{text-align:right}.work-detail__pager-link--disabled{color:var(--color-text-muted);opacity:.45;cursor:default}.work-detail__pager-link--disabled:hover{border-color:var(--color-border);color:var(--color-text-muted)}.controls-panel{min-height:200px;padding:var(--space-6);background:linear-gradient(145deg,rgba(var(--color-accent-rgb),.035),transparent 48%),var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:inset 0 1px #ffffff09;display:flex;flex-direction:column;gap:var(--space-6);scrollbar-color:var(--color-border-strong) transparent;scrollbar-width:thin}.controls-panel:focus-within{border-color:var(--accent-border);box-shadow:inset 2px 0 rgba(var(--color-accent-rgb),.16),inset 0 1px #ffffff09}.controls-panel--stage{position:sticky;top:var(--nav-height);align-self:start;max-height:calc(100vh - var(--nav-height));overflow-y:auto;border-radius:0;border:none;border-left:1px solid var(--color-border);min-height:min(70vh,680px)}.work-detail__controls{grid-column:2;grid-row:1;min-width:0}.work-detail__controls-toggle{display:none;list-style:none;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:var(--touch-target-min);padding:var(--space-4) var(--space-6);background:var(--color-surface);border-top:1px solid var(--color-border);font-size:.875rem;font-weight:500;color:var(--color-text);cursor:pointer;user-select:none;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease}.work-detail__controls-toggle:hover,.work-detail__controls-toggle:focus-visible{color:var(--color-accent);background:var(--color-surface-raised)}.work-detail__controls-toggle:focus-visible{outline:none;box-shadow:inset 0 0 0 2px rgba(var(--color-accent-rgb),.32)}.work-detail__controls-toggle-label{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.work-detail__controls-toggle-text--open{display:none}.work-detail__controls-toggle-hint{font-size:.75rem;font-weight:400;color:var(--color-text-muted)}.work-detail__controls[open] .work-detail__controls-toggle-text{display:none}.work-detail__controls[open] .work-detail__controls-toggle-text--open{display:block}.work-detail__controls[open] .work-detail__controls-toggle-hint{display:none}.work-detail__controls-toggle::-webkit-details-marker{display:none}.work-detail__controls-toggle:after{content:"";flex-shrink:0;width:.45rem;height:.45rem;border-right:1.5px solid var(--color-text-muted);border-bottom:1.5px solid var(--color-text-muted);transform:rotate(45deg);transform-origin:50% 35%;transition:transform .2s ease}.work-detail__controls[open] .work-detail__controls-toggle:after{transform:rotate(-135deg)}.control-field{display:flex;flex-direction:column;gap:var(--space-2)}.control-field label{font-size:.8125rem;font-weight:500;letter-spacing:.02em;color:var(--color-text-muted)}.controls-panel__section-label{margin:0 0 var(--space-4);font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.controls-panel__section .control-field+.control-field{margin-top:0}@media(max-width:1023px){.work-detail__stage{grid-template-columns:1fr;min-height:0}.work-detail__canvas{grid-column:1;grid-row:1}.work-detail__canvas-scroll-hint{grid-column:1;grid-row:2}.work-detail__controls{grid-column:1;grid-row:3}.work-detail__canvas,.work-detail__canvas .curve-work-canvas-host,.work-detail__canvas canvas{touch-action:pan-y}.work-detail__canvas .curve-work-canvas-host{min-height:min(42vh,420px)}.work-detail__canvas-scroll-hint{display:block;margin:0;padding:var(--space-2) var(--space-6);text-align:center;font-size:.75rem;color:var(--color-text-muted);background:var(--color-bg);border-top:1px solid var(--color-border);touch-action:pan-y}.work-detail__controls-toggle{display:flex}.work-detail__controls:not([open]) .controls-panel--stage{display:none}.controls-panel--stage{position:static;max-height:none;min-height:0;border-left:none;border-top:none}.work-detail__pager{grid-template-columns:1fr}.work-detail__pager-link--next{text-align:left}}@media(min-width:1024px){.work-detail__controls .controls-panel--stage{display:flex}}
