/* Shared calendar presentation. No appointment/result state is changed here. */
.nld-calendar-card-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:start; }
.nld-calendar .nld-calendar-card { display:flex;flex-direction:column;align-items:stretch;gap:9px;min-width:0; }
.nld-calendar .nld-calendar-card>time { font-size:.88rem;line-height:1.4;font-variant-numeric:tabular-nums; }
.nld-calendar .nld-calendar-card>strong { line-height:1.4;overflow-wrap:anywhere; }
.nld-calendar .nld-calendar-card>p { margin:0; }
.nld-calendar .nld-calendar-card-meta { align-items:flex-start; }
.nld-calendar .nld-calendar-actions,.nld-calendar .nld-liga-calendar-actions { display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin:0; }
.nld-calendar .nld-calendar-actions a { display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;height:auto;max-width:100%;padding:8px 11px;border:1px solid #176074;border-radius:8px;background:transparent;color:#52dfff;font-size:.88rem;font-weight:700;line-height:1.35;text-decoration:none;overflow-wrap:anywhere; }
.nld-calendar .nld-calendar-actions a:focus-visible { outline:3px solid #ffce59;outline-offset:2px; }
.nld-calendar .needs-result .nld-liga-confirm-state { background:rgba(185,28,28,.16);border-color:#ef8c8c;color:#ffc4c4; }
@media(max-width:600px){.nld-calendar-card-grid{grid-template-columns:minmax(0,1fr)}.nld-calendar .nld-calendar-actions a{flex:1 1 auto}.nld-calendar .nld-liga-calendar-actions{width:100%}}
