.im-player { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: var(--ground); box-shadow: 0 24px 60px rgba(10, 7, 19, 0.16); }
.im-player-btn { position: relative; display: block; width: 100%; height: 100%; text-decoration: none !important; }
.im-player-btn img, .im-watch-thumb img, .im-vtile-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.im-player-play { position: absolute; left: 20px; bottom: 20px; display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background: rgba(10, 7, 19, 0.78); box-shadow: 0 10px 30px rgba(10, 7, 19, 0.35); transition: transform .2s ease, background-color .2s ease; }
.im-player-play svg { width: 28px; height: 28px; margin-left: 4px; fill: #fff; }
.im-player-btn:hover .im-player-play, .im-player-btn:focus-visible .im-player-play, .im-watch-thumb:hover .im-player-play { background: var(--btn); transform: scale(1.06); }
.im-player-btn:focus-visible { outline: 3px solid var(--accent); outline-offset: -3px; }
.im-player-time { position: absolute; right: 12px; bottom: 12px; padding: 3px 8px; border-radius: 6px; background: rgba(10, 7, 19, 0.8); color: #fff; font-size: 13px; font-weight: 700; letter-spacing: 0.02em; line-height: 1.4; }
.im-player-frame { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.im-latest { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 48px; align-items: center; }
.im-latest-body h2 { margin-bottom: 14px !important; font-size: clamp(26px, 2.8vw, 34px) !important; }
.im-latest-body h2 a, .im-watch-body h2 a { color: var(--ink) !important; }
.im-latest-body h2 a:hover, .im-watch-body h2 a:hover { color: var(--btn) !important; text-decoration: none !important; }
.im-latest-answer { color: var(--ink2) !important; font-size: 18px !important; line-height: 1.6 !important; }
.im-watch-links { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 18px !important; font-size: 15px; font-weight: 700; }
.im-watch-links a { color: var(--btn) !important; }

.im-watch-s { padding-top: 0 !important; padding-bottom: 40px !important; }
.im-watch { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 32px; align-items: center; max-width: 960px; margin: 0 auto; padding: 22px; border: 1px solid var(--border); border-radius: 16px; background: #fff; }
.im-watch .pm-label { margin-bottom: 10px !important; }
.im-watch-thumb { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 10px; }
.im-watch-thumb .im-player-play { left: 10px; bottom: 10px; width: 42px; height: 42px; }
.im-watch-thumb .im-player-play svg { width: 18px; height: 18px; margin-left: 3px; }
.im-watch-thumb .im-player-time { right: 8px; bottom: 8px; font-size: 12px; }
.im-watch-body h2 { margin-bottom: 8px !important; font-size: clamp(21px, 2vw, 25px) !important; }
.im-watch-body > p:not(.im-watch-links) { color: var(--ink2) !important; font-size: 16px !important; line-height: 1.55 !important; }
.im-watch-body .im-watch-links { margin-top: 12px !important; }

.im-vtiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px; margin-top: 28px; }
.im-vtile { display: flex; flex-direction: column; gap: 8px; color: var(--ink) !important; text-decoration: none !important; }
.im-vtile-thumb { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid var(--border); border-radius: 12px; }
.im-vtile-code { margin-top: 4px; font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--btn); }
.im-vtile-q { font-size: 17px; font-weight: 700; line-height: 1.35; }
.im-vtile:hover .im-vtile-q { color: var(--btn); }

.im-videos-hero h1 { max-width: 16ch; }
.im-question-hero h1 { max-width: 22ch; }
.im-question-answer { max-width: 62ch; margin: 6px 0 18px !important; color: rgba(244, 242, 251, 0.86) !important; font-size: clamp(18px, 1.6vw, 21px) !important; line-height: 1.55 !important; }
.im-question-answer span { display: block; margin-bottom: 8px; font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent); }
.im-question-meta { color: rgba(244, 242, 251, 0.55) !important; font-size: 14px !important; }
.im-question-meta a { color: rgba(244, 242, 251, 0.85) !important; }
.im-question-player .pm-c { max-width: 1016px; }
.im-question-yt { margin-top: 14px !important; font-size: 15px; text-align: center; }
.im-question-yt a { font-weight: 700; color: var(--btn) !important; }
.im-question-short { color: var(--ink3); user-select: all; }
.im-transcript { max-width: 776px; }

@media (max-width: 900px) {
    .im-latest, .im-watch { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 640px) {
    .im-player-play { left: 12px; bottom: 12px; width: 48px; height: 48px; }
    .im-player-play svg { width: 22px; height: 22px; }
    .im-watch { padding: 16px; }
}
