.thm-hero{padding:70px 0 40px}
.thm-hero h1{font-style:italic;font-size:clamp(48px,6vw,74px);margin-bottom:20px}
.thm-lead{font-size:19px;line-height:1.6;color:var(--muted);max-width:640px}
.thm-lead strong{color:var(--text)}

.thm-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:40px}
.thm-search{flex:1;max-width:360px}
.thm-search input{width:100%;background:#1a1433;border:1px solid var(--line);color:var(--text);padding:12px 16px;font:15px var(--font);clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}
.thm-search input::placeholder{color:var(--muted)}
.thm-search input:focus{outline:2px solid var(--cyan);outline-offset:2px}
.thm-count{font-size:13px;color:var(--muted);white-space:nowrap}

.thm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;padding-bottom:60px;min-height:120px}
.thm-grid p.empty,.thm-empty{color:var(--muted);font-size:15px;grid-column:1/-1}
.thm-grid .card{cursor:pointer;border:0;background:none;padding:0;text-align:left;font:inherit;color:inherit;filter:drop-shadow(6px 7px 0 #8052cf25)}
.thm-grid .card:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
.thm-grid .thumb{position:relative;aspect-ratio:16/9;background:#111;overflow:hidden;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);border:1px solid var(--line)}
.thm-grid .thumb img,.thm-grid .thumb video{width:100%;height:100%;object-fit:cover}
.thm-grid .body{padding-top:16px}
.thm-grid h2{font-size:20px;margin-bottom:4px}
.thm-grid .meta{font-size:12px;color:var(--muted);margin-bottom:10px}
.thm-grid .desc{font-size:14px;color:var(--muted);line-height:1.5;margin-bottom:14px}
.thm-grid .chips{display:flex;flex-wrap:wrap;gap:8px}
.thm-grid .chip{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--cyan);background:#1a1433;border:1px solid var(--line);padding:4px 10px;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,0 100%)}
.thm-grid .card:hover .thumb{border-color:var(--accent)}

.thm-disclaimer{font-size:13px;line-height:1.6;color:var(--muted);max-width:900px;padding-bottom:50px;border-bottom:1px solid var(--line)}
.thm-disclaimer a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}

.thm-submit{padding-block:60px 70px}
.thm-submit-box{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;background:#161333;border:1px solid var(--line);border-top:2px solid var(--cyan);padding:36px 40px;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px))}
.thm-submit-box h2{font-style:italic;font-size:28px;margin-bottom:8px}
.thm-submit-box p{color:var(--muted);font-size:15px;max-width:420px}

dialog#dialog{width:min(760px,calc(100% - 32px));max-height:90vh;padding:0;background:#15102b;color:var(--text);border:1px solid #6e519b;overflow:auto}
dialog#dialog::backdrop{background:#05030be8;backdrop-filter:blur(5px)}
.thm-dlg-close{position:absolute;top:16px;right:16px;background:none;color:white;font-size:26px;border:0;cursor:pointer;padding:0 8px;z-index:2}
.thm-dlg-media{aspect-ratio:16/9;background:#050409}
.thm-dlg-media img,.thm-dlg-media video{width:100%;height:100%;object-fit:cover}
.thm-dlg-body{padding:28px 30px 32px;display:grid;gap:14px}
.thm-dlg-body h2{font-size:26px;font-style:italic}
.thm-dlg-meta{font-size:13px;color:var(--muted)}
.thm-dlg-body>p{color:var(--muted);font-size:15px;line-height:1.6}
.thm-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;padding:16px 0;border-block:1px solid var(--line)}
.thm-facts dt{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--cyan);margin-bottom:4px}
.thm-facts dd{margin:0;font-size:14px}
.thm-hint{font-size:12px;color:var(--muted)}
.thm-dlg-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
body:has(dialog[open]){overflow:hidden}

@media(max-width:760px){
.thm-hero{padding:45px 0 30px}
.thm-tools{flex-direction:column;align-items:flex-start;gap:14px}
.thm-search{max-width:none;width:100%}
.thm-grid{grid-template-columns:1fr;gap:24px}
.thm-submit-box{padding:28px 22px}
}
