.landing{background:var(--bg-canvas);background-image:radial-gradient(ellipse 70% 50% at 80% 10%, color-mix(in srgb, var(--brand-primary) 8%, transparent) 0%, transparent 60%), radial-gradient(ellipse 50% 40% at 10% 90%, color-mix(in srgb, var(--info) 7%, transparent) 0%, transparent 50%);flex-direction:column;min-height:100vh;display:flex}.landing-nav{padding:var(--space-6) var(--space-10);justify-content:space-between;align-items:center;display:flex}.landing-logo{font-family:var(--font-display);letter-spacing:-.02em;color:var(--brand-primary);font-size:24px;font-weight:900}.public-nav__brand{align-items:center;gap:var(--space-2);min-inline-size:0;font-size:20px;text-decoration:none;display:inline-flex}.public-nav__brand-slot{background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.public-nav__brand--tenant{flex-shrink:0;display:inline-flex}.public-nav__brand-tenant-anchor,.public-nav__brand-apex-anchor{align-items:center;gap:var(--space-2);color:inherit;flex-shrink:0;text-decoration:none;display:inline-flex}.public-nav__brand-apex-anchor:hover,.public-nav__brand-apex-anchor:focus-visible{opacity:.88}.public-nav__brand:not(.public-nav__brand--tenant){flex-shrink:0}.public-nav__org-logo{object-fit:contain;object-position:center;display:block}.public-nav__org-logo:not(.public-nav__org-logo--platform){object-position:center;block-size:64px;max-block-size:64px;inline-size:130px;max-inline-size:130px}.public-nav__org-logo--platform{block-size:var(--logo-platform-size,32px);inline-size:auto;max-inline-size:calc(var(--logo-platform-size,32px) * 5)}.public-nav__org-logo--dark,[data-theme=dark] .public-nav__org-logo--light{display:none}[data-theme=dark] .public-nav__org-logo--dark{display:block}.public-nav__brand-apex-anchor .public-nav__brand-slot .public-nav__org-logo,.public-nav__brand:not(.public-nav__brand--tenant) .public-nav__brand-slot .public-nav__org-logo{transform:none}.brand-logo{align-items:center;gap:var(--space-2);min-inline-size:0;color:inherit;text-decoration:none;display:inline-flex}.brand-logo__img{object-fit:contain;max-inline-size:240px;display:block}.brand-logo__img--dark,[data-theme=dark] .brand-logo__img--light{display:none}[data-theme=dark] .brand-logo__img--dark{display:block}.brand-logo__wordmark{font-family:var(--font-display);letter-spacing:-.02em;color:var(--brand-primary);font-weight:900}.brand-logo__suffix{color:var(--fg-muted);letter-spacing:-.01em;font-weight:600}.public-nav__org-name{letter-spacing:-.02em;color:var(--fg-default);font-weight:700}.public-nav__brand-divider{background:color-mix(in oklch, currentColor 35%, transparent);flex-shrink:0;block-size:1.4em;inline-size:1px;display:inline-block}.public-nav__aty{font-family:var(--font-display);letter-spacing:-.02em;color:var(--brand-primary);font-weight:900;font-size:calc(var(--logo-platform-size,32px) * .625)}.public-nav__aty--solo{font-size:calc(var(--logo-platform-size,32px) * .6875)}@media (max-width:480px){.public-nav__brand{gap:var(--space-1);font-size:16px}.public-nav__org-logo:not(.public-nav__org-logo--platform){block-size:44px;max-block-size:44px;inline-size:124px;max-inline-size:124px}.public-nav__org-logo--platform{block-size:calc(var(--logo-platform-size,32px) * .8125);max-inline-size:calc(var(--logo-platform-size,32px) * 3.125)}.public-nav__aty{font-size:calc(var(--logo-platform-size,32px) * .5)}.public-nav__aty--solo{font-size:calc(var(--logo-platform-size,32px) * .5625)}}.landing-nav-links{gap:var(--space-2);align-items:center;display:flex}.landing-hero{text-align:center;padding:var(--space-10) var(--space-6) var(--space-20);justify-content:center;align-items:center;gap:var(--space-6);flex-direction:column;flex:1;max-width:760px;margin:0 auto;display:flex}.landing-eyebrow{border-radius:var(--radius-full);background:var(--brand-primary-subtle);color:var(--brand-primary);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;align-items:center;padding:6px 16px;font-size:12px;font-weight:800;display:inline-flex}.landing-title{font-family:var(--font-display);color:var(--fg-default);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(40px,6vw,64px);font-weight:900;line-height:1.05}.landing-title .spark{color:var(--brand-primary)}.landing-subtitle{color:var(--fg-muted);text-wrap:pretty;max-width:560px;margin:0;font-size:clamp(16px,2vw,19px);line-height:1.55}.landing-cta-row{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.landing-feature-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));width:100%;max-width:720px;margin-top:28px;display:grid}.landing-feature{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-5);text-align:left;box-shadow:var(--shadow-xs);transition:transform var(--duration-medium) var(--ease-out), box-shadow var(--duration-medium) var(--ease-out), border-color var(--duration-medium) var(--ease-out)}.landing-feature:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.landing-feature-icon{border-radius:var(--radius-lg);width:40px;height:40px;margin-bottom:var(--space-3);justify-content:center;align-items:center;font-size:20px;display:flex}.landing-feature h3{font-family:var(--font-display);color:var(--fg-default);margin:0 0 4px;font-size:15px;font-weight:800}.landing-feature p{color:var(--fg-muted);margin:0;font-size:13px;line-height:1.5}.landing-footer{padding:var(--space-6) var(--space-10);gap:var(--space-6);color:var(--fg-subtle);border-top:1px solid var(--border-default);flex-wrap:wrap;justify-content:center;font-size:13px;display:flex}.landing-footer a{color:var(--fg-muted);font-weight:600;text-decoration:none}.landing-footer a:hover{color:var(--brand-primary)}.prose-page{min-height:100vh;padding:var(--space-20) var(--space-6);background:var(--bg-canvas)}.prose{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-2xl);max-width:680px;box-shadow:var(--shadow-sm);padding:var(--space-12) var(--space-10);margin:0 auto}.prose h1{font-family:var(--font-display);letter-spacing:-.03em;color:var(--fg-default);margin:0 0 var(--space-2) 0;font-size:36px;font-weight:900}.prose .prose-lede{font-family:var(--font-display);color:var(--fg-muted);margin:0 0 var(--space-8) 0;font-size:15px;font-weight:600}.prose h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-default);margin:var(--space-8) 0 var(--space-3) 0;font-size:20px;font-weight:800}.prose p{color:var(--fg-default);text-wrap:pretty;margin:0 0 14px;font-size:15px;line-height:1.7}.prose code{font-family:var(--font-mono);background:var(--bg-subtle);color:var(--brand-primary);border-radius:var(--radius-md);padding:2px 8px;font-size:.88em}.prose-back{margin-top:var(--space-6);color:var(--brand-primary);font-family:var(--font-display);align-items:center;gap:6px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.prose-back:hover{color:var(--brand-primary-hover)}.public-nav{z-index:var(--z-sticky);background:var(--bg-surface);border-bottom:1px solid var(--border-default);height:64px;padding:0 var(--space-6);align-items:center;display:flex;position:sticky;top:0}.public-nav-inner{align-items:center;gap:var(--space-6);inline-size:100%;max-inline-size:min(1440px,100%);margin:0 auto;display:flex}@media (min-width:2400px){.public-main,.public-nav-inner{max-inline-size:min(1680px,100%)}}@media (min-width:3200px){.public-main,.public-nav-inner{max-inline-size:min(1920px,100%)}}.public-nav-links{gap:var(--space-4);flex:1;display:flex}.public-nav-link{color:var(--fg-default);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:13px;font-weight:500;text-decoration:none}.public-nav-link:hover{background:var(--bg-subtle)}.public-nav[data-sticky=false]{position:static}.public-nav--centered .public-nav-links{flex:0 auto;margin-inline:auto}.public-nav--split .public-nav-links{flex:0 auto}.public-nav--minimal .public-nav-links{display:none}.public-nav-actions{align-items:center;gap:8px;margin-inline-start:auto;display:flex}.public-nav-burger{margin-inline-start:auto;display:none}.public-nav--minimal .public-nav-burger{display:none!important}.public-nav-burger>summary{cursor:pointer;background:0 0;border:none;list-style:none}.public-nav-burger>summary::-webkit-details-marker{display:none}.public-nav-burger>summary::marker{content:""}.public-nav-burger[open]>summary{background:var(--bg-subtle)}.public-nav-burger[open]:before{content:"";-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--z-sticky,50);pointer-events:none;background:#00000059;background:lab(0% 0 0/.35);position:fixed;inset:64px 0 0}.public-nav-burger-panel{background:var(--bg-elevated,var(--bg-surface));border-block-end:1px solid var(--border-default);padding:var(--space-4) var(--space-3) var(--space-5);gap:var(--space-2);z-index:calc(var(--z-sticky,50) + 1);max-block-size:calc(100dvh - 64px);animation:public-nav-burger-slide var(--duration-medium,.2s) var(--ease-out,ease-out);flex-direction:column;display:flex;position:fixed;inset-block-start:64px;inset-inline:0;overflow-y:auto;box-shadow:0 12px 32px -8px #0000002e;box-shadow:0 12px 32px -8px lab(0% 0 0/.18)}@keyframes public-nav-burger-slide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.public-nav-burger-section{flex-direction:column;gap:2px;display:flex}.public-nav-burger-section+.public-nav-burger-section{border-block-start:1px solid var(--border-subtle,var(--border-default));margin-block-start:var(--space-3);padding-block-start:var(--space-3)}.public-nav-burger-link{align-items:center;gap:var(--space-3);color:var(--fg-default);border-radius:var(--radius-md);text-align:start;cursor:pointer;background:0 0;border:0;min-block-size:44px;inline-size:100%;padding:12px 14px;font-family:inherit;font-size:16px;font-weight:500;text-decoration:none;display:flex}.public-nav-burger-link:hover,.public-nav-burger-link:focus-visible{background:var(--bg-subtle);outline:none}.public-nav-burger-link-icon{block-size:22px;inline-size:22px;color:var(--fg-muted);place-items:center;display:inline-grid}.public-nav-burger-link--inert{justify-content:space-between}.public-nav-burger-link--inert:hover,.public-nav-burger-link--inert:focus-within{background:0 0}.public-nav-burger-link--cta{background:var(--brand-primary);color:var(--brand-fg-on-primary);justify-content:center;font-weight:600}.public-nav-burger-link--cta:hover,.public-nav-burger-link--cta:focus-visible{background:var(--brand-primary-hover)}.public-nav-burger-link--login{background:var(--bg-surface);border:1px solid var(--border-default);justify-content:center;font-weight:600}.public-nav-burger-link--logout{color:var(--danger)}.public-nav-burger-userinfo{flex-direction:column;gap:2px;min-width:0;padding:8px 14px 14px;display:flex}.public-nav-burger-userinfo strong{color:var(--fg-default);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.public-nav-burger-userinfo .muted{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.public-nav-burger-logout-form{inline-size:100%;margin:0;padding:0}@media (max-width:900px){.public-nav .public-nav-links,.public-nav .public-nav-actions{display:none!important}.public-nav-burger{display:block}.public-nav{padding-inline:var(--space-4)}.public-nav-inner{gap:var(--space-3)}}@media (max-width:480px){.public-nav{padding-inline:var(--space-3)}.public-nav-inner{gap:var(--space-2)}}.nav-icon-btn{border-radius:10px;place-items:center;block-size:36px;inline-size:36px;padding:0;display:inline-grid}.nav-icon-btn svg{block-size:18px;inline-size:18px;color:inherit;stroke:currentColor;display:block}.user-menu{position:relative}.user-menu summary{cursor:pointer;outline-offset:2px;background:0 0;border:none;border-radius:999px;place-items:center;padding:0;list-style:none;display:inline-grid}.user-menu summary::-webkit-details-marker{display:none}.user-menu summary::marker{content:""}.user-menu[open] summary .avatar-placeholder{box-shadow:0 0 0 2px var(--brand-primary,#6c4ef6)}.user-menu-pop{background:var(--bg-surface);border:1px solid var(--border-default);z-index:100;border-radius:12px;flex-direction:column;gap:2px;min-inline-size:240px;padding:6px;display:flex;position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;box-shadow:0 12px 32px -16px #00000059,0 2px 6px #0000001f;box-shadow:0 12px 32px -16px lab(0% 0 0/.35),0 2px 6px lab(0% 0 0/.12)}.user-menu-info{border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:2px;min-width:0;margin-bottom:4px;padding:10px 12px 12px;display:flex}.user-menu-info strong{color:var(--fg-default);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.user-menu-info .muted{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.user-menu-item{color:var(--fg-default);text-align:start;cursor:pointer;inline-size:100%;font-size:14px;font:inherit;background:0 0;border:0;border-radius:8px;padding:8px 12px;text-decoration:none;transition:background .1s;display:block}.user-menu-item:hover,.user-menu-item:focus-visible{background:var(--bg-subtle);outline:none}.user-menu-logout-form{margin:0}.user-menu-logout{color:var(--danger);border-top:1px solid var(--border-subtle);border-radius:0 0 8px 8px;margin-top:4px;padding-top:10px}.user-menu-logout:hover,.user-menu-logout:focus-visible{background:color-mix(in oklab, var(--danger) 8%, transparent)}.public-footer{border-top:1px solid var(--border-default);padding:clamp(var(--space-8), 4vmin, var(--space-12)) clamp(var(--space-6), 6vmin, var(--space-10));background:var(--bg-surface);color:var(--fg-muted);font-size:14px}.public-footer__top{gap:var(--space-10);grid-template-columns:minmax(220px,1fr) 3fr;align-items:start;max-width:1280px;margin:0 auto;display:grid}.public-footer--big .public-footer__top{grid-template-columns:minmax(260px,1fr) 4fr}@media (max-width:760px){.public-footer__top{gap:var(--space-6);grid-template-columns:1fr}}.public-footer__brand{align-content:start;gap:8px;display:grid}.public-footer__logo{object-fit:contain;max-width:180px;height:36px;display:block}.public-footer__wordmark{font-family:var(--font-display);letter-spacing:-.015em;color:var(--fg-default);font-size:18px;font-weight:800}.public-footer__tagline{color:var(--fg-muted);text-wrap:pretty;max-inline-size:36ch;margin:0;font-size:13px;line-height:1.55}.public-footer__cols{gap:clamp(var(--space-5), 3vmin, var(--space-8));grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.public-footer__col h3{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-default);margin:0 0 10px;font-size:12px;font-weight:700}.public-footer__col ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.public-footer__col a{color:var(--fg-muted);transition:color var(--duration-fast);font-size:13px;text-decoration:none}.public-footer__col a:hover{color:var(--brand-primary)}.public-footer__bottom{max-width:1280px;margin:var(--space-8) auto 0;border-top:1px solid var(--border-subtle);align-items:center;gap:var(--space-5);color:var(--fg-subtle);flex-wrap:wrap;padding-block-start:var(--space-5);font-size:12px;display:flex}.public-footer__copy{color:var(--fg-muted);font-weight:500}.public-footer__legal{gap:var(--space-4);flex-wrap:wrap;margin-inline-start:auto;display:flex}.public-footer__legal a{color:var(--fg-muted);font-weight:500;text-decoration:none}.public-footer__legal a:hover{color:var(--brand-primary)}.public-footer__social{gap:6px;display:inline-flex}.public-footer__social-link{background:var(--bg-subtle);block-size:32px;inline-size:32px;color:var(--fg-muted);transition:background var(--duration-fast), color var(--duration-fast), transform var(--duration-fast);border-radius:50%;place-items:center;font-size:14px;text-decoration:none;display:inline-grid}.public-footer__social-link:hover{background:color-mix(in oklch, var(--brand-primary) 14%, var(--bg-subtle));color:var(--brand-primary);transform:translateY(-1px)}.public-footer--centered{text-align:center;justify-items:center;gap:var(--space-4);padding:clamp(var(--space-10), 5vmin, var(--space-16)) var(--space-6);display:grid}.public-footer--centered .public-footer__brand{justify-items:center}.public-footer--centered .public-footer__legal{justify-content:center;margin:0}.book-card{inline-size:min(200px,100%);min-inline-size:0;color:inherit;transition:transform var(--duration-fast) var(--ease-out);text-decoration:none;display:block}.book-card:hover{transform:translateY(-2px)}.book-card-cover{aspect-ratio:5/7;background:var(--bg-subtle);border-radius:var(--radius-lg);inline-size:100%;max-inline-size:200px;box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-fast) var(--ease-out);overflow:hidden}.book-card-cover .book-cover-tile-initial{font-size:56px}.book-card:hover .book-card-cover{box-shadow:var(--shadow-md)}.book-card-title{margin-top:var(--space-2);font-family:var(--font-display);color:var(--fg-default);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-block-size:2.6em;font-size:14px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.book-card-publisher{color:var(--fg-muted);margin-top:2px;font-size:12px}@media (max-width:640px){.book-card-title{font-size:13px}.book-card-publisher{font-size:11px}}.book-card-wrap{gap:var(--space-2);flex-direction:column;inline-size:min(200px,100%);min-inline-size:0;display:flex;position:relative}.book-card-wrap>.book-card{display:block}.book-card-actions{gap:6px;inline-size:100%;display:flex}.book-card-btn{border-radius:var(--radius-md);text-align:center;cursor:pointer;min-block-size:36px;transition:background var(--duration-fast,.15s) var(--ease-out,ease), color var(--duration-fast,.15s) var(--ease-out,ease), border-color var(--duration-fast,.15s) var(--ease-out,ease);border:1px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.book-card-btn--primary{background:var(--brand-primary,var(--accent));color:var(--brand-on-primary,#fff);border-color:var(--brand-primary,var(--accent))}.book-card-btn--primary:hover{background:color-mix(in srgb, var(--brand-primary,var(--accent)) 88%, black);border-color:color-mix(in srgb, var(--brand-primary,var(--accent)) 88%, black)}.book-card-btn--primary:focus-visible{outline:2px solid var(--brand-primary,var(--accent));outline-offset:2px}.book-card-btn--secondary{color:var(--fg-default);border-color:var(--border-strong,color-mix(in srgb, currentColor 22%, transparent));background:0 0}.book-card-btn--secondary:hover{background:color-mix(in srgb, currentColor 6%, transparent);border-color:var(--brand-primary,var(--accent));color:var(--brand-primary,var(--accent))}.book-card-btn--secondary:focus-visible{outline:2px solid var(--brand-primary,var(--accent));outline-offset:2px}.book-card-btn:disabled,.book-card-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.book-card-btn--full{flex:100%}@media (max-width:640px){.book-card-btn{min-block-size:34px;padding:7px 8px;font-size:12px}}.set-card-wrap{gap:var(--space-2);flex-direction:column;inline-size:min(200px,100%);min-inline-size:0;display:flex;position:relative}.set-card{appearance:none;font:inherit;color:inherit;text-align:start;cursor:pointer;inline-size:100%;transition:transform var(--duration-fast) var(--ease-out);background:0 0;border:0;margin:0;padding:0;display:block}.set-card:hover{transform:translateY(-2px)}.set-card:focus-visible{outline:2px solid var(--brand-primary,var(--accent));outline-offset:4px;border-radius:var(--radius-md)}.set-card-cover{aspect-ratio:5/7;background:var(--bg-subtle);border-radius:var(--radius-lg);inline-size:100%;max-inline-size:200px;box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-fast) var(--ease-out);position:relative;overflow:hidden}.set-card:hover .set-card-cover{box-shadow:var(--shadow-md)}.set-card-cover-img{object-fit:cover;block-size:100%;inline-size:100%;position:absolute;inset:0}.set-card-badge{text-align:center;transform-origin:50%;background:color-mix(in srgb, var(--brand-primary,var(--accent)) 92%, black);inline-size:132px;color:var(--brand-on-primary,#fff);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;padding-block:5px;font-size:13px;font-weight:800;position:absolute;inset-block-start:18px;inset-inline-end:-36px;transform:rotate(45deg);box-shadow:0 2px 6px #0000004d}.set-card-count{color:#fff;font-variant-numeric:tabular-nums;background:#0009;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600;position:absolute;inset-block-end:8px;inset-inline-end:8px}.set-card-title{margin-top:var(--space-2);font-family:var(--font-display);color:var(--fg-default);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-block-size:2.6em;font-size:14px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.set-card-actions{inline-size:100%;display:flex}@media (max-width:640px){.set-card-title{font-size:13px}}.public-shell{min-height:100vh;background:var(--bg-canvas);flex-direction:column;inline-size:100%;min-inline-size:0;max-inline-size:100%;display:flex}.public-main{inline-size:100%;max-inline-size:min(1440px,100%);padding-inline:clamp(12px, 3vw, var(--space-8));flex:1;min-inline-size:0;margin:0 auto}.public-hero{border-radius:var(--radius-2xl);width:100%;height:400px;margin-top:var(--space-6);background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary-hover) 100%);padding:var(--space-12);color:var(--brand-fg-on-primary);flex-direction:column;justify-content:flex-end;display:flex;position:relative;overflow:hidden}@media (max-width:768px){.public-hero{height:320px;padding:var(--space-6);border-radius:var(--radius-lg)}}@media (max-width:640px){.public-hero{height:240px}}.public-hero-eyebrow{letter-spacing:.08em;text-transform:uppercase;opacity:.85;margin-bottom:var(--space-3);font-size:12px;font-weight:700}.public-hero-title{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 var(--space-3);text-wrap:balance;max-width:640px;font-size:clamp(28px,5vw,44px);font-weight:900;line-height:1.05}.public-hero-subtitle{opacity:.9;margin:0 0 var(--space-5);max-width:480px;font-size:16px}.public-hero .btn-secondary{color:var(--brand-primary);background:#fffffff5;border-color:#0000;font-weight:600}.public-hero .btn-secondary:hover:not(:disabled){background:#fff}.category-tile-row{gap:var(--space-4);padding:var(--space-12) 0 var(--space-8);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.category-tile{align-items:center;gap:var(--space-3);padding:var(--space-4);color:var(--fg-default);border-radius:var(--radius-lg);transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.category-tile:hover{background:var(--bg-subtle);transform:translateY(-2px)}.category-tile-icon{border-radius:var(--radius-full);background:var(--brand-primary-subtle);width:96px;height:96px;color:var(--brand-primary);font-family:var(--font-display);letter-spacing:.02em;justify-content:center;align-items:center;font-size:22px;font-weight:800;display:flex}.category-tile-label{color:var(--fg-default);text-align:center;font-size:13px;font-weight:600}.public-strip{padding:var(--space-8) 0;border-top:1px solid var(--border-subtle)}.public-strip:first-of-type{border-top:none}.public-strip-head{margin-bottom:var(--space-5);justify-content:space-between;align-items:baseline;display:flex}.public-strip-head h2{font-family:var(--font-display);color:var(--fg-default);margin:0;font-size:20px;font-weight:700}.public-strip-row{gap:var(--space-5);scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:var(--space-2);display:flex;overflow-x:auto}.public-strip-row::-webkit-scrollbar{display:none}.public-strip-row>*{scroll-snap-align:start;flex-shrink:0}@layer components{.public-main{container:cat/inline-size}.cat-layout{grid-template-columns:280px 1fr;gap:clamp(1rem,.5rem + 2cqi,2.5rem);padding-block:clamp(1rem,.5rem + 2cqi,2rem);display:grid}@container cat not (min-inline-size:900px){.cat-layout{grid-template-columns:1fr}}.cat-header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;padding-block:clamp(1rem,.5rem + 1.5cqi,2rem) .6rem;display:flex}.cat-header h1{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;color:var(--fg-default);margin:0;font-size:clamp(2rem,1.6rem + 1.6cqi,3rem);font-weight:800;line-height:1.1}.cat-header h1:after{content:"";background:linear-gradient(90deg in oklch, oklch(60% .22 var(--brand-h,270)), oklch(70% .2 calc(var(--brand-h,270) + 30)));border-radius:999px;block-size:4px;inline-size:64px;margin-block-start:.6rem;display:block}.cat-count{background:color-mix(in oklab, oklch(60% .18 var(--brand-h,270)), transparent 90%);color:oklch(45% .2 var(--brand-h,270));border:1px solid color-mix(in oklab, oklch(60% .18 var(--brand-h,270)), transparent 70%);letter-spacing:.02em;border-radius:999px;align-items:center;gap:.4rem;padding-block:.4rem;padding-inline:.85rem;font-size:.78rem;font-weight:700;display:inline-flex}.cat-count strong{font-variant-numeric:tabular-nums}.cat-filter-rail{border:1px solid var(--border-default);background:var(--lightningcss-light,#fcfcfc)var(--lightningcss-dark,#171b22);background:var(--lightningcss-light,lab(98.84% .0000298023 -.0000119209))var(--lightningcss-dark,lab(9.45698% -.509754 -5.47932));border-radius:16px;flex-direction:column;align-self:start;gap:1.25rem;padding:1.25rem;display:flex;position:sticky;inset-block-start:calc(64px + 1rem);box-shadow:0 6px 16px -10px #0000001f,0 1px 3px #0000000a;box-shadow:0 6px 16px -10px lab(0% 0 0/.12),0 1px 3px lab(0% 0 0/.04)}.cat-filter-rail:before{content:"";background:linear-gradient(90deg in oklch, oklch(60% .22 var(--brand-h,270)), oklch(70% .2 calc(var(--brand-h,270) + 40)));border-radius:0 0 999px 999px;block-size:3px;position:absolute;inset-block-start:-1px;inset-inline:18px}.cat-filter-rail-head{border-bottom:1px dashed color-mix(in oklab, var(--brand-primary,#516eff) 25%, transparent);justify-content:space-between;align-items:baseline;gap:.5rem;padding-block-end:.75rem;display:flex}@supports (color:lab(0% 0 0)){.cat-filter-rail-head{border-bottom:1px dashed color-mix(in oklab, var(--brand-primary,lab(50.7371% 27.0379 -77.9871)) 25%, transparent)}}.cat-filter-rail-head strong{color:var(--fg-default);font-size:.95rem;font-weight:700}.cat-filter-section{flex-direction:column;gap:.5rem;display:flex}.cat-filter-head{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.08em;margin-block-end:.25rem;font-size:.7rem;font-weight:700}.cat-filter-option{color:var(--fg-default);cursor:pointer;border-radius:8px;align-items:center;gap:.55rem;padding:.35rem .5rem;font-size:.875rem;transition:background .12s,color .12s;display:flex}.cat-filter-option:hover{background:color-mix(in oklab, var(--brand-primary,#516eff) 6%, transparent)}@supports (color:lab(0% 0 0)){.cat-filter-option:hover{background:color-mix(in oklab, var(--brand-primary,lab(50.7371% 27.0379 -77.9871)) 6%, transparent)}}.cat-filter-option input[type=checkbox]{block-size:16px;inline-size:16px;accent-color:oklch(58% .22 var(--brand-h,270));cursor:pointer;flex:none}.cat-sort-row{border:1px solid var(--border-default);background:var(--lightningcss-light,#f8f8f8)var(--lightningcss-dark,#13161b);background:var(--lightningcss-light,lab(97.68% -.0000298023 .0000119209))var(--lightningcss-dark,lab(7.19015% -.368543 -3.62587));border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-block-end:1.25rem;padding:.6rem .75rem;display:flex}.cat-sort-row label{color:var(--fg-muted);align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;display:inline-flex}.cat-sort-row select{font:inherit;border:1px solid var(--border-default);color:var(--fg-default);cursor:pointer;background:var(--lightningcss-light,#fcfcfc)var(--lightningcss-dark,#0e1218);background:var(--lightningcss-light,lab(98.84% .0000298023 -.0000119209))var(--lightningcss-dark,lab(5.21742% -.326842 -4.75592));border-radius:8px;padding-block:.4rem;padding-inline:.75rem;font-size:.875rem}.cat-sort-row select:focus-visible{border-color:oklch(58% .22 var(--brand-h,270));box-shadow:0 0 0 3px color-mix(in oklab, oklch(58% .22 var(--brand-h,270)), transparent 75%);outline:none}.cat-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem 1.25rem;display:grid}@container cat not (max-inline-size:1100px){.cat-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}.cat-empty{background:linear-gradient(160deg in oklch, var(--lightningcss-light,#fcfcfc)var(--lightningcss-dark,#171b22), var(--lightningcss-light,color-mix(in oklab, oklch(60% .18 var(--brand-h,270)), white 92%))var(--lightningcss-dark,color-mix(in oklab, oklch(60% .18 var(--brand-h,270)), oklch(22% .015 260) 92%)));border:1px solid var(--border-default);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:.75rem;margin-block-start:1rem;padding:clamp(2rem,1.5rem + 3cqi,4rem) 2rem;display:flex}@supports (color:lab(0% 0 0)){.cat-empty{background:linear-gradient(160deg in oklch, var(--lightningcss-light,lab(98.84% .0000298023 -.0000119209))var(--lightningcss-dark,lab(9.45698% -.509754 -5.47932)), var(--lightningcss-light,color-mix(in oklab, oklch(60% .18 var(--brand-h,270)), white 92%))var(--lightningcss-dark,color-mix(in oklab, oklch(60% .18 var(--brand-h,270)), oklch(22% .015 260) 92%)))}}.cat-empty-icon{background:color-mix(in oklab, oklch(60% .18 var(--brand-h,270)), transparent 88%);block-size:72px;inline-size:72px;color:oklch(50% .22 var(--brand-h,270));box-shadow:0 6px 20px -8px color-mix(in oklab, oklch(60% .22 var(--brand-h,270)), transparent 60%);border-radius:50%;place-items:center;margin-block-end:.4rem;display:grid}.cat-empty-icon svg{block-size:36px;inline-size:36px}.cat-empty h2{letter-spacing:-.01em;text-wrap:balance;color:var(--fg-default);margin:0;font-size:1.25rem;font-weight:800}.cat-empty p{color:var(--fg-muted);text-wrap:pretty;max-inline-size:50ch;margin:0 0 .75rem;font-size:.95rem}.cat-breadcrumb{color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:.4rem;padding-block:1rem 0;font-size:.85rem;display:flex}.cat-breadcrumb a{color:var(--fg-muted);border-radius:6px;padding:2px 6px;text-decoration:none;transition:background .12s,color .12s}.cat-breadcrumb a:hover{background:color-mix(in oklab, var(--brand-primary,#516eff) 8%, transparent);color:var(--fg-default)}@supports (color:lab(0% 0 0)){.cat-breadcrumb a:hover{background:color-mix(in oklab, var(--brand-primary,lab(50.7371% 27.0379 -77.9871)) 8%, transparent)}}.cat-breadcrumb-sep{color:color-mix(in oklab, var(--fg-muted), transparent 50%);font-size:.7rem}.cat-breadcrumb-current{color:var(--fg-default);font-weight:600}@media (prefers-reduced-motion:reduce){.cat-filter-option,.cat-breadcrumb a{transition:none}}@media (prefers-contrast:more){.cat-filter-rail,.cat-sort-row{border-width:2px}}}.book-detail{gap:var(--space-10);padding:var(--space-6) 0;grid-template-columns:5fr 7fr;display:grid}@media (max-width:768px){.book-detail{gap:var(--space-6);grid-template-columns:1fr}}.book-detail-cover{aspect-ratio:5/7;border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-md);background:var(--bg-subtle);overflow:hidden}.book-detail-info{gap:var(--space-4);flex-direction:column;display:flex}.book-detail-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg-default);text-wrap:balance;margin:0;font-size:clamp(24px,4vw,36px);font-weight:800}.book-detail-meta{gap:var(--space-3);color:var(--fg-muted);flex-wrap:wrap;align-items:center;font-size:13px;display:flex}.book-detail-rating{align-items:center;gap:var(--space-2);color:var(--fg-default);font-size:13px;display:inline-flex}.book-detail-price{font-family:var(--font-display);color:var(--fg-default);font-variant-numeric:tabular-nums;font-size:28px;font-weight:800}.book-detail-cta-row{gap:var(--space-3);padding:var(--space-3) 0;flex-wrap:wrap;display:flex}.book-detail-cta-row>.btn-primary,.book-detail-cta-row>.btn-secondary,.book-detail-cta-row>.btn-outline{height:44px;padding:0 20px}.format-pill{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--fg-default);cursor:pointer;min-height:44px;font-size:13px;text-decoration:none;display:inline-flex}.format-pill:hover:not([aria-disabled=true]){border-color:var(--border-strong);background:var(--bg-subtle)}.format-pill[aria-disabled=true]{color:var(--fg-subtle);cursor:not-allowed;opacity:.6}.format-pill-icon{flex-shrink:0;width:20px;height:20px}.format-pill-meta{color:var(--fg-muted);font-size:11px}.book-detail-tabs{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.book-detail-tab-body{padding:var(--space-5) 0;color:var(--fg-default);font-size:14px;line-height:1.7}.book-detail-tab-body h3{margin:0 0 var(--space-3);color:var(--fg-default);font-size:14px;font-weight:600}.auth-shell{min-height:100vh;padding:var(--space-8) var(--space-4);background:var(--bg-canvas);flex-direction:column;justify-content:center;align-items:center;display:flex}.auth-brand{font-family:var(--font-display);color:var(--brand-primary);letter-spacing:-.02em;margin-bottom:var(--space-8);font-size:24px;font-weight:900}.auth-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-sm);padding:var(--space-8);gap:var(--space-5);flex-direction:column;display:flex}@media (max-width:640px){.auth-card{box-shadow:none;padding:var(--space-6);border:none;max-width:none}}.auth-card h1{font-family:var(--font-display);color:var(--fg-default);text-align:center;margin:0;font-size:22px;font-weight:700}.auth-card-subtitle{color:var(--fg-muted);text-align:center;margin:0;font-size:13px}.auth-divider{align-items:center;gap:var(--space-3);color:var(--fg-subtle);text-transform:uppercase;letter-spacing:.08em;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-default);flex:1;height:1px}.auth-row{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:13px;display:flex}.auth-row label{align-items:center;gap:var(--space-2);color:var(--fg-muted);display:inline-flex}.auth-bottom{text-align:center;color:var(--fg-muted);font-size:13px}.auth-bottom a{color:var(--fg-link);font-weight:500;text-decoration:none}.auth-bottom a:hover{text-decoration:underline}.strength-meter{grid-template-columns:repeat(4,1fr);gap:4px;margin-top:4px;display:grid}.strength-bar{background:var(--bg-muted);border-radius:var(--radius-full);height:4px;transition:background var(--duration-fast) var(--ease-out)}.strength-1 .strength-bar:nth-child(-n+1),.strength-2 .strength-bar:nth-child(-n+2),.strength-3 .strength-bar:nth-child(-n+3),.strength-4 .strength-bar:nth-child(-n+4){background:var(--danger)}.strength-2 .strength-bar:nth-child(-n+2){background:var(--warning)}.strength-3 .strength-bar:nth-child(-n+3){background:var(--data-info,#0ea5e9)}.strength-4 .strength-bar{background:var(--success)}.strength-label{color:var(--fg-muted);margin-top:2px;font-size:11px}.error-page{text-align:center;min-height:100vh;padding:var(--space-10) var(--space-6);justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;max-width:560px;margin:0 auto;display:flex}.error-code{font-family:var(--font-display);color:var(--fg-subtle);letter-spacing:-.04em;font-size:96px;font-weight:900;line-height:1}.error-title{font-family:var(--font-display);color:var(--fg-default);margin:0;font-size:28px;font-weight:800}.error-body{color:var(--fg-muted);max-width:420px;font-size:15px;line-height:1.55}.error-actions{gap:var(--space-3);margin-top:var(--space-3);display:flex}.error-request-id{margin-top:var(--space-6);font-family:var(--font-mono);color:var(--fg-subtle);font-size:11px}@property --home-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --home-hue{syntax:"<number>";inherits:false;initial-value:275}.home-hero{--hero-brand:oklch(from var(--brand-primary,oklch(62% .2 var(--home-hue))) 62% .2 h);--hero-bg:oklch(from var(--brand-primary,oklch(62% .2 var(--home-hue))) 98% .025 h);--hero-fg:oklch(from var(--brand-primary,oklch(62% .2 var(--home-hue))) 22% .04 h);--hero-mute:oklch(from var(--brand-primary,oklch(62% .2 var(--home-hue))) 45% .03 h);isolation:isolate;background:var(--hero-bg);border-radius:clamp(20px,3vmin,32px);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:clamp(20px,4cqi,56px);inline-size:100%;min-inline-size:0;margin-block:clamp(20px,3vmin,36px);padding:clamp(20px,5cqi,72px) clamp(16px,5cqi,64px);display:grid;position:relative;overflow:hidden;container-type:inline-size}.home-hero:before{content:"";z-index:-2;background:conic-gradient(from var(--home-angle), color-mix(in oklch, var(--hero-brand) 26%, transparent), transparent 30%, color-mix(in oklch, oklch(from var(--hero-brand) 70% .16 calc(h + 120)) 22%, transparent) 55%, transparent 80%, color-mix(in oklch, var(--hero-brand) 26%, transparent) 100%);filter:blur(60px);animation:18s linear infinite home-spin;position:absolute;inset:-30%}.home-hero:after{content:"";z-index:-1;background:radial-gradient(circle at 12% 8%, color-mix(in oklch, var(--hero-brand) 14%, transparent) 0, transparent 30%), radial-gradient(circle at 88% 92%, color-mix(in oklch, oklch(from var(--hero-brand) 75% .14 calc(h + 60)) 14%, transparent) 0, transparent 30%);opacity:.8;pointer-events:none;position:absolute;inset:0}[data-theme=dark] .home-hero{--hero-bg:oklch(from var(--brand-primary,oklch(62% .2 var(--home-hue))) 18% .04 h);--hero-fg:oklch(from var(--brand-primary,oklch(62% .2 var(--home-hue))) 96% .012 h);--hero-mute:oklch(from var(--brand-primary,oklch(62% .2 var(--home-hue))) 72% .03 h)}@keyframes home-spin{to{--home-angle:360deg}}@container not (min-inline-size:680px){.home-hero{grid-template-columns:1fr}.home-hero__art{justify-self:center}}.home-hero__eyebrow{letter-spacing:.18em;color:var(--hero-brand);margin:0 0 var(--space-3);text-transform:uppercase;font-size:12px;font-weight:700}.home-hero__title{font-family:var(--font-display);letter-spacing:-.025em;color:var(--hero-fg);margin:0 0 var(--space-4);text-wrap:balance;max-inline-size:22ch;font-size:clamp(28px,5cqi,52px);font-weight:800;line-height:1.05}.home-hero__subtitle{color:var(--hero-mute);margin:0 0 var(--space-6);text-wrap:pretty;max-inline-size:52ch;font-size:clamp(14px,1.6cqi,17px);line-height:1.55}.home-hero__actions{gap:var(--space-3);flex-wrap:wrap;display:inline-flex}.home-hero__cta{--spring:linear(0, .14 4%, .94 17%, 1.12 24%, 1.02 43%, .98 51%, 1 77%, 1);transition:transform .42s var(--spring), background .2s, color .2s;border-radius:999px;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.home-hero__cta:hover{transform:translateY(-2px)}.home-hero__cta:active{transform:translateY(0)}.home-hero__cta--primary{background:var(--hero-brand);color:oklch(from var(--hero-brand) 98% .03 h);box-shadow:0 8px 20px -8px color-mix(in oklch, var(--hero-brand) 70%, transparent), 0 2px 6px -2px color-mix(in oklch, var(--hero-brand) 50%, transparent)}.home-hero__cta--primary:hover{background:oklch(from var(--hero-brand) calc(l + .04) c h)}.home-hero__cta--ghost{background:color-mix(in oklch, var(--hero-fg) 6%, transparent);color:var(--hero-fg)}.home-hero__cta--ghost:hover{background:color-mix(in oklch, var(--hero-fg) 12%, transparent)}.home-hero__art{place-items:center;display:grid}.home-hero__stack{perspective:1000px;block-size:clamp(220px,34cqi,340px);inline-size:clamp(180px,28cqi,280px);transform-style:preserve-3d;position:relative}.home-hero__book{--i:0;--offset:calc(var(--i) * 8px);background:linear-gradient(135deg, oklch(from var(--hero-brand) calc(l + .1) c calc(h + var(--i) * 20)) 0%, oklch(from var(--hero-brand) calc(l - .05) c calc(h + var(--i) * 20)) 100%);transform:translate3d(var(--offset), calc(var(--offset) * -.6), calc(var(--i) * 6px)) rotate(calc((var(--i) - 2.5) * 3deg));animation:6s ease-in-out infinite home-float;animation-delay:calc(var(--i) * -.6s);border-radius:14px;position:absolute;inset:0;box-shadow:0 12px 30px -10px #00000059,inset 0 0 0 1px #ffffff0f;box-shadow:0 12px 30px -10px lab(0% 0 0/.35),inset 0 0 0 1px lab(100% 0 0/.06)}@keyframes home-float{0%,to{translate:0}50%{translate:0 -8px}}.home-tiles{--tile-gap:clamp(12px, 1.5vmin, 20px);gap:var(--tile-gap);grid-template-columns:repeat(auto-fit,minmax(min(96px,100%),1fr));margin-block:clamp(28px,4vmin,48px);display:grid}.home-tile{--tile-accent:oklch(62% .18 var(--tile-hue,275));background:color-mix(in oklch, var(--tile-accent) 14%, white);color:oklch(from var(--tile-accent) 28% c h);border:1px solid color-mix(in oklch, var(--tile-accent) 22%, transparent);transition:transform .32s var(--spring,cubic-bezier(.22, 1, .36, 1)), background .24s, box-shadow .24s, border-color .24s;isolation:isolate;--spring:linear(0, .14 4%, .94 17%, 1.12 24%, 1.02 43%, .98 51%, 1 77%, 1);border-radius:18px;place-items:center;gap:10px;padding:18px 10px 14px;text-decoration:none;display:grid;position:relative;overflow:hidden}[data-theme=dark] .home-tile{background:color-mix(in oklch, var(--tile-accent) 16%, #15161b);color:oklch(from var(--tile-accent) 92% .02 h);border-color:color-mix(in oklch, var(--tile-accent) 28%, transparent)}@supports (color:lab(0% 0 0)){[data-theme=dark] .home-tile{background:color-mix(in oklch, var(--tile-accent) 16%, lab(7.14953% .707574 -3.61362))}}.home-tile:before{content:"";z-index:-1;background:radial-gradient(ellipse at center top, color-mix(in oklch, var(--tile-accent) 45%, transparent) 0%, transparent 70%);opacity:0;block-size:120%;transition:opacity .24s;position:absolute;inset:auto -20% -50%}.home-tile:hover{box-shadow:0 12px 28px -14px color-mix(in oklch, var(--tile-accent) 70%, transparent), 0 4px 10px -6px color-mix(in oklch, var(--tile-accent) 40%, transparent);transform:translateY(-4px)}.home-tile:hover:before{opacity:1}.home-tile:active{transform:translateY(-2px)}.home-tile__badge{background:var(--tile-accent);block-size:48px;inline-size:48px;color:oklch(from var(--tile-accent) 98% .03 h);font-family:var(--font-display);letter-spacing:.01em;box-shadow:0 4px 12px -4px color-mix(in oklch, var(--tile-accent) 60%, transparent), inset 0 1px 0 0 #ffffff2e;border-radius:50%;place-items:center;font-size:20px;font-weight:800;display:grid}@supports (color:lab(0% 0 0)){.home-tile__badge{box-shadow:0 4px 12px -4px color-mix(in oklch, var(--tile-accent) 60%, transparent), inset 0 1px 0 0 lab(100% 0 0/.18)}}.home-tile__label{letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}@supports (animation-timeline:view()){.home-strips .public-strip{animation:linear both strip-reveal;animation-timeline:view();animation-range:entry cover 24%}@keyframes strip-reveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}}.home-strips .public-strip-head h2{letter-spacing:-.015em;padding-inline-start:14px;font-size:clamp(18px,2.4vmin,22px);position:relative}.home-strips .public-strip-head h2:before{content:"";background:linear-gradient(to bottom in oklch, var(--brand-primary,#6774fc), color-mix(in oklch, var(--brand-primary,#6774fc) 60%, transparent));border-radius:2px;inline-size:4px;position:absolute;inset-block:4px;inset-inline-start:0}@supports (color:lab(0% 0 0)){.home-strips .public-strip-head h2:before{background:linear-gradient(to bottom in oklch, var(--brand-primary,lab(53.3274% 26.2221 -70.7931)), color-mix(in oklch, var(--brand-primary,lab(53.3274% 26.2221 -70.7931)) 60%, transparent))}}.home-strips .public-strip-head .link{color:var(--brand-primary,#6774fc);font-weight:600;transition:color .18s}@supports (color:lab(0% 0 0)){.home-strips .public-strip-head .link{color:var(--brand-primary,lab(53.3274% 26.2221 -70.7931))}}.home-strips .public-strip-head .link:hover{color:oklch(from var(--brand-primary,#6774fc) calc(l + .08) c h)}@supports (color:lab(0% 0 0)){.home-strips .public-strip-head .link:hover{color:oklch(from var(--brand-primary,lab(53.3274% 26.2221 -70.7931)) calc(l + .08) c h)}}.home-strips .book-card{view-transition-name:var(--vt-name,auto);transition:transform .26s cubic-bezier(.22,1,.36,1),filter .26s}.home-strips .book-card:hover{filter:drop-shadow(0 18px 30px #00000038);filter:drop-shadow(0 18px 30px lab(0% 0 0/.22));transform:translateY(-4px)scale(1.015)}.home-strips .book-card:hover .book-card-cover{box-shadow:0 12px 24px -8px #0000004d, 0 0 0 1px color-mix(in oklch, var(--brand-primary,#6774fc) 25%, transparent)}@supports (color:lab(0% 0 0)){.home-strips .book-card:hover .book-card-cover{box-shadow:0 12px 24px -8px lab(0% 0 0/.3), 0 0 0 1px color-mix(in oklch, var(--brand-primary,lab(53.3274% 26.2221 -70.7931)) 25%, transparent)}}@supports (view-transition-name:auto){:root{view-transition-name:home-root}}@media (prefers-reduced-motion:reduce){.home-hero:before,.home-hero__book,.home-strips .public-strip{animation:none}.home-tile,.home-hero__cta,.home-strips .book-card{transition:none}}@media (prefers-contrast:more){.home-hero{outline:2px solid var(--hero-fg);outline-offset:-2px}.home-tile{outline:1.5px solid var(--tile-accent)}}@supports not (background:color-mix(in oklch, red, blue)){.home-hero:before,.home-tile:before{display:none}.home-tile{background:var(--bg-subtle);color:var(--fg-default);border-color:var(--border-default)}}@property --bd-hue{syntax:"<number>";inherits:true;initial-value:270}@property --bd-tilt{syntax:"<angle>";inherits:false;initial-value:-2deg}.public-shell:has(>main>.book-detail){--bd-hue:270;background:radial-gradient(1100px 520px at 12% -8%, oklch(78% .14 var(--bd-hue) / .28), transparent 60%), radial-gradient(900px 480px at 108% 8%, oklch(72% .16 calc(var(--bd-hue) + 40) / .22), transparent 55%), var(--bg-canvas)}.book-detail{isolation:isolate;grid-template-columns:minmax(260px,2fr) 3fr;align-items:start;gap:clamp(24px,5cqi,64px);padding:clamp(24px,4cqi,48px) 0 clamp(32px,4cqi,56px);position:relative;container-type:inline-size}.book-detail:before{content:"";z-index:-1;background:linear-gradient(135deg in oklch, oklch(96% .02 var(--bd-hue)) 0%, oklch(98% .01 var(--bd-hue)) 55%, oklch(94% .03 calc(var(--bd-hue) + 30)) 100%);border:1px solid oklch(90% .02 var(--bd-hue));height:72%;box-shadow:0 30px 60px -40px oklch(40% .15 var(--bd-hue) / .35), inset 0 1px 0 #ffffffb3;border-radius:28px;position:absolute;inset:-24px -32px auto}@supports (color:lab(0% 0 0)){.book-detail:before{box-shadow:0 30px 60px -40px oklch(40% .15 var(--bd-hue) / .35), inset 0 1px 0 lab(100% 0 0/.7)}}@container not (min-width:760px){.book-detail{grid-template-columns:1fr;gap:28px}.book-detail:before{height:58%;inset:-16px -16px auto}}.book-detail-cover{aspect-ratio:5/7;max-width:360px;transform:perspective(1200px) rotate(var(--bd-tilt)) translateY(0);box-shadow:0 30px 60px -24px oklch(30% .12 var(--bd-hue) / .4), 0 12px 24px -16px oklch(20% .1 var(--bd-hue) / .3), inset 0 1px 0 #ffffff73;border:1px solid oklch(88% .03 var(--bd-hue));border-radius:18px;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s;position:relative;overflow:hidden}@supports (color:lab(0% 0 0)){.book-detail-cover{box-shadow:0 30px 60px -24px oklch(30% .12 var(--bd-hue) / .4), 0 12px 24px -16px oklch(20% .1 var(--bd-hue) / .3), inset 0 1px 0 lab(100% 0 0/.45)}}.book-detail-cover:after{content:"";pointer-events:none;mix-blend-mode:overlay;background:linear-gradient(#ffffff38 0%,#0000 30% 70%,#0000001f 100%);background:linear-gradient(lab(100% 0 0/.22) 0%,#0000 30% 70%,lab(0% 0 0/.12) 100%);position:absolute;inset:0}.book-detail>div:has(>.book-detail-cover):hover .book-detail-cover{box-shadow:0 40px 80px -20px oklch(30% .12 var(--bd-hue) / .45), 0 18px 30px -14px oklch(20% .1 var(--bd-hue) / .35);transform:perspective(1200px)rotate(0)translateY(-4px)scale(1.015)}.book-detail-info{gap:clamp(14px,1.8cqi,22px)}.book-detail-title{background:linear-gradient(100deg in oklch, oklch(22% .04 var(--bd-hue)) 0%, oklch(22% .04 var(--bd-hue)) 55%, oklch(55% .17 var(--bd-hue)) 100%);color:#0000;text-wrap:balance;-webkit-background-clip:text;background-clip:text;font-size:clamp(28px,5.2cqi,44px);line-height:1.08}.book-detail-info>p.muted{color:oklch(48% .02 var(--bd-hue));text-wrap:pretty;max-inline-size:58ch}.book-detail-meta{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid oklch(90% .02 var(--bd-hue));color:oklch(40% .02 var(--bd-hue));background:#ffffffb8;background:lab(100% 0 0/.72);border-radius:12px;gap:10px 14px;width:fit-content;padding:10px 14px;font-size:13px}.book-detail-meta .sep{color:oklch(80% .02 var(--bd-hue))}.book-detail-cta-row{flex-wrap:wrap;align-items:stretch;gap:10px;padding:6px 0 0}.book-detail-cta-row>.btn-primary.btn-lg{letter-spacing:.01em;background:linear-gradient(180deg in oklch, oklch(66% .2 var(--bd-hue)), oklch(52% .22 var(--bd-hue)));color:#fff;height:52px;box-shadow:inset 0 1px 0 #ffffff8c, 0 14px 28px -14px oklch(50% .22 var(--bd-hue) / .6), 0 2px 6px -2px oklch(30% .12 var(--bd-hue) / .3);border:none;border-radius:14px;padding-inline:26px;font-weight:800;transition:transform .2s cubic-bezier(.34,1.56,.64,1),filter .18s,box-shadow .18s}@supports (color:lab(0% 0 0)){.book-detail-cta-row>.btn-primary.btn-lg{box-shadow:inset 0 1px 0 lab(100% 0 0/.55), 0 14px 28px -14px oklch(50% .22 var(--bd-hue) / .6), 0 2px 6px -2px oklch(30% .12 var(--bd-hue) / .3)}}.book-detail-cta-row>.btn-primary.btn-lg:hover{filter:brightness(1.06);box-shadow:inset 0 1px 0 #ffffff8c, 0 22px 40px -18px oklch(50% .22 var(--bd-hue) / .7);transform:translateY(-2px)}@supports (color:lab(0% 0 0)){.book-detail-cta-row>.btn-primary.btn-lg:hover{box-shadow:inset 0 1px 0 lab(100% 0 0/.55), 0 22px 40px -18px oklch(50% .22 var(--bd-hue) / .7)}}.book-detail-cta-row>.btn-primary.btn-lg:active{transform:translateY(0)scale(.985)}.format-pill{border:1px solid oklch(90% .02 var(--bd-hue));-webkit-backdrop-filter:blur(8px);min-height:52px;color:oklch(25% .03 var(--bd-hue));background:#ffffffd1;background:lab(100% 0 0/.82);border-radius:14px;gap:10px;padding:10px 14px;font-weight:600;transition:transform .2s cubic-bezier(.34,1.56,.64,1),border-color .18s,background .18s,box-shadow .18s}.format-pill:hover:not([aria-disabled=true]){border-color:oklch(65% .18 var(--bd-hue));background:color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 7%, white);box-shadow:0 10px 22px -14px oklch(50% .2 var(--bd-hue) / .4);transform:translateY(-1px)}.format-pill:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 40%, transparent);outline:none}.format-pill[aria-disabled=true]{opacity:.5;filter:saturate(.6)}.format-pill-icon{background:color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 10%, white);width:28px;height:28px;color:oklch(42% .2 var(--bd-hue));border-radius:8px;place-items:center;font-size:15px;display:grid}.format-pill-meta{color:oklch(55% .02 var(--bd-hue));font-size:11px;font-weight:500}.book-detail-tabs{border-top:none;margin-top:clamp(24px,3cqi,40px);padding-top:0}.book-detail-tabs .tabs{-webkit-backdrop-filter:blur(10px);border:1px solid oklch(90% .02 var(--bd-hue));box-shadow:0 8px 20px -14px oklch(40% .15 var(--bd-hue) / .3);background:#ffffffb8;background:lab(100% 0 0/.72);border-radius:14px;flex-wrap:wrap;gap:4px;margin-bottom:20px;padding:5px;display:inline-flex}.book-detail-tabs .tabs .tab{color:oklch(48% .02 var(--bd-hue));cursor:pointer;background:0 0;border:none;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:650;transition:color .18s,background .2s,transform .16s}.book-detail-tabs .tabs .tab:hover{color:oklch(25% .04 var(--bd-hue))}.book-detail-tabs .tabs .tab.active{background:linear-gradient(180deg in oklch, oklch(66% .2 var(--bd-hue)), oklch(52% .22 var(--bd-hue)));color:#fff;box-shadow:0 6px 14px -8px oklch(50% .22 var(--bd-hue) / .55)}.book-detail-tab-body{color:oklch(28% .03 var(--bd-hue));font-size:15px;line-height:1.75}.book-detail-tab-body p{text-wrap:pretty}.book-detail-tab-body .toc-list li{border-radius:6px;transition:background .16s,padding .16s;border-bottom:1px dashed color-mix(in oklch, oklch(60% .08 var(--bd-hue)) 30%, transparent)!important;padding:10px 4px!important}.book-detail-tab-body .toc-list li:hover{background:color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 7%, transparent);padding-inline:10px!important}.book-detail-tab-body dt{color:oklch(52% .02 var(--bd-hue));font-weight:600}.book-detail-tab-body dd{color:oklch(20% .03 var(--bd-hue));font-weight:500}.public-shell:has(>main>.book-detail) .public-strip{border-top:1px solid oklch(92% .02 var(--bd-hue));margin-top:clamp(32px,4cqi,56px);padding-top:clamp(24px,3cqi,40px)}.public-shell:has(>main>.book-detail) .public-strip-head h2{background:linear-gradient(100deg in oklch, oklch(22% .04 var(--bd-hue)), oklch(55% .17 var(--bd-hue)));color:#0000;text-wrap:balance;-webkit-background-clip:text;background-clip:text}.public-shell:has(>main>.book-detail) .admin-breadcrumb a{color:oklch(52% .03 var(--bd-hue));transition:color .16s}.public-shell:has(>main>.book-detail) .admin-breadcrumb a:hover{color:oklch(42% .22 var(--bd-hue))}.public-shell:has(>main>.book-detail) .admin-breadcrumb-current{color:oklch(28% .03 var(--bd-hue));font-weight:650}@media (prefers-reduced-motion:reduce){.book-detail-cover,.format-pill,.book-detail-cta-row>.btn-primary.btn-lg{transition:none!important;transform:none!important}}[data-theme=dark] .public-shell:has(>main>.book-detail){background:radial-gradient(1100px 520px at 12% -8%, oklch(60% .18 var(--bd-hue) / .18), transparent 60%), radial-gradient(900px 480px at 108% 8%, oklch(55% .2 calc(var(--bd-hue) + 40) / .14), transparent 55%), var(--bg-canvas)}[data-theme=dark] .book-detail:before{background:linear-gradient(135deg in oklch, oklch(22% .04 var(--bd-hue)) 0%, oklch(20% .03 var(--bd-hue)) 55%, oklch(24% .06 calc(var(--bd-hue) + 30)) 100%);border-color:oklch(32% .04 var(--bd-hue));box-shadow:0 30px 60px -40px #0009,inset 0 1px #ffffff14;box-shadow:0 30px 60px -40px lab(0% 0 0/.6),inset 0 1px lab(100% 0 0/.08)}[data-theme=dark] .book-detail-cover{border-color:oklch(35% .05 var(--bd-hue));box-shadow:0 30px 60px -24px #000000a6,0 12px 24px -16px #00000080,inset 0 1px #ffffff1f;box-shadow:0 30px 60px -24px lab(0% 0 0/.65),0 12px 24px -16px lab(0% 0 0/.5),inset 0 1px lab(100% 0 0/.12)}[data-theme=dark] .book-detail-cover:after{background:linear-gradient(#ffffff14 0%,#0000 30% 70%,#0000004d 100%);background:linear-gradient(lab(100% 0 0/.08) 0%,#0000 30% 70%,lab(0% 0 0/.3) 100%)}[data-theme=dark] .book-detail-title{background:linear-gradient(100deg in oklch, oklch(96% .02 var(--bd-hue)) 0%, oklch(96% .02 var(--bd-hue)) 55%, oklch(78% .18 var(--bd-hue)) 100%);-webkit-background-clip:text;background-clip:text}[data-theme=dark] .book-detail-info>p.muted{color:oklch(72% .03 var(--bd-hue))}[data-theme=dark] .book-detail-meta{background:color-mix(in oklch, oklch(20% .02 var(--bd-hue)) 70%, transparent);border-color:oklch(32% .04 var(--bd-hue));color:oklch(78% .03 var(--bd-hue))}[data-theme=dark] .book-detail-meta .sep{color:oklch(45% .03 var(--bd-hue))}[data-theme=dark] .format-pill{border-color:oklch(35% .04 var(--bd-hue));background:color-mix(in oklch, oklch(22% .03 var(--bd-hue)) 80%, transparent);color:oklch(88% .03 var(--bd-hue))}[data-theme=dark] .format-pill:hover:not([aria-disabled=true]){border-color:oklch(60% .18 var(--bd-hue));background:color-mix(in oklch, oklch(60% .18 var(--bd-hue)) 14%, oklch(20% .02 var(--bd-hue)))}[data-theme=dark] .format-pill-icon{background:color-mix(in oklch, oklch(60% .18 var(--bd-hue)) 22%, oklch(22% .02 var(--bd-hue)));color:oklch(82% .16 var(--bd-hue))}[data-theme=dark] .format-pill-meta{color:oklch(60% .03 var(--bd-hue))}[data-theme=dark] .book-detail-tabs .tabs{background:color-mix(in oklch, oklch(20% .02 var(--bd-hue)) 70%, transparent);border-color:oklch(32% .04 var(--bd-hue))}[data-theme=dark] .book-detail-tabs .tabs .tab{color:oklch(70% .03 var(--bd-hue))}[data-theme=dark] .book-detail-tabs .tabs .tab:hover{color:oklch(92% .04 var(--bd-hue))}[data-theme=dark] .book-detail-tab-body{color:oklch(82% .03 var(--bd-hue))}[data-theme=dark] .book-detail-tab-body .toc-list li{border-bottom-color:color-mix(in oklch, oklch(60% .08 var(--bd-hue)) 22%, transparent)!important}[data-theme=dark] .book-detail-tab-body .toc-list li:hover{background:color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 14%, transparent)}[data-theme=dark] .book-detail-tab-body dt{color:oklch(70% .03 var(--bd-hue))}[data-theme=dark] .book-detail-tab-body dd{color:oklch(94% .03 var(--bd-hue))}[data-theme=dark] .public-shell:has(>main>.book-detail) .public-strip{border-top-color:oklch(30% .03 var(--bd-hue))}[data-theme=dark] .public-shell:has(>main>.book-detail) .public-strip-head h2{background:linear-gradient(100deg in oklch, oklch(96% .02 var(--bd-hue)), oklch(78% .18 var(--bd-hue)));-webkit-background-clip:text;background-clip:text}[data-theme=dark] .public-shell:has(>main>.book-detail) .admin-breadcrumb a{color:oklch(68% .04 var(--bd-hue))}[data-theme=dark] .public-shell:has(>main>.book-detail) .admin-breadcrumb a:hover{color:oklch(78% .18 var(--bd-hue))}[data-theme=dark] .public-shell:has(>main>.book-detail) .admin-breadcrumb-current{color:oklch(94% .03 var(--bd-hue))}.book-desktop-downloads{border-block-start:1px solid color-mix(in oklch, oklch(70% .05 var(--bd-hue)) 22%, transparent);flex-direction:column;gap:clamp(10px,1.2cqi,14px);margin-block-start:clamp(8px,1.6cqi,18px);padding-block-start:clamp(12px,1.8cqi,18px);display:flex;container-type:inline-size}.book-desktop-downloads-head h2{font-family:var(--font-display);letter-spacing:-.01em;color:oklch(28% .05 var(--bd-hue));margin:0;font-size:clamp(14px,1.6cqi,16px);font-weight:800}.book-desktop-downloads-head p{color:oklch(45% .04 var(--bd-hue));text-wrap:pretty;margin:4px 0 0;font-size:13px}.book-desktop-downloads-grid{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.book-desktop-card{border:1px solid oklch(88% .03 var(--bd-hue));-webkit-backdrop-filter:blur(8px);min-block-size:64px;color:oklch(28% .04 var(--bd-hue));background:#ffffffc7;background:lab(100% 0 0/.78);border-radius:14px;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:transform .2s cubic-bezier(.34,1.56,.64,1),border-color .18s,background .18s,box-shadow .18s;display:grid}.book-desktop-card:hover{border-color:oklch(65% .18 var(--bd-hue));background:color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 8%, white);box-shadow:0 12px 24px -14px oklch(50% .18 var(--bd-hue) / .45), 0 2px 6px -2px oklch(40% .1 var(--bd-hue) / .18);transform:translateY(-2px)}.book-desktop-card:active{transform:translateY(0)scale(.985)}.book-desktop-card-icon{background:color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 12%, white);block-size:36px;inline-size:36px;color:oklch(45% .18 var(--bd-hue));border-radius:10px;place-items:center;display:grid}.book-desktop-card-body{flex-direction:column;gap:2px;min-inline-size:0;display:flex}.book-desktop-card-label{font-family:var(--font-display);letter-spacing:-.01em;font-size:14px;font-weight:700}.book-desktop-card-sub{color:oklch(50% .03 var(--bd-hue));text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.book-desktop-card-cta{background:color-mix(in oklch, oklch(65% .18 var(--bd-hue)) 18%, white);block-size:32px;inline-size:32px;color:oklch(40% .18 var(--bd-hue));border-radius:50%;place-items:center;transition:background .18s,color .18s;display:grid}.book-desktop-card:hover .book-desktop-card-cta{background:oklch(58% .2 var(--bd-hue));color:#fff}[data-theme=dark] .book-desktop-downloads{border-block-start-color:color-mix(in oklch, oklch(60% .05 var(--bd-hue)) 25%, transparent)}[data-theme=dark] .book-desktop-downloads-head h2{color:oklch(94% .03 var(--bd-hue))}[data-theme=dark] .book-desktop-downloads-head p{color:oklch(68% .04 var(--bd-hue))}[data-theme=dark] .book-desktop-card{border-color:oklch(35% .04 var(--bd-hue));background:color-mix(in oklch, oklch(22% .03 var(--bd-hue)) 80%, transparent);color:oklch(90% .03 var(--bd-hue))}[data-theme=dark] .book-desktop-card:hover{border-color:oklch(60% .18 var(--bd-hue));background:color-mix(in oklch, oklch(60% .18 var(--bd-hue)) 14%, oklch(20% .02 var(--bd-hue)))}[data-theme=dark] .book-desktop-card-icon{background:color-mix(in oklch, oklch(60% .18 var(--bd-hue)) 22%, oklch(22% .02 var(--bd-hue)));color:oklch(82% .16 var(--bd-hue))}[data-theme=dark] .book-desktop-card-sub{color:oklch(60% .04 var(--bd-hue))}[data-theme=dark] .book-desktop-card-cta{background:color-mix(in oklch, oklch(60% .18 var(--bd-hue)) 22%, oklch(22% .02 var(--bd-hue)));color:oklch(82% .16 var(--bd-hue))}@media (prefers-reduced-motion:reduce){.book-desktop-card{transition:none}.book-desktop-card:hover{transform:none}}@media (max-width:640px){.nav-icon-btn{border-radius:12px;block-size:44px;inline-size:44px}.book-detail{padding-block:var(--space-4);gap:var(--space-5)}.book-detail-cover{max-inline-size:min(72vw,320px);margin-inline:auto}.book-detail-info{gap:var(--space-3)}.book-detail-title{font-size:clamp(22px,6vw,28px)}.book-detail-cta-row{align-items:stretch;gap:var(--space-2);flex-direction:column}.book-detail-cta-row>.btn-primary,.book-detail-cta-row>.btn-secondary,.book-detail-cta-row>.btn-outline{block-size:48px;inline-size:100%;padding-inline:var(--space-4)}.format-pill{justify-content:flex-start;inline-size:100%}.book-detail-tabs{margin-block-start:var(--space-5)}.auth-shell{padding:var(--space-6) var(--space-3)}.auth-brand{margin-block-end:var(--space-5)}.public-hero{padding:var(--space-5);height:clamp(220px,56vw,280px);margin-top:var(--space-4);border-radius:var(--radius-md)}.public-hero-title{font-size:clamp(22px,6.5vw,32px)}.public-hero-subtitle{font-size:14px}.public-footer__bottom{align-items:flex-start;gap:var(--space-2);flex-direction:column}}@media (max-width:360px){.public-nav{padding-inline:var(--space-2)}.book-detail-cover{max-inline-size:84vw}}
@layer components.staticpage{@property --sp-glow-angle{syntax:"<angle>";inherits:false;initial-value:220deg}.sp{--sp-fade:cubic-bezier(.22, 1, .36, 1);--sp-radius:var(--radius-2xl,16px);--sp-radius-lg:20px;color:var(--fg-default);background:var(--bg-canvas);padding-block-end:clamp(56px,7vw,112px);container-type:inline-size}.sp-hero{isolation:isolate;text-align:center;place-items:center;padding-block:clamp(56px,9vw,132px);padding-inline:clamp(20px,5vw,56px);display:grid;position:relative;overflow:clip}.sp-hero-glow{z-index:-1;background:radial-gradient(65% 75% at 50% 0%, color-mix(in oklch, var(--brand-primary) 22%, transparent), transparent 70%), conic-gradient(from var(--sp-glow-angle) at 50% 28%, color-mix(in oklch, var(--brand-primary) 14%, transparent), transparent 35%, color-mix(in oklch, var(--brand-primary) 9%, transparent) 75%, transparent);filter:blur(48px)saturate(1.05);opacity:.85;pointer-events:none;animation:26s linear infinite sp-glow-rotate;position:absolute;inset:0}@keyframes sp-glow-rotate{to{--sp-glow-angle:580deg}}.sp-hero-inner{justify-items:center;gap:clamp(14px,1.6vw,22px);inline-size:min(760px,100%);display:grid}.sp-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--brand-primary);margin:0;font-size:12.5px;font-weight:700}.sp-title{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;max-inline-size:22ch;margin:0;font-size:clamp(2.1rem,1.5rem + 2.6vw,3.75rem);font-weight:800;line-height:1.05}.sp-title em{background:linear-gradient(90deg in oklch, var(--brand-primary), color-mix(in oklch, var(--brand-primary) 60%, white));color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.sp-subtitle{color:var(--fg-muted);text-wrap:pretty;max-inline-size:56ch;margin:0;font-size:clamp(1rem,.4vw + .95rem,1.18rem);line-height:1.55}.sp-meta{color:var(--fg-subtle);letter-spacing:.04em;margin-block-start:clamp(8px,1vw,14px);font-size:13px}.sp-meta strong{color:var(--fg-muted);font-weight:600}.sp-wrap{inline-size:min(1080px,100%);margin-inline:auto;padding-inline:clamp(20px,5vw,56px)}.sp-section{padding-block-start:clamp(32px,4.5vw,64px)}.sp-section-title{font-family:var(--font-display);letter-spacing:-.015em;color:var(--fg-default);text-wrap:balance;margin:0 0 clamp(16px,2vw,28px);font-size:clamp(1.4rem,.6vw + 1.3rem,2rem);font-weight:800}.sp-section-lede{color:var(--fg-muted);text-wrap:pretty;max-inline-size:60ch;margin:0 0 clamp(20px,2.5vw,32px);font-size:clamp(1rem,.3vw + .95rem,1.12rem);line-height:1.6}.sp-section--narrow .sp-section-lede,.sp-section--narrow>p{max-inline-size:60ch}.sp-grid{grid-template-columns:1fr;gap:clamp(14px,1.6vw,22px);display:grid}@container not (max-inline-size:640px){.sp-grid--2{grid-template-columns:repeat(2,1fr)}}@container not (max-inline-size:880px){.sp-grid--3{grid-template-columns:repeat(3,1fr)}}.sp-card{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--sp-radius);color:inherit;isolation:isolate;transition:transform var(--duration-medium,.2s) var(--sp-fade), border-color var(--duration-medium,.2s) var(--sp-fade), box-shadow var(--duration-medium,.2s) var(--sp-fade);gap:10px;padding:clamp(18px,1.8vw,26px);text-decoration:none;display:grid;position:relative;overflow:hidden}.sp-card:before{content:"";background:radial-gradient(120% 80% at 100% 0%, color-mix(in oklch, var(--brand-primary) 10%, transparent), transparent 60%);opacity:0;transition:opacity var(--duration-medium,.2s) var(--sp-fade);pointer-events:none;z-index:-1;position:absolute;inset:0}a.sp-card:hover,a.sp-card:focus-visible{border-color:color-mix(in oklch, var(--brand-primary) 50%, var(--border-default));box-shadow:0 24px 50px -22px color-mix(in oklch, var(--brand-primary) 35%, transparent), 0 4px 12px -4px #00000014;transform:translateY(-3px)}a.sp-card:hover:before,a.sp-card:focus-visible:before{opacity:1}.sp-card-title{font-family:var(--font-display);color:var(--fg-default);text-wrap:balance;margin:0;font-size:clamp(1.05rem,.4vw + 1rem,1.25rem);font-weight:800;line-height:1.25}.sp-card-body{color:var(--fg-muted);text-wrap:pretty;margin:0;font-size:14.5px;line-height:1.6}.sp-card-icon{border-radius:var(--radius-xl,12px);background:color-mix(in oklch, var(--brand-primary) 10%, var(--bg-subtle));block-size:44px;inline-size:44px;color:var(--brand-primary);place-items:center;margin-block-end:4px;display:grid}.sp-card-icon svg{block-size:22px;inline-size:22px}.sp-steps{counter-reset:sp-step;gap:clamp(12px,1.4vw,18px);margin:0;padding:0;list-style:none;display:grid}.sp-step{--sp-step-bg:color-mix(in oklch, var(--brand-primary) 10%, var(--bg-subtle));counter-increment:sp-step;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--sp-radius);padding:clamp(16px,1.8vw,22px) clamp(20px,2vw,28px);padding-inline-start:clamp(64px,6vw,80px);position:relative}.sp-step:before{content:counter(sp-step);border-radius:var(--radius-full,9999px);background:var(--sp-step-bg);block-size:clamp(32px,3vw,40px);inline-size:clamp(32px,3vw,40px);color:var(--brand-primary);font-family:var(--font-display);place-items:center;font-size:clamp(14px,.4vw + 13px,17px);font-weight:800;display:grid;position:absolute;inset-block-start:50%;inset-inline-start:clamp(16px,1.6vw,22px);translate:0 -50%}.sp-step strong{font-family:var(--font-display);color:var(--fg-default);margin-block-end:4px;font-size:clamp(1rem,.3vw + .95rem,1.12rem);font-weight:700;display:block}.sp-step p{color:var(--fg-muted);text-wrap:pretty;margin:0;font-size:14.5px;line-height:1.6}.sp-quote{background:linear-gradient(135deg in oklch, color-mix(in oklch, var(--brand-primary) 8%, var(--bg-elevated)), var(--bg-elevated));border:1px solid color-mix(in oklch, var(--brand-primary) 18%, var(--border-default));border-radius:var(--sp-radius-lg);isolation:isolate;margin:0;padding:clamp(28px,3.5vw,48px) clamp(24px,3vw,40px);position:relative;overflow:hidden}.sp-quote:before{content:"“";z-index:-1;font-family:var(--font-display);color:color-mix(in oklch, var(--brand-primary) 14%, transparent);pointer-events:none;font-size:clamp(140px,18vw,240px);font-weight:900;line-height:1;position:absolute;inset-block-start:-32px;inset-inline-start:clamp(8px,2vw,24px)}.sp-quote p{font-family:var(--font-display);color:var(--fg-default);text-wrap:pretty;max-inline-size:50ch;margin:0;font-size:clamp(1.15rem,.6vw + 1.05rem,1.5rem);font-weight:600;line-height:1.45}.sp-cta{border-radius:var(--radius-full,9999px);background:linear-gradient(135deg in oklch, var(--brand-primary), color-mix(in oklch, var(--brand-primary) 70%, black));color:var(--brand-fg-on-primary,#fff);font-family:var(--font-display);box-shadow:0 1px 0 0 #fff6 inset, 0 14px 32px -10px color-mix(in oklch, var(--brand-primary) 60%, transparent);transition:transform var(--duration-medium,.2s) var(--sp-fade), box-shadow var(--duration-medium,.2s) var(--sp-fade), filter var(--duration-medium,.2s) var(--sp-fade);cursor:pointer;border:0;align-items:center;gap:12px;padding-block:clamp(13px,1.3vw,17px);padding-inline:clamp(20px,2.5vw,30px);font-size:clamp(15px,.4vw + 14px,17px);font-weight:700;text-decoration:none;display:inline-flex}@supports (color:lab(0% 0 0)){.sp-cta{box-shadow:0 1px 0 0 lab(100% 0 0/.4) inset, 0 14px 32px -10px color-mix(in oklch, var(--brand-primary) 60%, transparent)}}.sp-cta:hover,.sp-cta:focus-visible{filter:brightness(1.04);box-shadow:0 1px 0 0 #ffffff80 inset, 0 20px 42px -10px color-mix(in oklch, var(--brand-primary) 70%, transparent);transform:translateY(-2px)}@supports (color:lab(0% 0 0)){.sp-cta:hover,.sp-cta:focus-visible{box-shadow:0 1px 0 0 lab(100% 0 0/.5) inset, 0 20px 42px -10px color-mix(in oklch, var(--brand-primary) 70%, transparent)}}.sp-cta:active{transform:translateY(0)}.sp-cta svg{flex-shrink:0;block-size:18px;inline-size:18px}.sp-cta--ghost{background:var(--bg-elevated);color:var(--brand-primary);border:1px solid color-mix(in oklch, var(--brand-primary) 32%, var(--border-default));box-shadow:none}.sp-cta--ghost:hover,.sp-cta--ghost:focus-visible{background:color-mix(in oklch, var(--brand-primary) 6%, var(--bg-elevated));box-shadow:0 8px 24px -10px color-mix(in oklch, var(--brand-primary) 35%, transparent)}.sp-inlinelink{color:var(--fg-link);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1.5px;-webkit-text-decoration-color:color-mix(in oklch, var(--fg-link) 35%, transparent);text-decoration-color:color-mix(in oklch, var(--fg-link) 35%, transparent);transition:text-decoration-color var(--duration-default,.15s) var(--sp-fade)}.sp-inlinelink:hover,.sp-inlinelink:focus-visible{-webkit-text-decoration-color:var(--fg-link);text-decoration-color:var(--fg-link)}.sp-back{border-radius:var(--radius-full,9999px);background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--fg-muted);transition:color var(--duration-default,.15s) var(--sp-fade), border-color var(--duration-default,.15s) var(--sp-fade), transform var(--duration-default,.15s) var(--sp-fade);align-items:center;gap:8px;margin-block-start:clamp(28px,3vw,40px);padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.sp-back:hover,.sp-back:focus-visible{color:var(--brand-primary);border-color:color-mix(in oklch, var(--brand-primary) 40%, var(--border-default));transform:translate(-2px)}.sp-prose{inline-size:min(760px,100%);color:var(--fg-default);margin-inline:auto;font-size:clamp(15px,.2vw + 14.5px,17px);line-height:1.72}.sp-prose>*+*{margin-block-start:clamp(12px,1.2vw,18px)}.sp-prose h2{font-family:var(--font-display);letter-spacing:-.015em;color:var(--fg-default);text-wrap:balance;margin-block:clamp(36px,4vw,56px) clamp(8px,1vw,14px);scroll-margin-block-start:96px;font-size:clamp(1.25rem,.4vw + 1.2rem,1.6rem);font-weight:800}.sp-prose h2+p{margin-block-start:clamp(8px,1vw,14px)}.sp-prose h2 .sp-prose-num{color:var(--brand-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-inline-end:12px;font-size:.85em;font-weight:700;display:inline-block}.sp-prose p{color:var(--fg-default);text-wrap:pretty}.sp-prose ul,.sp-prose ol{color:var(--fg-default);margin:0;padding-inline-start:1.5em}.sp-prose li{margin-block-end:6px}.sp-prose li::marker{color:var(--brand-primary)}.sp-prose strong{color:var(--fg-default);font-weight:700}.sp-prose code{font-family:var(--font-mono);background:var(--bg-subtle);color:var(--brand-primary);border-radius:var(--radius-md);padding:2px 8px;font-size:.9em}.sp-prose-table{border-collapse:collapse;border:1px solid var(--border-default);border-radius:var(--sp-radius);inline-size:100%;font-size:14.5px;overflow:hidden}.sp-prose-table thead{background:color-mix(in oklch, var(--brand-primary) 6%, var(--bg-subtle))}.sp-prose-table th,.sp-prose-table td{border-block-end:1px solid var(--border-subtle);text-align:start;vertical-align:top;padding:10px 14px}.sp-prose-table tbody tr:last-child td{border-block-end:0}.sp-prose-table th{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);font-size:13px;font-weight:700}.sp-prose-table tbody tr:nth-child(2n){background:color-mix(in oklch, var(--bg-subtle) 50%, transparent)}.sp-doc{gap:clamp(24px,3vw,48px);display:grid}@container not (max-inline-size:980px){.sp-doc--with-toc{grid-template-columns:240px minmax(0,1fr);align-items:start}.sp-toc{max-block-size:calc(100dvh - 120px);position:sticky;inset-block-start:96px;overflow-y:auto}}.sp-toc{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--sp-radius);padding:clamp(16px,1.8vw,24px);font-size:13.5px;line-height:1.5}.sp-toc h3{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--fg-subtle);margin:0 0 12px;font-size:11px;font-weight:800}.sp-toc ol{counter-reset:sp-toc;gap:6px;margin:0;padding:0;list-style:none;display:grid}.sp-toc li{counter-increment:sp-toc;margin:0}.sp-toc a{border-radius:var(--radius-md);color:var(--fg-muted);transition:background var(--duration-default,.15s) var(--sp-fade), color var(--duration-default,.15s) var(--sp-fade);grid-template-columns:1.6em minmax(0,1fr);gap:2px;padding:6px 8px;font-weight:500;text-decoration:none;display:grid}.sp-toc a:before{content:counter(sp-toc) ".";color:var(--fg-subtle);font-variant-numeric:tabular-nums}.sp-toc a:hover,.sp-toc a:focus-visible{background:color-mix(in oklch, var(--brand-primary) 8%, transparent);color:var(--brand-primary)}.sp-toc a:hover:before,.sp-toc a:focus-visible:before{color:var(--brand-primary)}.sp-tags{flex-wrap:wrap;gap:8px;margin:4px 0 16px;display:flex}.sp-tag{border-radius:var(--radius-full,9999px);background:color-mix(in oklch, var(--brand-primary) 8%, var(--bg-subtle));border:1px solid color-mix(in oklch, var(--brand-primary) 14%, var(--border-default));color:var(--fg-default);align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.sp-checklist{gap:10px;margin:0;padding:0;list-style:none;display:grid}.sp-checklist li{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-xl,12px);color:var(--fg-default);text-wrap:pretty;padding:14px 16px 14px 50px;line-height:1.55;position:relative}.sp-checklist li:before{content:"";background:linear-gradient(135deg in oklch, var(--brand-primary), color-mix(in oklch, var(--brand-primary) 65%, black));block-size:22px;inline-size:22px;box-shadow:0 0 0 4px color-mix(in oklch, var(--brand-primary) 14%, transparent);border-radius:50%;position:absolute;inset-block-start:50%;inset-inline-start:16px;translate:0 -50%}.sp-checklist li:after{content:"";border-inline-start:2px solid var(--brand-fg-on-primary,#fff);border-block-end:2px solid var(--brand-fg-on-primary,#fff);block-size:5px;inline-size:10px;position:absolute;inset-block-start:50%;inset-inline-start:22px;translate:0 -65%;rotate:-45deg}.sp-known-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.sp-known-list li{background:var(--bg-elevated);border:1px dashed color-mix(in oklch, var(--warning) 50%, var(--border-default));border-radius:var(--radius-xl,12px);color:var(--fg-default);text-wrap:pretty;padding:14px 16px 14px 50px;line-height:1.55;position:relative}.sp-known-list li:before{content:"!";background:color-mix(in oklch, var(--warning) 18%, var(--bg-subtle));block-size:22px;inline-size:22px;color:var(--warning);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:14px;font-weight:800;display:grid;position:absolute;inset-block-start:50%;inset-inline-start:16px;translate:0 -50%}.sp-contact-card{--c-tint:color-mix(in oklch, var(--brand-primary) 12%, transparent);background:radial-gradient(120% 80% at 0% 0%, var(--c-tint), transparent 60%), var(--bg-elevated);border:1px solid color-mix(in oklch, var(--brand-primary) 22%, var(--border-default));border-radius:var(--sp-radius-lg);isolation:isolate;box-shadow:0 1px 0 0 #ffffff4d inset, 0 12px 36px -16px color-mix(in oklch, var(--brand-primary) 30%, transparent);gap:clamp(16px,1.8vw,22px);padding:clamp(28px,3vw,44px);display:grid;position:relative;overflow:hidden}@supports (color:lab(0% 0 0)){.sp-contact-card{box-shadow:0 1px 0 0 lab(100% 0 0/.3) inset, 0 12px 36px -16px color-mix(in oklch, var(--brand-primary) 30%, transparent)}}.sp-contact-eyebrow{color:var(--brand-primary);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:13px;font-weight:700}.sp-contact-email{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg-default);text-wrap:balance;word-break:break-word;margin:0;font-size:clamp(1.5rem,.8vw + 1.4rem,2.25rem);font-weight:800;line-height:1.15}.sp-contact-email a{color:inherit;border-block-end:2px dashed color-mix(in oklch, var(--brand-primary) 35%, transparent);transition:border-block-end-color var(--duration-default,.15s) var(--sp-fade);text-decoration:none}.sp-contact-email a:hover,.sp-contact-email a:focus-visible{border-block-end-color:var(--brand-primary)}.sp-contact-blurb{color:var(--fg-muted);text-wrap:pretty;max-inline-size:56ch;margin:0;font-size:15px;line-height:1.6}.sp-contact-actions{flex-wrap:wrap;gap:12px;margin-block-start:4px;display:flex}.sp-stats{grid-template-columns:1fr;gap:clamp(14px,1.8vw,22px);margin:0;padding:0;list-style:none;display:grid}@container not (max-inline-size:540px){.sp-stats{grid-template-columns:repeat(3,1fr)}}.sp-stat{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--sp-radius);text-align:center;padding:clamp(18px,1.8vw,26px)}.sp-stat-num{font-family:var(--font-display);letter-spacing:-.03em;background:linear-gradient(135deg in oklch, var(--brand-primary), color-mix(in oklch, var(--brand-primary) 65%, black));color:#0000;-webkit-background-clip:text;background-clip:text;margin-block-end:8px;font-size:clamp(2rem,1vw + 1.8rem,2.75rem);font-weight:800;line-height:1;display:block}.sp-stat-label{color:var(--fg-muted);text-wrap:pretty;font-size:14px;font-weight:500;line-height:1.4;display:block}.sp-hero-inner>*{animation:sp-rise .6s var(--sp-fade) both}.sp-hero-inner>:first-child{animation-delay:0s}.sp-hero-inner>:nth-child(2){animation-delay:80ms}.sp-hero-inner>:nth-child(3){animation-delay:.16s}.sp-hero-inner>:nth-child(4){animation-delay:.22s}@keyframes sp-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@supports (animation-timeline:view()){.sp-section,.sp-card,.sp-step,.sp-stat,.sp-checklist li,.sp-known-list li,.sp-quote,.sp-contact-card{animation:linear both sp-fade-in;animation-timeline:view();animation-range:entry cover 25%}}@keyframes sp-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.sp-hero-glow,.sp-hero-inner>*,.sp-section,.sp-card,.sp-step,.sp-stat,.sp-checklist li,.sp-known-list li,.sp-quote,.sp-contact-card{animation:none}a.sp-card:hover,a.sp-card:focus-visible,.sp-cta:hover,.sp-cta:focus-visible,.sp-back:hover,.sp-back:focus-visible{transform:none}}@media (prefers-contrast:more){.sp-card,.sp-step,.sp-stat,.sp-quote,.sp-contact-card,.sp-toc,.sp-back,.sp-checklist li,.sp-known-list li{border-width:2px}.sp-subtitle,.sp-section-lede,.sp-card-body,.sp-step p{color:var(--fg-default)}}.publisher-dir{grid-template-columns:1fr;gap:clamp(14px,1.6vw,22px);display:grid}@container not (max-inline-size:540px){.publisher-dir{grid-template-columns:repeat(2,1fr)}}@container not (max-inline-size:880px){.publisher-dir{grid-template-columns:repeat(3,1fr)}}.publisher-card{--pcard-accent:var(--cms-accent,var(--brand-primary));isolation:isolate;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--sp-radius);color:inherit;transition:transform var(--duration-medium,.2s) var(--sp-fade), border-color var(--duration-medium,.2s) var(--sp-fade), box-shadow var(--duration-medium,.2s) var(--sp-fade);grid-template-rows:auto auto;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:4px clamp(12px,1.6vw,18px);padding:clamp(16px,1.8vw,22px);text-decoration:none;display:grid;position:relative;overflow:hidden}.publisher-card:before{content:"";z-index:-1;background:radial-gradient(120% 80% at 0% 0%, color-mix(in oklch, var(--pcard-accent) 14%, transparent), transparent 60%);opacity:0;transition:opacity var(--duration-medium,.2s) var(--sp-fade);pointer-events:none;position:absolute;inset:0}.publisher-card:hover,.publisher-card:focus-visible{border-color:color-mix(in oklch, var(--pcard-accent) 50%, var(--border-default));box-shadow:0 24px 50px -22px color-mix(in oklch, var(--pcard-accent) 35%, transparent), 0 4px 12px -4px #00000014;transform:translateY(-3px)}.publisher-card:hover:before,.publisher-card:focus-visible:before{opacity:1}.publisher-card__logo{border-radius:var(--radius-xl,12px);background:color-mix(in oklch, var(--pcard-accent) 10%, var(--bg-subtle));grid-row:1/span 2;place-items:center;block-size:64px;inline-size:64px;display:grid;overflow:hidden}.publisher-card__logo img{object-fit:contain;block-size:100%;inline-size:100%;padding:8px}.publisher-card__mono{font-family:var(--font-display);color:var(--pcard-accent);font-size:1.75rem;font-weight:800}.publisher-card__body{flex-direction:column;grid-column:2;gap:4px;min-inline-size:0;display:flex}.publisher-card__name{font-family:var(--font-display);color:var(--fg-default);text-wrap:balance;overflow-wrap:anywhere;font-size:clamp(1.05rem,.4vw + 1rem,1.2rem);font-weight:800;line-height:1.2}.publisher-card__meta{color:var(--fg-muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.publisher-card__sep{color:var(--fg-subtle)}.publisher-card__cta{color:var(--pcard-accent);grid-column:2;margin-block-start:4px;font-size:13.5px;font-weight:600}@supports (animation-timeline:view()){.publisher-card{animation:linear both sp-fade-in;animation-timeline:view();animation-range:entry cover 25%}}@media (prefers-reduced-motion:reduce){.publisher-card{animation:none}.publisher-card:hover,.publisher-card:focus-visible{transform:none}}@media (prefers-contrast:more){.publisher-card{border-width:2px}.publisher-card__meta{color:var(--fg-default)}}}.scroll-stagger-child{opacity:0;transition:opacity .52s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--scroll-stagger-i,0) * var(--scroll-stagger-step,70ms) + 80ms);will-change:opacity, transform;transform:translateY(18px)}.is-revealed>.scroll-stagger-child,.is-revealed .scroll-stagger-child{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.scroll-stagger-child,.is-revealed>.scroll-stagger-child,.is-revealed .scroll-stagger-child{opacity:1!important;transition:none!important;transform:none!important}}.sp-toc li[data-active="1"]>a{color:var(--brand-primary,#6c4ef6);font-weight:600;transition:transform .2s,color .2s;transform:translate(4px)}.sp-toc li[data-active="0"]>a{transition:transform .2s,color .2s}
