/* DeepSeek AI Writer – front-end components. Uses theme fonts; colors via custom properties. */
:root {
	--dsaw-accent: #2563eb;
	--dsaw-accent-soft: #eff6ff;
	--dsaw-good: #15803d;
	--dsaw-bad: #b91c1c;
	--dsaw-border: #e5e7eb;
	--dsaw-muted: #6b7280;
	--dsaw-radius: 12px;
}
.dsaw-tpl-review { --dsaw-accent: #0f766e; --dsaw-accent-soft: #f0fdfa; }
.dsaw-tpl-comparison { --dsaw-accent: #7c3aed; --dsaw-accent-soft: #f5f3ff; }

/* Table of contents */
.dsaw-toc { border: 1px solid var(--dsaw-border); border-left: 4px solid var(--dsaw-accent); border-radius: var(--dsaw-radius); padding: 16px 20px; margin-block: 24px; background: #fafafa; }
.dsaw-toc .dsaw-toc-title { margin: 0 0 8px; }
.dsaw-toc ul { margin: 0; padding-left: 20px; columns: 2 260px; }
.dsaw-toc li { margin: 4px 0; break-inside: avoid; }

/* Tables */
.dsaw-table-wrap { overflow-x: auto; margin-block: 24px; }
.dsaw-table { width: 100%; border-collapse: collapse; font-size: .95em; }
.dsaw-table caption { caption-side: top; text-align: left; font-weight: 600; padding: 0 0 8px; color: var(--dsaw-muted); }
.dsaw-table th, .dsaw-table td { border: 1px solid var(--dsaw-border); padding: 10px 12px; text-align: left; vertical-align: top; }
.dsaw-table thead th { background: var(--dsaw-accent); color: #fff; border-color: var(--dsaw-accent); }
.dsaw-table tbody tr:nth-child(even) { background: #f9fafb; }
.dsaw-table tbody th { font-weight: 600; }

/* Boxes (Group blocks) */
.dsaw-box { border-radius: var(--dsaw-radius); padding: 18px 22px !important; margin-block: 24px !important; border: 1px solid var(--dsaw-border); }
.dsaw-box > :first-child { margin-top: 0; }
.dsaw-box > :last-child { margin-bottom: 0; }
.dsaw-box h3 { font-size: 1.1em; margin: 0 0 8px; }
.dsaw-takeaways, .dsaw-verdict, .dsaw-spec { background: var(--dsaw-accent-soft); border-left: 5px solid var(--dsaw-accent); }
.dsaw-tip { background: #fffbeb; border-left: 5px solid #f59e0b; }
.dsaw-proscons { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto 1fr; grid-auto-flow: column; column-gap: 24px; background: #fff; }
.dsaw-proscons h3:first-of-type { color: var(--dsaw-good); }
.dsaw-proscons h3:last-of-type { color: var(--dsaw-bad); }
.dsaw-proscons ul { list-style: none; padding-left: 0; margin: 0; }
.dsaw-proscons ul li { padding-left: 24px; position: relative; margin: 6px 0; }
.dsaw-proscons ul:first-of-type li::before { content: "✔"; color: var(--dsaw-good); position: absolute; left: 0; }
.dsaw-proscons ul:last-of-type li::before { content: "✖"; color: var(--dsaw-bad); position: absolute; left: 0; }
@media (max-width: 640px) { .dsaw-proscons { grid-template-columns: 1fr; grid-auto-flow: row; grid-template-rows: none; } }

/* Pricing cards */
.dsaw-pricing-block { margin-block: 28px; }
.dsaw-pricing { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; align-items: stretch; margin-bottom: 20px; }
.dsaw-plan { position: relative; border: 1px solid var(--dsaw-border); border-radius: var(--dsaw-radius); padding: 26px 18px 20px; text-align: center; background: #fff; display: flex; flex-direction: column; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.dsaw-plan p { margin: 4px 0; }
.dsaw-plan.dsaw-featured { border: 2px solid var(--dsaw-accent); box-shadow: 0 8px 24px rgba(37,99,235,.15); transform: translateY(-4px); }
.dsaw-badge { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: var(--dsaw-accent); color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; padding: 4px 12px; border-radius: 999px; white-space: nowrap; }
.dsaw-plan-name { font-size: 1.15em; }
.dsaw-plan-qty { color: var(--dsaw-muted); font-size: .9em; }
.dsaw-plan-price { margin: 10px 0 !important; }
.dsaw-amount { font-size: 2.2em; font-weight: 800; line-height: 1; color: var(--dsaw-accent); }
.dsaw-per { color: var(--dsaw-muted); margin-left: 2px; }
.dsaw-plan-total del { color: var(--dsaw-muted); }
.dsaw-plan-save { color: var(--dsaw-good); font-weight: 700; }
.dsaw-plan-perks { list-style: none; padding: 0; margin: 10px 0 14px; font-size: .9em; }
.dsaw-plan-perks li { margin: 3px 0; }
.dsaw-plan-perks li::before { content: "✔ "; color: var(--dsaw-good); }
.dsaw-btn { margin-top: auto; display: block; background: linear-gradient(180deg, #22c55e, #15803d); color: #fff !important; text-decoration: none !important; font-weight: 800; padding: 13px 16px; border-radius: 999px; box-shadow: 0 6px 16px rgba(22,163,74,.3); }
.dsaw-btn:hover { filter: brightness(1.1); }
.dsaw-price-note { font-size: .85em; color: var(--dsaw-muted); }

/* CTA buttons (Buttons block) */
:root { --dsaw-cta: #16a34a; --dsaw-cta-dark: #15803d; }
.dsaw-cta { margin-block: 30px !important; }
.dsaw-cta .wp-block-button__link { background: linear-gradient(180deg, #22c55e, var(--dsaw-cta-dark)); color: #fff !important; font-weight: 800; font-size: 1.05em; padding: 16px 34px; border-radius: 999px; box-shadow: 0 8px 20px rgba(22,163,74,.35); text-decoration: none !important; transition: transform .15s ease, box-shadow .15s ease; max-width: 100%; white-space: normal; text-align: center; }
.dsaw-cta .wp-block-button__link:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(22,163,74,.45); }

/* CTA boxes */
.dsaw-cta-box { display: flex; gap: 24px; align-items: center; margin-block: 32px; padding: 24px; border: 2px solid var(--dsaw-cta); border-radius: 16px; background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 60%); box-shadow: 0 10px 30px rgba(0,0,0,.06); }
.dsaw-cta-img { flex: 0 0 170px; display: block; }
.dsaw-cta-img img { width: 100%; height: auto; border-radius: 10px; background: #fff; }
.dsaw-cta-body { flex: 1; min-width: 0; }
.dsaw-cta-title { font-size: 1.35em; font-weight: 800; line-height: 1.25; margin: 0 0 10px !important; }
.dsaw-cta-perks { list-style: none; padding: 0; margin: 0 0 16px; }
.dsaw-cta-perks li { position: relative; padding-left: 26px; margin: 6px 0; }
.dsaw-cta-perks li::before { content: "✔"; position: absolute; left: 0; color: var(--dsaw-cta); font-weight: 800; }
.dsaw-cta-btn { display: inline-block; background: linear-gradient(180deg, #22c55e, var(--dsaw-cta-dark)); color: #fff !important; font-weight: 800; font-size: 1.08em; padding: 15px 30px; border-radius: 999px; text-decoration: none !important; box-shadow: 0 8px 20px rgba(22,163,74,.35); transition: transform .15s ease, box-shadow .15s ease; animation: dsaw-pulse 2.6s ease-in-out infinite; text-align: center; }
.dsaw-cta-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(22,163,74,.45); animation: none; }
.dsaw-cta-note { font-size: .8em; color: var(--dsaw-muted); margin: 10px 0 0 !important; }
.dsaw-cta-final { border-color: var(--dsaw-accent); background: linear-gradient(135deg, var(--dsaw-accent-soft) 0%, #ffffff 60%); }
@keyframes dsaw-pulse { 0%, 100% { box-shadow: 0 8px 20px rgba(22,163,74,.35); } 50% { box-shadow: 0 8px 30px rgba(22,163,74,.6); } }
@media (prefers-reduced-motion: reduce) { .dsaw-cta-btn { animation: none; } }
@media (max-width: 640px) { .dsaw-cta-box { flex-direction: column; text-align: center; padding: 20px 16px; } .dsaw-cta-img { flex-basis: auto; width: 150px; } .dsaw-cta-perks { display: inline-block; text-align: left; } .dsaw-cta-btn { display: block; } }

/* Disclaimers */
.dsaw-disclaimer { font-size: .85em; color: var(--dsaw-muted); border-top: 1px solid var(--dsaw-border); padding-top: 12px; margin-top: 32px; }
