/* Public sharing: one primary action; customization stays optional. */
.card-share { width:100%; justify-content:space-between; margin:8px 0 16px; min-height:44px; }
.nv-share-kit { margin:0 0 20px; padding:20px; border:1px solid var(--line); border-radius:14px; background:#e5e9d8; }
.nv-share-kit { background:#f0f2e9; border-color:#d4ddcc; border-radius:20px; }
.nv-share-kicker { display:block; color:#54735e; font-size:10px; font-weight:800; letter-spacing:1.5px; margin:0 0 12px; }
.nv-share-platforms { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:18px 0; }
.nv-platform-choice { display:flex; align-items:center; gap:12px; padding:16px 14px; border:1px solid #d2d8cc; border-radius:14px; background:#fffefa; color:#252823; text-align:left; cursor:pointer; min-height:78px; font:inherit; transition:box-shadow .18s,border-color .18s,background .18s; }
.nv-platform-choice strong { display:block; font-size:16px; }
.nv-platform-choice small { display:block; font-size:11px; color:#626b60; line-height:1.4; margin-top:5px; }
.nv-platform-symbol { display:grid; place-items:center; width:38px; height:38px; flex:0 0 38px; border-radius:11px; font-size:29px; background:#252823; color:#fff; }
.nv-platform-instagram .nv-platform-symbol { background:linear-gradient(135deg,#7945ad,#c74a61,#d79746); }
.nv-platform-choice:hover,.nv-platform-choice[aria-pressed="true"] { border-color:#365244; background:#f5f8ed; box-shadow:0 0 0 2px #36524418; }
.nv-platform-choice[aria-pressed="true"] strong::after { content:' ✓'; color:#365244; }
.nv-platform-choice:focus-visible,.nv-social-inline:focus-visible { outline:3px solid #bb712c; outline-offset:3px; }
.nv-other-platforms { display:grid; gap:8px; font-size:12px; color:#566150; }
.nv-card-share-row { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:16px; }
.nv-social-inline { display:flex; align-items:center; justify-content:center; gap:7px; min-height:46px; padding:12px 15px; border:1px solid #cbd4c3; border-radius:12px; background:#f3f5ec; color:#264e42; text-decoration:none; font:inherit; font-weight:700; font-size:13px; cursor:pointer; }
.nv-social-inline:hover { background:#e4ecdc; border-color:#78936b; }
.nv-social-inline.nv-platform-tiktok { background:#263b30; color:#fff; border-color:#263b30; }
.nv-detail-share-actions { margin-top:22px; gap:10px; }
.nv-detail-share { padding:24px; border:1px solid #d4ddcc; border-radius:20px; background:#f0f2e9; margin-top:28px; }
.nv-detail-share h2 { margin:0; font-size:26px; }
#editor-form > .button { min-height:48px; white-space:normal; text-align:center; }
#editor-form > .nv-package-button { background:#e8edde; border-color:#b4c3a9; color:#2f503b; }
.nv-share-editor { --paper:#f7f3e9; --ink:#252823; --line:#d5d9cd; --muted:#626b60; --orange:#bb712c; width:min(1020px,94vw); max-height:92dvh; overflow:auto; padding:32px; border:1px solid #d4ddcc; border-radius:24px; background:#f7f3e9; color:#252823; }
.nv-share-editor::backdrop { background:#172b20b8; backdrop-filter:blur(5px); }
.nv-share-editor h2 { margin:0 0 24px; font-size:32px; letter-spacing:-1px; }
.nv-standalone-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; }
.nv-standalone-grid canvas { width:100%; height:auto; max-height:65dvh; object-fit:contain; background:#ebe8dd; border-radius:16px; }
.nv-standalone-grid #editor-form > .button { display:block; width:100%; margin:10px 0; padding:14px; background:#263b30; color:#fff; border:1px solid #263b30; border-radius:12px; font:inherit; font-weight:700; cursor:pointer; }
.nv-standalone-grid #editor-form > .outline { background:#fffefa; color:#264e42; border-color:#cbd4c3; }
.nv-standalone-grid .text-button { background:transparent; border:0; padding:10px 0; text-decoration:underline; color:#365244; }
.nv-standalone-grid label { display:grid; gap:8px; }
.nv-standalone-grid input { padding:12px; border:1px solid #cbd4c3; border-radius:10px; font:inherit; width:100%; }
.nv-standalone-grid button:disabled,.nv-social-inline:disabled,.nv-detail-share .nv-platform-choice:disabled { opacity:.5; cursor:wait; }
.nv-quick-status { flex-basis:100%; margin:8px 0 0; font-size:13px; line-height:1.5; color:#365244; }
.nv-editor-close { position:absolute; right:20px; top:14px; font-size:25px; border:0; background:transparent; color:#252823; width:44px; height:44px; cursor:pointer; }
.nv-share-kit h3 { margin:0 0 10px; font-size:23px; line-height:1.25; letter-spacing:-.5px; }
.nv-share-benefit { margin:0 0 18px; font-size:13px; }
.nv-share-kit label { margin-bottom:10px; }
.nv-share-kit textarea { min-height:160px; resize:vertical; white-space:pre-wrap; overflow-wrap:anywhere; font-size:14px; line-height:1.6; }
.nv-share-kit .subtle { font-size:12px; line-height:1.6; margin:10px 0; }
.nv-share-details summary, .nv-editor-options summary { cursor:pointer; min-height:44px; padding:12px 0; font-size:13px; font-weight:700; }
.nv-share-details summary:focus-visible, .nv-editor-options summary:focus-visible { outline:2px solid var(--orange); outline-offset:3px; border-radius:4px; }
.nv-share-details[open] > summary, .nv-editor-options[open] > summary { margin-bottom:10px; }
.nv-editor-options { margin-top:20px; border-top:1px solid var(--line); padding-top:8px; }
.nv-editor-options .button { width:100%; margin-bottom:12px; }
#share-extra-actions { display:flex; flex-wrap:wrap; gap:10px 20px; }
#share-extra-actions .text-button, #copy-caption { min-height:44px; }
.nv-share-note { font-size:12px; color:var(--muted); margin:12px 0; }
#export-status { font-size:13px; font-weight:600; line-height:1.6; }
#export-status:empty { display:none; }
.nv-copy-dialog { width:min(580px,94vw); max-height:90dvh; overflow:auto; padding:26px; border:1px solid #d4ddcc; border-radius:20px; background:#f7f3e9; color:#252823; }
.nv-copy-dialog textarea { display:block; width:100%; margin:15px 0; min-height:190px; resize:vertical; line-height:1.6; }
.nv-copy-dialog h2 { font-size:26px; }
.nv-copy-dialog p { font-size:13px; white-space:pre-line; line-height:1.6; }
.nv-copy-dialog .button { justify-content:center; min-height:48px; padding:12px; border:1px solid #365244; border-radius:12px; background:#263b30; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.nv-copy-dialog .outline { background:#fffefa; color:#365244; border-color:#cbd4c3; }
.nv-copy-dialog::backdrop { background:#25282399; }
.nv-tiktok-dialog .button { display:flex; width:100%; margin:10px 0; white-space:normal; }
.nv-tiktok-dialog #nv-tiktok-status { padding:14px; background:#e5e9d8; border-radius:10px; line-height:1.6; }
.nv-tiktok-dialog .text-button { min-height:44px; }
.nv-result-description { margin-top:22px; }
.nv-result-description textarea { min-height:165px; white-space:pre-wrap; line-height:1.6; }
@media(max-width:600px) {
  .nv-share-kit { padding:14px; margin-bottom:12px; }
  .nv-share-kit h3 { display:none; }
  .nv-share-benefit { font-size:12px; margin-bottom:10px; }
  .nv-share-platforms { gap:8px; margin:12px 0; }
  .nv-platform-choice { gap:6px; padding:12px 10px; min-height:66px; }
  .nv-platform-choice strong { font-size:14px; white-space:nowrap; }
  .nv-platform-choice[aria-pressed="true"] strong::after { content:''; }
  .nv-platform-choice small { font-size:10px; }
  .nv-platform-symbol { width:26px; height:32px; flex-basis:26px; }
  .editor-dialog #export-canvas { max-height:18dvh; }
  #share-platform-hint { display:none; }
  .nv-share-editor { padding:24px 16px; }
  .nv-share-editor h2 { font-size:24px; padding-right:30px; margin-bottom:16px; }
  .nv-standalone-grid { grid-template-columns:1fr; gap:12px; }
  .nv-detail-share { padding:18px; }
  .nv-copy-dialog { padding:24px 20px; }
}
