.pb-root{position:relative;display:block;perspective:2200px;cursor:pointer;filter:drop-shadow(0 12px 22px rgba(0,0,0,.2)) drop-shadow(0 3px 8px rgba(0,0,0,.1));transition:filter .6s ease}.pb-root:hover{filter:drop-shadow(0 18px 30px rgba(0,0,0,.26)) drop-shadow(0 5px 12px rgba(0,0,0,.12))}.pb-book{--pb-thickness: 20px;position:relative;width:100%;aspect-ratio:1 / 1.5;transform-style:preserve-3d;transform:rotateY(22deg);border-radius:2px 3px 3px 2px;background:linear-gradient(90deg,hsl(var(--muted)),hsl(var(--card)) 5% 94%,hsl(var(--muted)));transition:transform .6s cubic-bezier(.2,.82,.2,1)}.pb-root:hover .pb-book{transform:rotateY(40deg)}.pb-front,.pb-spine{position:absolute;top:0;bottom:0}.pb-front{left:0;right:0;transform-origin:0% 50%;transform:translateZ(var(--pb-thickness));transform-style:preserve-3d;border-radius:2px 3px 3px 2px;overflow:hidden;background:hsl(var(--card));box-shadow:inset 6px 0 16px -8px #00000059}.pb-front:after{content:"";position:absolute;top:0;bottom:0;left:7px;width:2px;background:#00000029;box-shadow:1px 0 2px #ffffff24;z-index:30;pointer-events:none}.pb-spine{left:0;width:var(--pb-thickness);transform-origin:0% 50%;transform:rotateY(-90deg);border-radius:3px 0 0 3px;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background-color .5s ease}.pb-spine:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffffff24,#0000002e);pointer-events:none}.pb-spine-label{position:relative;z-index:1;writing-mode:vertical-rl;max-height:86%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-serif, ui-serif, Georgia, serif);font-size:11px;font-weight:500;letter-spacing:.04em;color:hsl(var(--primary-foreground))}@keyframes agent-aurora-breathe{0%{opacity:calc(var(--agent-aurora-peak, .08) * .75)}to{opacity:var(--agent-aurora-peak, .08)}}.agent-aurora__fill{position:absolute;inset:0;opacity:var(--agent-aurora-peak, .08);animation:agent-aurora-breathe 19s ease-in-out infinite alternate}.agent-aurora--idle .agent-aurora__fill{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.agent-aurora__fill{animation:none}}
