/* Calendario de cumpleaños: clases propias .bdc-* */
.bdc *{box-sizing:border-box}
.bdc-privacy{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;border-radius:10px;padding:10px 14px;font-size:.92rem;margin:0 0 16px}
.bdc-warn{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:10px;padding:10px 14px;font-size:.92rem;margin:0 0 16px}
.bdc-summary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.bdc-box{background:#fff7ed;border:1.5px solid #fed7aa;border-radius:14px;padding:14px 16px}
.bdc-box h2{margin:0 0 8px;font-size:1.05rem;color:#9a3412}
.bdc-box ul{margin:0;padding:0;list-style:none}
.bdc-box li{padding:4px 0;font-size:.95rem;display:flex;justify-content:space-between;gap:8px}
.bdc-box .bdc-none{color:#78716c;font-size:.92rem;margin:0}
.bdc-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;margin-bottom:16px;box-shadow:0 2px 10px rgba(0,0,0,.03)}
.bdc-card h2{margin:0 0 12px;font-size:1.2rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bdc-card h2 i{color:var(--primary-color,#D8660E)}
.bdc label{display:block;font-size:.88rem;font-weight:600;color:#374151;margin-bottom:10px}
.bdc label small{font-weight:400;color:#6b7280}
.bdc input[type=text],.bdc input[type=number],.bdc input[type=search],.bdc select,.bdc textarea{display:block;width:100%;margin-top:4px;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font:inherit;font-size:1rem;background:#fff;color:#111}
.bdc textarea{resize:vertical}
.bdc input:focus,.bdc select:focus,.bdc textarea:focus{outline:2px solid var(--primary-color,#D8660E);outline-offset:1px}
.bdc-row{display:flex;gap:10px;flex-wrap:wrap}
.bdc-row label{flex:0 0 120px}
.bdc-row .bdc-grow{flex:1 1 200px}
.bdc-error{color:#b91c1c;font-size:.9rem;margin:0 0 10px}
.bdc-actions{display:flex;gap:10px;flex-wrap:wrap}
.bdc-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border:1px solid #d1d5db;border-radius:999px;background:#fff;color:#374151;font-size:.92rem;font-weight:600;line-height:1;cursor:pointer;text-decoration:none;font-family:inherit}
.bdc-btn:hover{background:#f3f4f6}
.bdc-btn-main{background:var(--primary-color,#D8660E);border-color:var(--primary-color,#D8660E);color:#fff}
.bdc-btn-main:hover{background:#b9560a}
.bdc-chips{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.bdc-chip{padding:6px 12px;border:1px solid #e5e7eb;border-radius:999px;background:#f9fafb;font-size:.82rem;font-weight:600;color:#4b5563;cursor:pointer;font-family:inherit}
.bdc-chip[aria-pressed=true],.bdc-chip:hover{background:#fff7ed;border-color:var(--primary-color,#D8660E);color:#9a3412}
.bdc-listhead{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.bdc-listhead h2{margin:0}
.bdc-listhead input{max-width:240px;margin:0!important}
.bdc-count{font-size:.85rem;color:#6b7280;font-weight:500}
.bdc-list{list-style:none;margin:10px 0 0;padding:0}
.bdc-item{display:flex;gap:12px;align-items:center;padding:12px 4px;border-top:1px solid #f1f5f9;flex-wrap:wrap}
.bdc-date{flex:0 0 54px;text-align:center;border-radius:10px;background:#fff7ed;border:1px solid #fed7aa;padding:5px 0;line-height:1.1}
.bdc-date b{display:block;font-size:1.3rem;color:#9a3412}
.bdc-date span{font-size:.7rem;text-transform:uppercase;color:#9a3412;font-weight:700}
.bdc-info{flex:1 1 180px;min-width:0}
.bdc-name{font-weight:700;font-size:1rem;overflow-wrap:anywhere}
.bdc-when{font-size:.85rem;color:#6b7280}
.bdc-when.bdc-hot{color:#b45309;font-weight:700}
.bdc-tools{display:flex;gap:6px;flex-wrap:wrap}
.bdc-tools button,.bdc-tools a{display:inline-flex;align-items:center;gap:5px;padding:7px 11px;border-radius:999px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:.82rem;font-weight:600;cursor:pointer;text-decoration:none;font-family:inherit}
.bdc-tools .bdc-wa{background:#25d366;border-color:#25d366;color:#fff}
.bdc-tools .bdc-del:hover{background:#fef2f2;border-color:#fecaca;color:#b91c1c}
.bdc-empty{color:#6b7280;text-align:center;padding:14px 0 4px}
.bdc-file{cursor:pointer}
.bdc-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:#111827;color:#fff;padding:10px 18px;border-radius:999px;font-size:.9rem;z-index:10000;max-width:90%;text-align:center}
@media (max-width:640px){.bdc-summary{grid-template-columns:1fr}.bdc-row label{flex:1 1 90px}.bdc-listhead input{max-width:none;width:100%}}
.bdc [hidden],.bdc-toast[hidden]{display:none!important}
.bdc-backup{background:#fffbeb;border:1px solid #fde68a;color:#92400e;border-radius:10px;padding:10px 14px;font-size:.92rem;margin:0 0 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* Ventana "Felicitar" (Fase 2) */
.bdc-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(15,23,42,.55)}
.bdc-modal-box{position:relative;width:100%;max-width:520px;max-height:92vh;overflow:auto;background:#fff;border-radius:16px;padding:20px 18px;box-shadow:0 12px 40px rgba(0,0,0,.3)}
.bdc-modal-box h2{margin:0 30px 8px 0;font-size:1.2rem}
.bdc-modal-box h3{margin:16px 0 8px;font-size:.95rem;color:#374151}
.bdc-modal-x{position:absolute;top:8px;right:10px;width:34px;height:34px;border:0;background:transparent;font-size:26px;line-height:1;color:#6b7280;cursor:pointer}
.bdc-modal-msg{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:10px 12px;font-size:.92rem;margin:0;color:#7c2d12;overflow-wrap:anywhere}
.bdc-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bdc-opt{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:12px;text-decoration:none;color:#111;background:#fff}
.bdc-opt:hover{border-color:var(--primary-color,#D8660E);background:#fff7ed}
.bdc-opt strong{font-size:.92rem}.bdc-opt small{font-size:.78rem;color:#6b7280}
.bdc-opt-main{grid-column:1/-1;background:var(--primary-color,#D8660E);border-color:var(--primary-color,#D8660E);color:#fff}
.bdc-opt-main small{color:#ffe8d4}.bdc-opt-main:hover{background:#b9560a;border-color:#b9560a}
.bdc-btn-wa{background:#25d366;border-color:#25d366;color:#fff}.bdc-btn-wa:hover{background:#1da851}
@media (max-width:420px){.bdc-opts{grid-template-columns:1fr}}

/* Importar (Fase 3) */
.bdci-lead{font-size:1.02rem;margin:0 0 12px}
.bdci-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.bdci-tabs button{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;font:700 .95rem/1.1 inherit;font-family:inherit;color:#374151;cursor:pointer}
.bdci-tabs button span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#f3f4f6;font-size:.85rem}
.bdci-tabs button[aria-selected=true]{border-color:var(--primary-color,#D8660E);background:#fff7ed;color:#9a3412}
.bdci-tabs button[aria-selected=true] span{background:var(--primary-color,#D8660E);color:#fff}
.bdci-safe{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;border-radius:10px;padding:10px 12px;font-size:.92rem;margin:0 0 12px}
.bdci-h{margin:6px 0 6px;font-size:1.05rem}
.bdci-steps{list-style:none;counter-reset:s;margin:8px 0 14px;padding:0}
.bdci-steps>li{counter-increment:s;position:relative;padding:8px 0 8px 46px;margin:0 0 6px;font-size:1.02rem;line-height:1.5}
.bdci-steps>li::before{content:counter(s);position:absolute;left:0;top:6px;width:34px;height:34px;border-radius:50%;background:var(--primary-color,#D8660E);color:#fff;font-weight:800;font-size:1.05rem;display:flex;align-items:center;justify-content:center}
.bdci-steps small{color:#6b7280}
.bdci-steps .bdc-btn{margin-top:8px}
.bdc kbd{display:inline-block;padding:2px 9px;border:1px solid #9ca3af;border-bottom-width:3px;border-radius:6px;background:#f9fafb;font:700 .9rem/1.3 inherit;font-family:inherit;color:#111}
.bdci-more{border:1px solid #e5e7eb;border-radius:12px;padding:8px 12px;margin:8px 0;background:#fafafa}
.bdci-more summary{cursor:pointer;font-weight:700;padding:4px 0}
.bdci-label{display:block;font-weight:700;margin:12px 0 4px;font-size:1rem}
.bdc #bdci-text-fb,.bdc #bdci-text-list{margin-bottom:10px}
.bdci-go{margin:4px 0 6px;font-size:1.02rem;padding:12px 20px}
.bdci-note{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;border-radius:10px;padding:9px 12px;font-size:.9rem;margin:10px 0 0}
.bdci-example{background:#fffbeb;border:1px dashed #f59e0b;border-radius:10px;padding:10px 14px;margin:6px 0 10px;line-height:1.7}
.bdci-result{margin-top:18px;padding:14px;border:2px solid var(--primary-color,#D8660E);border-radius:14px;background:#fffaf5;scroll-margin-top:90px}
.bdci-result h3{margin:0 0 8px}
.bdci-list{list-style:none;margin:10px 0;padding:0;max-height:420px;overflow:auto}
.bdci-row{display:flex;align-items:center;gap:10px;padding:8px 4px;border-top:1px solid #f1e3d6;flex-wrap:wrap}
.bdci-row input[type=checkbox]{width:24px;height:24px;flex:0 0 24px;accent-color:var(--primary-color,#D8660E)}
.bdc .bdci-name{flex:1 1 160px;margin:0;padding:8px 10px;min-width:0}
.bdci-date{font-weight:700;color:#9a3412;white-space:nowrap}
.bdci-tag{font-size:.75rem;background:#e5e7eb;color:#374151;border-radius:999px;padding:3px 9px;font-weight:700}
.bdci-dup{opacity:.75}
@media (max-width:520px){.bdci-tabs button{flex:1 1 100%}}

.bdci-more-msg{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;border-radius:10px;padding:8px 12px;font-size:.92rem;margin:0 0 10px}

/* Móvil: fácil para cualquiera (Fase 3b) */
.bdc-hint{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:9px 12px;font-size:1rem;margin:0 0 12px;color:#7c2d12}
.bdc-fab{display:none}
@media (max-width:768px){
  .bdc input[type=text],.bdc input[type=number],.bdc input[type=search],.bdc select,.bdc textarea{min-height:52px;font-size:1.1rem;padding:12px 14px}
  .bdc textarea{min-height:90px}
  .bdc label{font-size:1rem}
  .bdc-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .bdc-row .bdc-grow{grid-column:1/-1}
  .bdc-row label{flex:none}
  .bdc-btn{min-height:48px;font-size:1rem;padding:12px 18px}
  .bdc-btn-main{width:100%;justify-content:center;font-size:1.1rem}
  .bdc-actions{flex-direction:column}
  .bdc-actions .bdc-btn{width:100%;justify-content:center}
  .bdc-tools button,.bdc-tools a{min-height:44px;padding:10px 14px;font-size:.92rem}
  .bdc-fab{display:inline-flex;align-items:center;gap:8px;position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:9990;padding:14px 22px;border:0;border-radius:999px;background:var(--primary-color,#D8660E);color:#fff;font:800 1.05rem/1 inherit;font-family:inherit;box-shadow:0 6px 18px rgba(216,102,14,.5);cursor:pointer;transition:opacity .2s,transform .2s}
  .bdc-fab.bdc-fab-hide{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(20px)}
  .bdc{padding-bottom:90px!important}
}
.bdc-fab{white-space:nowrap}

/* En esta página el botón flotante del sitio sobra: ya hay uno de «Añadir» */
.floating-birthday-btn{display:none!important}

/* Intro, pasos, recordatorios y contenido informativo */
.bdc-intro{font-size:1.1rem;line-height:1.6;margin:0 0 14px;color:#1f2937}
.bdc-how{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.bdc-how li{position:relative;background:#fff7ed;border:1.5px solid #fed7aa;border-radius:14px;padding:14px 12px 12px;display:flex;flex-direction:column;gap:4px;text-align:left}
.bdc-how-n{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--primary-color,#D8660E);color:#fff;font-weight:800}
.bdc-how b{font-size:1rem;color:#7c2d12}.bdc-how small{font-size:.88rem;color:#6b7280;line-height:1.35}
.bdcr-card{border:1px solid #e5e7eb;border-radius:14px;padding:14px;margin:0 0 12px;background:#fafafa}
.bdcr-card h3{margin:0 0 6px;font-size:1.05rem}
.bdcr-card p{margin:0 0 10px;line-height:1.55}
.bdcr-msg{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:8px 12px;margin:10px 0 0!important;font-size:.92rem;color:#7c2d12}
.bdc-seo h2{font-size:1.15rem;margin:22px 0 8px}
.bdc-seo h2:first-child{margin-top:0}
.bdc-seo p{line-height:1.65;margin:0 0 10px;color:#374151}
.bdc-seo a{color:var(--primary-color,#D8660E);font-weight:600}
.bdc-faq{border:1px solid #e5e7eb;border-radius:12px;padding:10px 14px;margin:8px 0;background:#fafafa}
.bdc-faq summary{cursor:pointer;font-weight:700}
.bdc-faq p{margin:8px 0 0}
@media (max-width:640px){.bdc-how{grid-template-columns:1fr}.bdc-how li{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 10px}.bdc-how small{flex-basis:100%;padding-left:40px;margin-top:-2px}}

/* Botones alineados y del mismo tamaño (copia de seguridad, pasar al móvil) */
.bdc label.bdc-btn{display:inline-flex;margin:0}
.bdc-pair{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.bdc-pair .bdc-btn{flex:1 1 200px;justify-content:center;min-height:48px;margin:0;box-sizing:border-box;text-align:center}
.bdct-out{display:flex;justify-content:center;margin:14px 0 4px}
.bdct-qr{width:100%;max-width:320px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px;line-height:0}
.bdct-qr svg{width:100%;height:auto;display:block}
.bdct-names{margin:10px 0;padding-left:20px;font-size:.95rem;line-height:1.6}
