#hytten-frontend-calendar { font-family: Arial, sans-serif; max-width:1100px; margin:20px auto; }
.calendar-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.month { border:1px solid #e6e6e6; background:#fff; padding:10px; border-radius:6px; }
.month-name { font-weight:700; text-align:center; margin-bottom:6px; }
.weekdays { display:grid; grid-template-columns:repeat(7,1fr); font-weight:700; text-align:center; margin-bottom:6px; color:#333; }
.days { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
.calendar-day { display:flex; flex-direction:column; border-radius:6px; overflow:hidden; }
.half { height:44px; display:flex; align-items:center; justify-content:center; font-size:14px; }
.half.morning { border-bottom:1px solid rgba(0,0,0,0.06); }
.half.ledigtxt { font-weight:600; }

/* statuses */
.half.ledig { background-color:#ddffcc; color:#222; }
.half.udlejet { background-color:#ffc0bd; color:#222; }
.half.weekend { background-color:#fee2a0; color:#222; }

@media(max-width:900px){ .calendar-grid { grid-template-columns:1fr; } .half{ height:36px; font-size:13px; } }
