/* Base */
.d3lrb{max-width:var(--d3lr-max);background:#fff;border-radius:var(--d3lr-radius);box-shadow:var(--d3lr-shadow);padding:22px 22px 26px;color:#0f172a;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"}
.d3lrb-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}
.d3lrb-title{font-size:30px;line-height:1.2;font-weight:800;margin:0;color:var(--d3lr-heading,#0f172a)}
.d3lrb-sub{opacity:.7;margin-top:4px}
.d3lrb-btn{background:var(--d3lr-primary);color:var(--d3lr-btn-text);border:none;border-radius:999px;padding:12px 22px;font-weight:800;cursor:pointer;transition:all 0.2s ease}
.d3lrb-btn:hover{background:color-mix(in srgb, var(--d3lr-primary) 85%, black);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,0.15)}
.d3lrb-btn--header{margin-left:auto}
.d3lrb-mobile-submit{display:none;margin-top:16px;text-align:right}

/* Grid & fields */
.d3lrb-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr auto;align-items:end}
.d3lrb--vertical .d3lrb-grid{grid-template-columns:1fr}
.d3lrb-field{display:flex;flex-direction:column;gap:6px}
.d3lrb-label{font-size:13px;font-weight:700;opacity:.8}
.d3lrb-input{padding:12px 14px;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fff;font-size:15px}

/* Inline picker */
.d3lrb-picker{user-select:none}
.d3lrb-p-head{display:flex;align-items:center;justify-content:space-between;margin:6px 0 10px}
.d3lrb-months{font-weight:800;letter-spacing:.01em}
.d3lrb-nav{background:transparent;border:none;font-size:20px;opacity:.65;cursor:pointer;padding:6px 10px}
.d3lrb-nav:hover{opacity:1}
.d3lrb-p-body{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.d3lrb-month{border-radius:12px;padding:6px 8px}
.d3lrb-weekdays,.d3lrb-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.d3lrb-weekdays div{text-align:center;font-size:12px;opacity:.6;padding:6px 0}
.d3lrb-day{text-align:center;padding:12px 0;border-radius:10px;cursor:pointer;position:relative}
.d3lrb-day.is-muted{opacity:.35;cursor:default}
.d3lrb-day.is-unavailable{opacity:.25;cursor:not-allowed;background:rgba(0,0,0,.05);text-decoration:line-through}
.d3lrb-day:hover{background:rgba(0,0,0,.04)}
.d3lrb-day.is-unavailable:hover{background:rgba(0,0,0,.05)}
.d3lrb-day.is-in-range{background:color-mix(in srgb, var(--d3lr-primary) 18%, transparent)}
.d3lrb-day.is-start,.d3lrb-day.is-end{background:var(--d3lr-primary);color:var(--d3lr-btn-text);font-weight:800}
.d3lrb-day.is-start::after,.d3lrb-day.is-end::after{content:'';position:absolute;inset:0;border:2px solid rgba(0,0,0,.05);border-radius:10px}

/* Modal picker (boxes mode) */
.d3lrb-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:9999}
.d3lrb-dialog{width:min(940px,94vw);background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.2);padding:18px 18px 24px}
.d3lrb-dialog .d3lrb-p-body{grid-template-columns:1fr 1fr}

/* Responsive */
@media (max-width:860px){
  .d3lrb-title{font-size:24px}
  .d3lrb-grid{grid-template-columns:1fr}
  .d3lrb-btn--header{display:none}
  .d3lrb-mobile-submit{display:block}
  .d3lrb-mobile-submit .d3lrb-btn{width:100%}
  .d3lrb-p-body,.d3lrb-dialog .d3lrb-p-body{grid-template-columns:1fr}
}

/* v2.0.2: Vertical & mobile refinements */
.d3lrb--vertical .d3lrb-title{font-size:26px;line-height:1.2;word-break:break-word;hyphens:auto}
@media (max-width:600px){
  .d3lrb-title{font-size:22px}
}
/* Ensure calendar shows on mobile */
@media (max-width:860px){
  .d3lrb-picker{display:block}
}
/* Safer overlay stacking on all themes/builders */
.d3lrb-overlay{z-index:2147483647}
