/* ================= Share window (dc-share.js) ================= */
.dc-share { position: fixed; inset: 0; z-index: 3000; background: rgba(15, 23, 42, .6); backdrop-filter: blur(3px); display: flex; align-items: flex-end; justify-content: center; animation: dcShFade .2s ease; }
@keyframes dcShFade { from { opacity: 0; } }
.dc-share-sheet { width: min(100%, 520px); max-height: 94vh; overflow-y: auto; background: var(--bs-body-bg, #fff); color: var(--dc-text, #334155); border-radius: 14px 14px 0 0; padding: 14px 16px 18px; animation: dcShUp .32s cubic-bezier(.16, 1, .3, 1); }
@keyframes dcShUp { from { transform: translateY(40px); opacity: 0; } }
@media (min-width: 640px) { .dc-share { align-items: center; } .dc-share-sheet { border-radius: 12px; } }
.dc-share-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; color: var(--dc-ink, #0f172a); }
.dc-share-x { border: 0; background: none; font-size: 1.1rem; color: inherit; padding: 6px 10px; cursor: pointer; }
.dc-share-stage { display: grid; place-items: center; background: color-mix(in srgb, var(--dc-brand, #4f46e5) 8%, transparent); border-radius: 8px; padding: 10px; min-height: 120px; }
.dc-share-stage img { max-width: 100%; max-height: 300px; border-radius: 6px; box-shadow: 0 10px 28px rgba(15, 23, 42, .25); display: block; }
.dc-share-stage.story img { max-height: 340px; }
.dc-share-tabs { display: flex; gap: 6px; justify-content: center; margin: 10px 0; }
.dc-share-tabs button { border: 1px solid var(--dc-line, #e2e8f0); background: transparent; color: inherit; padding: 4px 14px; border-radius: 999px; font-size: .8rem; font-weight: 700; cursor: pointer; }
.dc-share-tabs button.on { background: var(--dc-grad, #4f46e5); color: #fff; border-color: transparent; }
.dc-share-lab { display: block; font-size: .78rem; font-weight: 700; margin: 4px 0 10px; } .dc-share-lab textarea { width: 100%; margin-top: 4px; padding: 9px 11px; border: 1.5px solid var(--dc-line, #cbd5e1); border-radius: 6px; background: transparent; color: inherit; font: inherit; font-weight: 400; font-size: .9rem; resize: vertical; }
.dc-share-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.dc-share-grid a, .dc-share-grid button { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 10px 4px; border: 1px solid var(--dc-line, #e2e8f0); background: transparent; border-radius: 8px; color: inherit !important; text-decoration: none !important; font-size: .72rem; font-weight: 700; cursor: pointer; }
.dc-share-grid i { font-size: 1.5rem; }
.dc-share-grid .wa i { color: #25d366; } .dc-share-grid .fb i { color: #1877f2; } .dc-share-grid .xx i { color: currentColor; } .dc-share-grid .tg i { color: #229ed9; } .dc-share-grid .sm i { color: #10b981; } .dc-share-grid .em i { color: #f59e0b; } .dc-share-grid .cp i, .dc-share-grid .cm i { color: var(--dc-brand, #4f46e5); } .dc-share-grid .more i { color: #ec4899; }
.dc-share-grid a:hover, .dc-share-grid button:hover { background: rgba(var(--dc-rgb, 79, 70, 229), .08); }
.dc-share-dl { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center; margin-top: 12px; font-size: .8rem; } .dc-share-dl span { color: var(--dc-muted, #64748b); } .dc-share-dl a { font-weight: 700; }
body.dc-share-open { overflow: hidden; }

html[data-theme="dark"] .dc-share-sheet { background: #141c2e; color: #cbd5e1; } html[data-theme="dark"] .dc-share-head { color: #f1f5f9; }
.dc-toast { position: fixed; left: 50%; top: 16px; transform: translateX(-50%); z-index: 3100; background: #0f172a; color: #fff; padding: 9px 16px; border-radius: 8px; font: 600 .85rem system-ui, sans-serif; box-shadow: 0 10px 30px rgba(0,0,0,.3); animation: dcShFade .2s ease; }

.dc-share-stage.dc-skel { min-height: 180px; }
