.app-layout{--app-nav-height: 64px;display:flex;flex-direction:column;min-height:100vh;background:radial-gradient(circle at top,rgba(255,245,226,.78),transparent 34%),linear-gradient(180deg,#fcf8f1,#f3ecdf)}.main-navigation{background:#f8f2e875;border-bottom:1px solid rgba(42,37,32,.03);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0;z-index:100}.app-layout:has(.landing-hero) .main-navigation,.app-layout:has(.home-hero) .main-navigation{background:#f8f2e86b;border-bottom-color:#2a252008}.nav-container{width:100%;padding:6px 40px 0;display:flex;align-items:center;justify-content:space-between;height:var(--app-nav-height)}.nav-brand{flex-shrink:0;text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}.nav-brand h1{color:#1a1410;font-size:1.25rem;font-weight:400;line-height:1.5;margin:0;font-family:Fraunces,Georgia,serif;letter-spacing:-.01em}.nav-brand:hover,.nav-brand:focus,.nav-brand:active,.nav-brand:visited{color:inherit;text-decoration:none}.nav-brand h1:hover,.nav-brand h1:focus{text-decoration:none}.nav-actions{display:flex;gap:14px;align-items:center;position:relative}.nav-link{color:#2a252085;text-decoration:none;padding:6px 0;border-radius:0;font-size:.87rem;font-weight:500;letter-spacing:.01em;transition:color .18s ease,opacity .18s ease}.nav-link:hover{color:#2a2520;opacity:1;text-decoration:none}.nav-link--accent{color:#7d5430d6;font-weight:600}.nav-link--accent:hover{color:#5e4126}.nav-menu{position:relative}.nav-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:999px;border:none;background:transparent;color:#2a252057;cursor:pointer;transition:background-color .18s ease,color .18s ease,opacity .18s ease}.nav-menu-trigger:hover,.nav-menu-trigger.is-open{background:#2a25200a;color:#2a25208f}.nav-menu-trigger__bars{display:inline-flex;flex-direction:column;gap:3.5px}.nav-menu-trigger__bars span{width:14px;height:1.6px;border-radius:999px;background:currentColor;opacity:.72;transition:transform .18s ease,opacity .18s ease}.nav-menu-trigger.is-open .nav-menu-trigger__bars span:nth-child(1){transform:translateY(4.5px) rotate(45deg)}.nav-menu-trigger.is-open .nav-menu-trigger__bars span:nth-child(2){opacity:0}.nav-menu-trigger.is-open .nav-menu-trigger__bars span:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}.nav-menu-panel{position:absolute;top:calc(100% + 10px);right:0;min-width:216px;padding:8px;border-radius:14px;border:1px solid rgba(42,37,32,.05);background:#f9f4edf0;box-shadow:0 10px 24px #251c1412;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.nav-menu-link{width:100%;display:flex;align-items:center;min-height:40px;padding:0 12px;border-radius:8px;background:none;border:none;color:#2a2520d1;text-decoration:none;font-size:.88rem;font-weight:500;text-align:left;transition:background-color .16s ease,color .16s ease}.nav-menu-link:hover{background:#2a25200a;color:#1a1410;text-decoration:none}.nav-menu-link--button{cursor:pointer}.nav-menu-link--button{border-top:1px solid rgba(42,37,32,.06);margin-top:4px;padding-top:6px;border-radius:0 0 8px 8px}.main-content{flex:1;width:100%;background:radial-gradient(circle at top right,rgba(255,247,231,.48),transparent 28%),linear-gradient(180deg,#fcf8f1b8,#f3ecdfe0)}.app-layout:has(.er-page) .main-navigation,.app-layout:has(.vr-page) .main-navigation,.app-layout:has(.reader-container) .main-navigation{display:none}@media (max-width: 768px){.app-layout{--app-nav-height: 56px}.nav-container{padding:4px 16px 0}.nav-brand h1{font-size:1.1rem}.nav-actions{gap:8px}.nav-link{font-size:.825rem}.nav-menu-trigger{width:32px;height:32px}.nav-menu-panel{min-width:200px}}.app-route-loading{min-height:40vh;display:flex;align-items:center;justify-content:center;opacity:0;animation:route-loading-appear .4s ease .35s forwards}.app-route-loading:after{content:"";width:48px;height:2px;border-radius:1px;background:#e8a87c;animation:route-loading-pulse 1.5s ease-in-out infinite}@keyframes route-loading-appear{to{opacity:1}}@keyframes route-loading-pulse{0%,to{opacity:.15}50%{opacity:.6}}*{box-sizing:border-box}:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-display: "Fraunces", Georgia, serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--color-accent: #E8A87C;--color-accent-warm: #E8A87C;--bg-primary: #FAF8F5;--bg-secondary: #F5F2EC;--text-primary: #1a1410;--text-secondary: #6B6560;--border-color: rgba(42, 37, 32, .08);--link-color: #3b82f6}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary)}#root{min-height:100vh}a{color:var(--link-color);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}
