.back-top{z-index:40;color:#dbc291;cursor:pointer;opacity:0;visibility:hidden;width:52px;height:52px;transition:opacity var(--transition), visibility var(--transition), transform var(--transition), border-color var(--transition), background var(--transition), color var(--transition);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121212eb;border:1px solid #c9a86a59;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0;display:inline-flex;position:fixed;bottom:28px;right:20px;transform:translateY(12px);box-shadow:0 8px 24px #00000059}@media (min-width:640px){.back-top{bottom:40px;right:32px}}.back-top:hover{color:#c9a86a;background:#c9a86a1f;border-color:#c9a86aa6}.back-top--visible{opacity:1;visibility:visible;transform:translateY(0)}.back-top__icon{width:18px;height:18px}.back-top__label{letter-spacing:.12em;font-size:10px;line-height:1}.opus-page main{padding:56px 0 96px}.opus-hero{text-align:center;max-width:640px;margin:0 auto 48px}.opus-hero--detail{margin-bottom:36px}.opus-hero__eyebrow{letter-spacing:.32em;color:var(--color-text-muted);text-transform:uppercase;margin:0 0 16px;font-size:12px}.opus-hero__title{font-family:var(--font-serif);letter-spacing:.12em;margin:0 0 18px;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:600}.opus-hero__desc{letter-spacing:.04em;color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.9}.opus-breadcrumb{letter-spacing:.04em;color:var(--color-text-muted);align-items:center;gap:10px;margin-bottom:28px;font-size:13px;display:flex}.opus-breadcrumb a{color:var(--color-text-secondary);transition:color var(--transition)}.opus-breadcrumb a:hover{color:var(--color-cream)}.opus-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:960px;margin:0 auto;display:grid}@media (min-width:640px){.opus-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1020px}}.opus-card{--rgb-fg:255, 255, 255;--color-cream:#e5e1d8;border-radius:var(--radius-md);border:1px solid var(--color-card-border);transition:border-color var(--transition), transform var(--transition);display:block;overflow:hidden}.opus-card:hover{border-color:var(--color-card-border-hover);transform:translateY(-3px)}.opus-card:hover .opus-card__cover{transform:scale(1.04)}.opus-card:hover .opus-card__action{color:var(--color-cream);opacity:1}.opus-card__media{aspect-ratio:4/5;background:var(--color-card-dark);position:relative;overflow:hidden}.opus-card__cover{object-fit:cover;width:100%;height:100%;transition:transform .45s;display:block}.opus-card__placeholder{background:radial-gradient(ellipse at 30% 20%, #c9a86a2e, transparent 55%), var(--color-card-dark);width:100%;height:100%}.opus-card__shade{pointer-events:none;background:linear-gradient(#0000001f 0%,#0003 40%,#000000d1 100%);position:absolute;inset:0}.opus-card__index{z-index:1;font-family:var(--font-serif);letter-spacing:.12em;color:rgba(var(--rgb-fg), .72);font-size:15px;position:absolute;top:18px;left:18px}.opus-card__body{z-index:1;flex-direction:column;gap:8px;padding:24px 20px 20px;display:flex;position:absolute;bottom:0;left:0;right:0}.opus-card__tag{letter-spacing:.14em;color:#c9a86a;font-size:12px}.opus-card__name{font-family:var(--font-serif);letter-spacing:.08em;color:#fff;margin:0;font-size:clamp(1.15rem,2.6vw,1.45rem);font-weight:600;line-height:1.35}.opus-card__subtitle{letter-spacing:.04em;color:rgba(var(--rgb-fg), .62);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.opus-card__action{letter-spacing:.1em;color:rgba(var(--rgb-fg), .55);opacity:.85;transition:color var(--transition), opacity var(--transition);align-items:center;gap:6px;margin-top:8px;font-size:13px;display:inline-flex}.opus-poems{text-align:right;max-width:560px;margin:0 auto 48px}.opus-poems__line{font-family:var(--font-serif);letter-spacing:.06em;color:var(--color-text-secondary);margin:0 0 14px;font-size:15px;line-height:2}.opus-poems__line:last-child{margin-bottom:0}.opus-section{max-width:960px;margin:0 auto 48px}.opus-section__title{font-family:var(--font-serif);letter-spacing:.16em;text-align:center;color:#c9a86a;margin:0 0 24px;font-size:1.15rem;font-weight:600}.opus-marquee{scrollbar-width:none;-ms-overflow-style:none;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000);mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000)}.opus-marquee::-webkit-scrollbar{display:none}.opus-marquee__track{gap:14px;width:max-content;padding:4px 0;display:flex}.opus-marquee__item{border-radius:var(--radius-md);border:1px solid var(--color-card-border);background:var(--color-card-dark);flex:none;width:min(220px,70vw);margin:0;position:relative;overflow:hidden}.opus-marquee__item img{aspect-ratio:250/177;object-fit:cover;width:100%;height:auto;display:block}.opus-marquee__item figcaption{letter-spacing:.04em;text-align:center;color:#fff;background:#0000008c;padding:8px 10px;font-size:12px;position:absolute;bottom:0;left:0;right:0}.opus-downloads{flex-direction:column;gap:10px;max-width:480px;margin:0 auto;display:flex}.opus-download{border-radius:var(--radius-md);border:1px solid var(--color-card-border);background:linear-gradient(160deg, rgba(var(--rgb-fg), .04) 0%, rgba(var(--rgb-fg), .015) 100%);transition:border-color var(--transition), transform var(--transition);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.opus-download:hover{border-color:var(--color-card-border-hover);transform:translateY(-1px)}.opus-download:hover .opus-download__action{color:var(--color-dark-text);background:var(--color-cream)}.opus-download__label{letter-spacing:.04em;color:var(--color-text);font-size:14px}.opus-download__action{letter-spacing:.12em;color:#c9a86a;transition:color var(--transition), background var(--transition), border-color var(--transition);border:1px solid #c9a86a59;border-radius:4px;flex-shrink:0;padding:6px 14px;font-size:12px}.opus-downloads__hint{letter-spacing:.04em;max-width:480px;color:var(--color-text-muted);text-align:center;margin:16px auto 0;font-size:12px;line-height:1.7}.opus-back{text-align:center;margin-top:16px}.opus-back__link{letter-spacing:.06em;color:var(--color-text-secondary);transition:color var(--transition);font-size:13px}.opus-back__link:hover{color:var(--color-cream)}
