/* ============================================================
   AEMA Booking — Felles CSS for alle offentlige sider
   Inkluder med: <link rel="stylesheet" href="/css/global.css">
   ============================================================ */

/* ── Kalender ────────────────────────────────────────────────── */
.kal-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:2px; margin-top:4px; }
.kal-header { font-size:11px; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:#73787b; text-align:center; padding:10px 0 6px; font-family:'DM Sans',sans-serif; }
.kal-dag { font-size:14px; font-family:'DM Sans',sans-serif; background:none; border:none; outline:none; cursor:pointer; width:100%; aspect-ratio:1; min-height:34px; display:flex; align-items:center; justify-content:center; border-radius:50%; transition:background 0.12s,color 0.12s; color:#191c1d; position:relative; }
.kal-dag:focus { outline:none; box-shadow:none; }
.kal-dag:hover:not(:disabled) { background:rgba(105,93,73,0.1); }
.kal-dag.kal-i-dag::after { content:''; position:absolute; bottom:4px; left:50%; transform:translateX(-50%); width:4px; height:4px; border-radius:50%; background:#695d49; }
.kal-dag.kal-opptatt { color:#c3c7ca; text-decoration:line-through; cursor:not-allowed !important; }
.kal-dag.kal-forbi { color:#c3c7ca; cursor:not-allowed !important; }
.kal-dag.kal-valgt { background:#695d49 !important; color:#fff !important; border-radius:50% !important; }
.kal-dag.kal-mellom { background:rgba(105,93,73,0.12); border-radius:0; }
.kal-dag.kal-mellom-start { background:rgba(105,93,73,0.12); border-radius:50% 0 0 50%; }
.kal-dag.kal-mellom-slutt { background:rgba(105,93,73,0.12); border-radius:0 50% 50% 0; }

/* ── Tidslot-knapper (bord/aktiviteter) ──────────────────────── */
.slot-btn { transition:all 0.15s ease; }
.slot-btn:not(:disabled):hover { background:#d0dee7; }
.slot-btn.valgt { background:#536068 !important; color:#fff !important; border-color:#536068 !important; }
.slot-btn:disabled { opacity:0.4; cursor:not-allowed; }

/* ── Flatpickr — Fjord Cabins-tema ──────────────────────────── */
.flatpickr-calendar { font-family:'DM Sans',sans-serif !important; border-radius:14px !important; box-shadow:0 20px 48px rgba(0,0,0,0.14) !important; border:1px solid #c3c7ca !important; background:#fff !important; }
.flatpickr-months { padding:8px 0 0; }
.flatpickr-month { background:transparent !important; }
.flatpickr-current-month { font-family:'Bodoni Moda',serif !important; font-size:1rem !important; font-weight:400 !important; color:#191c1d !important; padding:4px 0 !important; }
.flatpickr-current-month input.cur-year { font-family:'DM Sans',sans-serif !important; font-weight:400 !important; }
.flatpickr-prev-month, .flatpickr-next-month { color:#43474a !important; fill:#43474a !important; }
.flatpickr-prev-month:hover svg, .flatpickr-next-month:hover svg { fill:#191c1d !important; }
.flatpickr-weekday { font-family:'DM Sans',sans-serif !important; font-size:11px !important; font-weight:500 !important; letter-spacing:0.08em !important; text-transform:uppercase !important; color:#73787b !important; }
.flatpickr-day { font-family:'DM Sans',sans-serif !important; border-radius:50% !important; font-size:14px !important; color:#191c1d !important; border:1px solid transparent !important; }
.flatpickr-day:hover { background:rgba(105,93,73,0.1) !important; border-color:transparent !important; }
.flatpickr-day.today { border-color:#695d49 !important; color:#695d49 !important; }
.flatpickr-day.today:hover { background:#695d49 !important; color:#fff !important; border-color:#695d49 !important; }
.flatpickr-day.selected, .flatpickr-day.selected:hover,
.flatpickr-day.startRange, .flatpickr-day.startRange:hover,
.flatpickr-day.endRange, .flatpickr-day.endRange:hover { background:#536068 !important; border-color:#536068 !important; color:#fff !important; }
.flatpickr-day.inRange { background:rgba(208,222,231,0.6) !important; border-color:rgba(208,222,231,0.6) !important; box-shadow:-5px 0 0 rgba(208,222,231,0.6),5px 0 0 rgba(208,222,231,0.6) !important; }
.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover { color:#c3c7ca !important; text-decoration:line-through; cursor:not-allowed !important; }
.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay { color:#c3c7ca !important; }

/* ── Autofill: fjern blå Chrome-bakgrunn ─────────────────────── */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #f8f9fa inset !important;
  -webkit-text-fill-color: #191c1d !important;
  transition: background-color 5000s ease-in-out 0s;
}
