.tl-card{list-style:none}.tl-card__link{display:flex;flex-direction:column;gap:18px;height:100%}.tl-card__thumb{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--r-md);background:#faf0ce;transition:box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.tl-card__thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.tl-card__link:hover .tl-card__thumb{transform:translateY(-3px);box-shadow:var(--shadow-md)}.tl-card__link:hover .tl-card__thumb img{transform:scale(1.04)}.tl-card__play{position:absolute;inset-inline-end:14px;inset-block-end:14px;width:46px;height:32px;border-radius:10px;background:#ff0000e0;box-shadow:0 4px 12px #00000040}.tl-card__play:after{content:"";position:absolute;inset:0;margin:auto;width:0;height:0;border-style:solid;border-width:7px 0 7px 12px;border-color:transparent transparent transparent #fff;translate:2px 0}.tl-card__ph{display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:clamp(16px,2vw,26px)}.tl-card__ph span{font-size:12px;font-weight:var(--fw-bold);letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent-deep)}.tl-card__ph strong{font-size:clamp(20px,2.1vw,28px);line-height:1.25;font-weight:var(--fw-bold);letter-spacing:var(--ls-heading);color:var(--c-ink);word-break:keep-all;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tl-card__text{display:flex;flex:1;flex-direction:column;gap:8px;padding-inline:4px}.tl-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:var(--c-muted)}.tl-card__draft{padding:2px 8px;border-radius:999px;background:var(--c-ink);color:var(--c-white);font-size:11px;font-weight:var(--fw-medium)}.tl-card__title{font-size:20px;line-height:1.4;font-weight:var(--fw-bold);letter-spacing:var(--ls-heading);color:var(--c-ink);word-break:keep-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tl-card__sub{font-size:15px;line-height:1.6;color:var(--c-ink-soft);word-break:keep-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tl-card__tool{align-self:flex-start;margin-block-start:auto;padding:4px 12px;border-radius:999px;background:var(--c-accent-tint);color:var(--c-accent-deep);font-size:13px;font-weight:var(--fw-medium)}.tp-body{font-size:18px;line-height:1.85;color:var(--c-ink-soft);word-break:keep-all;overflow-wrap:anywhere}.tp-body>*+*{margin-block-start:1.1em}.tp-body h2,.tp-body h3,.tp-body h4{margin-block-start:2em;color:var(--c-ink);font-weight:var(--fw-bold);letter-spacing:var(--ls-heading);line-height:1.4}.tp-body h2{font-size:26px}.tp-body h3{font-size:22px}.tp-body h4{font-size:19px}.tp-body ul,.tp-body ol{padding-inline-start:1.4em}.tp-body ul{list-style:disc}.tp-body ol{list-style:decimal}.tp-body li+li{margin-block-start:.35em}.tp-body a{color:var(--c-terracotta);text-decoration:underline;text-underline-offset:3px}.tp-body blockquote{padding:4px 0 4px 20px;border-inline-start:4px solid var(--c-accent);color:var(--c-ink)}.tp-body code{padding:2px 6px;border-radius:4px;background:var(--c-surface);font-size:.9em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.tp-body pre{padding:18px 20px;border-radius:var(--r-sm);background:#1f1f1f;color:#f5f5f5;overflow-x:auto;line-height:1.6;white-space:pre-wrap}.tp-body pre code{padding:0;background:none;color:inherit}.tp-body img{display:block;max-width:100%;height:auto;margin-inline:auto;border-radius:var(--r-sm)}.tp-body hr{border:0;border-block-start:1px solid var(--c-border);margin-block:2.2em}.tp-body table{width:100%;border-collapse:collapse;font-size:16px}.tp-body th,.tp-body td{padding:10px 12px;border:1px solid var(--c-border);text-align:start}.tp-body div[data-youtube-video]{margin-block:1.6em}.tp-body div[data-youtube-video] iframe{display:block;width:100%;height:auto;aspect-ratio:16 / 9;border:0;border-radius:var(--r-sm);background:#000}.tp-file__ico{display:inline-grid;flex:none;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;font-size:18px;line-height:1}.tp-body a[href^="/files/"]{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:14px 22px;border-radius:var(--r-sm);background:#f57c1f;color:#fff;font-weight:var(--fw-bold);font-size:16px;text-decoration:none;box-shadow:0 2px 8px #f57c1f47;transition:background var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.tp-body a[href^="/files/"]:after{content:"내려받기 ↓";margin-inline-start:6px;padding-inline-start:12px;border-inline-start:1px solid rgba(255,255,255,.55);font-size:14px;font-weight:var(--fw-medium);white-space:nowrap}.tp-body a[href^="/files/"]:hover{background:#e06a10;transform:translateY(-2px);box-shadow:0 6px 16px #f57c1f61}.tp-body .ProseMirror-selectednode iframe,.tp-body div[data-youtube-video].ProseMirror-selectednode iframe{outline:3px solid var(--c-accent)}
