.site-header-shell,.site-menu,.catalog-page{--paper-background:oklch(97.1% .009 255);--paper-white:oklch(100% 0 0);--paper-ink:oklch(31% .049 257);--paper-muted:oklch(49% .037 258);--paper-blue:oklch(49% .18 265);--paper-rule:oklch(90% .022 255);--paper-pencil:oklch(82% .137 86);color:var(--paper-ink);font-family:Avenir Next,Segoe UI,sans-serif}.site-header-shell{background:var(--paper-background);padding:1.25rem 1rem 0}.site-header-inner{border-bottom:1px solid var(--paper-rule);justify-content:space-between;align-items:center;gap:1rem;max-width:64rem;margin:auto;padding-bottom:1.25rem;display:flex}.site-brand{align-items:center;gap:.8rem;text-decoration:none;display:flex}.site-brand .dictation-mark{flex-basis:2.6rem;width:2.6rem;height:2.8rem;font-size:2.25rem}.site-brand strong{letter-spacing:-.05em;font:700 1.45rem/1.2 Trebuchet MS,sans-serif;display:block}.site-brand small{color:var(--paper-muted);margin-top:.2rem;font-size:.72rem;display:block}.site-menu-trigger,.site-menu-close{cursor:pointer;justify-content:center;align-items:center;gap:.65rem;min-width:44px;min-height:44px;display:inline-flex}.site-menu-trigger{border:1px solid var(--paper-rule);background:var(--paper-white);border-radius:.6rem;padding:.6rem .85rem;font-size:.85rem}.site-menu-trigger:hover{border-color:var(--paper-blue)}.site-menu-overlay{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:oklch(20% .04 255/.35);position:fixed;inset:0}.site-menu{z-index:61;background:var(--paper-background);width:min(100%,26rem);padding:1.5rem;position:fixed;inset:0 0 0 auto;overflow-y:auto;box-shadow:-12px 0 60px oklch(20% .04 255/.1)}.site-menu-top{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.7rem;display:flex}.site-menu-top h2{letter-spacing:-.04em;font-size:1.4rem;font-weight:650}.site-menu>p{color:var(--paper-muted);font-size:.9rem;line-height:1.7}.site-menu nav{gap:.75rem;margin-top:2rem;display:grid}.site-menu nav a,.site-menu nav .site-install-button{border:1px solid var(--paper-rule);background:var(--paper-white);border-radius:.75rem;align-items:center;gap:1rem;padding:1.2rem 1rem;display:flex}.site-menu nav a[aria-current]{border-color:var(--paper-blue);color:var(--paper-blue)}.site-menu nav a>span,.site-menu nav .site-install-button>span{flex:1}.site-menu nav strong{font-size:.95rem;display:block}.site-menu nav small{color:var(--paper-muted);margin-top:.3rem;font-size:.75rem;display:block}.site-menu .site-menu-note{border-top:1px solid var(--paper-rule);margin-top:3rem;padding-top:1.5rem}.site-header-shell :focus-visible,.site-menu :focus-visible{outline:3px solid var(--paper-blue);outline-offset:4px}@media (width>=640px){.site-header-shell{padding:1.5rem 2rem 0}}@media (width<=359px){.site-brand small{display:none}}.site-install-button{text-align:left;cursor:pointer;width:100%;min-height:44px}.site-install-button:disabled{opacity:.6;cursor:wait}.site-menu nav>a>svg,.site-install-button>svg{flex-shrink:0}.site-menu nav .site-install-button:hover{border-color:var(--paper-blue)}.site-install-help{background:var(--paper-white);border:1px solid var(--paper-rule);border-radius:.75rem;margin-top:1rem;padding:1rem;font-size:.85rem;line-height:1.6}.site-install-help h3{margin-bottom:.75rem;font-weight:650}.site-install-help ol{padding-left:1.25rem;list-style:decimal}.site-install-help li+li,.site-install-help p+p{margin-top:.65rem}.site-install-help li svg{vertical-align:middle;display:inline}.site-install-help .site-install-note{color:var(--paper-muted);margin-top:1rem;font-size:.75rem}.privacy-shell{color:#26364d;background:#f3f6fb;flex-direction:column;min-height:100svh;font-family:Avenir Next,Segoe UI,sans-serif;display:flex}.privacy-shell>main{flex:1}.privacy-shell--banner{padding-bottom:14rem}.site-footer{text-align:center;color:#53647e;flex-shrink:0;width:100%;max-width:58rem;margin:0 auto;padding:0 1.5rem 2rem;font-size:.8rem}.site-footer nav{flex-wrap:wrap;justify-content:center;gap:.65rem 1.5rem;display:flex}.site-footer a,.site-footer button{text-underline-offset:.2em;cursor:pointer;text-decoration:underline}.site-footer p{margin-top:.8rem}.consent-banner{z-index:50;background:#fff;border:1px solid #dce3ef;border-radius:.8rem;align-items:center;gap:1.5rem;width:min(55rem,100% - 2rem);max-height:calc(100svh - 2rem);padding:1.4rem 1.5rem;font-size:.875rem;line-height:1.55;display:flex;position:fixed;bottom:1rem;left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 8px 40px #26364d24}.consent-banner h2{margin-bottom:.4rem;font-size:1.1rem;font-weight:700}.consent-banner p{margin-bottom:.45rem}.consent-banner a{color:#2d52be;text-underline-offset:.2em;text-decoration:underline}.consent-actions{flex-shrink:0;gap:.6rem;display:flex}.consent-actions button{color:#2d52be;cursor:pointer;background:#fff;border:1px solid #2d52be;border-radius:.5rem;min-width:6rem;min-height:2.75rem;padding:.55rem .9rem;font-weight:650}.consent-actions button:hover{background:#eef2ff}.consent-banner :focus-visible,.site-footer :focus-visible{outline-offset:4px;outline:2px solid #2d52be}.consent-current{color:#53647e;margin-top:.5rem}@media (width<=700px){.consent-banner{flex-direction:column;align-items:stretch;gap:1rem;padding:1.1rem}.consent-actions button{flex:1}.privacy-shell--banner{padding-bottom:22rem}.site-footer{padding-inline:1rem}}.catalog-page{background:var(--paper-background);flex:1;padding:1.4rem 1rem 3rem}.catalog-workspace{max-width:64rem;margin:auto}.catalog-prototype{border:1px dashed var(--paper-rule);border-radius:.3rem;padding:.25rem .55rem;font-size:.65rem}.catalog-intro{gap:2rem;padding:1rem 0 2rem;display:grid}.catalog-eyebrow{color:var(--paper-muted);letter-spacing:.12em;font-size:.65rem;font-weight:650;line-height:1.6}.catalog-intro h1{letter-spacing:-.065em;margin-top:.75rem;font:700 clamp(2.5rem,6vw,3.8rem)/1.08 Trebuchet MS,sans-serif}.catalog-intro h1>span{color:var(--paper-blue);text-decoration:underline;-webkit-text-decoration-color:var(--paper-pencil);-webkit-text-decoration-color:var(--paper-pencil);text-decoration-color:var(--paper-pencil);text-underline-offset:.2em;text-decoration-thickness:4px}.catalog-lead{color:var(--paper-muted);margin-top:1.4rem;font-size:.95rem;line-height:1.8;display:none}.catalog-letter-note{display:none}.catalog-search{background:var(--paper-white);border:1px solid var(--paper-rule);color:var(--paper-muted);border-radius:.7rem;align-items:center;gap:.75rem;padding:0 1rem;display:flex}.catalog-search:focus-within{border-color:var(--paper-blue);outline:2px solid oklch(49% .18 265/.15)}.catalog-search input{width:100%;min-width:0;color:var(--paper-ink);background:0 0;outline:none;padding-block:1rem;font-size:max(16px,1rem)}.catalog-loading{z-index:50;border:1px solid var(--paper-rule);background:var(--paper-white);color:var(--paper-ink);pointer-events:none;border-radius:2rem;align-items:center;gap:.5rem;padding:.6rem 1rem;display:flex;position:fixed;top:.75rem;left:50%;transform:translate(-50%);box-shadow:0 2px 12px #0001}.catalog-search input::placeholder{color:var(--paper-muted);opacity:1}.catalog-topics,.catalog-results{margin-top:2.5rem}.catalog-section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.1rem;display:flex}.catalog-section-heading h2{letter-spacing:-.035em;font:700 1.35rem/1.3 Trebuchet MS,sans-serif}.catalog-section-heading>span{color:var(--paper-muted);white-space:nowrap;font-size:.72rem}.catalog-section-heading .catalog-eyebrow{margin-bottom:.35rem}.catalog-topic-grid{gap:.65rem;display:grid}.catalog-topic{border:1px solid var(--paper-rule);background:var(--paper-white);border-radius:.7rem;align-items:center;gap:.8rem;padding:.9rem;transition:border-color .16s,transform .16s;display:flex}.catalog-topic:hover{border-color:var(--paper-blue);transform:translateY(-2px)}.catalog-topic-mark{height:2.8rem;color:var(--paper-blue);letter-spacing:-.05em;background:oklch(96% .018 265);border-radius:.4rem;flex:0 0 2.8rem;place-items:center;font:italic 1.35rem/1 Georgia,serif;display:grid}.catalog-topic:nth-child(3n+2) .catalog-topic-mark{color:oklch(43% .07 70);background:oklch(97% .035 90)}.catalog-topic-copy{flex:1;min-width:0}.catalog-topic-copy strong{font-size:.85rem;font-weight:650;display:block}.catalog-topic-copy small{color:var(--paper-muted);margin-top:.2rem;font-size:.7rem;line-height:1.5;display:block}.catalog-topics-note{color:var(--paper-muted);margin:-.5rem 0 1rem;font-size:.75rem;line-height:1.7}.catalog-selection-count{color:var(--paper-muted);margin-top:1rem;font-size:.8rem}.catalog-topic>svg{color:var(--paper-muted);flex-shrink:0}.catalog-result-grid{gap:1rem;display:grid}.catalog-card{border:1px solid var(--paper-rule);background:var(--paper-white);border-radius:.75rem;padding:1.3rem;transition:border-color .16s;display:block}.catalog-card:hover{border-color:var(--paper-blue)}.catalog-card-meta{color:var(--paper-muted);justify-content:space-between;align-items:center;gap:.5rem;font-size:.68rem;display:flex}.catalog-card h3{letter-spacing:-.025em;margin-top:.8rem;font:700 1.25rem/1.3 Trebuchet MS,sans-serif}.catalog-card>p{color:var(--paper-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.65rem;font:1rem/1.8 Georgia,serif;display:-webkit-box;overflow:hidden}.catalog-card-bottom{border-top:1px solid var(--paper-rule);color:var(--paper-blue);justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:.8rem;display:flex}.catalog-card-bottom span{font-size:.7rem}.catalog-back.catalog-selection-back{margin-top:0}.catalog-category-header{align-items:flex-start;gap:.85rem;padding:1rem 0 1.5rem;display:flex}.catalog-category-header>div{min-width:0}.catalog-category-header h1{letter-spacing:-.035em;overflow-wrap:anywhere;font:700 1.65rem/1.2 Trebuchet MS,sans-serif}.catalog-category-header p{color:var(--paper-muted);margin-top:.5rem;font-size:.85rem;line-height:1.5}.catalog-empty{text-align:center;border:1px dashed var(--paper-rule);border-radius:.75rem;padding:3rem 1rem}.catalog-empty svg{color:var(--paper-muted);margin:0 auto 1rem}.catalog-empty h3{font-weight:650}.catalog-empty p{color:var(--paper-muted);margin-block:.6rem 1rem;font-size:.9rem}.catalog-empty button{color:var(--paper-blue);cursor:pointer;padding:.75rem;text-decoration:underline}.catalog-footnote{color:var(--paper-muted);text-align:center;margin-top:2rem;font-size:.72rem;line-height:1.7}.catalog-back{min-height:44px;color:var(--paper-muted);align-items:center;gap:.5rem;margin-top:1.25rem;font-size:.8rem;display:inline-flex}.catalog-detail{max-width:48rem;margin:1.2rem auto 0}.catalog-detail-heading h1{letter-spacing:-.05em;margin-block:.6rem 1rem;font:700 clamp(2rem,5vw,3rem)/1.15 Trebuchet MS,sans-serif}.catalog-detail-heading h1:focus{outline:none}.catalog-tags{flex-wrap:wrap;gap:.5rem;display:flex}.catalog-tags span{color:var(--paper-blue);background:oklch(94% .02 265);border-radius:.3rem;padding:.35rem .65rem;font-size:.7rem}.catalog-reading-tools{align-items:center;gap:.5rem;margin-block:1.5rem .7rem;display:flex}.catalog-reading-tools button{border:1px solid var(--paper-rule);cursor:pointer;border-radius:.4rem;min-width:44px;min-height:44px;padding:.6rem .8rem;font-size:.75rem}.catalog-reading-tools button[aria-pressed=true]{background:var(--paper-white);border-color:var(--paper-blue);color:var(--paper-blue)}.catalog-reading-sheet{min-height:21rem;margin-top:1.5rem}.catalog-reading-tools+.catalog-reading-sheet{margin-top:0}.catalog-reading-sheet .dictation-sheet-heading{gap:.75rem}.catalog-reading-sheet .dictation-text{white-space:pre-line;font-size:1.35rem;line-height:2}.catalog-exercise-instruction{color:var(--paper-muted);margin:1rem 1.25rem 0 2rem;font-size:.8rem;line-height:1.7}.catalog-reading-tip{color:var(--paper-muted);text-align:center;margin-block:1.2rem;font-size:.78rem;line-height:1.7}.catalog-source{border-top:1px solid var(--paper-rule);color:var(--paper-muted);overflow-wrap:anywhere;margin-top:2rem;font-size:.75rem;line-height:1.8}.catalog-source summary{cursor:pointer;padding-block:1rem}.catalog-source p+p{margin-top:.5rem}.catalog-page-range{color:var(--paper-muted);margin-block:.5rem 1rem;font-size:.75rem}.catalog-pagination{grid-template-columns:44px 1fr 44px;align-items:center;gap:.5rem;margin-top:1.5rem;font-size:.75rem;display:grid}.catalog-pagination a,.catalog-page-disabled{border:1px solid var(--paper-rule);border-radius:.4rem;justify-content:center;align-items:center;gap:.35rem;min-height:44px;padding:.5rem;display:inline-flex}.catalog-pagination a{color:var(--paper-blue);background:var(--paper-white)}.catalog-pagination a:hover{border-color:var(--paper-blue)}.catalog-page-disabled,.catalog-page-number{color:var(--paper-muted)}.catalog-page-disabled{opacity:.5}.catalog-page-number{white-space:nowrap;text-align:center}.catalog-page-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.catalog-page :focus-visible{outline:3px solid var(--paper-blue);outline-offset:4px}.catalog-page input:focus-visible{outline:none}@media (width>=640px){.catalog-lead{display:block}.catalog-pagination{grid-template-columns:auto auto auto;justify-content:center;gap:1rem}.catalog-pagination a,.catalog-page-disabled{padding-inline:.85rem}.catalog-page-label{clip-path:none;width:auto;height:auto;position:static;overflow:visible}.catalog-page{padding:1.5rem 2rem 4rem}.catalog-intro{grid-template-columns:1fr 1fr;align-items:center;padding-block:1.5rem 3.25rem}.catalog-letter-note{background:var(--paper-white);border:1px solid var(--paper-rule);width:18rem;box-shadow:3px 5px 0 var(--paper-rule);justify-self:end;padding:1.7rem;display:block;transform:rotate(4deg)}.catalog-letter-note>span{color:var(--paper-muted);border-bottom:1px solid var(--paper-rule);padding-bottom:.8rem;font-size:.68rem;display:block}.catalog-letter-note strong{color:var(--paper-blue);text-align:center;font:italic 4rem/1.8 Georgia,serif;display:block}.catalog-letter-note i{color:var(--paper-muted);font:.9rem Avenir Next,sans-serif}.catalog-letter-note>div{border-top:1px solid var(--paper-rule);color:var(--paper-muted);padding-top:.75rem;font-size:.63rem}.catalog-topic-grid,.catalog-result-grid{grid-template-columns:1fr 1fr}.catalog-topic{padding:1rem}.catalog-topic-copy strong{font-size:.9rem}.catalog-section-heading h2{font-size:1.5rem}.catalog-exercise-instruction{margin-inline:3.5rem 2.5rem}}@media (width<=359px){.catalog-section-heading>span{white-space:normal}.catalog-topic{gap:.5rem}}@media (prefers-reduced-motion:reduce){.catalog-topic,.catalog-card{transition:none}.catalog-topic:hover{transform:none}}
