:root{--color-paper:#F9F7F2;--color-ink:#1B263B;--color-highlight:#E07A5F;--color-highlight-hover:#c4664d;--color-muted:#6B7280;--color-border:#E5E1D8;--color-surface:#FFFFFF;--font-headline:'Playfair Display', Georgia, serif;--font-body:'EB Garamond', 'Times New Roman', serif;--font-ui:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:5rem;--content-max-width:48rem;--page-max-width:72rem;--header-height:4rem;--transition-base:0.3s ease;--transition-slow:0.6s ease}html[data-theme=dark]{--color-paper:#16162A;--color-ink:#E8E6DF;--color-highlight:#E07A5F;--color-highlight-hover:#f08a70;--color-muted:#9CA3AF;--color-border:#2E2E4A;--color-surface:#1E1E38}html[data-theme=sepia]{--color-paper:#F5E6CA;--color-ink:#3B2F1E;--color-highlight:#C0623C;--color-highlight-hover:#a5502e;--color-muted:#7A6B55;--color-border:#D4B896;--color-surface:#EFD9B4}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:100%;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:1.125rem;line-height:1.6;color:var(--color-ink);background-color:var(--color-paper);min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:var(--font-headline);font-weight:600;line-height:1.2;color:var(--color-ink)}h1{font-size:2.5rem}h2{font-size:1.875rem}h3{font-size:1.5rem}a{color:var(--color-highlight);text-decoration:none;transition:color var(--transition-base)}a:hover,a:focus-visible{color:var(--color-highlight-hover)}img{max-width:100%;height:auto;display:block}.site-main{flex:1;width:100%;max-width:var(--page-max-width);margin:0 auto;padding:var(--space-lg)var(--space-md)}.site-header{position:sticky;top:0;z-index:100;background-color:var(--color-paper);border-bottom:1px solid var(--color-border);height:var(--header-height);backdrop-filter:blur(8px)}.header-container{max-width:var(--page-max-width);margin:0 auto;padding:0 var(--space-md);height:100%;display:flex;align-items:center;justify-content:space-between}.site-brand{text-decoration:none;color:var(--color-ink)}.brand-name{font-family:var(--font-headline);font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.nav-list{display:flex;gap:var(--space-lg);list-style:none}.nav-link{font-family:var(--font-ui);font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink);transition:color var(--transition-base)}.nav-link:hover{color:var(--color-highlight)}.header-actions{display:flex;align-items:center;gap:var(--space-sm)}.header-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:none;background:0 0;border-radius:.375rem;cursor:pointer;transition:background var(--transition-base);font-size:1rem;color:var(--color-ink)}.header-btn:hover{background:var(--color-border)}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;padding:.375rem}.hamburger-bar{display:block;width:1.25rem;height:2px;background:var(--color-ink);border-radius:2px;transition:transform var(--transition-base),opacity var(--transition-base);transform-origin:center}.nav-toggle--open .hamburger-bar:nth-child(1){transform:translateY(7px)rotate(45deg)}.nav-toggle--open .hamburger-bar:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle--open .hamburger-bar:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-footer{border-top:1px solid var(--color-border);padding:var(--space-lg)var(--space-md);margin-top:var(--space-2xl)}.footer-container{max-width:var(--page-max-width);margin:0 auto;text-align:center}.footer-copyright{font-family:var(--font-ui);font-size:.8125rem;color:var(--color-muted)}.footer-links{margin-bottom:var(--space-sm);font-family:var(--font-ui);font-size:.875rem;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}.footer-link{color:var(--color-muted);transition:color var(--transition-base)}.footer-link:hover{color:var(--color-highlight);text-decoration:underline}.footer-separator{color:var(--color-border)}.hero-section{text-align:center;padding:var(--space-2xl)var(--space-md)}.hero-title{font-size:3rem;margin-bottom:var(--space-md)}.hero-subtitle{font-family:var(--font-body);font-size:1.25rem;color:var(--color-muted);max-width:36rem;margin:0 auto}.section-heading{font-family:var(--font-headline);font-size:1.75rem;margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-highlight);display:inline-block}.featured-section{margin-bottom:var(--space-2xl)}.poem-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:var(--space-lg)}.poem-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;padding:var(--space-lg);transition:box-shadow var(--transition-base),transform var(--transition-base)}.poem-card:hover{box-shadow:0 4px 20px rgba(27,38,59,8%);transform:translateY(-2px)}.poem-card--featured{border-left:4px solid var(--color-highlight)}.poem-card__title{font-family:var(--font-headline);font-size:1.25rem;margin-bottom:var(--space-sm)}.poem-card__title a{color:var(--color-ink)}.poem-card__title a:hover{color:var(--color-highlight)}.poem-card__author{font-family:var(--font-ui);font-size:.875rem;color:var(--color-muted)}.poem-card__year{font-family:var(--font-ui);font-size:.75rem;color:var(--color-muted)}.poem-card__image{margin-top:var(--space-md);border-radius:.375rem}.poem-card__tags{margin-top:var(--space-sm);display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tag{font-family:var(--font-ui);font-size:.75rem;background:var(--color-paper);color:var(--color-muted);padding:.125rem .5rem;border-radius:1rem;border:1px solid var(--color-border)}.poem-single{max-width:var(--content-max-width);margin:0 auto}.poem-hero__image{width:100%;max-height:24rem;object-fit:cover;border-radius:.5rem;margin-bottom:var(--space-xl)}.poem-header{margin-bottom:var(--space-xl);text-align:center}.poem-title{font-size:2.5rem;margin-bottom:var(--space-sm)}.poem-author{font-family:var(--font-ui);font-size:1rem;color:var(--color-muted)}.poem-author a{color:var(--color-highlight)}.poem-year{font-family:var(--font-ui);font-size:.875rem;color:var(--color-muted)}.poem-content{font-family:var(--font-body);font-size:1.25rem;line-height:1.8;white-space:pre-wrap;margin-bottom:var(--space-xl);padding:var(--space-xl)0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.poem-disclaimer{background:#fef3cd;border:1px solid #f0d98c;border-radius:.375rem;padding:var(--space-md);margin-bottom:var(--space-lg);font-family:var(--font-ui);font-size:.875rem}.poem-interpretation{margin:var(--space-xl)0;text-align:justify}.poem-interpretation h2{font-size:1.5rem;margin-bottom:var(--space-md)}.poem-keywords{margin:var(--space-xl)0}.poem-keywords h2{font-size:1.5rem;margin-bottom:var(--space-md)}.poem-keywords__list{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.poem-keywords__pill{font-family:var(--font-ui);font-size:.8125rem;background:var(--color-surface);color:var(--color-ink);padding:.25rem .75rem;border-radius:1.25rem;border:1px solid var(--color-border);transition:background var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.poem-keywords__pill:hover{background:var(--color-highlight);border-color:var(--color-highlight);color:var(--color-surface)}.poem-rhetorical{margin:var(--space-xl)0}.poem-rhetorical h2{font-size:1.5rem;margin-bottom:var(--space-md)}.poem-rhetorical__list{display:flex;flex-direction:column;gap:var(--space-md);margin:0}.poem-rhetorical__item{background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-highlight);border-radius:.375rem;padding:var(--space-md)var(--space-lg);transition:box-shadow var(--transition-base)}.poem-rhetorical__item:hover{box-shadow:0 2px 12px rgba(27,38,59,6%)}.poem-rhetorical__name{font-family:var(--font-headline);font-size:1rem;font-weight:600;color:var(--color-highlight);margin-bottom:var(--space-xs)}.poem-rhetorical__desc{font-family:var(--font-body);font-size:.9375rem;color:var(--color-muted);line-height:1.6;margin:0}.poem-illustration img{border-radius:.5rem;margin:var(--space-xl)0}.poem-meta{margin-top:var(--space-xl);padding-bottom:var(--space-lg)}.poem-meta h3{font-family:var(--font-ui);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.poem-meta__tags ul{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-md)}.poem-meta__tags a{font-family:var(--font-ui);font-size:.8125rem;color:var(--color-highlight)}.poem-meta__stat{font-family:var(--font-ui);font-size:.8125rem;color:var(--color-muted);margin-bottom:var(--space-xs)}.poem-audio{margin-top:var(--space-md);margin-bottom:var(--space-lg)}.poem-audio audio{width:100%;margin-top:var(--space-md)}.poem-wordcloud{margin:var(--space-xl)0}.poem-wordcloud h2{font-size:1.5rem;margin-bottom:var(--space-md)}.poem-wordcloud__figure{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;padding:var(--space-md);text-align:center}.poem-wordcloud__figure img{max-width:100%;height:auto;border-radius:.375rem;margin:0 auto}.poem-related{margin-top:var(--space-2xl)}.poem-related h2{margin-bottom:var(--space-lg)}.list-section{max-width:var(--page-max-width);margin:0 auto}.list-heading{margin-bottom:var(--space-lg)}.list-description{margin-bottom:var(--space-xl);color:var(--color-muted)}.pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-xl);padding:0;list-style:none;font-family:var(--font-ui);font-size:.875rem}.page-item{list-style:none}.page-link{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;padding:var(--space-xs)var(--space-sm);border:1px solid var(--color-border);border-radius:.375rem;color:var(--color-ink);background:var(--color-surface);text-decoration:none;transition:all var(--transition-base)}.page-link:hover{background:var(--color-paper);border-color:var(--color-highlight);color:var(--color-highlight)}.page-item.active .page-link{background:var(--color-highlight);border-color:var(--color-highlight);color:var(--color-surface)}.page-item.disabled .page-link{color:var(--color-muted);background:var(--color-paper);border-color:var(--color-border);opacity:.5;cursor:not-allowed;pointer-events:none}@keyframes fadeInUp{from{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}.animate-on-scroll{opacity:0;transform:translateY(1.5rem);transition:opacity .8s ease,transform .8s ease}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.animate-on-scroll:nth-child(2){transition-delay:.1s}.animate-on-scroll:nth-child(3){transition-delay:.2s}.animate-on-scroll:nth-child(4){transition-delay:.3s}.animate-on-scroll:nth-child(5){transition-delay:.4s}.animate-on-scroll:nth-child(6){transition-delay:.5s}@media(prefers-reduced-motion:reduce){.animate-on-scroll{opacity:1;transform:none;transition:none}}@media(max-width:768px){h1,.hero-title{font-size:2rem}h2{font-size:1.5rem}.poem-title{font-size:1.75rem}.poem-content{font-size:1.125rem}.poem-grid{grid-template-columns:1fr}.nav-toggle{display:flex}.nav-list{display:none;position:absolute;top:var(--header-height);left:0;right:0;background:var(--color-paper);border-bottom:1px solid var(--color-border);flex-direction:column;gap:0;padding:var(--space-sm)0;box-shadow:0 4px 12px rgba(27,38,59,8%);z-index:99}.nav-list--open{display:flex}.nav-list li{width:100%}.nav-link{display:block;padding:var(--space-sm)var(--space-lg);font-size:1rem;letter-spacing:.03em}.site-header{position:sticky;overflow:visible}}.search-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.search-modal--open{opacity:1;visibility:visible}.search-modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(27,38,59,.4);backdrop-filter:blur(4px)}.search-modal__content{position:relative;width:100%;max-width:var(--page-max-width);height:80vh;background:var(--color-paper);border-radius:.75rem;box-shadow:0 20px 40px rgba(0,0,0,.2);display:flex;flex-direction:column;margin:var(--space-md);overflow:hidden;z-index:1001;transform:translateY(20px);transition:transform var(--transition-base)}.search-modal--open .search-modal__content{transform:translateY(0)}.search-modal__header{padding:var(--space-md)var(--space-lg);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.search-modal__title{font-size:1.5rem;margin:0}.search-modal__close{background:0 0;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-muted);padding:var(--space-xs)}#search{flex:1;overflow-y:auto;padding:var(--space-lg)}.overflow-hidden{overflow:hidden}:root{--pagefind-ui-primary:var(--color-highlight);--pagefind-ui-text:var(--color-ink);--pagefind-ui-background:var(--color-paper);--pagefind-ui-border:var(--color-border);--pagefind-ui-tag:var(--color-highlight);--pagefind-ui-font:var(--font-ui)}.pagefind-ui .pagefind-ui__search-input{border-radius:.5rem;font-size:1.125rem}.pagefind-ui .pagefind-ui__result-link{font-family:var(--font-headline);font-size:1.25rem;color:var(--color-ink)}.pagefind-ui .pagefind-ui__result-excerpt{font-family:var(--font-body);font-size:1rem}.pagefind-ui .pagefind-ui__message{font-family:var(--font-ui);color:var(--color-muted)}.static-page{max-width:var(--content-max-width);margin:0 auto;padding:var(--space-xl)var(--space-md)}.page-header{margin-bottom:var(--space-xl);text-align:center;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-lg)}.page-title{font-family:var(--font-headline);font-size:2.5rem;color:var(--color-ink)}.page-content{font-family:var(--font-body);font-size:1.125rem;line-height:1.7;color:var(--color-ink)}.page-content h2{font-family:var(--font-headline);font-size:1.5rem;margin-top:var(--space-xl);margin-bottom:var(--space-md);color:var(--color-ink);border-left:3px solid var(--color-highlight);padding-left:var(--space-sm)}.page-content p{margin-bottom:var(--space-md);text-align:justify}.page-content ul,.page-content ol{margin-left:var(--space-lg);margin-bottom:var(--space-md)}.page-content li{margin-bottom:var(--space-xs)}