.card-preview-trigger{display:inline;padding:0;border:0;background:none;color:var(--accent);font:inherit;text-decoration:underline;text-decoration-style:dotted;cursor:pointer}
.card-preview{position:fixed;z-index:20;right:clamp(12px,4vw,56px);top:90px;width:min(280px,calc(100vw - 24px));min-height:180px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--bg);box-shadow:0 20px 60px #0008}
.card-preview img{display:block;max-width:100%;max-height:420px;margin:auto;border-radius:9px}.card-preview p{text-align:center;color:var(--muted)}
.card-preview-close{position:absolute;right:4px;top:2px;width:30px;height:30px;border:0;background:var(--bg);color:var(--text);font-size:24px;cursor:pointer}
.opening-hand{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.action-timeline{display:grid;gap:5px;padding-left:22px}.gameplay-panel{margin-top:20px}.gameplay-panel .panel-head{display:flex;justify-content:space-between;align-items:baseline}.deck-card-list{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 14px}.deck-card-ref{color:var(--muted)}
.action-timeline li[data-current]{padding:8px;border-left:4px solid var(--accent);background:#77d5ff18}.replay-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.replay-controls select,select,textarea{padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--text)}
.game-hero{align-items:flex-start}.hero-copy{min-width:0;flex:1}.hero-copy h1 span{color:var(--muted);font-weight:500}.hero-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}.source-badge,.match-type-badge,.review-plan-badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800}.hero-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.match-type-badge{color:var(--accent)}.review-plan-badge.reviewed,.review-plan-badge.active{color:var(--good)}.review-plan-badge.not_planned{color:var(--accent2)}
.card-preview-trigger{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.protocol-action[data-current]{border-left:3px solid var(--accent);background:rgba(119,213,255,.1)}
.card-back{border-style:dashed;color:var(--muted)}.mulligan-detail{display:block;margin-top:6px;color:var(--muted);font-size:12px}.mulligan-detail.drawn{color:var(--good)}.mulligan-detail.returned{color:var(--bad)}

.marker-form input[type=checkbox]{width:16px}
