.lib{--lib-ease: var(--ease-out);--lib-ledge: 14px;position:relative;padding:3rem 1.25rem 3.5rem;border-radius:var(--radius-xl);background:var(--color-neutral-100)}@media(min-width:48rem){.lib{padding:4rem 3rem 4.5rem}}@media(min-width:80rem){.lib{padding:4.5rem 4.5rem 5rem}}.lib-ledge{position:relative;z-index:0;height:var(--lib-ledge);border-radius:var(--radius-xs);background:linear-gradient(180deg,color-mix(in srgb,var(--color-neutral-200) 32%,var(--color-neutral-000)) 0 45%,var(--color-neutral-000) 45% 100%);box-shadow:0 1px 0 var(--color-neutral-200),0 24px 28px -20px #020f3052}.bk{--w: clamp(100px, 7vw + 28px, 128px);--t: 14px;--ry: 12deg;--lift: 0px;position:relative;display:block;width:var(--w);aspect-ratio:5 / 7;text-align:left;container-type:inline-size;perspective:1200px;perspective-origin:30% 40%;transition:opacity .32s linear}.bk--desk{--w: clamp(180px, 16vw + 60px, 280px);--t: 24px;--ry: 24deg}.bk--flutter{--bk-ground: #03267f;--bk-spine: var(--color-blue-300);--bk-ink: var(--color-blue-100);--bk-soft: var(--color-blue-40);--bk-tex: url(/assets/images/whitepapers/library/texture-blue.png)}.bk--ai{--bk-ground: #185c18;--bk-spine: var(--color-green-300);--bk-ink: var(--color-green-100);--bk-soft: #ccffcc;--bk-tex: url(/assets/images/whitepapers/library/texture-green.png)}.bk--genui{--bk-ground: #390f96;--bk-spine: var(--color-purple-300);--bk-ink: var(--color-purple-100);--bk-soft: #c6b3ee;--bk-tex: url(/assets/images/whitepapers/library/texture-purple.png)}.bk:after{content:"";position:absolute;left:4%;right:-10%;bottom:-5px;height:12px;border-radius:50%;background:radial-gradient(closest-side,#020f3057,#020f3000);transition:transform .5s var(--lib-ease),opacity .5s var(--lib-ease)}.bk__body{position:absolute;inset:0;transform-style:preserve-3d;transform:translateY(calc(var(--lift) * -1)) rotateY(var(--ry));transition:transform .56s var(--lib-ease)}.bk__front,.bk__back,.bk__spine,.bk__pages{position:absolute;top:0;height:100%;backface-visibility:hidden}.bk__front{inset:0;display:flex;flex-direction:column;padding:10cqw 9cqw 10cqw 12cqw;overflow:hidden;color:var(--bk-ink);background:var(--bk-tex) center / 100% 100% no-repeat,var(--bk-ground);image-rendering:pixelated;transform:translateZ(calc(var(--t) / 2));box-shadow:10px 14px 24px -12px #020f3073}.bk__back{inset:0;background:var(--bk-spine);transform:rotateY(180deg) translateZ(calc(var(--t) / 2))}.bk__spine{left:calc(50% - var(--t) / 2);width:var(--t);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding-block:10px 8px;overflow:hidden;background:linear-gradient(90deg,#ffffff14,#fff0 40%,#020f304d),var(--bk-spine);transform:rotateY(-90deg) translateZ(calc(var(--w) / 2))}.bk__spine-title{writing-mode:vertical-rl;max-height:78%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:var(--font-mono);font-size:calc(var(--t) * .5);line-height:1;letter-spacing:.02em;color:color-mix(in srgb,var(--bk-ink) 82%,transparent)}.bk__spine-mark{writing-mode:vertical-rl;font-family:var(--font-mono);font-size:calc(var(--t) * .42);font-weight:600;letter-spacing:.08em;color:var(--bk-soft)}.bk--shelf .bk__spine-title,.bk--shelf .bk__spine-mark{display:none}.bk__pages{top:2px;height:calc(100% - 4px);left:calc(50% - var(--t) / 2);width:var(--t);background:repeating-linear-gradient(90deg,var(--color-neutral-000) 0 1px,color-mix(in srgb,var(--color-neutral-200) 45%,var(--color-neutral-000)) 1px 2px);transform:rotateY(90deg) translateZ(calc(var(--w) / 2 - 2px))}.bk__label{position:relative;font-family:var(--font-mono);font-size:6cqw;line-height:1;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--bk-ink) 84%,transparent)}.bk__icon{position:relative;display:block;width:30cqw;margin-top:auto;color:var(--bk-ink);--tile: var(--bk-ground)}.bk__icon svg{display:block;width:100%;height:auto}.bk__title{position:relative;margin-top:7cqw;font-size:11cqw;line-height:1.06;font-weight:500;letter-spacing:-.015em;text-wrap:balance;image-rendering:auto}.bk[data-long] .bk__title{font-size:9.6cqw}.lib-desk{position:relative;scroll-margin-top:6rem}.lib-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:2.5rem;align-items:end;padding-top:3.5rem}@media(min-width:62rem){.lib-panel{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:4rem;padding-top:0}}.lib-panel[hidden]{display:none}.lib-panel__copy{display:flex;flex-direction:column;gap:1.125rem;max-width:36rem;padding-bottom:0}@media(min-width:62rem){.lib-panel__copy{align-self:center;padding-block:3rem 5rem}}.lib-panel__meta{margin:0;font-family:var(--font-mono);font-size:.875rem;line-height:1;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--color-neutral-400)}.lib-panel__meta:before{content:"";display:inline-block;width:.5rem;height:.5rem;margin-right:.75rem;background:var(--accent, var(--color-blue-200));vertical-align:1px}.lib-panel__title{margin:0;font-size:clamp(2rem,3.4vw,3rem);line-height:1.08;letter-spacing:-.025em;font-weight:400;color:var(--color-navy);text-wrap:balance}.lib-panel__sub{margin:0;max-width:32rem;font-size:1.125rem;line-height:1.625rem;color:var(--color-neutral-400)}.lib-panel__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:.75rem}.lib-cta{display:inline-flex;align-items:center;gap:.625rem;padding:.875rem 1.5rem;background:var(--btn-primary-bg, var(--color-blue-200));color:#fff;font-size:1rem;font-weight:500;transition:background-color var(--dur-base) ease-out}.lib-cta:hover{background:var(--color-blue-80)}.lib-cta:focus-visible{outline:2px solid var(--color-blue-200);outline-offset:3px}.lib-cta svg{transition:transform .22s var(--lib-ease)}.lib-cta:hover svg{transform:translate(3px)}.lib-panel__tag{font-family:var(--font-mono);font-size:.875rem;line-height:1;letter-spacing:.04em;text-transform:uppercase;color:var(--color-neutral-400)}.lib-panel__book{position:relative;z-index:1;justify-self:center;margin-bottom:-6px}@media(min-width:62rem){.lib-panel__book{justify-self:start}}.lib-panel__book:hover .bk{--ry: 16deg;--lift: 6px}.lib-panel__index{position:absolute;top:.5rem;right:6.5rem;margin:0;font-family:var(--font-mono);font-size:.875rem;line-height:1;font-weight:600;letter-spacing:.02em;color:var(--color-navy)}.lib-panel__index span{color:var(--color-neutral-400)}.lib-desk__nav{position:absolute;top:0;right:0;z-index:2;display:flex;gap:.5rem}.lib-step{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-xs);background:var(--color-navy);color:#fff;cursor:pointer;transition:background-color var(--dur-fast) linear}.lib-step:hover{background:var(--color-blue-200)}.lib-step:focus-visible{outline:2px solid var(--color-blue-200);outline-offset:3px}.lib-panel.is-in .lib-panel__book .bk{animation:lib-fade .42s linear both}.lib-panel.is-in .lib-panel__book .bk__body{animation:lib-swing .82s var(--lib-ease) both}.lib-panel.is-in .lib-panel__copy>*{animation:lib-rise .52s var(--lib-ease) both}.lib-panel.is-in .lib-panel__copy>:nth-child(2){animation-delay:50ms}.lib-panel.is-in .lib-panel__copy>:nth-child(3){animation-delay:.1s}.lib-panel.is-in .lib-panel__copy>:nth-child(4){animation-delay:.15s}@keyframes lib-fade{0%{opacity:0}}@keyframes lib-swing{0%{transform:translateY(-36px) rotateY(68deg)}}@keyframes lib-rise{0%{opacity:0;transform:translateY(12px)}}.lib-case{display:flex;flex-wrap:wrap;gap:3.5rem 2.5rem;margin-top:4.5rem}.lib-cmp{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem}@media(min-width:48rem){.lib-cmp{grid-template-columns:auto minmax(0,1fr);gap:0 1.25rem}}.lib-cmp__label{display:flex;align-items:center;gap:.625rem;margin:0;font-family:var(--font-mono);font-size:.875rem;line-height:1;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-neutral-400)}.lib-cmp__label:before{content:"";width:.5rem;height:.5rem;background:var(--accent)}.lib-cmp__count{color:var(--color-blue-200)}@media(min-width:48rem){.lib-cmp__label{writing-mode:vertical-rl;transform:rotate(180deg);align-self:end;padding-top:var(--lib-ledge)}.lib-cmp__label:before{order:0}}.lib-cmp__shelf{min-width:0}.lib-cmp__books{position:relative;z-index:1;display:flex;align-items:flex-end;gap:1.375rem;margin:0 0 -6px;padding:1.5rem 1.25rem 0;list-style:none}@media(max-width:47.99rem){.lib-cmp__shelf{margin-inline:-1.25rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none}.lib-cmp__shelf::-webkit-scrollbar{display:none}.lib-cmp__books{width:max-content;padding-inline:1.25rem}.lib-cmp__books>li{scroll-snap-align:start;scroll-margin-left:1.25rem}.lib-cmp__shelf .lib-ledge{margin-inline:1.25rem;min-width:calc(100% - 2.5rem)}}.lib-bk{position:relative;display:block;padding:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.lib-bk:before{content:"";position:absolute;inset:0;border:1px solid var(--color-neutral-200);background:none;opacity:0;transition:opacity .32s linear}@media(hover:hover){.lib-bk:hover .bk{--ry: 34deg;--lift: 12px}.lib-bk:hover .bk:after{transform:scaleX(.86);opacity:.7}}.lib-bk:focus-visible{outline:2px solid var(--color-blue-200);outline-offset:4px}.lib-bk:focus-visible .bk{--lift: 12px}.lib-bk:focus-visible:before{opacity:1;inset:-6px;border:2px solid var(--color-blue-200);background:none;border-radius:var(--radius-xs)}.lib-bk[aria-pressed=true] .bk{--lift: 22px;--ry: 0deg;opacity:0}.lib-bk[aria-pressed=true]:before{opacity:1}.lib-bk[aria-pressed=true]:focus-visible:before{border-color:var(--color-blue-200)}@media(prefers-reduced-motion:reduce){.bk,.bk:after,.bk__body,.lib-bk:before{transition:none}.lib-panel.is-in .lib-panel__book .bk,.lib-panel.is-in .lib-panel__book .bk__body,.lib-panel.is-in .lib-panel__copy>*{animation:none}}
