.app-shell{--shell-rail-width:256px;--shell-header-height:56px;--shell-tab-height:52px}:where(:root[data-rail=collapsed] .app-shell:not([data-scoped-rail=true]),.app-shell[data-scoped-rail=true][data-rail=collapsed]).app-shell{--shell-rail-width:72px}.app-shell .desktop-rail{z-index:40;width:var(--shell-rail-width);border-right:1px solid var(--border);background:var(--canvas);transition:width var(--motion-normal) ease;flex-direction:column;align-items:stretch;padding:0 12px 16px;display:flex;position:fixed;inset:0 auto 0 0}.app-shell .rail-heading{flex:0 0 56px;justify-content:space-between;align-items:center;gap:8px;height:56px;display:flex}.app-shell .rail-brand{align-items:center;min-width:0;min-height:44px;display:inline-flex}.app-shell .rail-heading .rail-menu{background:0 0;border:0;border-radius:12px;flex:0 0 36px;width:36px;height:36px;margin:0;display:inline-flex}.app-shell .rail-menu:hover{background:var(--surface-subtle)}.app-shell .brand{gap:8px}.app-shell .brand-symbol{width:26px;height:26px}.app-shell .brand-wordmark{font-size:22px;font-weight:800}.app-shell .rail-navigation{flex-direction:column;flex:1;align-items:stretch;gap:4px;min-height:0;padding-top:12px;display:flex;overflow-y:auto}.app-shell .rail-link{width:100%;height:48px;color:var(--text-muted);transition:color var(--motion-fast) ease, background var(--motion-fast) ease;background:0 0;border-radius:12px;flex-shrink:0;align-items:center;gap:12px;padding:0 12px;font-size:15px;font-weight:500;display:flex}.app-shell .rail-link svg{flex:none;width:24px;height:24px}.app-shell .rail-label{white-space:nowrap;text-overflow:ellipsis;font-size:inherit;font-weight:inherit;display:inline;overflow:hidden}.app-shell .rail-link:hover,.app-shell .rail-link.is-active{color:var(--text);background:var(--surface-subtle)}.app-shell .rail-link.is-active{font-weight:600}.app-shell .rail-login-card{background:var(--surface-subtle);text-align:center;border-radius:12px;flex:none;margin-top:20px;padding:20px 12px 12px}.app-shell .rail-login-card p{margin:0 0 16px;font-size:13px;font-weight:500;line-height:1.65}.app-shell .rail-google-button{border:1px solid var(--border);background:var(--canvas);min-height:44px;color:var(--text);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:8px;font-size:13px;font-weight:600;display:flex}.app-shell .rail-google-button svg{flex:none}.app-shell .top-header{inset:0 0 auto var(--shell-rail-width);z-index:35;height:var(--shell-header-height);background:var(--canvas);transition:left var(--motion-normal) ease;border:0;justify-content:flex-end;align-items:center;gap:16px;padding:0 24px;display:flex;position:fixed}.app-shell .header-center{width:min(334px,100%);min-width:0;margin-left:auto}.app-shell .header-actions{flex:none;align-items:center;gap:8px;margin:0;display:flex}.app-shell .header-actions .icon-button,.app-shell .shell-account-button{width:40px;height:40px;color:var(--text-soft);background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.app-shell .shell-account-button svg{width:24px;height:24px}.app-shell .header-actions .login-button{border-radius:var(--radius-pill);min-height:32px;padding:0 12px;font-size:13px;font-weight:600}.app-shell .shell-search,.app-shell .header-center .catalog-search-form{border:1px solid var(--border);background:var(--canvas);height:40px;min-height:40px;color:var(--text-muted);border-radius:12px;align-items:center;gap:8px;padding:0 4px 0 12px;display:flex}.app-shell .shell-search input,.app-shell .header-center .catalog-search-form input[type=search]{width:100%;min-width:0;min-height:36px;color:var(--text);font:400 13px/20px var(--font-ui);background:0 0;border:0;outline:0}.app-shell .shell-search input::placeholder{color:var(--text-muted)}.app-shell .shell-search button{width:36px;height:36px;color:var(--text-muted);background:0 0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.app-shell .shell-search svg{width:20px;height:20px}.app-shell .shell-search:focus-within{border-color:var(--focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--focus) 16%, transparent)}.app-shell .page-content{height:calc(100dvh - var(--shell-header-height));min-height:0;margin-top:var(--shell-header-height);margin-left:var(--shell-rail-width);overscroll-behavior-y:contain;transition:margin-left var(--motion-normal) ease;padding:24px 24px 40px;position:relative;overflow-y:auto}.app-shell .page-content>:not(.consent-modal-layer){max-width:min(100%,1126px);margin-inline:auto}:is(.app-shell .page-content:has(>.discovery-foundation),.app-shell .page-content:has(>.catalog-detail-foundation),.app-shell .page-content:has(>.account-page)){padding:24px 24px 40px}.app-shell .consent-modal-layer,.app-shell .auth-entry:before{inset:var(--shell-header-height) 0 0 var(--shell-rail-width)}.app-shell .mobile-navigation{display:none}.app-shell[data-page-kind=reader]{--shell-header-height:0px}.app-shell[data-page-kind=reader] .top-header,.app-shell[data-page-kind=reader] .mobile-navigation{display:none}.app-shell[data-page-kind=reader] .page-content{padding:env(safe-area-inset-top) 0 0;scroll-padding-top:52px}.app-shell[data-page-kind=work-detail] .page-content{padding:0}:where(:root[data-rail=collapsed] .app-shell:not([data-scoped-rail=true]),.app-shell[data-scoped-rail=true][data-rail=collapsed]).app-shell .rail-heading{justify-content:center}:where(:root[data-rail=collapsed] .app-shell:not([data-scoped-rail=true]),.app-shell[data-scoped-rail=true][data-rail=collapsed]).app-shell .rail-brand,:where(:root[data-rail=collapsed] .app-shell:not([data-scoped-rail=true]),.app-shell[data-scoped-rail=true][data-rail=collapsed]).app-shell .rail-label,:where(:root[data-rail=collapsed] .app-shell:not([data-scoped-rail=true]),.app-shell[data-scoped-rail=true][data-rail=collapsed]).app-shell .rail-login-card{display:none}:where(:root[data-rail=collapsed] .app-shell:not([data-scoped-rail=true]),.app-shell[data-scoped-rail=true][data-rail=collapsed]).app-shell .rail-link{justify-content:center;gap:0;padding-inline:0}@media (min-width:701px){.app-shell .page-content:has(>.cf-discovery[data-catalog-presentation]){padding-top:12px}}@media (min-width:701px) and (max-width:1150px){.app-shell{--shell-rail-width:72px}.app-shell .rail-heading{justify-content:center}.app-shell .rail-heading .rail-menu,.app-shell .rail-label,.app-shell .rail-login-card{display:none}.app-shell .rail-heading .rail-brand{display:inline-flex}.app-shell .rail-brand .brand-wordmark{display:none}.app-shell .rail-link{justify-content:center;gap:0;padding-inline:0}}@media (max-width:700px){.app-shell{--shell-rail-width:0px;--shell-header-height:0px}.app-shell .desktop-rail,.app-shell .top-header{display:none}:is(.app-shell .page-content,.app-shell .page-content:has(>.discovery-foundation),.app-shell .page-content:has(>.catalog-detail-foundation),.app-shell .page-content:has(>.account-page)){padding:env(safe-area-inset-top) 0 calc(52px + env(safe-area-inset-bottom));margin-left:0}:root .app-shell.is-account-surface .page-content{padding-top:env(safe-area-inset-top)}.app-shell .consent-modal-layer,.app-shell .auth-entry:before{inset:env(safe-area-inset-top) 0 calc(52px + env(safe-area-inset-bottom))}.app-shell .auth-entry{min-height:calc(100svh - 52px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.app-shell .auth-entry-card{max-height:calc(100svh - 84px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.app-shell .mobile-navigation{z-index:50;height:calc(52px + env(safe-area-inset-bottom));padding:2px 8px env(safe-area-inset-bottom);border-top:1px solid var(--border);background:var(--canvas);box-shadow:none;border-radius:16px 16px 0 0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;inset:auto 0 0}.app-shell .mobile-nav-link{min-width:0;min-height:48px;color:var(--navigation-muted);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:10px;font-weight:500;line-height:10px;display:flex}.app-shell .mobile-nav-link svg{flex:none;width:24px;height:24px}.app-shell .mobile-nav-link.is-active{color:var(--text)}.app-shell[data-page-kind=reader] .mobile-navigation,.app-shell[data-page-kind=work-detail] .mobile-navigation{display:none}.app-shell[data-page-kind=reader] .page-content,.app-shell[data-page-kind=work-detail] .page-content{padding:env(safe-area-inset-top) 0 0}}.app-shell .rail-link:focus-visible,.app-shell .mobile-nav-link:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.app-shell .desktop-rail,.app-shell .top-header,.app-shell .page-content{transition:none}}@media (min-width:1024px){.app-shell .rail-link.is-create{color:var(--text-on-brand);background:var(--brand);border-radius:9999px;margin-block:8px;font-weight:600}.app-shell .rail-link.is-create:hover{filter:brightness(.96)}}
