/* Sampul mini tema — dipakai di landing, katalog, dashboard & admin */
.tcover { position: relative; aspect-ratio: 9 / 16; overflow: hidden; background: var(--bg); color: var(--ink); container-type: inline-size; isolation: isolate; }
.tcover__pattern { position: absolute; inset: 0; background-image: var(--pattern); background-size: 22%; opacity: .22; z-index: -1; }
.tcover--frame .tcover__pattern { opacity: .3; }
.tcover--editorial .tcover__pattern { opacity: .14; }
.tcover--card .tcover__pattern { opacity: .55; background-size: 40%; }
.tcover::after { content: ''; position: absolute; inset: 6cqw; border: 1px solid color-mix(in srgb, var(--accent) 55%, transparent); border-radius: 3cqw; pointer-events: none; }
.tcover--arch::after { border-radius: 50cqw 50cqw 3cqw 3cqw; inset: 8cqw 8cqw 6cqw; }
.tcover--editorial::after { inset: 5cqw; border-radius: 0; border-width: 1px 0; }
.tcover--card::after { display: none; }
.tcover__inner { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2.4cqw; padding: 12cqw 10cqw; text-align: center; }
.tcover--frame .tcover__inner, .tcover--arch .tcover__inner { background: radial-gradient(ellipse 70% 52% at 50% 50%, var(--bg) 40%, transparent 75%); }
.tcover--card .tcover__inner { inset: 14cqw 9cqw; padding: 8cqw 6cqw; border-radius: 6cqw; background: var(--surface); box-shadow: 0 4cqw 10cqw -6cqw rgba(0,0,0,.4); }
.tcover__greet { font-family: var(--fd), serif; font-size: 4.4cqw; letter-spacing: .14em; text-transform: uppercase; color: var(--accent); }
.tcover__crest { width: 52cqw; height: 52cqw; }
.tcover--editorial .tcover__crest { width: 46cqw; height: 46cqw; }
.tcover--card .tcover__crest { width: 44cqw; height: 44cqw; }
.tcover__crest svg { width: 100%; height: 100%; }
.tcover__kicker { font-family: var(--fd), serif; font-size: 3.6cqw; letter-spacing: .22em; text-transform: uppercase; color: var(--muted); margin-top: 1cqw; }
.tcover__names { font-family: var(--fs), cursive; font-weight: 400; font-size: 11cqw; line-height: 1.05; color: var(--ink); }
.tcover__names i { font-style: normal; color: var(--accent); }
.tcover--card .tcover__names { font-family: var(--fd), sans-serif; font-weight: 700; font-size: 8.5cqw; }
.tcover--editorial .tcover__names { font-family: var(--fd), serif; font-size: 9cqw; letter-spacing: .02em; }
.tcover__date { font-family: var(--fd), serif; font-size: 3.8cqw; letter-spacing: .2em; color: var(--ink); padding-top: 2cqw; border-top: 1px solid color-mix(in srgb, var(--accent) 50%, transparent); }

/* kartu tema adat: lukisan asli (bingkai akhir video intro) sebagai latar */
.tcover--poster { background: var(--poster) center / cover no-repeat, #F4EEE2; }
.tcover--poster .tcover__pattern, .tcover--poster .tcover__crest, .tcover--poster .tcover__greet { display: none; }
.tcover--poster .tcover__inner { padding: 0 18%; }
.tcover--poster .tcover__kicker, .tcover--poster .tcover__date { color: #8A6420; text-shadow: 0 0 8px rgba(255,250,240,.95); }
.tcover--poster .tcover__names { color: #A97C2C; text-shadow: 0 1px 0 rgba(255,255,255,.7), 0 2px 6px rgba(59,33,23,.25); }
.tcover--poster-dark .tcover__names, .tcover--poster-dark .tcover__kicker, .tcover--poster-dark .tcover__date { color: #F1D98E; text-shadow: 0 1px 6px rgba(0,0,0,.8); }
