.idq-main { max-width: 760px; margin: 0 auto; padding: 44px 20px 80px; }

.idq-hero { text-align: center; margin-bottom: 30px; }
.idq-eyebrow {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 6px 14px; border-radius: 999px;
    background: rgba(224, 31, 31, .1); color: #e01f1f;
    font-size: 12px; font-weight: 800; margin-bottom: 16px;
}
.idq-title { font-size: clamp(28px, 5vw, 42px); font-weight: 800; line-height: 1.1; color: var(--text-1, #1a1a1a); margin: 0 0 12px; }
.idq-title span { color: #e01f1f; }
.idq-sub { font-size: 15px; line-height: 1.6; color: var(--text-3, #888); margin: 0 auto; max-width: 520px; }
.idq-coupon-note {
    margin: 18px auto 0; max-width: 560px;
    font-size: 13.5px; line-height: 1.5; color: var(--text-2, #555);
    background: rgba(224, 31, 31, .06); border: 1px solid rgba(224, 31, 31, .16);
    border-radius: 12px; padding: 12px 16px;
}
.idq-coupon-note strong { color: #e01f1f; letter-spacing: .5px; }

.idq-linkcard {
    background: var(--surface, #fff); border: 1px solid var(--border-1, #e5e5e5);
    border-radius: 20px; padding: 22px 24px; margin-bottom: 16px;
    box-shadow: 0 22px 50px -30px rgba(224, 31, 31, .3);
}
.idq-link-label { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .4px; color: var(--text-3, #888); margin-bottom: 10px; }
.idq-link-row { display: flex; gap: 10px; flex-wrap: wrap; }
.idq-link-input {
    flex: 1; min-width: 200px; border: 1px solid var(--border-1, #e5e5e5); border-radius: 12px;
    padding: 13px 16px; font: inherit; font-size: 14px; font-weight: 600; color: var(--text-1, #1a1a1a);
    background: var(--surface-2, #fafafa);
}
.idq-copy {
    padding: 13px 24px; border: none; border-radius: 12px; background: #e01f1f; color: #fff;
    font: inherit; font-size: 14px; font-weight: 800; cursor: pointer;
    transition: background .25s, transform .25s cubic-bezier(.16, 1, .3, 1);
}
.idq-copy:hover { background: #c41a1a; transform: translateY(-2px); }
.idq-share { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 14px; }
.idq-share-btn {
    padding: 8px 14px; border-radius: 10px; border: 1px solid var(--border-1, #e5e5e5);
    background: var(--surface, #fff); color: var(--text-2, #555); text-decoration: none;
    font-size: 12.5px; font-weight: 700; transition: border-color .2s, transform .2s cubic-bezier(.16,1,.3,1);
}
.idq-share-btn:hover { border-color: rgba(224, 31, 31, .4); transform: translateY(-2px); }

.idq-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 44px; }
.idq-stat {
    padding: 18px 16px; border-radius: 16px; text-align: center;
    background: var(--surface, #fff); border: 1px solid var(--border-1, #e5e5e5);
}
.idq-stat strong { display: block; font-size: 24px; font-weight: 800; color: var(--text-1, #1a1a1a); font-variant-numeric: tabular-nums; }
.idq-stat:nth-child(2) strong { color: #e01f1f; }
.idq-stat span { display: block; margin-top: 4px; font-size: 12px; font-weight: 600; color: var(--text-3, #888); }

.idq-how-title { font-size: 22px; font-weight: 800; color: var(--text-1, #1a1a1a); text-align: center; margin: 0 0 22px; }
.idq-steps { display: flex; flex-direction: column; gap: 14px; }
.idq-step {
    display: flex; align-items: flex-start; gap: 15px;
    padding: 18px 20px; border-radius: 16px;
    background: var(--surface, #fff); border: 1px solid var(--border-1, #e5e5e5);
}
.idq-step-n {
    flex-shrink: 0; width: 34px; height: 34px; border-radius: 11px; display: grid; place-items: center;
    background: rgba(224, 31, 31, .1); color: #e01f1f; font-weight: 800; font-size: 15px;
}
.idq-step strong { font-size: 15px; font-weight: 800; color: var(--text-1, #1a1a1a); }
.idq-step p { margin: 4px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--text-3, #888); }

[data-theme="dark"] .idq-linkcard,
[data-theme="dark"] .idq-stat,
[data-theme="dark"] .idq-step,
[data-theme="dark"] .idq-share-btn { background: #181818; border-color: rgba(255, 255, 255, .08); }
[data-theme="dark"] .idq-link-input { background: #101010; border-color: rgba(255, 255, 255, .1); }

@media (max-width: 560px) { .idq-stats { grid-template-columns: 1fr; } }
